Проверка IP-адреса по диапазону CIDR в красном смещении
У меня есть проблема, которую я пытался решить, я нагуглил несколько вещей, которые похожи на то, что я хочу сделать, но не могу понять, как именно это сделать,
У меня около 250 миллионов IP-адресов, и я хочу сравнить их с данными maxmind geolite2, чтобы я мог определить, из какой страны исходит каждый IP-адрес,
Я импортировал все данные в мой кластер Redshift с Talend,
table a has ID and 'ipaddress' ie 10.0.0.5
table b (maxmind) has country name and IP range as expressed as 10.0.0.0/24
Как я могу использовать Redshift SQL, чтобы соответствовать этим двум, учитывая размер моего источника данных?
изменить: вот ссылка на данные geolite2 https://dev.maxmind.com/geoip/geoip2/geolite2/
1 ответ
Вы можете попробовать использовать Amazon Redshift для импорта пользовательских модулей библиотеки Python для загрузки библиотеки netaddr. Затем вы можете использовать библиотеку в пользовательской функции, написанной на Python.
Смотрите также: Преобразование диапазона IP в CIDR в Python?