LINUX.ORG.RU

Отказоустойчивый Key-Value storage

 , , , ,


1

1

Для Node.js сервиса, который принимает и отдает файлы нужно выбрать отказоустойчивый key-value store. Уже слышал про riak и знаю, что он поддерживает LevelDB. Сервис уже хранит метаданные в LevelDB СУБД (как JSON документы), но загруженные файлы все еще хранятся в файловой системе.

Каким образом мне нужно будет организовать репликацию данных? Должен ли я хранить загруженные файлы в LevelDB Store как BLOB (в терминологии SQL Субд)?

Можно ли делать репликацию LevelDB баз без riak? чем и как это лучсех делать в Node.js? Или лучше взять Riak?

Раздел не попутал?

Stil ★★★★★ ()

Riak просто хранит данные сразу в нескольких экземплярах leveldb или других backends, не важно. Riak подразумевает кластер машин, он каждую запись записывает сразу в несколько экземпляров leveldb. Имеем избыточность, одновременно являющуюся репликацией и бэкапом. Любую из машин можно изъять без потери данных. и чем больше машин в кластере, тем больше машин можно изъять из клаcтера без потери его работоспособности в общем случае (это зависит от настроек). Так что это не совсем репликация в привычном понимании этого слова.

Если нужна обычная репликация, лучше взять что-то традиционное, типа mysql или postgres. LevelDB это не нечто волшебное, позволяющее себя легко реплицировать, это простая файловая key-value БД.

shimshimshim ()
Ответ на: комментарий от stevejobs

мне говорили, что MongoDb не подходит для таких задач.

А где еще хранить отображение ключ -> простой JSON документ

или

ключ -> бинарные данные? В INI файле?

EnterpriseMobility ()
Ответ на: комментарий от EnterpriseMobility

Мне не нужна SQL база. Мне нужна отказоустойчивый Key-Value store

И давно SQL перестал мочь в Key-Value?

PS Разуй уже свои лупёшки, bdb должен подойти на 146% .

Manhunt ★★★★★ ()
Ответ на: комментарий от EnterpriseMobility
Синячат два бича, закусывают с газеты. Один, что-то с неё прочитав, произносит:
— Беспокоит меня Гондурас.
Второй в ответ:
— Ну так почеши его.
Manhunt ★★★★★ ()

Я думаю что лучше действительно переимпортировать данные полностью в Riak

vertexua ★★☆☆☆ ()
Ответ на: комментарий от EnterpriseMobility

CouchDB

Нет, PouchDB :) Для ноды он работает поверх leveldb, репликация из коробки, есть pouchdb-server.

Black_Roland ★★★★ ()
Последнее исправление: Black_Roland (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.