Я копирую свои темы kafka в s3 с помощью confluent kafka-connect-s3 https://www.confluent.io/hub/confluentinc/kafka-connect-s3. Я хочу иметь возможность легко запрашивать эти данные с помощью Athena и правильно разбивать их для дешевого / быстрого чтения.
Я хочу разделить по кортежу (год / месяц / день / тема). У меня уже есть часть года / месяца / дня, решенная с помощью Daily partitioner https://docs.confluent.io/kafka-connect-s3-sink/current/index.html#partitioning-records-into-s3-objects. Теперь год = ГГГГ / месяц = ММ / день = ДД вводится в путь, поэтому любые запросы на основе улья оптимизируются / секционируются вовремя. Глядя на объяснение msck, обратите внимание на пример, использующий userid=
https://docs.aws.amazon.com/athena/latest/ug/msck-repair-table.html
Однако на основе этих документов https://docs.confluent.io/kafka-connect-s3-sink/current/index.html#s3-object-names Я вижу {topic} в пути, но нет возможности изменить его на topic = { тема}. Я мог бы встроить это в префикс (вместо env = {env} префикс был бы env = {env} / topic = {topic}), но это кажется излишним с другим единственным дочерним каталогом {topic} под ним.
Я также заметил, что имя темы находится в имени сообщения, разделенном знаком + (вместе с разделом и начальным смещением).
Мой вопрос . . . как я могу получить topic = {topic} в моем пути, чтобы запросы на основе куста автоматически создавали этот раздел? Или я уже получил это бесплатно, указав его в пути (без темы =) или в имени сообщения (опять же, без темы =)
_schemas
, если вы используете реестр схем) - person OneCricketeer   schedule 21.05.2021