История изменений
Исправление hateyoufeel, (текущая версия) :
Trie. Оно же raidix tree. Подумай про IP не как о числе, а как о бинарной строке. Тебе нужно найти все строки (сети с маской), являющиеся подстрокой из твоей строки (ip).
Нужно dst_ip каждой записи первого файла сматчить по сеть/маска записи второго файла и посчитать байты всех сматченных записей.чтобы в итоге получить число байт которое ушло на AS num как организовать быстрый поиск соответствия? пробегать записью первого файла по второму - в лоб так сказать, видится не оптимальным.
Тебе нужно найти прямое произведение всех элементов двух множеств. Ясен хрен у тебя n^2 будет. Если список сетей отсортируешь, то можешь уложиться в n*log(n).
Вот тебе либа на русте, которая позволяет такое сделать: https://docs.rs/treebitmap/0.4.0/treebitmap/
Исправление hateyoufeel, :
Trie. Оно же raidix tree. Подумай про IP не как о числе, а как о бинарной строке. Тебе нужно найти все строки (сети с маской), являющиеся подстрокой из твоей строки (ip).
Нужно dst_ip каждой записи первого файла сматчить по сеть/маска записи второго файла и посчитать байты всех сматченных записей.чтобы в итоге получить число байт которое ушло на AS num как организовать быстрый поиск соответствия? пробегать записью первого файла по второму - в лоб так сказать, видится не оптимальным.
Тебе нужно найти прямое произведение всех элементов двух множеств. Ясен хрен у тебя n^2 будет. Если список сетей отсортируешь, то можешь уложиться в n*log(n).
Исправление hateyoufeel, :
Trie. Оно же raidix tree. Подумай про IP не как о числе, а как о бинарной строке. Тебе нужно найти все строки (сети с маской), являющиеся подстрокой из твоей строки (ip).
Нужно dst_ip каждой записи первого файла сматчить по сеть/маска записи второго файла и посчитать байты всех сматченных записей.чтобы в итоге получить число байт которое ушло на AS num как организовать быстрый поиск соответствия? пробегать записью первого файла по второму - в лоб так сказать, видится не оптимальным.
Тебе нужно найти прямое произведение всех элементов двух множеств. Ясен хрен у тебя n^2 будет.
Исходная версия hateyoufeel, :
Trie. Оно же raidix tree. Подумай про IP не как о числе, а как о бинарной строке. Тебе нужно найти все строки (сети с маской), являющиеся подстрокой из твоей строки (ip).