установка библиотеки h3 python в AWS Redshift для использования в UDF - PullRequest
0 голосов
/ 31 января 2020

Я пытался установить библиотеку python из ubers H3 в качестве пользовательской библиотеки для aws красного смещения, используя this для установки. Я проследил за процессом и создал следующую функцию:

create or replace function geo_to_h3 (lat float, lon float, h3_resolution int)
 returns varchar(60)
stable
as $$
   from h3 import h3
   return h3.geo_to_h3( lat , lon, h3_resolution)
$$ language plpythonu;

При выполнении с:

select geo_to_h3(38.774467 , -9.115598, 9)

я получаю следующую ошибку:

OSError: /rdsdbdata/user_lib/0/0/1334190.zip/h3/out/libh3.so.1: невозможно открыть общий объектный файл: не каталог

Пробовал то же самое с установкой h3cy при красном смещении и использовании его в коде, но я получаю:

ImportError: Нет модуля с именем _h3

Я также проверил это с помощью простой библиотеки для проверки создание, и это работает. Может быть потому, что h3 для python это просто привязка к базовой библиотеке в C. Любой совет о том, как это запустить, или невозможно установить все типы библиотек python на AWS Redshift?

1 Ответ

1 голос
/ 04 февраля 2020

Библиотеки, импортированные в Redshift, в настоящее время должны быть чистыми Python. Предварительно скомпилированные расширения C / C ++ не допускаются.

...