Можете ли вы использовать HDFS в качестве основного хранилища?

Надежно ли сохранять ваши данные в Hadoop и использовать их с помощью Spark/Hive и т. д.?

Каковы преимущества использования HDFS в качестве основного хранилища?


person marz    schedule 07.04.2019    source источник


Ответы (2)


HDFS настолько надежен, насколько надежны узлы Namenode, поддерживающие метаданные файла. Вам лучше настроить Namenode HA и часто делать их снимки, а также хранить их вне HDFS.

Если все Namenodes недоступны или их хранилище метаданных повреждено, вы не сможете прочитать данные узла данных HDFS, несмотря на то, что эти файлы сами по себе в порядке и имеют высокую доступность.

person OneCricketeer    schedule 07.04.2019

Вот несколько рекомендаций по хранению данных в Hive и HDFS (и/или HBase).

Улей:

  1. HDFS — это файловая система, поддерживающая отказоустойчивость и высокую доступность. HDFS будет реплицировать данные на нескольких узлах данных в зависимости от выбранного вами коэффициента репликации. Hive построен на основе Hadoop, поэтому может хранить данные в HDFS, а также использовать преимущества HDFS для высокой доступности.
  2. Hive использует predicates-pushdown обеспечивает огромные преимущества в производительности. Hive также можно комбинировать с современными форматами файлов, такими как паркет и ORC, что еще больше повышает производительность (используя predicates-pushdown).
  3. Hive обеспечивает очень простой доступ к данным через HQL (язык запросов Hive), который похож на язык SQL.
  4. Hive очень хорошо работает со Spark, и вы можете комбинировать их как извлечение данных Hive в фреймы данных, так и сохранение фреймов данных в Hive.

HDFS/HBase:

  1. Hive — это система хранилища, используемая для анализа данных, поэтому операции Hive CRUD относительно медленнее, чем прямой доступ к файлам HDFS (или HBase, созданный для быстрых операций CRUD). Например, в потоковом приложении сохранение данных в HDFS или HBase будет намного быстрее, чем в Hive. Если вам нужно быстрое хранилище (или запросы на вставку) и вы не выполняете анализ больших наборов данных, вам следует предпочесть HDFS/HBase Hive.
  2. Если производительность очень важна для вашего приложения, и поэтому вы предпочитаете пропустить дополнительный уровень Hive для прямого доступа к файлам HDFS.
  3. Команда решает не использовать SQL.

Похожая запись:

Когда использовать Hadoop, HBase, Hive и Pig?

person abiratsis    schedule 07.04.2019
comment
В сообщении не спрашивали о HBase или Hive...? - person OneCricketeer; 09.04.2019
comment
Я думаю, что речь идет и о различиях между HDFS и Hive. И как они связаны или как их можно объединить. По крайней мере, это один из способов интерпретировать это :) - person abiratsis; 09.04.2019