powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / C++ [игнор отключен] [закрыт для гостей] / Тяпничная география
25 сообщений из 177, страница 1 из 8
Тяпничная география
    #38903802
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здарова други!

Кодеры. Программеры. Арифметики и счетоводы. И сочувтвующие.

Значит есть у меня база. В формате csv . И прогружена в БД для удобства. Диапазоны IPv4 адресов и привязка к странам .

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
2.92.0.0,2.95.255.255,"RU","48","Moscow","",55.7522,37.6156,,
2.96.0.0,2.96.23.255,"GB","H8","Liverpool","",53.4167,-3.0000,,
2.96.24.0,2.96.27.255,"GB","N1","Saint Helens","",53.4500,-2.7333,,
2.96.28.0,2.96.47.255,"GB","H8","Liverpool","",53.4167,-3.0000,,
2.96.48.0,2.96.51.255,"GB","H2","Skelmersdale","",53.5333,-2.8000,,
2.96.52.0,2.96.55.255,"GB","H8","Liverpool","",53.4167,-3.0000,,
2.96.56.0,2.96.59.255,"GB","H2","Skelmersdale","",53.5333,-2.8000,,
2.96.60.0,2.96.61.255,"GB","N1","Saint Helens","",53.4500,-2.7333,,
2.96.62.0,2.96.63.255,"GB","I2","Manchester","",53.5000,-2.2167,,
2.96.64.0,2.96.65.255,"GB","H2","Ormskirk","",53.5667,-2.9000,,
2.96.66.0,2.96.67.255,"GB","H2","Skelmersdale","",53.5333,-2.8000,,
.....


Тоесть скруль к примеру (89.188.113.172) попадает в диапазон [89.188.106.244 89.188.127.255] - Ru/Moscow.


Задача - визуализировать ВСЕ адреса на картинке. Каждый пиксел - 1 уникальный адрес.
Каждая страна - отдельный цвет.. По сути - получить
мозаику из стран.

Прошу мозговой штурм.

Чо. Как. Трудности. Количественные оценки.
Примеры хард-кода.

Доп. цифры могу предоставить. Сколько адресов. Сколько диапазонов и стран. (Сформирую отчётики)
-----

Спасибо.
...
Рейтинг: 0 / 0
Тяпничная география
    #38903906
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А смысл? Может взять какую нибудь карту мира и на ней раскрасить?
...
Рейтинг: 0 / 0
Тяпничная география
    #38903928
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Смысл - пятничное обсуждение. Чуть позже дам цифирки.
...
Рейтинг: 0 / 0
Тяпничная география
    #38904062
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хопа! А вот и цифирки.

Значит так.

Количество диапазонов.
Код: plsql
1.
2.
3.
4.
5.
SQL> select count(*) from geoipcity;

  COUNT(*)
----------
   5748952



Всего аллоцировано IPv4 адресов.
Код: plsql
1.
2.
3.
4.
5.
SQL> select sum(n_endip-n_startip) from geoipcity;

SUM(N_ENDIP-N_STARTIP)
----------------------
            3155268734


Это чуть меньше адресации 32х бит.

Всего стран.
Код: plsql
1.
2.
3.
4.
5.
SQL> select count(*) from (select distinct country from geoipcity);

  COUNT(*)
----------
       239



Топ 10 стран по количеству аллоцированных адресов.
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
SQL> select * from (select country,sum(n_endip-n_startip) "SUM" from geoipcity group by country order by 2 desc) where rownum<=10;

COUNT        SUM
----- ----------
US    1507673738
CN     267741269
JP     186372005
GB     115678470
DE     111001300
KR      99794924
CA      79731827
FR      71670825
AU      47299268
IT      45215782
...
Рейтинг: 0 / 0
Тяпничная география
    #38904092
Фотография SashaMercury
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Проблема с тем, чтобы понять какие страны граничат друг с другом, и исходя из этого определиться с тем, как их можно раскрашивать.
Если я правильно понял.

Определить это можно только по географическим координатам. Полный перебор очевидно не подходит. Нужно найти подходящий способ определения контура каждой страны. Определить метрику между контурами, и исходя из этого делать выводы об общей границы.

Либо, построить все(либо достаточное количество) точки. Провести триангуляцию области. Сделать выводы о границах, и провести раскраску
...
Рейтинг: 0 / 0
Тяпничная география
    #38904111
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonЗадача - визуализировать ВСЕ адреса на картинке.Так на что должна эта картинка походить? Реальная карта стран? Или тупо прямоугольник 64Кх64К?

В порядке пятничного бреда - а что если попытаться скормить все или часть адресов кластеризации в яндекс.картах ? Они, помнится, где-то писали, что довольно много точек могут прожевать. Правда, вряд ли 5 миллионов смогут.

Кстати, если сделать группировку по координатам, то сколько останется?
...
Рейтинг: 0 / 0
Тяпничная география
    #38904116
Фотография SashaMercury
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoftmaytonЗадача - визуализировать ВСЕ адреса на картинке.Так на что должна эта картинка походить? Реальная карта стран? Или тупо прямоугольник 64Кх64К?

В порядке пятничного бреда - а что если попытаться скормить все или часть адресов кластеризации в яндекс.картах ? Они, помнится, где-то писали, что довольно много точек могут прожевать. Правда, вряд ли 5 миллионов смогут.

Кстати, если сделать группировку по координатам, то сколько останется?

вероятно должна получиться реальная карта стран построенная только на основе IP - адресов. Тут больше 3 миллиардов, где вы тут 5 миллионов увидели не понял:)
...
Рейтинг: 0 / 0
Тяпничная география
    #38904124
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SashaMercuryПроблема с тем, чтобы понять какие страны граничат друг с другом, и исходя из этого определиться с тем, как их можно раскрашивать.
Если я правильно понял.

Определить это можно только по географическим координатам. Полный перебор очевидно не подходит. Нужно найти подходящий способ определения контура каждой страны. Определить метрику между контурами, и исходя из этого делать выводы об общей границы.

Либо, построить все(либо достаточное количество) точки. Провести триангуляцию области. Сделать выводы о границах, и провести раскраску
Нет. Никакой географии пока не нужно. В этой базе нет информации о границах государств.
А сервисы визуализирующие трафик клиентов на сайте с точки зрения гео-локаций уже
существуют. И я не буду их повторять. Мне вообще всегда скушно любое повторение.

А вот отобразить over 3 млрд цветных точек на большом квадрате. Каждая из которых - 1 адрес.
Это мне кажется задачей любопытной. И вовсе не такой однозначной.
...
Рейтинг: 0 / 0
Тяпничная география
    #38904128
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoftmaytonЗадача - визуализировать ВСЕ адреса на картинке.Так на что должна эта картинка походить? Реальная карта стран? Или тупо прямоугольник 64Кх64К?

В порядке пятничного бреда - а что если попытаться скормить все или часть адресов кластеризации в яндекс.картах ? Они, помнится, где-то писали, что довольно много точек могут прожевать. Правда, вряд ли 5 миллионов смогут.

Кстати, если сделать группировку по координатам, то сколько останется?
Думаю - да. Это (предположительно) квадрат со стороной >= 64К пикселов.

Разумно будет с точки зрения дизайна заполнить его нейтральным серым цветом.
Это будет маркировка не использованых или потерянных адресов. Или адресов
локальных сетей.

А over 200 стран(государств) раскрасить в цвета радуги от синего до красного.
...
Рейтинг: 0 / 0
Тяпничная география
    #38904129
Фотография SashaMercury
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonSashaMercuryПроблема с тем, чтобы понять какие страны граничат друг с другом, и исходя из этого определиться с тем, как их можно раскрашивать.
Если я правильно понял.

Определить это можно только по географическим координатам. Полный перебор очевидно не подходит. Нужно найти подходящий способ определения контура каждой страны. Определить метрику между контурами, и исходя из этого делать выводы об общей границы.

Либо, построить все(либо достаточное количество) точки. Провести триангуляцию области. Сделать выводы о границах, и провести раскраску
Нет. Никакой географии пока не нужно. В этой базе нет информации о границах государств.
А сервисы визуализирующие трафик клиентов на сайте с точки зрения гео-локаций уже
существуют. И я не буду их повторять. Мне вообще всегда скушно любое повторение.

А вот отобразить over 3 млрд цветных точек на большом квадрате. Каждая из которых - 1 адрес.
Это мне кажется задачей любопытной. И вовсе не такой однозначной.


А в чём проблема раскрасить каждую точку? Их нужно раскрашивать определенным цветом в зависимости от государства ?
...
Рейтинг: 0 / 0
Тяпничная география
    #38904130
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
Задача - визуализировать ВСЕ адреса на картинке. Каждый пиксел - 1 уникальный адрес.


Э...
Может карта Кохонена ?
...
Рейтинг: 0 / 0
Тяпничная география
    #38904131
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
По поводу яндекса - я не вкурсе. Наверное речь идёт о каком-то сервисе кластеризации
которого я просто не знаю.

Но в порядке пятничного бреда - даже для пикселов в квадрате мне понадобится какой-то
инструмент для идентификации диапазона.

Например можно сделать приложение. Ты навёл мышкой над цветной областью - и тебе пишут
дескыть [89.188.106.244 - 89.188.127.255] - Ru/Moscow.
...
Рейтинг: 0 / 0
Тяпничная география
    #38904134
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonЗадача - визуализировать ВСЕ адреса на картинке. Каждый пиксел - 1 уникальный адрес.
Каждая страна - отдельный цвет.. По сути - получить
мозаику из стран.


Так а какова цель визуализации ? Какие параметры нужно визуализировать на картинке?
...
Рейтинг: 0 / 0
Тяпничная география
    #38904136
Фотография SashaMercury
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZivmaytonЗадача - визуализировать ВСЕ адреса на картинке. Каждый пиксел - 1 уникальный адрес.


Э...
Может карта Кохонена ?

то есть всё-таки с метриками придётся разобраться
...
Рейтинг: 0 / 0
Тяпничная география
    #38904141
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZivmaytonЗадача - визуализировать ВСЕ адреса на картинке. Каждый пиксел - 1 уникальный адрес.


Э...
Может карта Кохонена ?

Ну да, поскольку есть критерий пространственной близости-удалённости (расстояние между коорд., заданными широтой и долготой),
то да, можно построить карту Кохонена.


p.s. если не секрет, где берёте IPGEODATA ? (можно в приват).
...
Рейтинг: 0 / 0
Тяпничная география
    #38904142
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SashaMercuryА в чём проблема раскрасить каждую точку? Их нужно раскрашивать определенным цветом в зависимости от государства ?
Давай порассуждаем. Какого размера картинки ты вообще встречал в природе?

Я знаю что современные зеркалки шлёпают сырые фотки до 16 мегапикселов.
Это (примерно) 4000 на 4000 цветных элементов каждый из которых занимает 24/32
бита в зависимости от способа хранения.

И это далеко не тривиальная задача даже просто создать подобную картинку 64К на 64К.

Это софт - эксклюзивный. Штучный. И думаю что создавать ее придется частями.
Панорамой. Это придает задаче определенный трудный старт.

Кстати я год назад гуглил сервис который хранит гига-пиксельные фотки. Кажется
там было фото Эвереста отснятое большим количеством панорамок.
...
Рейтинг: 0 / 0
Тяпничная география
    #38904143
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonПо поводу яндекса - я не вкурсе. Наверное речь идёт о каком-то сервисе кластеризации
которого я просто не знаю.У них свой сервис в составе API яндекс.карт. Но, если географии не надо, то, наверное, и сервис не подойдет.
...
Рейтинг: 0 / 0
Тяпничная география
    #38904148
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZivТак а какова цель визуализации ? Какие параметры нужно визуализировать на картинке?
Это должна быть цветная диаграмма. На которой должны быть видны все 200+ стран. В виде прямоугольничков.
Или полосок. Или просто каких-то сложных областей. Типа многоугольников.

И должно соблюдаться отдельное условие которое я специально сам себе задал. (Только что)

- Два соседних IPv4 адреса должны быть двумя соседними пикселами на картинке.
...
Рейтинг: 0 / 0
Тяпничная география
    #38904158
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати, наверняка есть смысл "причесать" этот список диапазонов - слить соседние одинаковые, разобраться с пересечениями, удалить мелкие диапазоны, входящие в идентичные более крупные и т.п.
...
Рейтинг: 0 / 0
Тяпничная география
    #38904168
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZivНу да, поскольку есть критерий пространственной близости-удалённости (расстояние между коорд., заданными широтой и долготой),
то да, можно построить карту Кохонена.

Э.... здесь я зависну на пару недель. Мне знаком термин карта Кохонена. Кажется в универе мы изучали это на курсе
нейросетей. Не хочу показаться незнающим поэтому пока поскипаем. Чуть позже я попробую осмыслить предложение
и дать ответ.

p.s. если не секрет, где берёте IPGEODATA ? (можно в приват).
Нет не секрет. ПО находится здесь. Там же торгуют базами или сервисом гео-локаций.

https://www.maxmind.com/en/geoip2-services-and-databases

Тестовую базу в разрезе крупных городов можно там скачать (так было года 2 назад. Щас не знаю).

Моя выборка CSV (более полная я так думаю) легко находися на http://rutracker.org по ключевым словам maxmind, geoip, geolocation

Там много бинарей (уже legacy формат) и есть выборка *.csv (файлик размером 400М).

Впрочем если что я могу скинуть.
...
Рейтинг: 0 / 0
Тяпничная география
    #38904173
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonИ должно соблюдаться отдельное условие которое я специально сам себе задал. (Только что)

- Два соседних IPv4 адреса должны быть двумя соседними пикселами на картинке.Если это абсолютное требование - то вариант только один - линейное расположение пикселей, т.е. цепочка. А вот укладывать эту цепочку на плоскости можно разными способами - меандром, по спирали и т.п.

Я бы для начала предложил не мудрить, а построить прямоугольник 3584х4096. В качестве координат - первые 12 разрядов и следующие 12 разрядов ip-адресов. Младший октет игнорировать. Сильно подозреваю, что, за небольшим исключением вкраплений старых крупных диапазонов, это будет абсолютно хаотичная картинка.
...
Рейтинг: 0 / 0
Тяпничная география
    #38904181
Фотография SashaMercury
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Марк, как будут раскрашиваться точки ?
Цвет точек принадлежащих одной стране одинаковый ?
Рядом не должны быть расположены 2 страны с одинаковым цветом ?
...
Рейтинг: 0 / 0
Тяпничная география
    #38904186
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoftЕсли это абсолютное требование - то вариант только один - линейное расположение пикселей, т.е. цепочка. А вот укладывать эту цепочку на плоскости можно разными способами - меандром, по спирали и т.п.

Да я щас думаю над этим. Самое сложное - обеспечить кластеризацию или скопление точек в одном месте.
Не хочется диаграмму превращять в полосатый шум. Всё таки визуализация должна быть наглядной.

Я подумал вот над чем. Если диапазон адресов перевести в коды Грея то между соседними адресами
не будет скачков и если взять 32 битное целое (адрес) и разбить его на 16+16 битов Грея
то эта пара координат в (x,y) будет достаточно плотно лежать с соседями.

Я бы для начала предложил не мудрить, а построить прямоугольник 3584х4096. В качестве координат - первые 12 разрядов и следующие 12 разрядов ip-адресов. Младший октет игнорировать. Сильно подозреваю, что, за небольшим исключением вкраплений старых крупных диапазонов, это будет абсолютно хаотичная картинка.
Мысль инетересная. Думаю что для чернового варианта диаграммы я так и сделаю.

Минут через 15 подкину еще цифр по длинам диапазонов.
...
Рейтинг: 0 / 0
Тяпничная география
    #38904192
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SashaMercuryМарк, как будут раскрашиваться точки ?
Цвет точек принадлежащих одной стране одинаковый ?
Рядом не должны быть расположены 2 страны с одинаковым цветом ?
Ну.... top10 стран ты видел. Надо чтобы хотя-бы эти "толстяки" не пересекались
по HSV палитре.

А на всякие там республики Тувалу или Мауру мне будет пофигу. Пускай цвета похожи.
...
Рейтинг: 0 / 0
Тяпничная география
    #38904195
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonСамое сложное - обеспечить кластеризацию или скопление точек в одном месте.mayton- Два соседних IPv4 адреса должны быть двумя соседними пикселами на картинке.Имхо, эти два требования несовместимы между собой.
...
Рейтинг: 0 / 0
25 сообщений из 177, страница 1 из 8
Форумы / C++ [игнор отключен] [закрыт для гостей] / Тяпничная география
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]