Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 9031935
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 16, 20262026-06-16T07:51:19+00:00 2026-06-16T07:51:19+00:00

I have practically completed one, but wanted to compare mine with a well researched

  • 0

I have practically completed one, but wanted to compare mine with a well researched an possibly academic algorithm. There may be a library of statistical objects which either directly or in-combination solve my particular need.

My system (which I intend to OpenSource) has a stream of NetFlow data. Rather than store in database and using SQL functions, I prefer to have a database-free system and maintain a set of statistics, updated for each new flow, and scrolled per-second (or higher).

My solution involves an single array of uint, to effectively create a jagged array of sizes [60, 59, 23, 6, …], representing seconds, minutes, hours, days, weeks, etc….

Each slot contains the total amount of Bytes for that time. So after 60 seconds a single minute statistic is created as Avg(seconds). This of course continues relatively up the time scale.

Rather than simply having thousands of second increments, it is due to:

  1. Memory constraints and the potential to have more statistical nodes; AND
  2. Ideal presentation to users

…that I roll up time scales.

Given that a flow may be applied to several nodes in a heirarchy of statistics (WAN Link, IP Address, Destination Address, SourcePort-DestinationPort), I calculate the delta once (GenerateDelta) and then simply apply at every node which is both active and which matches the flow meta-data.

A statistic on a given node would be “scrolled”, in the following potential cases:

  1. When being read/displayed (via HTTP\JSON AJAX Request)
  2. When a delta is being applied (due to relevant flow)
  3. Simply every n-seconds (n is typically 1)

Overall there may be a well established algorithm for keeping running totals over time (with seconds, minutes…). But failing that, there may also be a suitable algorithms for comparison on smaller sub-sections of my code:

  • GenerateDelta – not likely as this is specific for breaking down and averaging a flow with duration over slots in the statistics array.
  • Scroll – if there were only seconds, then this would of course be simple, however my solution requires the 60 seconds to be combined into a new minute total every 60 seconds, and so on.

I do not wish responders to suggest any of their own algorithms, I have already (almost) completed all of my own without any problems and with many performance considerations. And others will likely be able to have a look at my algorithm when I have finished and published as Open Source.

What I do wish to see is any “well established” algorithms for comparison. Perhaps mine will be better, perhaps mine will be worse. Google isn’t good at this sort of question, I need your help.

Thanks!

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-16T07:51:21+00:00Added an answer on June 16, 2026 at 7:51 am

    Thanks to comment from @rici, I found the “Stream Statistics” domain is what is required. There are Data Stream Management Systems (DSMS) for dealing with stream statistics. Whereas SQL RDBMS systems can store data with statistics generated by SQL query, a Data Stream Management Systems, enables the processing of a continuous stream of data, given one or more queries.

    This paper, describes a DSMS as:

    1. Being able to sacrifice quality for qualitative use
    2. Being single pass, because the data is vast
    3. Having Queries treating data as sequences not sets
      And more…

    This one, depicts a diagram of such a DSMS, references the Network Traffic Analysis problem domain,

    This paper, describes StreamSQL, SQL-like syntax, for defining continuous queries.

    Even though proprietary solutions are not accessible. There certainly are well established algorithms. I can therefore test the performance of my specialised system against general stream query tools.

    Several products/prototypes of DSMS can be found in this wiki page, specifically Odysseus is of interest, being Java based and open source.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I have similar problem to one discussed here , but with stronger practical usage.
I have to models that are practically the same, just diferent table in db
I have been recently digging into Mobile Programming, I practically tried out the J2ME
I have a strong database background but very little practical experience with ms sql
I understand the principles but i have a hard time seeing where the practical
Have deployed numerous report parts which reference the same view however one of them
One method of debugging within the Controllers I have learnt from Django is to
I have a MySQL table like this one: day int(11) hour int(11) amount int(11)
Quick one hopefully; brain has gone blank. Is it possible / practical to have
I have practically no experience with programming outside of ide's (Microsoft Visual Studio, netbeans

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.