One centralized place with all developer resources. Go There
Real-time analytics applications often provide a summary of an incoming data stream. These applications are used to discover real-time insights from fast flowing data produced by social media, mobile devices, sensors, infrastructure, and more. VoltDB offers high speed transactional ACID performance and the ability to process thousands to millions of discrete incoming events per second.
Implementing VoltDB to handle fast ingestion of data and interact on data to perform real real-time analytics provides the ability to create applications that can make data-driven decisions on each event as it enters the data pipeline.
VoltDB enables real time SQL analytics against fast streams of data. VoltDB analytics use cases fall into three categories: moving windows and aggregation of real time data for BI dashboards and external applications, per-event analytics to detect fraud or enforce policy, and caching of OLAP analytics to scale high concurrency querying and serving.
Connect to VoltDB using a native VoltDB driver, by POSTing requests directly over HTTP or by using one of the pre-built loaders to connect to an existing data source.
|Python||SQL Command Tool|
|Others: see Clients and Drivers||Vertica UDX|
Example: Use the VoltDB Kafka Loader to feed events from Kafka to VoltDB
Materialized views calculate groupings and aggregations of data in their associated base tables. VoltDB supports materialized views that are scalable, fully transactional and always-up-to-date. Using materialized views, it is easy to maintain streaming aggregations of the real time data managed in VoltDB. Views are queryable using standard SQL. Use VoltDB’s MPP shared-nothing architecture to scale-out aggregation and processing of fast event feeds and then use VoltDB’s distributed SQL support to read database-wide rollups and groupings.
Example: Define a materialized view and query averages events per second. The complete application is available as the “Windowing” example application distributed with VoltDB.
Table that stores values that are timestamped and are partitioned by UUID.
MATERIALIZED VIEW that pre-aggregates the sum and counts of the rows by second. This allows for fast computation of averages by ranges of seconds.
SQL queries and SQL functions for roll-ups.
Find the average value over all tuples across all partitions for the last N seconds, where N is a parameter the user supplies. Uses the materialized view so it has to scan fewer tuples. For example, if tuples are being inserted at a rate of 15k/sec and there are 4 partitions,then to compute the average for the last 10s, VoltDB would need to scan 150k rows. In this case, it needs to scan 1 row per second times the number of partitions, or 40 rows. That's a tremendous advantage of pre-aggregating the table sums and counts by second.
VoltDB real-time analytics processes each incoming event or request as a discrete ACID transaction. A transaction can be one or more SQL statements pre-defined in a DDL file, an ad-hoc SQL statement issued by the application, or a combination of SQL and Java encapsulated in a VoltDB stored procedure.
Use VoltDB’s MPP, fault tolerant, ACID, SQL database capabilities to:
Support 100,000s of request evaluations per second with millisecond-level response latencies. Integrate policy enforcement, alerting and monitoring all at streaming speeds on small VoltDB clusters with SQL and minimal Java. (For an example, run the Voter example in the VoltDB download kit.)
VoltDB includes code-free bulk loaders to load report data from HPE Vertica (using Vertica UDX) and Hadoop (using Hadoop OutputFormat). Cache OLAP report output in VoltDB and use VoltDB to support thousands of concurrent connections and SQL queries to the data. Each VoltDB server supports tens of thousands of concurrent connections. VoltDB’s distributed SQL support enables further refinement, filtering and re-grouping of analytic outputs for high speed users and applications.
For more information about loading data from Hadoop to VoltDB click here.
Support for standard ODBC and JDBC interfaces enable standard third-party tool integration like Microstrategy, Tableau and SQL. Download clients, drivers and monitoring integrations from the Community Clients and Monitoring page.
VoltDB supports a super-set of SQL-92 functionality. Our full SQL support is documented in the Using VoltDB Guide.
Learn more about VoltDB integrations and real-time analytics on our Integrations page.
It shouldn't take weeks to begin building blazing apps with real-time personalization and fast transactions. Developers: Download VoltDB and spin through our Quick Start Guide in less than 30 minutes.Download & Quick Start