ApsaraDB for Cassandra is a distributed NoSQL database that is based on open source Apache Cassandra and integrated with the Alibaba Cloud Database as a Service (DBaaS) features. ApsaraDB for Cassandra has developed from more than a decade based on the distributed architecture of Amazon DynamoDB and data model of Google Cloud Bigtable. ApsaraDB for Cassandra features the following outstanding advantages: distributed, decentralized, and multi-active architecture, elastic scalability, high availability, fault tolerance, tunable consistency, and SQL-like Cassandra query language (CQL). Cassandra is developed for Internet business and has powered services for Internet companies. It is the most popular wide table database. Alibaba Cloud launched ApsaraDB for Cassandra in August 2019.
Cassandra is preferable in the following scenarios:
Reason 1: Cassandra is developed for the Internet business
If you have transaction-related services, we recommend that you use MySQL or PolarDB. MySQL or PolarDB can provide transaction and SQL features to run business operating software system (BOSS), custom relationship management (CRM), and enterprise resource planning (ERP) systems. However, for Internet business that requires high availability, high concurrency, massive storage, tunable consistency, and elasticity, we recommend that you choose ApsaraDB for Cassandra rather than MySQL.
- High availability: provides unaffected services when a node fails. You must configure redundancies for nodes and data replicas and set the read/write consistency to QUORUM.
- High scalability: provides storage from 160 GB to 10 PB and thousands to tens of millions of queries per second (QPS). You can add more nodes and data centers to your services.
- Tunable consistency: provides high availability and strong consistency by setting the read/write consistency level to QUORUM. You can configure low consistency for Internet of Things (IoT) services based on your business features to achieve higher performance and lower costs.
We recommend that you use Cassandra for services such as online chatting and messages, news feeds, history orders, object storage, shopping carts, billing systems, and comments. The services also include data-driven services such as risk control, recommendation, user personas, IoT, and log analysis.
Reason 2: easy to use for developers and DBAs
A MySQL developer or database administrator (DBA) can master the skills of Cassandra databases in a short period of time. Cassandra is easy to use and manage and features the following advantages:
- SQL-like Cassandra query language (CQL) enables MySQL database developers and other traditional database developers to directly use Cassandra databases.
- Provides the security authentication, Security Sockets Layer (SSL) certificate, and complete authentication system for DBAs.
- Provides complete index services such as LocalIndex, materialized views (MV), and SSTable-Attached Secondary Index (SASI) full-text index for developers.
- Native Apache Cassandra provides client drivers (non-Thrift mode) for multiple programming languages, such as Java, Python, PHP, .NET, and Node.js. The performance of native client drivers is consistent with that of Java clients.
Reason 3: combined with X-Pack Spark to facilitate big data storage
Spark is a mainstream default engine for big data processing and Cassandra is a mainstream NoSQL big data database. Cassandra and Spark allow you to manage data-driven services such as risk control, recommendation, and IoT. ApsaraDB for Cassandra provides the X-Pack Spark engine to facilitate your usage.
Reason 4: Alibaba Cloud database team offers 24/7 support to ensure database stability and security
ApsaraDB for Cassandra provides enterprise-grade features such as multiple data centers deployed in a zone and backup and restoration. Alibaba Cloud database team offers 24/7 support to ensure database stability and security and provides enhanced performance and service-related features for your database.