Maroš Kopec, Bibiána Ťureková, Nikoleta Češeková, Iuliia Gurianova 1 Agenda ● Evolution ● Main features ● Core principles ● Architecture ● Comparison with MongoDB ● Demo 2 3 - Memcached technology - Sharding - Replication - Persistence - Document oriented model based on JSON Main Features - Flexible data model - Json documents with no fixed schema - Easy scalability - Grow cluster without downtime or application changes - Automatic sharding and rebalancing - High performance - consistently high throughput - sub-millisecond response times - Always on - No downtime for upgrades, maintenance... 4 Developer integration - Provide libraries for: - Net - PHP - Ruby - Python - C - Node. js - Java - GO 5 Key customers 6 Real use cases ● Real-time user activity ● User preferences ● Caching ● Promotions tracking ● Users targeting 7 Core principles - Documents stored in buckets (“db”) - vbuckets - Owner of keys - Responsible for distribution and replication - Document = key + value 8 Architecture - Highly distributed architecture - Horizontal scaling by hash sharding (by document ID) - Servers are equal - Server - Data manager - Cluster manager 9 Replication 10 - documents in a bucket are isolated - configurable number of replicas (up to three) - if a server crashes, the system will locate the replicas of the documents, and promote them to active status 11 ● masterless, clustered, and replicated distributed database; Multi-Dimensional Scaling (MDS) ● caching layer for both data and indexes ● SQL-based query language ● Web UI, CLI, REST API ● master-slave; Single-node and sharded environments ● third-party caches ● unique proprietary language ● CLI tools for maintenance CouchbaseMongoDB Multi-Dimensional Scaling 12 13 Queries Update workload 14https://www.datanami.com/2019/01/16/benchmarking-nosql-databases/ Short-range scan workload 15 16 17 DEMO 18 Questions 19