Дисковое пространство базы данных голодного NoSQL

Я протестировал базы данных NoSQL как CouchDB, MongoDB и Cassandra и наблюдал тенденцию к поглощению очень большой суммы дискового пространства относительно вставленных пар "ключ-значение". Когда сравнение CouchDB и MySQL бессхемные базы данных CouchDB использует намного больше дискового пространства, чем MySQL. Я знаю о том значении ключа, DBS по умолчанию является управлением версиями и имеет длинный uuid и нуждается в ключе optimalisation - сравнение было приблизительно между 15 млн строк в MySQL, и 1-5 млн документов перечислили NoSQL DB.

Мой вопрос: Есть ли NoSQL с хорошим уплотнением / сжатие данных? Так, чтобы у меня могла быть база данных NoSQL с размером ближе к 5 ГБ, чем 50 ГБ?

5
задан Community 22 September 2017 в 18:01
поделиться

3 ответа

В MongoDB есть функция "восстановления базы данных", которая также выполняет уплотнение. Однако такое уплотнение не будет происходить во время работы БД.

Но если место в БД является серьезной проблемой, попробуйте создать пару MongoDB master/slave. Когда данные потребуют уплотнения, запустите ремонт на ведомом, дайте ему "догнать", а затем поменяйте их местами. Теперь вы можете спокойно уплотнять данные на ведущем устройстве.

Но я должен повторить комментарий jbellis: вам, вероятно, понадобится больше места, а большинство этих продуктов исходят из предположения, что дисковое пространство (относительно) дешево. Если дисковое пространство действительно ограничено, то вы обнаружите, что MongoDB имеет разумный размер, но ей будет трудно конкурировать с табличными данными CSV.

Подумайте об этом так: что занимает больше места?

  • CSV-файл с миллионом строк
  • те же данные, отформатированные в JSON

Очевидно, что JSON будет длиннее, потому что вы каждый раз повторяете имена полей. Единственным исключением здесь является CSV-файл с примерно 100 столбцами, из которых только несколько заполнены для каждой строки. (но это, вероятно, не ваши данные)

1
ответ дан 14 December 2019 в 13:26
поделиться

Дисковое пространство на сегодняшний день является одним из самых дешевых ресурсов, поэтому, если вы можете обменять его на меньшее количество запросов или меньшее использование ЦП, это хорошая сделка. Это то, что делает Кассандра.

4
ответ дан 14 December 2019 в 13:26
поделиться

Вы проверяете "длину файла" или фактический размер выделения?

Многие базы данных редко выделяют файловые структуры, и их "длина" намного больше, чем размер на диске.

0
ответ дан 14 December 2019 в 13:26
поделиться
Другие вопросы по тегам:

Похожие вопросы: