Наш кластер HBase (версия 2.1.10) генерирует слишком маленькие файлы HFile,
часто менее 10 МБ, а иногда и всего 2 КБ.
Это происходит несмотря на настройку hbase Для .hregion.memstore.flush.size значение 256M и
параметры настройки, такие как hbase.hregion.percolumnfamilyflush.size.lower.bound.min, чтобы они соответствовали размеру флеша. Кроме того, мы включили сжатие в памяти BASIC.
Основная причина, по-видимому, заключается в глобальном характере MemStoreSizing. Эта переменная, общая для всех семейств столбцов в регионе, запускает очистку всего региона, когда общий размер хранилища памяти превышает пороговое значение.
Следовательно, даже если только одно семейство столбцов активно накапливает данные. , весь регион очищается, что потенциально может привести к созданию небольших HFile.
Мы ищем рекомендации по стратегиям предотвращения создания маленьких HFile и включения очистки для каждого семейства столбцов в нескольких -column-family таблицы HBase.
Подробнее здесь: https://stackoverflow.com/questions/791 ... mall-files