DataStax Developer Blog

C++ Driver for Cassandra Open Sourced!

By Michael Figuiere -  November 5, 2013 | 1 Comment

I’m glad to announce that we open source today our C++ Driver for Apache Cassandra, following our plan to bring a simple and modern API for Cassandra to major programming languages. Just like our Java Driver, C# Driver and Python Driver, this C++ Driver targets Cassandra 1.2+ as it’s designed for CQL and the CQL Binary Protocol. It’s based on the original work of Matt Stump on libcql. As Matt has recently joined DataStax, the effort on this C++ interface for Cassandra will be continued within this new project and libcql will no longer be maintained.

This new driver is still under development but all the major features that you can find in our other drivers are already there:

  • Native API for CQL
  • Fully asynchronous architecture, making it easy to send several requests in parallel without any thread pool tuning
  • Support for Prepared Statements
  • Automatic fail over and reconnection
  • Support for CQL Collections
  • SSL support and Authentication
  • Load Balancing and Retry Policies
  • Similar API as other DataStax Drivers to make it easier for polyglot applications and developers

We have some work planned on adding support for compression and query tracing before we finalize a first version of this driver. Meanwhile, as for our other drivers, we’ll heavily test it to make sure it’s ready for the most demanding production deployments.

A first beta will be released soon. Meanwhile the following resources are available to help you to start:

Don’t hesitate to give a try to this driver and share your comments or feedbacks with us!



Comments

  1. Curt says:

    In the absence of a “C” library/driver for Cassandra, is it possible to use this driver from pure C applications?

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>