阿里开源分布式数据库PolarDB-X简介和快速安装部署

PolarDB-X是一款面向超高并发、海量存储、复杂查询场景设计的云原生分布式数据库系统。其采用SharedNothing与存储计算分离架构,支持水平扩展、分布式事务、混合负载等能力,具备企业级、云原生、高可用、高度兼容MySQL系统及生态等特点。PolarDB-X 是来自阿里开源的分布式数据库。

一、PolarDB-X 简介

PolarDB-X 采用 Shared-nothing 与存储计算分离架构进行设计,系统由4个核心组件组成。


(1)计算节点(CN, Comput e Node) 计算节点是系统的入口,采用无状态设计(目前最多可扩展至1024个节点),包括 SQL 解析器、优化 器、执行器等模块。

(2)存储节点(DN, Dat a Node) 存储节点负责数据的持久化,基于多数派 Paxos 协议提供数据高可靠、强一致保障,同时通过 MVCC 维护 分布式事务可见性。

(3)元数据服务(GMS, Global Met a Service) 元数据服务负责维护全局强一致的 Table/Schema, Statistics 等系统 Meta 信息,维护账号、权限等安全 信息,同时提供全局授时服务(即 TSO)。

(4)日志节点(CDC, Change Data Capture) 日志节点提供完全兼容 MySQL Binlog 格式和协议的增量订阅能力,提供兼容 MySQL Replication 协议的主从复制能力。


二、安装并启动PolarDB-X

下面演示使用Docker镜像安装PolarDB-X。本文是在macOS 系统中操作,Windows 环境也差不多。

(1)执行如下命令,拉取PolarDB-X容器镜像。

docker pull polardbx/polardb-x



(2)执行如下命令,运行PolarDB-X容器。

docker run -d --name polardbx -p 8527:8527 polardbx/polardb-x

执行docker ps 命令,查看 PolarDB-X 容器是否正常启动。


容器启动运行之后,容器中有一个CN、一 个DN和一个CDC,DN同时会扮演GMS的角色。也就是说,PolarDB-X的节点都在同一个容器中。

在PolarDB-X的四个组件中,CN和CDC都是无状态的,GMS和DN是有状态的。


如发现异常,可以进一步查看容器日志:

docker logs polardbx

注意需要给docker 分配足够的内存,否则容易出现OOM异常。



三、连接PolarDB-X

通过mysql 命令行登录PolarDB-X数据库命令如下所示:

mysql -h<连接地址> -P<端口> -u<用户名> -p -D<数据库名称>


容器中的PolarDB-X数据库用户名和密码已预设,可以执行如下命令:

mysql -h127.0.0.1 -P8527 -upolardbx_root -p123456


执行如下命令,查看连接到的数据库的版本:

select version();


可以看到当前连接到的数据库的版本 5.6.29。


执行如下SQL语句,检查GMS 元数据信息:

select * from information_schema.schemata\G


也可以通过第三方客户端连接到PolarDB-X数据库,比如我们通过SQLPro Studio 可视化工具来连接PolarDB-X。

配置登录账号,如图所示:


使用体验和MySQL 数据库一样,如图所示:

开源分布式数据库PolarDB-X简介和快速安装部署

发表评论
留言与评论(共有 0 条评论) “”
   
验证码:

相关文章

推荐文章