The online shop belonging to the C. H. Beck Verlag, Germany’s market leading publisher of legal literature, contains over 7 million products. Assuming that each of these products is represented by just a single image of 12 kB in size, we are already looking at a total storage requirement of 84 GB.
In the publisher’s online store solution, however, each book is represented by at least four versions of the same image: on the landing page, for example, in the search results, and in the detailed view. This means that the storage requirements increase with every image added to the catalogue, making the integration of each new view that much more expensive. The solution to this problem was obvious: why render and store all the views – some of which will not be needed – in advance, when you can display them on the fly instead? inovex worked with Beck to develop a state-of-the-art Microsoft Azure-based architecture which does precisely this.
Starting Point: Cumbersome and Inflexible
Beck’s existing online shop architecture contained several features which both stood in the way of further growth and caused unnecessary costs.
Designing the mechanism for importing thousands of images from multiple heterogeneous sources proved a major challenge, as the C#- and VB6-based architecture permitted no reliable monitoring or efficient further development.
The use of an on-premise infrastructure made the system unscalable, meaning that temporary load spikes could not be dynamically absorbed and image loading times were unsatisfactory. Expensive hardware was required to accommodate the increasing number of users. Last, but not least, all the images pre-rendered during the import had to be synced between multiple servers – no easy feat considering the aforementioned quantities of data.
This data volume also caused high data storage costs, while the flexible integration of new sales channels was made more difficult by the fact that appropriate image formats had to be generated in advance.
Microsoft Azure Means Increased Flexibility and Less Maintenance
All these weaknesses pointed to the need for replatforming: in other words, for the creation of a completely new architecture focusing on cloud technologies, for which Microsoft Azure quickly proved the perfect basis. The plan was not, therefore, to migrate the existing structures to the cloud, but to completely overhaul them using state-of-the-art methods.
The alternative to the inflexible local infrastructure, Microsoft’s Platform as a Service (PaaS) offering, is based on a flexibly scalable architecture, one which can handle both temporary load spikes and long-term growth.
Instead of generating image data directly during the import process and storing it unnecessarily, images are generated on the fly in the new architecture using Azure Functions. The Azure CDN (Content Delivery Network) then displays location-optimised versions to ensure rapid, cached read access.
Despite the outsourcing and heavy automation, it is still possible to integrate individual images into this process. This is done by having the specialist departments upload them using the Azure Web App – with appropriate authorisation, obviously.
The mass import of large numbers of image files is performed using Microsoft Integration Services directly into Azure Blob Storage. These processes are controlled, monitored and logged using SQL Server 2016.
The migration to Microsoft’s PaaS offering also provides direct benefits for continuing operations. As the important processes have been moved to the cloud and the high availability of services is guaranteed by Microsoft, Beck is relieved of its IT administration workload. At currently 300 euros per month, the Azure services themselves are not only inexpensive compared to the old on-site infrastructure; they are also consistent. Only the application level still requires hands-on administration. After the initial development phase, which lasted approximately 30 person days for the entire solution, considerable medium-term savings on operating costs were achieved.
The use of Azure Cloud Services allowed the transmission of product images for the Beck online shop to be aligned with today’s requirements. The new technologies provide both short-term and long-term potential for scalability and reduce the amount of storage needed, while remaining accessible to all stakeholders with no additional effort.
The new import mechanism also reduces the error rate and thus increases the stability of the entire system. Moreover, migrating the infrastructure to the cloud drastically reduces maintenance, while the operating costs scale with the current traffic volume.
We were impressed with the inovex team's achievements after just a short time. They are skilled, solution-oriented, up-to-date and technically cutting edge.
Dr. Johann KempeHead of Technology and Business Development, Member of the Board of Directors
- Azure Blob Storage
- Azure WebApp
- Azure Function
- Azure CDN
- Azure Virtual Machine
- Microsoft SQL Server 2016 SP 1
- Microsoft SQL Server Integration Services