Scalability is a key consideration for any eCommerce platform.
In these Generation-X (or Millennial) days, eCommerce sites are very rich in content. With a wide variety of product offerings leading to millions of products, tons of rich images (not to mention regular text), and millions of geographically distributed shoppers, eCommerce platforms and sites are facing a big challenge of maintaining consistent availability, performance, and throughput across all channels.
Existing scenario and problems
- Major bottleneck and significant factor in eCommerce scalability sites has to do with database tier.
- Complex domain models and EAV (entity–attribute–value) database design leads to less flexibility.
- SQL is good for transaction management and ACID properties, but not suitable for linear scalability to support massive data volumes.
- Non-flexible SQL schema makes an application brittle for any schema level/DML changes. Zero downtime deployment is not possible.
- Today’s eCommerce applications often encounter database scaling challenges when faced with growth in users, traffic, and data. A slow site impairs revenue.
How it matters in eCommerce
- eCommerce sites receive massive spikes in usage during seasonal swings. NoSQL is the best fit for this type of usage pattern with its dynamic scalability.
- Some eCommerce functionalities — like shopping carts and session information — are considered as temporary data. NoSQL databases are best suited to store this data for better performance and scalability.
- Completed orders and customer social graphs are better stored in Document Based NoSQL database and Graph Based NoSQL, respectively.
- Customer suggestions and recommendations are best kept in a Graph database.
- An architecture designed to handle the growing user base gracefully is certainly a major consideration for any eCommerce store.
- Scalable architecture is the need of the hour for eCommerce: keeping the multichannel presence, increasing content and data, rules and analytics, social media content, etc.
Scalable database tier with RDBMS and NoSQL databases
Key aspects in NoSQL adoption
- Flexible and Dynamic Schema. Allows sparse and semi-structured data.
- Schema-less design best suited for dynamic eCommerce operations.
- Works best for read-heavy scenarios
- Scalable architecture. Efficient, scale-out and distributed architecture instead of expensive, monolithic architecture.
- Auto sharding, replication and integrated caching.
- Majority of the NoSQL databases are open source, leading to cost effectiveness.
- Faster/smarter business analytics, intelligence and reporting.
- Strong support community.
- NoSQL adoption in eCommerce and retail businesses compliments the existing RDBMS and data warehouse infrastructure by providing scalability, improved performance and high availability.