Time Series Streaming Graph and other Quine 1.2.0 Highlights
Time As Categorical Data and other Improvements
Last week saw the release of Quine 1.2.0 and with it, some notable new features, several new recipes, and a cluster of performance related improvements that include two important changes impacting backwards compatibility.
All in all, Quine Streaming Graph 1.2.0 is a significant update and worth a detailed look.
Time Series Streaming Graph
Reification of time – easily the most immediately useful feature of 1.2.0, reify.time
is a new custom Cypher procedure you can use to generate a structured representation of timestamp data. Think buckets of days, hours, minutes, and seconds represented as nodes. Does this make Quine a time series database now? More like a time series streaming graph. reify.time
makes it straightforward to create and connect events to time-based nodes and execute time-related data analysis via standing queries.
For time-series use cases when you’re looking for real-time insights, the ability to treat time as categorical data and render it as nodes on the graph is pretty powerful.
And if you want to quickly try it yourself, we’ve added a new Wikipedia Ingest recipe.
Here’s the reify.time
documentation page so you can learn more.
Cypher Feature Support
Cypher subqueries – with the introduction of the CALL {}
command, Quine now adds the subquery. Since Neo4J has the best Cypher documentation in the biz, here’s a link to their Cypher Manual page on CALL {}
.
OpenCypher and Java 11 – starting with 1.2.0, Quine has switched to OpenCypher, which requires Java 11 or later. Previous versions required Java 8 or later.
Rest API and Storage Enhancements
REST API UPGRADE (DOCS) – we are preparing to move from the standard Swagger stacked REST API documentation to Spotlight’s Elements framework. Check it out on the REST API documentation page. If you have opinions or feedback, we’d love to hear it. Look for it in Quine itself in a near-term release.
Added Quine.persistence.effect-order – This configuration option is particularly useful for Cassandra users who want to use Quine+Cassandra as their database of record. quine.persistence.effect-order
can be set to either memory-first
or persistor-first
. The latter option, persistor-first
is meant to support this use case directly.
In the presence of system failure, with persistor-first
Quine will have durably stored updates before anything else occurs (e.g. triggering standing queries).
Supernode performance enhancements – super nodes, or nodes with LOTS of edges, can negatively impact performance. As part of an ongoing effort to mitigate that impact, we have added two features to improve performance:
- Improved serialization for nodes with an extremely large edge and/or property counts in the persistence backend. While large property counts don’t technically make a node a supernode but the performance problems are similar. thatDot platform users should note that a similar change was made to Quine cluster member behavior.
- Nodes with an extremely large edge and/or property count can now be accessed via the Literal Operations REST APIs
Storage Format Change – data stored in Quine 1.1.2 and earlier can not be used in Quine 1.2.0 without migration.
Additional Improvements – storage format in addition to improved serialization for nodes with large edge and/or property counts, updates to Quine 1.2.0 storage included:
- Calling the debug API on a node in a historical query now only includes journal events up to the time of the historical query
- Rename Cassandra store options
insert-time
andselect-timeout
towrite-timeout
andread-timeout
, respectively (#1733) - Bugfix: Setting
snapshot-singleton=true
,snapshot-schedule=on-node-update
, andjournal-enabled=false
no longer causes the most recent event on a node to be dropped
Download and try Quine 1.2.0 today.
Related posts
-
Stream Processing World Meets Streaming Graph at Current 2024
The thatDot team had a great time last week at Confluent’s big conference, Current 2024. We talked to a lot of folks about the power of Streaming Graph,…
-
Streaming Graph Get Started
It’s been said that graphs are everywhere. Graph-based data models provide a flexible and intuitive way to represent complex relationships and interconnectedness in data. They are particularly well-suited…
-
Streaming Graph for Real-Time Risk Analysis at Data Connect in Columbus 2024
After more than 25 years in the data management and analysis industry, I had a brand new experience. I attended a technical conference. No, that wasn’t the new…