As a major player in the worldwide home improvement market, Leroy Merlin helps residents and homeowners with their home-improvement projects. The company owns more than 300 home improvement stores in 13 countries and specializes in sales of homeware products and solutions. Leroy Merlin has held a presence in Italy for more than 16 years and now has 49 stores in the region. It boasts revenues of over €1bn, made possible by the dedication of more than 5,800 employees – 99 percent of whom are also shareholders in the company. The company's online presence has grown exponentially over the last few years alongside its product catalogue.
Leroy Merlin Italy turned to MongoDB to unlock the full potential of an easy, flexible NoSQL solution to get new products loaded faster and more accurately.
With more than 87,000 products spanning 1,000 different product families - and turning over approximately 20,000 products each year - just managing Leroy Merlin's Italian catalogue is a mammoth undertaking. As the company rapidly grew its presence and offering in the Italian market, evolving customer and product needs led to new challenge. Demand for online product and company information grew, and it quickly became clear to Giambattista Cerri, enterprise architect at Leroy Merlin Italy, that the existing, classic SQL database did not meet the company's needs. "Our existing database was too rigid and the static data structure was making it increasingly difficult to manage and grow," said Cerri. "When you're dealing with so many products and all their different attributes you need something that is very fast, flexible and scalable."
In 2010, Leroy Merlin Italy decided to completely scrap its existing web site, which only offered basic information and no catalogue. It opted to develop from scratch a new site and product management platform to deliver accurate product information quickly. "Using a traditional SQL database and a old style product management platform, we would have had to enter all create every product class and table, and then enter all the product information by hand, which would be an impossible task with that much information," explained Cerri.
As part of the complete overhaul in 2010, Leroy Merlin and the technology partner Byte-Code evaluated and benchmarked several NoSQL databases. MongoDB won due to its performance, scalability and flexibility. MongoDB's document model and schema-less design enabled rapid development of Leroy Merlin's next-generation product catalogue and provided a solid platform for delivering information to the new web site.
Davide Panelli, Solutions Architect at Byte-Code, said: "MongoDB is at least an order of magnitude faster than traditional SQL stores for the platform we are developing, both in terms of raw performance and ease-of-use for our development team." The developers were able to easily develop a rule engine to model product data and eliminate the empty or null fields that would have occurred in a relational database. This means that each product family can have the attributes it requires, and no more. MongoDB also provided flexibility to simplify adding new fields or updating existing information. This engine runs like a query, but is hidden through a visual interface making it easy for non-developers to add products.
"The way data is stored in MongoDB makes so much sense," explained Cerri. "It's so intuitive that you can run everything with just five internet product managers and no database administrator."
Leroy Merlin stocks around 87,000 different products, all with different attributes and belonging to one of 1,000 different families and categories. For instance, nuts and bolts come in a wide variety of shapes, sizes and metals, while bathroom taps have an entirely different set of attributes. There are approximately 1,200 product information updates made every single day.
MongoDB allows administrators to save the right product information, descriptions, technical details and attributes for each single item and family. This also enables easy automatic categorisation, which is imperative for serving up the right products in the right places on the web site. "The flexibility of the schema-less approach allowed us to very quickly design an implement a catalogue solution that fitted perfectly with the needs of Leroy Merlin," added Cerri. "All the relational options that we looked at would have taken a lot of developer time and resources to create the data models, properties and other information that we needed."
With a growing and ever changing product catalogue, MongoDB's inherent scalability is crucial to Leroy Merlin. MongoDB allows the company to scale horizontally across commodity hardware without having to write and maintain complex, custom sharding code. The product catalogue, and the company's web site have both seen exponential growth over the last few years. With future plans to expand its online offerings and functionality, this growth is expected to continue. As such, the ability to scale to meet this demand is imperative to the continued success of Leroy Merlin in Italy.
Web site performance is crucial to ensuring customer satisfaction. Leroy Merlin uses lots of caching to reduce load and deliver results as quickly as possible. "Any delays on a web site mean that people will just go somewhere else to find what they are looking for. MongoDB has very high performance, so we know that information is served up to customers on the web site very quickly. It was certainly the fastest in our tests and there is clearly plenty of extra performance available for when we need it," continued Cerri.
Deployment platform: Amazon EC2 and Beanstalk
Replica Sets: Pair of large replica sets
Application Language: Java (SquareCommerce NoSql Elastic Platform)
The combination of migrating to MongoDB and Amazon AWS has exceeded the expectations of the team at Leroy Merlin. Byte-Code was able to build a cloud based platform able to leverage the elastic nature of the cloud and the outstanding scalability of MongoDB. With MongoDB, Leroy Merlin has been able to implement a large and complex product catalogue with just a small team, more cost effectively and with far fewer resources than with a relational database.
By accelerating the development lifecycle, MongoDB is helping Leroy Merlin to provide superior product information and customer service. The web site now deals with more than two million monthly visitors serving up over 20 million product attributes. It also supports the company's future plans for online growth and development.
Leroy Merlin Italy is constantly looking to improve its online service, including new, more intuitive web site navigation and product view options. "The new web site marks the beginning of a revolution," added Cerri. "We have reached the first step of a new stage: the cross-channel. The challenge that our company is called to face is to offer to the customers a personalised experience that is simple and consistent across all channels. This cross-channel approach represents an extraordinary opportunity to develop and to strengthen the relationship with our customers."
The company is also planning to soon go beyond just delivering product information on its web site and start offering a full e-commerce platform. This will necessitate the ability for users to create their own accounts and store personal information as well as other features like wish-lists. This move is also predicted to generate a huge increase in web site traffic. "We are confident that MongoDB has the performance and flexibility to meet the requirements of our future online expansion plans," concluded Cerri. "We have been very impressed by how fast it is, and there is plenty of room to spare which means we don't need to worry about increasing the load or the inevitable schema changes as occur during such projects."