项目简介
本项目是一个基于分布式数据库系统的分布式管理系统,目标是构建大规模信息系统。系统由Master节点、Region Server节点和客户端等多个组件构成,借助ZooKeeper进行集群连接状态管理。同时,系统支持Java和Python客户端,并提供命令行接口供用户访问。
项目的主要特性和功能
- Master节点:负责管理Region Server的连接,处理表名和Region Server的映射关系。
- Region Server节点:负责表的存储和SQL语句的执行。
- 客户端:提供Java和Python的命令行接口,支持用户进行SQL查询和数据操作。
- ZooKeeper:辅助集群连接状态管理,保障系统的稳定性和高可用性。
- 分布式存储:支持大规模数据的分布式存储和查询。
- 负载均衡:通过Master节点进行负载均衡,确保系统高效运行。
- 数据同步:支持Region Server之间的数据同步,保证数据一致性。
安装使用步骤
1. 环境准备
- 安装Java和Python环境。
- 下载并安装ZooKeeper 3.7.1。
- 确保已安装Maven,用于管理Java依赖。
2. 启动ZooKeeper服务
前往ZooKeeper官网下载ZooKeeper 3.7.1,然后运行以下命令启动ZooKeeper服务:
bash
bin/zkServer.cmd
ZooKeeper默认运行在2181端口,记下本机地址和运行端口。
3. 配置Master节点
- 确保已安装
pom.xml
中指示的各项依赖。 - 修改
src/main/resources/config/server.yml
配置文件中的以下字段:yml network: ip: 192.168.115.25 # 本机 IP timeOut: 3000 # 连接超时(毫秒) rpcPort: 9046 # 本机用于处理 Thrift 连接的端口 socketPort: 9047 # 本机用于处理 Socket 连接的端口 zookeeper: ip: 192.168.115.30 # ZooKeeper 服务器 IP port: 2181 # ZooKeeper 服务器端口
- 运行
java.master.Master.main()
启动Master节点。
4. 配置Region Server节点
- 参考Master节点的配置,修改配置文件中的字段。注意,如果是在同一物理机上运行Master或Region Server,端口不能重复。
- 确保
src/main/java/region/Utils.java
中DBFiles
的值为已存在的路径,这个文件夹存储Minisql生成的表数据和index数据。 - 运行
java.region.Region.main()
方法启动Region Server节点。
5. 配置Java客户端
- 修改
src/main/java/client/client.java
中Config
类下的ip
和port
为Master机器的地址。 - 运行
java.client.client.main()
方法启动Java客户端。
6. 配置Python客户端
参考dms-python-client/README.md
进行配置和启动。
通过以上步骤,即可成功部署并运行基于分布式数据库系统的分布式管理系统。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】