Как некоторые могут догадаться, по работе я довольно плотно связан с гео-аналитикой и пространственными данными. Тема интересная, хотя, наверное, не настолько как бухгалтерия.
На днях выродился очередной побочный продукт упражнений с гео-бигдатой: так называемый spark.ml.transformer, задача которого участвовать в пайплайнах (ml.pipeline) обработки данных.
Называется трансформер BroadcastSpatialJoin и, очевидно, он умеет в join входного датасета с заданным внешним датасетом по пространственным отношениям между их элементами.
Как лицо благодарное (сообществу проектов с открытым кодом) и ответственное, трансформер я оформил как открытый проект:
Кому надо, тот разберется.
Базовый механизм джойна позаимствован (и изрядно переработан) из другого проекта:
Как оказалось, всякие другие GeoSpark-и, Magellan-ы и прочие GeoMesa-ы для наших задач были оверкиллом и/или требовали слишком много работы крупным напильником.
Вы прослушали передачу на тему "какой я за?пательский программист".
Всем спасибо, все свободны.
original post https://vasnake.blogspot.com/2019/04/sparkmltransformer-spatial-join.html