文章插图
文章插图
以上操作会创建一个 ShardingSphere-Proxy 集群,其中包含 1 个 Proxy 实例、2 个 Operator 实例和 1 个 Proxy 治理实例,如下所示:
3.使用 DistSQL 创建分片表
(1) 登录 ShardingSphere-Proxy 并添加 PostgreSQL 实例 。
??????
Bash
kubectl port-forward --namespace sharding-test svc/shardingsphere-cluster-shardingsphere-operator-cluster 3307:3307
psql --host 127.0.0.1 -U root -p 3307 -d postgres
文章插图
(2) 执行 DistSQL,用 MOD(user_id, 4)创建一个分片表 t_user,显示这个逻辑表 t_user 的实际表 。
文章插图
(3) 插入测试行,在 ShardingSphere-Proxy 上执行查询,得出最终合并结果 。
文章插图
(4) 登录到两个 PostgreSQL 实例以获取它们的本地结果 。
文章插图
文章插图
以上测试有助于理解 ShardingSphere 管理和分片数据库的功能, 用户无需关注不同分片中的单个数据 。
4.测试 ShardingSphere-Proxy 集群(计算节点)的伸缩和高可用
如果用户认为新系统的 TPS 或 QPS 太高,可以考虑升级整个分布式数据库系统的计算能力 。相较于其它分布式数据库系统,ShardingSphere-Proxy 增加计算节点的方式最为简单 。ShardingSphere-Operator 能够基于 CPU 指标确保 ShardingSphere-Proxy 的可用性和弹性伸缩 。此外,还可通过修改参数进行扩容或缩容,如下图所示:
文章插图
升级完成后用户将会获取两个 ShardingSphere-Proxy 实例,表明计算能力得到了增强 。
如上,若用户需要更多的存储容量,可以采取以下步骤:
- 在云端或本地部署启动额外的 PostgreSQL 实例;
- 将新的存储节点添加到 ShardingSphere-Proxy 中;
- 运行 DistSQL,使用 ShardingSphere 进行重新分片 。
本文聚焦 Kubernetes 上的一种全新分片数据库架构,利用分布式数据库存算分离的架构,借助现有单体数据库帮运维团队高效流畅地将数据库基础设施转化为现代数据库的分布式系统 。通过在 Kubernetes 重新解读和应用分布式数据库计算存储分离这种传统架构,解决了有状态数据库在 Kubernetes 上的部署、治理、使用等问题 。
如今,分布式数据库、云计算、开源、大数据、数字化转型都是热门概念 。这些热词传递了新概念、新想法和新方案,对解决生产问题、满足生产需求大有裨益 。但毕竟世界上没有完美的方案,我们要善于接受新的思想、通过权衡优劣、依据用户独特的场景需要选出最适合自己的方案才是技术选型的王道 。
关于作者
潘娟,SphereEx 联合创始人 &CTO、Apache Member & Incubator Mentor、Apache ShardingSphere PMC、AWS Data Hero、腾讯云 TVP、中国木兰开源社区导师 。曾负责京东数科数据库智能平台的设计与研发,现专注于分布式数据库 & 中间件生态及开源领域 。
参考资料:
[1]https://www.verifiedmarketresearch.com/product/database-as-a-service-providers-market/
推荐阅读
- 神秘的大佛|十多万拍一部功夫片,实现零的突破险遭禁映,创下8000多万票房!
- 不耻下问的故事20字 不耻下问的故事
- 电影院|北京进电影院需48小时核酸 上座率控制在75%以下
- 上有天堂 下有苏杭(苏州排在杭州前面当之无愧)
- 上九天揽月 下五洋捉鳖什么意思 上九天揽月 下五洋捉鳖
- 想知道天蝎座喜不喜欢你,看有没有以下表现,一秒猜透他们的内心
- 文竹摆放也有禁忌?以下3个地方不要放文竹,容易黄叶难养护
- 辅警|有潜力的几种下属
- 天下长河|《天下长河》已经迎来收官,网上也传出了接档剧的消息,让人十分的期待
- 药材是经济效益很高作物,选择以下两种也许给你带来致富