2016-11-25 5 views
1

Если у нас есть миллионы небольших текстовых файлов размером от нескольких килобайт до нескольких МБ, какой из HDFS и HBASE занимает меньше времени обработки? А также меньше потребления памяти?HDFS vs HBASE: Какой из них лучше работает на миллионах небольших текстовых файлов?

+0

HDFS не предназначена для небольших файлов. Связанный. http://stackoverflow.com/questions/13993143/hdfs-performance-for-small-files?rq=1 –

ответ

4

Это вопрос высокого уровня. Информация о типе данных отсутствует. Однако, в общих чертах, нам нужно помнить о следующих моментах, когда мы решаем такие вещи, как хранить? В HDFS или HBase:

Поскольку у нас есть файлы меньшего размера в большом качестве, их хранение в HDFS имеет пару проблем.

  1. метаданных на имя узла будет высокой
  2. Если размер блока (вход расщепляет размер) не настроены должным образом, полный потенциал местности данных и параллельной обработки не будут использованы . Для получения дополнительной информации о соотношении между Разделом входа и Размер блока см. Split size vs Block size in Hadoop.

    Итак, хранение его в HDFS практически исключено, если у вас нет веских оснований для этого.

Если мы решили сохранить в HDFS, можем ли мы объединить файлы вместе, чтобы сделать его достаточно большим для размера блока? Как это влияет на производительность?

HBase, однако, преодолевает эти проблемы, поскольку хранит данные в таблицах, а также методами уплотнения. Но прежде чем заключить HBase в качестве платформы хранения, мы должны рассмотреть следующие вопросы:

  1. Имеются ли в наличии данные, подходящие для HBase? Или у данных есть схема?
  2. Можно ли построить строку-строку, подходящую для данных, которые могут распространяться через серверы региона HBase?

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

0

Если у вас есть миллионы небольших файлов, различающихся от КБ до МБ, работа HDFS и MapReduce является излишней для обработки данных.

HBase является одной из альтернатив для решения этой проблемы. Но у вас есть другие альтернативы, такие как Файл архива Hadoop (HAR) и Файлы последовательности.

Обратитесь к этим вопросам, связанным SE:

Parsing millions of small XML files

Difference between HBase and Hadoop/HDFS