13个版本
0.16.6 | 2022年6月17日 |
---|---|
0.16.4 | 2022年5月29日 |
0.16.3 | 2022年1月27日 |
0.16.2-rc0 | 2021年12月5日 |
0.15.1 | 2020年5月7日 |
1610 在 数据库接口
45,279 每月下载量
300KB
6K SLoC
cassandra-cpp
这是一个维护的Rust项目,在https://github.com/datastax/cpp-driver/中公开了DataStax cpp驱动程序,并以一种相对合理的crate形式实现。最初是https://github.com/tupshin/cassandra-rs的分支,但现在已经不再维护。
它是对原始驱动绑定crate cassandra-cpp-sys的封装。
入门
为了使此crate正常工作,您必须首先安装datastax-cpp驱动程序。按照cpp驱动程序文档中的步骤进行操作。大多数平台都提供了预构建的包。
确保驱动程序(特别是 libcassandra_static.a
和 libcassandra.so
)位于您的 /usr/local/lib64/
目录中
文档
请参阅API文档。
Cassandra查询语言(CQL)的文档可能很有用。
由于此crate在DataStax驱动程序周围提供了一个相对较薄的封装,因此您也可能发现DataStax的文档和API文档很有用。
示例
要查看一个简单的示例,请参阅simple.rs
。
未来(版本0.15)
自版本0.15起,此crate使用std::future
,允许您的代码使用futures:0.3
,async/await
等。
之前的版本(0.14及以下)使用futures:0.1
。您可以选择保持在0.14流中,更新代码以使用std::future
,或者使用兼容性适配器(例如,futures::compat
)。
从版本0.8迁移
版本0.10中对API进行了重大更改。(版本0.9被跳过,以与cassandra-cpp-sys
的版本号保持一致。)有关主要更改的摘要,请参阅CHANGELOG
。
许可证
此代码是开源的,根据LICENSE
中描述的Apache License Version 2.0授权。
贡献
有关如何为此项目做出贡献的详细信息,请参阅CONTRIBUTING.md
。
开发
此crate由Travis定期构建;要查看最新构建的详细信息,请单击此页顶部的“构建”徽章。
您必须在系统上安装DataStax驱动程序才能构建此crate。
单元测试假定Cassandra运行在本地主机上,可通过标准端口访问。最简单的方法是使用Docker和标准Cassandra镜像。
docker pull cassandra
docker run -d --net=host --name=cassandra cassandra
您应该以单线程方式运行它们,以避免可怕的org.apache.cassandra.exceptions.ConfigurationException: Column family ID mismatch
错误。测试共享一个键空间和表,因此如果并行运行,它们将相互干扰。
cargo test -- --test-threads 1
完成时,请记得销毁容器
docker stop cassandra
docker rm cassandra
历史
该项目是从cassandra分叉的,该项目不再维护。
依赖项
~9MB
~179K SLoC