Существуют такие инструменты, как Camus и Apache Gobblin, в которых есть сценарии для непрерывного извлечения данных Kafka, а также процессы «очистки / сжатия», которые могут запускаться планировщиками, такими как Oozie, для создания больших временных разделов
Вы также можете взглянуть на Kafka Connect Framework с плагином HDFS от Confluent (вам не нужно запускать установку Confluent's Kafka для его использования). Он поддерживает пакетирование и большие файлы (с него я получил до 4 ГБ файлов на раздел Kafka), и он автоматически создаст для вас разделы Hive
Или Apache Nifi может использоваться между вашими потоками и хранилищем для сжатия данных перед посадкой на Hadoop
Единственная другая альтернатива, о которой я знаю, это инструменты на основе mapreduce на Github (filecrush - один) или написание собственного скрипта Hive / Pig / Spark, который читает местоположение, очень мало преобразует его (например, вычисляет раздел даты), затем записывает это где-то еще. Это приведет к тому, что меньшие блоки будут объединены в несколько, и в каждой инфраструктуре есть настройки hadoop для контроля того, сколько данных должно выводиться на файл