PolarDB:国内公有云上最好的MySQL数据库

公司项目运行在阿里云上,目前已有三千万注册用户,一百万日活跃。我们一直使用阿里云的MySQL版RDS数据库,现已完全转到PolarDB上,运行良好。

在阿里云上,包括在国内公有云上,使用MySQL数据库,最好使用PolarDB,理由如下:

1. PolarDB能近乎无限扩展

基于计算和存储分离的架构,单库最多可扩展到16个节点,存储容量最高可达100TB。项目中存在大表单表超过一亿行,也存在大表单表数据大于100G,性能相对于小表没有下降,非常平稳。

2. 同等配置规格,PolarDB性能更好

以4核16G的配置规格为例,PolarDB支持IOPS最高32000,是RDS支持IOPS最高4500的7倍。

3. PolarDB成本更低

同样以4核16G的配置规格为例,PolarDB原价2000元每月,RDS原价2500每月,外加从库1300每月,总共3800每月,成本节省接近一半。

4. 备份恢复非常快,支持免费按时间点恢复

PolarDB参考文档:

从架构深度解析阿里云自研数据库POLARDB

http://tech.it168.com/a2018/0521/3204/000003204198.shtml

PolarDB使用注意事项:

1. 索引,索引,索引

PolarDB全表扫描消耗非常大,所有查询都必须加上对应索引,包括order by语句。

2. 只读节点

延时要求比较低的读请求都访问只读节点,降低集群主节点压力。

3. 白名单设置API

PolarDB数据库默认白名单是127.0.0.1,禁止所有外来访问,需要修改白名单才能正常访问。

官网API文档上没有白名单设置API的介绍,但Python SDK实际支持白名单设置。

白名单设置Python SDK文档

https://github.com/aliyun/aliyun-openapi-python-sdk/blob/master/aliyun-python-sdk-polardb/aliyunsdkpolardb/request/v20170801/DescribeDBClusterAccessWhitelistRequest.py

4. 不要把2核4G配置用于生产环境

据阿里云PolarDB专家说,PolarDB最佳的CPU核数和内存数比是1比4到1比8。2核4G配置达不到最佳比例,只能用于测试,不能用于生产环境。在测试中也遇到数据迁移任务会使2核4G配置的PolarDB CPU跑满的情况。

5. 为PolarDB预留IP

PolarDB增加节点需要使用内网IP,典型的最小配置,一个集群地址,一个只读地址,一共需要4个内网IP。在新建PolarDB时需要预留足够内网IP。

6. 考虑物理机分布

如果一次购买多台PolarDB实例,会经常出现多个PolarDB主节点分布在同一个物理机的问题,如果该台物理机发生故障,将影响多个PolarDB正常使用。如果要购买多台实例,请联系阿里云技术支持查看物理机分布情况,必要情况下做迁移打散。

 

你可能感兴趣的:(阿里云,PolarDB,MySQL,RDS,linux)