Docs.rs | Crates.io Version | Crates.io Downloads | CodeCov |
---|---|---|---|
简体中文 | English
taos
是 TDengine 的官方 Rust 语言连接器,Rust 开发人员可以通过它开发存取 TDengine 数据库的应用软件。它支持数据写入、数据查询、数据订阅、无模式写入以及参数绑定等功能。
taos
提供了两种建立连接的方式:
- 原生连接:通过客户端驱动程序 taosc 直接与服务端程序 taosd 建立连接。采用这种连接方式时,需确保客户端的驱动程序 taosc 与服务端的 taosd 版本保持一致。
- WebSocket 连接:通过 taosAdapter 组件提供的 WebSocket API 建立与 taosd 的连接。此方式不依赖 TDengine 客户端驱动,支持跨平台使用,更为便捷灵活,且性能与原生连接相近。
建议使用 WebSocket 连接方式。详细说明请参考 连接方式。
支持 Rust 1.70 及以上版本。
- 原生连接支持的平台与 TDengine 客户端驱动支持的平台一致。
- WebSocket 连接支持所有能运行 Rust 的平台。
将以下内容添加到 Cargo.toml
:
[dependencies]
taos = "0.12.3"
- 开发示例请访问 开发指南,其中包括数据写入、数据查询、数据订阅、无模式写入以及参数绑定等示例。
- 更多信息请访问 参考手册,其中包括版本历史、数据类型映射、示例程序汇总、API 参考以及常见问题等内容。
- 已安装 Rust 1.70 及以上版本。
- 本地已部署 TDengine,具体步骤请参考 部署服务端,且已经启动 taosd 与 taosAdapter。
在项目目录下运行以下命令以构建项目:
cargo build
运行测试前,请在 taos.cfg
文件中添加以下配置:
supportVnodes 256
完成配置后,在项目目录下执行以下命令运行测试:
cargo test
在相应的 .rs
文件的 #[cfg(test)]
模块内添加测试用例。对于同步代码,使用 #[test]
宏;对于异步代码,使用 #[tokio::test]
宏。
性能测试正在开发中。
我们欢迎提交 GitHub Issue。提交时请说明下面信息:
- 问题描述,是否必现,最好能包含详细调用堆栈。
- Rust 连接器版本。
- 连接参数(不需要用户名密码)。
- TDengine 服务端版本。
我们欢迎开发者一起开发本项目,提交 PR 时请参考下面步骤:
- Fork 本项目,请参考 (how to fork a repo)。
- 从 main 分支创建一个新分支,请使用有意义的分支名称 (
git checkout -b my_branch
)。注意不要直接在 main 分支上修改。 - 修改代码,保证所有单元测试通过,并增加新的单元测试验证修改。
- 提交修改到远端分支 (
git push origin my_branch
)。 - 在 GitHub 上创建一个 Pull Request (how to create a pull request)。
- 提交 PR 后,如果 CI 通过,可以在 codecov 页面找到自己 PR,看单测覆盖率。