PolarDB-X云数据库与MySql数据库的应用与分析
首先第一部分我讲解一下PolarDB-X和Mysql的一些实践,第二部分我讲一些PolarDB-X与MySql的对比分析
1. PolarDB-X的使用
首先安装Docker命令
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
然后进行启动
systemctl start docker
接下来我们通过Docker命令来安装PolarDB-X数据库
docker run -d --name some-polardb-x -p 8527:8527 polardbx/polardb-x:2.1.0
PolarDB-X支持通过MySQL Client命令行、第三方客户端以及符合MySQL交互协议的第三方程序代码进行连接。
接下来我们安装MySql,使用yum命令进行安装
yum install mysql -y
如果安装成功的话我们可以看一看数据库的版本,这个通过version命令即可查看
最后我们进行PolarDB-X数据库的登录
mysql -h127.0.0.1 -P8527 -upolardbx_root -p123456
登录之后我们就可以进行相应的数据库的开发操作,这款数据库对开发者而言是十分友好的,欢迎大家使用.
2. MySql数据库
以下是我写的一个比较完备的语法正确的数据库表,欢迎大家的使用
CREATE TABLE `sys_numberkey_info` (
`number_key_id` BIGINT(20) NOT NULL AUTO_INCREMENT COMMENT '数字钥匙ID',
`number_key_code` VARCHAR(255) DEFAULT '' COMMENT '数字钥匙识别码',
`number_key_user` VARCHAR(255) DEFAULT '' COMMENT '用户信息',
`number_key_vehicle` VARCHAR(255) DEFAULT '' COMMENT '车辆信息',
`number_key_status` CHAR(1) DEFAULT '0' COMMENT '数字钥匙状态(0冻结 1解冻)',
`create_time` DATETIME DEFAULT NULL COMMENT '创建时间',
`number_key_date` DATETIME DEFAULT NULL COMMENT '数字钥匙有效期',
PRIMARY KEY (`number_key_id`) USING BTREE
) ENGINE=INNODB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC COMMENT='数字钥匙表'
3. 两款数据库的对比分析
与PolarDB不同,PolarDB-X是一个真正的分布式服务。他的计算节点CN,数据节点DN都是可以进行扩容的。相较与MySQL的服务架构, PolarDB的DBServer可以认为就是MySQL本身,而DataServer则是文件服务。而PolarDB-X的CN节点可以认为是MySQL的Server部分,DN节点为MySQL的InnoDB部分。与PolarDB的主从架构不同, PolarDB-X的计算节点是完全分布式的。DN节点基于Paxos提供数据高可靠、强一致保障。同时通过MVCC维护分布式事务可见性。且DN支持PB级别的数据量.PolarDB-X将数据表以水平分区的方式,分布在多个存储节点(DN)上。数据分区方式由分区函数决定,PolarDB-X支持哈希(Hash)、范围(Range)等常用的分区函数。PolarDB-X支持并行计算,将SQL拆分为不同的Task分配给多个CN,并行计算。
从MySQL迁移至PolarDB-X的理由:
PolarDB-X将兼容MySQL以及周边生态作为核心设计目标之一。兼容MySQL协议,兼容绝大部分MySQL函数。PolarDB-X作为分布式服务,在可支撑并发量及容量上都是可以线性扩展的。
迁移成本:
- PolarDB 100%兼容MySQL协议,不需要改变客户端
- 学习成本低,除了部分由于分布式导致的SQL使用限制
- 由云完全托管,没有新的运维成本开销。
- 历史数据可以通过相关工具自动迁移至PolarDB-X。
- 点赞
- 收藏
- 关注作者
评论(0)