推荐:Cloud Spanner Emulator - 您本地的云 Spanner 开发和测试工具

推荐:Cloud Spanner Emulator - 您本地的云 Spanner 开发和测试工具

cloud-spanner-emulatorAn open source emulator for Cloud Spanner.项目地址:https://gitcode.com/gh_mirrors/cl/cloud-spanner-emulator

项目介绍

Cloud Spanner Emulator 是 Google 提供的一款本地运行的模拟器,旨在帮助开发者在本地环境中进行 Cloud Spanner 的应用程序开发与测试。它强调正确性,确保您的应用在模拟器上运行良好,也能无缝对接到真正的 Cloud Spanner 服务,无需任何代码更改。

项目技术分析

这款模拟器基于 ZetaSQL 参考实现构建,分为三个层级:REST 网关、gRPC 前端和数据库后端。核心代码以 C++ 编写,Go 语言处理 REST 包装。通过 gRPC 和 REST API 支持与 Cloud Spanner 相同的操作,包括 DDL、SQL 查询执行、DML 顺序号以及实例和数据库管理等。

应用场景

  1. 本地开发 - 在不依赖云环境的情况下快速迭代和调试代码。
  2. 单元测试 - 为 Cloud Spanner 应用编写可靠且独立的单元测试。
  3. 团队协作 - 非常适合集成到 CI/CD 流程中,确保代码质量。
  4. 教学与学习 - 对于理解 Cloud Spanner 数据库特性和操作提供了直观的学习平台。

项目特点

  1. 多方式启动 - 支持通过 devcontainers、gcloud 命令行、预建 Docker 映像、Linux 完全静态二进制文件和自定义 Docker 映像等多种方式进行启动。
  2. 跨架构支持 - 兼容 x86 和 arm64 架构,无论您是哪种平台,都能轻松运行。
  3. 广泛的功能支持 - 虽然存在一些限制(见下文),但大多数 Cloud Spanner 功能如 DDL、SQL 执行、事务处理等已被成功模拟。
  4. 轻量级 - 由于数据仅存储在内存中,因此启动和停止快速,资源占用少。

注意事项与局限性

虽然 Cloud Spanner Emulator 提供了许多功能,但也有需要注意的局限性,例如不支持 IAM API、备份 API,且只允许一个读写事务或一次模式更改,并且错误消息可能与 Cloud Spanner 服务不同。此外,数据不持久化,当模拟器退出时会丢失所有信息。

总之,Cloud Spanner Emulator 是一款强大的工具,能够显著提升对 Cloud Spanner 平台的应用程序开发和测试效率,特别适用于希望在本地环境中优化和验证代码的开发者。立即尝试并加入到 Cloud Spanner 的本地开发旅程吧!

cloud-spanner-emulatorAn open source emulator for Cloud Spanner.项目地址:https://gitcode.com/gh_mirrors/cl/cloud-spanner-emulator

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

农爱宜

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值