This is a big release that has been in the works for a couple of years now. For a list of all items included in this list see the 1.3.0 issues: https://github.com/kairosdb/kairosdb/milestone/10?closed=1
This is a patch adds some fixes made in 1.3 to the 1.2 code branch.
The following list was added
- Creating the Cassandra schema was exposed as an option on startup.
- Cassandra Java driver socket connect timeout and read timeout were exposed as configuration.
- Retry logic was added to try other Cassandra replicas before giving up.
Big change in this release is the change to to hocon configuration. Read more about it here: https://github.com/lightbend/config/blob/master/HOCON.md
This change was driven by the need to add multi cluster support to kairos (also in this release). Multi cluster support allows you to have one write cluster and 0 or more read clusters. Say you are running Kairos on Cassandra 2.0.14 and you would really like to upgrade but the data is mission critical and the hardware is old so you would rather just create a new cluster with a newer version of Cassandra. With this version you simply set the 2.0.14 cluster as one of your read clusters and then create a new cluster as the current write cluster. Queries are made to all clusters (read and write) and data is only written to the write cluster.
Reasons to use multi cluster:
- Easy way to upgrade to newer versions of C*
- Provides a way to age out old data without using ttl.
- Way of managing kairos data growth.
- Use it to try new versions of Kairos - just set existing cluster as a read cluster.
The big change in this release is a change from Thrift to CQL. A lot of work was done to make CQL perform better than the thrift code. Queries are noticeably faster. The release will create new index tables that can be queried via the CQL shell. The code is compatible with data ingested by the previous release of Kairos (1.1.3).
The release is not compatible with schema created by 1.2 beta 1 and beta 2.
Now for all the heaps of coolness that can be found within this release
Uses CQL for reads and writes
Up to 8x improvement in query speed - wait what?? Yes you read that right, I hit the turbo button.
New service api for storing whatever you want in Kairos. (metadata, configuration, etc..)
Extra metrics for tracking queries - even logged if the query fails
Added ability to specify node roles (ie ingest or query node)
Requires C* 2.1 or higher.
Added a demo module that lets you load up a year of demo data to play with
Fixed the open file handle issue
Import/Export will exit when done.
List of issues resolved in this release: https://github.com/kairosdb/kairosdb/milestone/7?closed=1
Thanks for everyone's contribution to this project.
This release was previously - and incorrectly - named 1.0.1, which would have been fine if it only included bug fixed but, there were several new features added. I also took the opportunity to fix the kairosdb service script to not fail for some platforms.
This has a boat load of stuff. Have a look at the milestone items to see what is there:
Thanks to everyone who has contributed to this release.