写点什么

# 文盘 Rust -- rust 连接云上数仓 starwift

  • 2023-02-10
    北京
  • 本文字数:768 字

    阅读完需:约 3 分钟

作者: jiashiwen 原文来源:https://tidb.net/blog/01c35358


#


notice”Rust is a trademark of the Mozilla Foundation in the US and other countries.”



最近想看看 rust 如何集成 clickhouse,又犯了好吃懒做的心理(不想自己建环境),刚好京东云发布了兼容 ck 的云原生数仓 Starwfit,于是搞了个实例折腾一番。Starwfit 是京东云自主研发的新一代云原生数据仓库, 通过存算分离降低了存储成本,同时兼具性能和扩展弹性。其写入和查询速度可达到传统数据仓库的数倍,为用户提供实时数据分析能力。广泛应用于流量分析、精准营销、用户画像、广告实时竞价、BI 报表分析、日志分析、促销选品、物联网等业务场景。广告打到这里,言归正传,看看 rust 如何与 starwift 打交道。

创建集群

  • 登录控制台,直接选配创建即可


  • 创建用户


  • 开启白名单为了保证 starwift 能够被外部资源访问需要开启白名单,默认情况下新创建的实例只有该实例所在 vpc 下才能访问为了方便,实验环境直接编辑 default 分组,编辑 ip 列表为 0.0.0.0/0,对所有 ip 开放。在实际生产环境需要根据实际情况配置白名单避免安全问题。


  • 开启公网连接

  • 为了实验方便,开启公网访问域名便于开发和测试


mac 客户端安装

  • 安装客户端


macos 客户端安装


   curl -O 'https://builds.clickhouse.com/master/macos/clickhouse' && chmod a  +x ./clickhouse
复制代码


rust 连接 starwift

starwift 支持 tcp 和 http 两种协议连接 server。下面我们分别给出两种方式的示例代码


  • tcp 连接

  • 依赖 crate

  • 示例代码

  • http 连接

  • 依赖 crate

  • 示例代码


测试过程中,遇到了依赖冲突问题,clickhouse-rs 和 clickhouse.rs 同时依赖了 clickhouse-rs-cityhash-sys 但依赖方式不同,导致编译不通过,下一期详细聊聊踩坑及爬坑过程。再次感谢京东云数据库团队提供的 starwift 测试实例。下期见。


发布于: 刚刚阅读数: 4
用户头像

TiDB 社区官网:https://tidb.net/ 2021-12-15 加入

TiDB 社区干货传送门是由 TiDB 社区中布道师组委会自发组织的 TiDB 社区优质内容对外宣布的栏目,旨在加深 TiDBer 之间的交流和学习。一起构建有爱、互助、共创共建的 TiDB 社区 https://tidb.net/

评论

发布
暂无评论
# 文盘Rust -- rust 连接云上数仓 starwift_开发语言_TiDB 社区干货传送门_InfoQ写作社区