ShardingSphere-Proxy数据分片教程

通过之前的几篇文章,我们可以将我们的Proxy中间件运行起来了,并且为搭建集群模式做好了准备。这篇文章主要是用来讲解数据分片的功能,如果对启动sharding还是有一些问题,可以参考下面列出的文章。

往期文章汇总:

1. 定制ShardingSphere-Proxy镜像满足业务需求-优快云博客

2. ShardingSphere-Proxy启动时报Not enough space-优快云博客

3. ZooKeeper单机、集群模式搭建教程-优快云博客

数据分片前提

使用数据分片是有前提的,我们在分片前,需要考虑:

  • 单表行数超过 500 万行
  • 单表容量超过 2GB,才推荐进行分库分表。

说明:如果预计三年后的数据量根本达不到这个级别,请不要在创建表时就分库分表。因为分库分片会带来SQL执行时间变长以及数据库运维成本增加。

启动模式

  • 单机模式:适用于开发、测试环境,元数据可以持久化到MySQL中,也可以保存在内存中。

  • 集群模式:生产环境,使用ZooKeeper和Etcd来进行元数据的存储

单机模式与集群模式的区别主要是多个节点之间的元数据是否能够共享,关于元数据可以参考下面这篇文章。

元数据-集群模式

注意集群模式下,zk和etcd的server-list格式不同。

global.yaml文件中启动模式的匹配内容

 # 单机模式,内存方式存储元数据
mode:
  type: Standalone
  repository:
    type: JDBC

# 单机模式,MySQL方式存储元数据
mode:
  type: Standalone
  repository:
    type: JDBC
    props:
      provider: MySQL
      jdbc_url: jdbc:mysql://124.156.192.247:3306/dbname
      username: root
      password: 123456

# zooKeeper配置,server-list为IP:PORT形式
mode:
  type: Cluster
  repository:
    type: zookeeper
    props:
      namespace: governance_ds #这个值不要加/,sharding会自己加上
      server-lists: 124.156.192.247:63311
      retryIntervalMilliseconds: 500
      timeToLiveSeconds: 60
      maxRetries: 3
      operationTimeoutMilliseconds: 500

# 集群模式配置
#Etcd配置,server-lists为proto
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值