The e-commerce industry has some of the most demanding requirements for online systems, as loads can spike regularly and overwhelm their digital storefront. This results in missed/lost transactions that can significantly impact a store's revenues and can also lower customer loyalty.
Hazelcast Powers Real-Time Infrastructure for E-Commerce
Delivering e-commerce systems that provide competitive advantage is one of the toughest challenges facing retailers today. Flexibility and speed are the keys to building a world-beating e-commerce system. The ability to deliver a personalized shopping experience with relevant content at predictable sub-second latency is the difference between business success and failure.
Customers who do not have a positive experience will easily move on to another site. Speedy response and high availability are absolute musts, and making sense of the huge volumes of data generated by customers is critical. According to research from digital performance measurement firm Dynatrace, just a half second difference in page load times can make a 10% difference in sales for an online retailer.
In the drive for greater personalization, retainers have been adding third-party connections to Google, Facebook and Twitter, and also chat functionality all of which is increasing page load times. In the US, average homepage response times have increased by half a second over 2016, from 3.4 to 3.9 seconds. Australian retail websites have seen average load times increase from 5.4 seconds in 2015 to 8.2 seconds in 2016. And globally, the average page load time has gone up by 7% compared to 2016 – from 4.2 to 4.5 seconds.
A major, North American fashion retailer saw online sales fall 11% when its website response time slowed by just half a second. When you have total annual sales in the region of $14B across 121 stores in the US and Canada, that’s tens of millions being lost.
Some of the complex business requirements driving today’s e-commerce systems include:
- Generating personalized shopping experiences in microseconds using multiple data streams.
- Omni-channel systems that deliver a consistent shopping experience to the customer across mobile and web, and in-store.
- Removal of data and system silos to present a single view of your data (warehousing, supply chain, social, customer).
- Flexible datastore that allows full-scale updates to an entire product catalog in minutes rather than hours.
- The ability to meet peak demand workloads and then shrink systems at quieter periods to save compute costs.
- Dynamic pricing, comparing against competitors’ catalogs, and then adjusting pricing in real-time.
The business requirements listed above require systems and tools that are designed for today’s workloads, and for deployment in the cloud. Despite this, many businesses are attempting to deliver systems using technology that is decades old, resulting in a prohibitive total cost of ownership in terms of hardware, software, and time.
Hazelcast provides a unique set of characteristics that make it the perfect choice when building e-commerce systems. Increasingly businesses are turning to Hazelcast when their existing systems are unable to deliver on their service-level requirements. It’s not just older technologies such as relational database management systems that are struggling to cope; newer approaches using NoSQL databases are also failing to live up to promises. Hazelcast is the perfect complement to your existing system of record, enabling the performance and scalability that beats the competition.
|Why Most Data Stores Fall Short…||Why Hazelcast Is Ideal…|
|On-demand scaling of most NoSQL and traditional relational databases is expensive. Reacting to spikes in demand will often require resource-intensive load balancing that is slowed by continuous accesses to storage media.||Adding more capacity to a Hazelcast cluster is simply a case of starting another node in response to increased demand, then removing the excess node at quieter times. Hazelcast takes care of the in-memory data distribution transparently without significant impact to transaction rates, all without operator intervention.|
|Most other data stores manage the bulk of their data on disk, storing only a small amount of data in memory. This impacts transaction response times, especially at scale.||Hazelcast can store terabytes of data in memory to provide microsecond latencies while performing hundreds of thousands of transactions per second.|
|Other data stores will often require additional software, often from other vendors, to provide a highly available, multi-data center solution.||Hazelcast includes all the features required to scale, not just locally but also across multiple data centers, while maintaining data coherence.|
|Traditional databases impose strict schemas requiring upfront data modeling whenever new applications or new functionality are added, costing time and money.||Hazelcast does not impose strict schemas on stored data, giving developers high agility when looking to add new capabilities.|
|For large-scale data transformations, database applications must read the data, make the modification, then write the data back. This is very slow due to network bandwidth demands, and parallelizing such work is complex.||With distributed processing (EntryProcessors), Hazelcast can easily distribute application code to each node in the cluster to process the overall data set in smaller chunks in parallel, to reduce processing time.|
Customer Success Story
With $18.3 billion in annual online sales, this global provider of personal computers and electronics is one of the most visited e-commerce web sites in the world, second only to Amazon.com. Burst traffic during new product introductions is at an extreme scale, as are sales on Black Friday, Cyber Monday, and over the holidays. This unique combination of world-class brand experience and extreme burst performance scaling led this e-commerce giant to Hazelcast as the solution for achieving the best possible price performance for their e-commerce platform.
In the first phase, the customer scaled up to hundreds of nodes of open source Hazelcast with a commercial support agreement. Having launched, scaled, and operated this Hazelcast system for a year, the team then rolled out an even more significant phase two project. The Hazelcast deployment changed topology to a cluster of dedicated servers with distributed clients all connecting to the dedicated cluster, and the customer upgraded to Hazelcast Enterprise to take advantage of its off-heap memory management feature, the High-Density Memory Store (HDMS). HDMS enabled them to scale up with a much smaller cluster on much larger machines, while avoiding the disruptive impact of garbage collection pauses. The customer also moved from a proprietary cache abstraction layer to the Java standard, JCache. All of this enabled them to reduce cluster sizes from hundreds down to six servers with one Hazelcast node on each server and two copies of data in the same cluster. Each node will have 28GB cache space (likely to grow). So the total cache space will be 6 X 28GB = 168GB.
With this in place, the customer was able to meet their objectives of deploying an elastically scalable caching solution based on industry standards that could meet all of their needs while at the same time lowering licensed software, hardware, development, operations, and talent costs.
Example Use Cases
E-commerce stores can more quickly update inventory levels by leveraging in-memory data storage to track stock counts. This can help ensure that customers don’t get disappointed by purchasing a product that is no longer in stock. Stores get:
- More efficient order fulfillment
- Fewer oversell errors
- Greater customer satisfaction
Many e-commerce store visitors spend a huge amount of time going through pages and pages of products, so catalog responsiveness needs to be fast. By caching product pages in Hazelcast, visitors will get fast page loads on the most popular products. Stores can also:
- Scale up to handle peak retail events
- Provide fast responsiveness for a better customer experience
- Enable more opportunities for cross-sell/upsell
Customers who make purchases via mobile apps are particularly sensitive to delays, so the mobile shopping app has to be extremely responsive. Using Hazelcast as a data layer to deliver site content to mobile devices with in-memory speeds helps to optimize the mobile buying experience. Stores can leverage:
- Geo-distribution of backend systems for lower latency
- Better user experience via faster page loads
- Competitive differentiation by focusing on content and not infrastructure
Back-office systems need to run quickly to keep up with purchases. By deploying a distributed cache-as-a-service, commonly accessed transaction data can be quickly delivered to various finance and marketing teams. These teams also can:
- Quickly deploy new analytic apps for further business optimization
- Reduce load on legacy financial apps
- Get their jobs done quicker