ru

Apache Cassandra кластер на офшорных VPS

Apache Cassandra - distributed NoSQL база данных с masterless архитектурой. Создана в Facebook для inbox search, сейчас используется в Netflix, Apple, Uber. Linear scalability - добавил узел, получил пропорциональный прирост throughput. Идеально для write-heavy workload: логи приложений, time-series, event sourcing, messaging. Хостинг кластера на офшорных NVMe VPS.

Need this done for your project?

We implement, you ship. Async, documented, done in days.

Start a Brief

Masterless и горизонтальное масштабирование

В отличие от Postgres/MySQL/MongoDB которые имеют master или primary узел, Cassandra полностью masterless. Все узлы равноправны, любой узел может принимать любую операцию read или write. Координация через gossip protocol - узлы обмениваются информацией о состоянии кластера. Данные распределены по consistent hashing ring - каждый узел отвечает за определённый диапазон partition key. Репликация настраивается per-keyspace: типично RF=3, что означает каждая запись хранится на 3 узлах. Consistency level настраивается per-query: ONE (быстро, может вернуть устаревшие данные), QUORUM (RF/2+1 узлов согласны, баланс скорости и консистентности), ALL (медленно, гарантированно последние данные). Для большинства запросов LOCAL_QUORUM в multi-region setup.

Когда Cassandra правильный выбор

Cassandra сияет на специфических workload-ах. Write-heavy - десятки тысяч записей в секунду на узел через LSM-tree storage. Запись это append-only в memtable, fsync редкий, диск не насилуется random I/O. Time-series - метрики, события, логи с TTL. Cassandra автоматически удаляет старые данные через tombstones. Event sourcing - immutable event log, idempotent writes, replay для пересоздания состояния. IoT - миллионы датчиков шлют телеметрию, partition key по device_id даёт linear scalability. Messaging - inbox по user_id, последние N сообщений запрашиваются мгновенно. Cassandra плохо подходит для: транзакций между несколькими таблицами (нет ACID между partition), сложных JOIN (есть только в Spark SQL поверх Cassandra), уникальных constraints кроме primary key.

Конфигурация кластера и тюнинг

Минимальный production-кластер Cassandra - 3 узла с replication factor 3. Каждый узел: 8 vCPU, 32 GB RAM, 1 TB NVMe. Cassandra использует JVM, поэтому критично правильно настроить heap (G1GC, 8-16 GB heap, не больше - дольше paused GC). Off-heap memory для page cache - оставляем 50 процентов RAM операционке. Compaction strategy - SizeTieredCompactionStrategy для write-heavy, LeveledCompactionStrategy для read-heavy, TimeWindowCompactionStrategy для time-series. Consistency и data centers - в multi-region setup настраиваем NetworkTopologyStrategy с RF=3 в каждом DC. LOCAL_QUORUM запросы остаются в одном DC. Backup - nodetool snapshot создаёт hard-link snapshot всей data directory без блокировок. Шифрование GPG и заливка в S3-совместимое хранилище.

Why Anubiz Host

100% async — no calls, no meetings
Delivered in days, not weeks
Full documentation included
Production-grade from day one
Security-first approach
Post-delivery support included

Ready to get started?

Skip the research. Tell us what you need, and we'll scope it, implement it, and hand it back — fully documented and production-ready.

Anubiz Chat AI

Online