У меня есть база данных pgAdmin, которая содержит миллионы строк в формате geo json. Используя эту таблицу, я создаю панель инструментов Tableau. Поскольку строки содержат данные в формате geo json, я должен запросить их следующим образом:
select jsondata ->> 'id' as id,
jsondata -> 'properties' ->> 'qq',,
jsondata -> 'properties' ->> 'www',
jsondata -> 'properties' ->> 'eeee',
jsondata -> 'properties' ->> 'qwer' ,
jsondata -> 'properties' ->> 'yyy',
split_part(jsondata -> 'properties' -> '@ab:com:abc:wxy'->'tags'->>0,'@',2),
split_part(jsondata -> 'properties' -> '@ab:com:abc:wxy'->'tags'->>1,'@',2),
split_part(jsondata -> 'properties' -> '@ab:com:abc:wxy'->'tags'->>2,'@',2),
split_part(jsondata -> 'properties' -> '@ab:com:abc:wxy'->'tags'->>3,'@',2),
split_part(jsondata -> 'properties' -> '@ab:com:abc:wxy'->'tags'->>4,'@',2),
split_part(jsondata -> 'properties' -> '@ab:com:abc:wxy'->'tags'->>5,'@',2),
split_part(jsondata -> 'properties' -> '@ab:com:abc:wxy'->'tags'->>6,'@',2),
TIMESTAMP 'epoch' + cast(cast(jsondata -> 'properties'->'@ab:com:abc:wxy'->>'createdAt'as bigint)/1000 as int) * INTERVAL '1 second' as create_date,
TIMESTAMP 'epoch' + cast(cast(jsondata -> 'properties'->'@ab:com:abc:wxy'->>'updatedAt'as bigint)/1000 as int) * INTERVAL '1 second' as Update_date
from schema.table_name
Когда данные были в тысячах строк, я использовал для подключения эту базу данных в прямом эфире с таблицами, но теперь данные увеличились и это будет расти день ото дня. Я хочу создать инструментальную панель таблиц, используя процесс ETL, я думаю о Talend , но я хочу сделать это программно, используя python.
Может кто-нибудь предложить мне, как это сделать?