как создать раздел в SQL динамически - PullRequest
0 голосов
/ 22 марта 2020

Я довольно новичок в SQL, pandas, spark- SQL, любая помощь будет принята с благодарностью. В приведенной ниже таблице у меня есть данные, где указаны диапазоны, это в основном начало IP-адреса и в конце диапазона я объединю эту таблицу с миллиардами записей, которые хотят уменьшить таблицу,

. В приведенном ниже примере записи № 4 & 5, 7,8 и 9 можно уменьшить до одной, так как диапазон end_ является продолжением диапазона start_ следующей записи

range_start     range_end       ce  isp                                 start_      end_
8.48.112.0      8.48.115.255    US  ASN-IDK-27425 - IdeaTek Telcom, LLC 137392128   137393151
64.6.130.0      64.6.130.255    US  ASN-IDK-27425 - IdeaTek Telcom, LLC 1074168320  1074168575
64.6.132.0      64.6.133.255    US  ASN-IDK-27425 - IdeaTek Telcom, LLC 1074168832  1074169343
162.213.164.0   162.213.166.255 US  ASN-IDK-27425 - IdeaTek Telcom, LLC 2731910144  2731910911
162.213.167.0   162.213.167.255 US  ASN-IDK-27425 - IdeaTek Telcom, LLC 2731910912  2731911167
192.102.15.0    192.102.15.255  US  ASN-IDK-27425 - IdeaTek Telcom, LLC 3227913984  3227914239
198.241.48.0    198.241.49.255  US  ASN-IDK-27425 - IdeaTek Telcom, LLC 3337695232  3337695743
198.241.50.0    198.241.51.255  US  ASN-IDK-27425 - IdeaTek Telcom, LLC 3337695744  3337696255
198.241.52.0    198.241.58.255  US  ASN-IDK-27425 - IdeaTek Telcom, LLC 3337696256  3337698047
198.241.59.0    198.241.59.255  US  ASN-IDK-27425 - IdeaTek Telcom, LLC 3337698048  3337698303
198.241.61.0    198.241.62.255  US  ASN-IDK-27425 - IdeaTek Telcom, LLC 3337698560  3337699071
198.241.63.0    198.241.63.255  US  ASN-IDK-27425 - IdeaTek Telcom, LLC 3337699072  3337699327
204.9.24.0      204.9.27.255    US  ASN-IDK-27425 - IdeaTek Telcom, LLC 3423148032  3423149055

, его можно уменьшить, как показано ниже

range_start     range_end       ce  isp                                 start_      end_
8.48.112.0      8.48.115.255    US  ASN-IDK-27425 - IdeaTek Telcom, LLC 137392128   137393151
64.6.130.0      64.6.130.255    US  ASN-IDK-27425 - IdeaTek Telcom, LLC 1074168320  1074168575
64.6.132.0      64.6.133.255    US  ASN-IDK-27425 - IdeaTek Telcom, LLC 1074168832  1074169343
162.213.164.0   162.213.166.255 US  ASN-IDK-27425 - IdeaTek Telcom, LLC 2731910144  2731911167
192.102.15.0    192.102.15.255  US  ASN-IDK-27425 - IdeaTek Telcom, LLC 3227913984  3227914239
198.241.48.0    198.241.49.255  US  ASN-IDK-27425 - IdeaTek Telcom, LLC 3337695232  3337698303
198.241.61.0    198.241.62.255  US  ASN-IDK-27425 - IdeaTek Telcom, LLC 3337698560  3337699327
204.9.24.0      204.9.27.255    US  ASN-IDK-27425 - IdeaTek Telcom, LLC 3423148032  3423149055

Может ли это быть достигнуто в SQL или Pandas? Я попытался в pandas, но это было немного медленно, пожалуйста, дайте мне знать

...