Ежедневный архив данных из Postgres в Hive / HDFS - PullRequest
1 голос
/ 29 сентября 2019

Я работаю над конвейером данных IOT и каждую секунду получаю сообщения с нескольких устройств в базу данных postgres.Postgres будет иметь данные только в течение двух дней, а через два дня данные будут сбрасываться, чтобы каждый раз появлялись данные за последние два дня.Теперь мне нужно было ежедневно архивировать данные из postgres в HDFS.У меня есть следующие параметры: deviceid, timestamp, year, month, day, temperature, humidity

Я хочу ежедневно архивировать его в HDFS и запрашивать эти данные с помощью запроса улья.Для этого мне нужно создать внешнюю секционированную таблицу в Hive, используя deviceid, год и месяц в качестве разделов.Я пробовал следующие опции, но они не работают:

  1. Я пытался использовать sqoop для копирования данных, но он не может создавать динамические папки на основе различных идентификаторов устройств, года и месяца, чтобы внешняя таблица кустов моглавыберите разделы
  2. Использовал импорт sqoop с использованием атрибута --hive-import, чтобы данные могли быть скопированы непосредственно в таблицу кустов, но в этом случае они перезаписывают существующую таблицу, и я также не уверен, работает ли это для разделенной таблицы или нет

Пожалуйста, предложите несколько решений для архивирования.

Примечание. Я использую службы Azure, поэтому открыт вариант для фабрики данных Azure.

...