У чому різниця між Кассандрою та CouchDB?


76

Я розглядаю обидва проекти, і насправді не бачу різниці

з сайту Кассандра:

Кассандра - це надзвичайно масштабований, врешті-решт послідовний, розподілений, структурований сховище ключ-значення ... Кассандра врешті-решт послідовний. Як і BigTable, Кассандра пропонує модель даних на базі ColumnFamily, багатшу, ніж типові системи ключ / значення.

з сайту CouchDB:

Apache CouchDB - це розподілена, відмовостійка та без схем база даних, орієнтована на документи, доступна через RESTful HTTP / JSON API.

Тим не менш, я бачу конкретні відмінності між кожним проектом як: методи доступу, письмові мови тощо, але, якщо сказати ПРИКЛАД, коли ви говорите про SOLR або Sphinx, ви знаєте, що обидва індексатори мають великі відмінності, але в кінці - індексатори.

Чи можу я сказати тут, що Кассандра та CouchDB є нереляційними базами даних, які в деяких випадках можуть замінити іншу?

Відповіді:


79

CouchDB - це магазин документів. Ви поміщаєте в нього документи (об'єкти JSON) і визначаєте подання (індекси) над ними. Об'єкти можуть бути довільно складними з потенційно глибокою структурою. Крім того, вони не обмежуються дотриманням певної послідовної схеми.

Кассандра - це розірвана таблиця магазину ключ-значення. Він просто зберігає рядки, кожен з яких має набір іменованих стовпців, згрупованих у сімейства зі значеннями. Це звучить досить близько до BigTable; BigTable не вимагає, щоб кожен рядок мав однакову структуру (на відміну від бази даних SQL). Значення можуть мати певну структуру, але цей тип сховища нічого про це не знає - це лише рядки / послідовності байтів.

Так, вони обидві є нереляційними базами даних, і їх застосовність, мабуть, є досить багатою, але вони мають чітко різні моделі організації даних. Кожну, напевно, можна змусити наслідувати іншу, але кожна модель найкраще буде відповідати різному набору проблем.


34

CouchDB має функцію, яка присутня в дуже небагатьох технологіях баз даних з відкритим кодом: автономна реплікація. CouchDB розроблений таким чином, що додатки можна запускати на межі мережі. Ці програми доступні, навіть якщо з’єднання з Інтернетом не працює.

Реплікація в автономному режимі також може бути використана для створення великих кластерів, але CouchDB спроектований таким чином, щоб бути надійним і простим, незалежно від того, працює він на одному сервері, в центрі обробки даних або навіть на смартфоні.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.