<?xml version="1.0" encoding="koi8-r"?>
<rss version="0.91">
<channel>
    <title>OpenForum RSS: Группировка огромного списка</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID9/6911.html</link>
    <description>Есть список ip-адресов и трафику для каждого адреса. список в простом текстовом файле.&lt;br&gt;формат: &#091;IP-адрес&#093; &#091;Bytes&#093;&lt;br&gt;Проблема в том, что размер списка несколько миллионов строк.&lt;br&gt;Как лучше реализовать группировку IP-адресов с сумированием Байтов.&lt;br&gt;Ложить всё в массив... я думаю это безумство :-)&lt;br&gt;</description>

<item>
    <title>Группировка огромного списка (AMDmi3)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID9/6911.html#5</link>
    <pubDate>Wed, 07 Nov 2007 16:13:43 GMT</pubDate>
    <description>&amp;gt;всё в массив... я думаю это безумство :-) &lt;br&gt;&lt;br&gt;нахрена в массив? Читаем файл построчно, в памяти храним только таблицу IP - сумма байт для встретившихся IP. Логично использовать хэш.&lt;br&gt;&lt;br&gt;На C++ - std::hash_map и прога из двух десятков строчек.&lt;br&gt;На Perl - стандартный хэш и прога из четырех строк.&lt;br&gt;</description>
</item>

<item>
    <title>Группировка огромного списка (Pontiy.Pilat)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID9/6911.html#4</link>
    <pubDate>Wed, 07 Nov 2007 04:42:44 GMT</pubDate>
    <description>Думаю лучше сделать в СУБД (как посоветовал newser).&lt;br&gt;Масштабируемость получается больше. Потому что рано или поздно будет затребовано деление трафика по портам/адресам и самое эффективое пихать всё в БД.&lt;br&gt;&lt;br&gt;&lt;br&gt;</description>
</item>

<item>
    <title>Группировка огромного списка (jd)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID9/6911.html#3</link>
    <pubDate>Wed, 07 Nov 2007 01:03:14 GMT</pubDate>
    <description>&amp;gt;Проблема в том, что размер списка несколько миллионов строк. &lt;br&gt;&amp;gt;Ложить всё в массив... я думаю это безумство :-) &lt;br&gt;&lt;br&gt;На самом деле, важно не сколько строк, а сколько в них &#091;b&#093;разных&#091;/b&#093; адресов.&lt;br&gt;&lt;br&gt;Так что использовать какую-нибудь разновидность массива (например std::map из C++/STL) может оказаться не такой уж и плохой идеей. Если нужна только сумма трафика для каждого адреса.&lt;br&gt;</description>
</item>

<item>
    <title>Группировка огромного списка (Аноним)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID9/6911.html#2</link>
    <pubDate>Tue, 06 Nov 2007 21:50:04 GMT</pubDate>
    <description>Можно простым файлом обойтись :)&lt;br&gt;&lt;br&gt;Так как ip адресов конечно (2^32) можно использовать их все как массив.&lt;br&gt;то есть 4 байта ip использовать как (unsigned long int) индекс :)&lt;br&gt;&lt;br&gt;Сам массив хранить в файле.&lt;br&gt;&lt;br&gt;То есть, ip адресу 0.0.0.0 соотв индекс (смещение 0), 0.0.0.1 смещение 1.&lt;br&gt;&lt;br&gt;Правда файл получится 32 гигабайта. Но наверно разреженный, так что не страшно :)&lt;br&gt;</description>
</item>

<item>
    <title>Группировка огромного списка (newser)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID9/6911.html#1</link>
    <pubDate>Tue, 06 Nov 2007 06:36:25 GMT</pubDate>
    <description>&amp;gt;Есть список ip-адресов и трафику для каждого адреса. список в простом текстовом &lt;br&gt;&amp;gt;файле. &lt;br&gt;&amp;gt;формат: &#091;IP-адрес&#093; &#091;Bytes&#093; &lt;br&gt;&amp;gt;Проблема в том, что размер списка несколько миллионов строк. &lt;br&gt;&amp;gt;Как лучше реализовать группировку IP-адресов с сумированием Байтов. &lt;br&gt;&amp;gt;Ложить всё в массив... я думаю это безумство :-) &lt;br&gt;&lt;br&gt;СУБД&lt;br&gt;</description>
</item>

</channel>
</rss>
