Just my 2 cents:
I could save quite some memory by using pack and unpack with c on a bytestring, as I expect the number of hits per second to be well below 100.

Well, if you plan on doing it in plain perl... You can use larger buckets than pack's 'C' (not 'c', no reason for it to be signed), for example short 'v' or long 'V', or their 'n'/'N' counterparts.

And don't forget about vec, in case you want to read/update individual slots.

If you don't care about older data except when in processed in bulk, then note that pack also supports BER compressed integers ('w'), which makes byte strings of minimal length, storing up to 7 bits of useful data per byte. Unfortunately it makes looking up an individual number by array index a bit hard.

And finally, you can abuse UTF8, and store this array of integers as a string of characters, which can easily hold larger values than 255 per character!


In reply to Re: Data structure for statistics by bart
in thread Data structure for statistics by Corion

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.