No announcement yet.

Realtime analytics a bit confusing.

  • Filter
  • Time
  • Show
Clear All
new posts

  • Realtime analytics a bit confusing.

    Hi what is the realtime analytics piece? Is it the views or the fact that you can stream to other systems or is it both?

    Does creating a view automatically mean we are doing realtime analytics?

    The developer guide doesn't specifically point to any realtime analytics documentation except I guess the samples. Wich seem to use views mostly.

  • #2
    Real-time analytics is essentially running queries on fast moving data. This can be counts, aggregations, rankings/leaderboards, etc. In addition to standard SQL queries, VoltDB provides Materialized Views that are kept consistent and up to date, per event (transaction) as data is inserted into the underlying table. Other systems generally can't keep up with the high velocity inserts (millions of multi-sql statement write transactions a second) all while computing and maintaining these computations (often in the form of materialized views, which would be the most efficient way - though standard SQL queries can be used as well).

    We've got a summary of use cases here:



    • #3
      Ok cool. So streams are mostly for pushing to external systems. But we can also use them to do "throwaway" stats or temporary type stats? I.e streams dont store the data and we can modify the views on top of them as needed kind of thing right?


      • #4
        Streams support pushing to external systems AND/OR materialized views. You can use either feature or both.


        • #5
          How long is the data kept in the stream for? I didnt see any setting in the dev docs...


          • #6
            When the export configuration is enabled, VoltDB will buffer the data in the stream in memory and overflow to disk until it is able to deliver the data to the downstream system. When the downstream system is receiving data, the data is pushed downstream in micro batches so typically less than a second or so of data is inflight on the stream. This may vary by connector. The export connectors do not currently have any user-configurable rate limit or batch size settings, but they have been tuned for the capabilities of the downstream systems.