2016-11-12 5 views
3

Что такое лучший выбор для долгосрочного хранилища (многие записи, несколько чтений) данных, обработанных через Spark Streaming: Parquet, HBase или Cassandra? Или что-то другое? Каковы компромиссы?Каков наилучший способ хранения входящих потоковых данных?

+0

Я хотел бы предложить Кассандру из всех возможностей базы данных, которые он имеет, и среди Alll база данных имеют самую быструю запись. –

+0

PLS проверить мой ответ. Надеюсь, что это поможет! –

ответ

1

В моем опыте мы использовали Hbase в качестве хранилища данных для данных искры потоковых (мы также же сценарий много пишем и читаем мало), так как мы используем Hadoop, HBase имеет встроенную интеграцию с Hadoop и это было хорошо ..

  • Выше мы использовали tostore скорость Hight сообщений подходя с утешением.

  • HBase хорошо подходит для сканирования на основе диапазона. Casandra известен доступностью и многими другими вещами ...

  • Тем не менее, я также могу наблюдать одну общую тенденцию во многих проектах, они просто хранят rawdata в hdfs (паркет + avro) в секционированной структуре через искрообразование с искрой dataframe (SaveMode.Append) и они обработка RAWDATA с искрой

Еха секционированной структуры в HDFS: completion ofbusinessdate/environment/businesssubtype/message type и т.д .... в этом случае нет необходимости идти к Hbase или любому другому хранилищу данных

.

Но одна из распространенных проблем в вышеприведенном подходе заключается в том, что вы получаете небольшие и крошечные файлы, используя потоковое вещание, тогда вам нужно будет repartion(1) или colelese или FileUtils.copymerge для удовлетворения требований размера блока к одному секционированному файлу. Кроме того, этот подход был бы прекрасен.

Вот что-то называется CAP-червь, на основе которого можно принять решение. enter image description here

  1. Последовательность (все узлы увидеть те же данные одновременно).

  2. Доступность (каждый запрос получает ответ о том, удалось ли ему ).

  3. толерантность Partition (система продолжает работать, несмотря на произвольного разбиения из-за сбоев в работе сети)

Casandra поддерживает AP.

Hbase поддерживает CP.

Посмотрите подробный анализ дал here

+0

Был ли мой ответ полезным? пожалуйста, задавайте вопросы. Благодаря! –

Смежные вопросы