You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@cassandra.apache.org by Tyler Hobbs <ty...@datastax.com> on 2013/08/06 00:41:03 UTC
DataStax Native Protocol Python Driver [beta]
For those of you using pycassa or the cassandra dbapi2 driver, I wanted to
let you know that a beta version of the DataStax python driver is available
on GitHub here: https://github.com/datastax/python-driver
This driver works exclusively with cql3 and uses the new native protocol
for Cassandra 1.2+ in place of Thrift. The main benefits are:
- Request pipelining, which allows for greater throughput with a smaller
number of connections
- Push notifications from Cassandra about changes to the cluster state
- More advanced connection pooling capabilities, including node
autodiscovery, token-aware routing, and multi-datacenter awareness
The driver design closely follows that of the DataStax Java driver (
https://github.com/datastax/java-driver) and C# driver (
https://github.com/datastax/csharp-driver) with some pythonic adjustments.
There's also a basic mapping layer available through the 'native' branch of
the cqlengine library, which can be found here:
https://github.com/cqlengine/cqlengine/tree/native.
We're planning to put the driver through some rigorous QA internally before
the first non-beta release of the driver later this year.
If you have any questions, suggestions, or bug reports, I would love to
hear them!
--
Tyler Hobbs
DataStax <http://datastax.com/>
Re: DataStax Native Protocol Python Driver [beta]
Posted by Edward Capriolo <ed...@gmail.com>.
Nice job man!
On Mon, Aug 5, 2013 at 6:41 PM, Tyler Hobbs <ty...@datastax.com> wrote:
> For those of you using pycassa or the cassandra dbapi2 driver, I wanted to
> let you know that a beta version of the DataStax python driver is available
> on GitHub here: https://github.com/datastax/python-driver
>
> This driver works exclusively with cql3 and uses the new native protocol
> for Cassandra 1.2+ in place of Thrift. The main benefits are:
>
> - Request pipelining, which allows for greater throughput with a
> smaller number of connections
> - Push notifications from Cassandra about changes to the cluster state
> - More advanced connection pooling capabilities, including node
> autodiscovery, token-aware routing, and multi-datacenter awareness
>
> The driver design closely follows that of the DataStax Java driver (
> https://github.com/datastax/java-driver) and C# driver (
> https://github.com/datastax/csharp-driver) with some pythonic adjustments.
>
> There's also a basic mapping layer available through the 'native' branch
> of the cqlengine library, which can be found here:
> https://github.com/cqlengine/cqlengine/tree/native.
>
> We're planning to put the driver through some rigorous QA internally
> before the first non-beta release of the driver later this year.
>
> If you have any questions, suggestions, or bug reports, I would love to
> hear them!
>
> --
> Tyler Hobbs
> DataStax <http://datastax.com/>
>
Re: DataStax Native Protocol Python Driver [beta]
Posted by Blair Zajac <bl...@orcaware.com>.
On 8/16/13 9:05 AM, Tyler Hobbs wrote:
>
> On Fri, Aug 16, 2013 at 3:35 AM, Sergey Leschenko <sergle.ua@gmail.com
> <ma...@gmail.com>> wrote:
>
> Is there some list of planned drivers for other programming languages?
>
>
> I don't know if we have a list somewhere, but we're currently working on
> a C/C++ driver and we'd like to make sure that good Ruby, node.js, and
> (probably) PHP drivers are also available. I believe there are some
> decent options for node.js already, and various members of the community
> have also put together drivers for Clojure, Scala, and Go.
Out of curiosity, did you look at taking the C++ driver and wrapping it
with SWIG or something similar for the Python, Ruby drivers? Would the
performance be better? I would think with Python, you could maintain a
separate C thread for receiving notifications from Cassandra without
taking a lock on the GIL.
I realize that having a native Python driver is also nice for simplicity
in deployment, but just wondering.
Blair
Re: DataStax Native Protocol Python Driver [beta]
Posted by Tyler Hobbs <ty...@datastax.com>.
On Fri, Aug 16, 2013 at 3:35 AM, Sergey Leschenko <se...@gmail.com>wrote:
> Is there some list of planned drivers for other programming languages?
I don't know if we have a list somewhere, but we're currently working on a
C/C++ driver and we'd like to make sure that good Ruby, node.js, and
(probably) PHP drivers are also available. I believe there are some decent
options for node.js already, and various members of the community have also
put together drivers for Clojure, Scala, and Go.
--
Tyler Hobbs
DataStax <http://datastax.com/>
Re: DataStax Native Protocol Python Driver [beta]
Posted by Sergey Leschenko <se...@gmail.com>.
On Tue, Aug 6, 2013 at 1:41 AM, Tyler Hobbs <ty...@datastax.com> wrote:
> For those of you using pycassa or the cassandra dbapi2 driver, I wanted to
> let you know that a beta version of the DataStax python driver is available
> on GitHub here: https://github.com/datastax/python-driver
>
Thanks!
Is there some list of planned drivers for other programming languages?
--
Sergey