Apache Cassandra is a free, open-source wide-column NoSQL database originally built at Facebook and now maintained by the Apache Software Foundation. It ranks #22 in real-world usage at roughly 2.9% adoption, and it's chosen when data volume outgrows what a single server can hold โ it spreads writes across many machines with no single point of failure.
Cassandra Query Language (CQL) looks SQL-like, but tables are designed around how you'll query them, not around normalized relationships.
CREATE TABLE users_by_email (
email text PRIMARY KEY,
user_id uuid,
name text
);
INSERT INTO users_by_email (email, user_id, name)
VALUES ('[email protected]', uuid(), 'Ada');
SELECT * FROM users_by_email WHERE email = '[email protected]'; -- fast lookup by partition key
The fastest way to try Cassandra locally is with Docker, then connect using its interactive shell, cqlsh.
# run a single-node cluster locally
docker run --name cassandra -p 9042:9042 -d cassandra:latest
# connect with the CQL shell
docker exec -it cassandra cqlsh