Как оптимизировать сканирование 1 огромного файла / таблицы в Hive, чтобы подтвердить / проверить, содержится ли длинная точка в форме геометрии wkt

В настоящее время я пытаюсь связать каждый широковещательный пинг с устройства с его почтовым индексом.

Я удалил нормализованные данные проверки связи по длинному латинскому устройству и создал таблицу соединений между продуктами и декартовыми продуктами, в которой каждая строка имеет ST_Point (long, lat), geometry_shape_of_ZIP и связанный почтовый индекс для этой геометрии. для тестирования у меня в таблице около 45 миллионов строк, и она будет увеличиваться до 1 миллиарда каждый день.

Несмотря на то, что данные сглажены и условия соединения отсутствуют, выполнение запроса занимает около 2 часов. Есть ли более быстрый способ вычисления пространственных запросов? Или как я могу оптимизировать следующий запрос.

Inline - это некоторые шаги оптимизации, которые я уже выполнил. При использовании оптимизаций все остальные операции выполняются не более чем за 5 минут, за исключением одного шага. Я использую кластер AWS 2 узловых узлов и 5 узлов данных.

set hive.vectorized.execution.enabled = true;

set hive.execution.engine=tez;

set hive.enforce.sorting=true;

set hive.cbo.enable=true;

set hive.compute.query.using.stats=true;

set hive.stats.fetch.column.stats=true;

set hive.stats.fetch.partition.stats=true;

analyze table tele_us_zipmatch compute statistics for columns;

CREATE TABLE zipcheck (

`long4` double,

`lat4` double,

state_name string,

country_code string,

country_name string, region string,

zip int,

countyname string) PARTITIONED by (state_id string)

STORED AS ORC TBLPROPERTIES ("orc.compress" = "SNAPPY",

'orc.create.index'='true',

'orc.bloom.filter.columns'='');

INSERT OVERWRITE TABLE zipcheck PARTITION(state_id)

select long4, lat4, state_name, country_code, country_name, region, zip, countyname, state_id from tele_us_zipmatch

where ST_Contains(wkt_shape,zip_point)=TRUE;

ST_Contains - это функция от esri (ссылка:https://github.com/Esri/spatial-framework-for-hadoop/wiki/UDF-Documentation#relationship-tests ).

Любая помощь очень ценится.

Благодарю.

Ответы на вопрос(1)

Ваш ответ на вопрос