Skip to content

Latest commit

 

History

History
102 lines (72 loc) · 2.83 KB

使用文档.md

File metadata and controls

102 lines (72 loc) · 2.83 KB

RucDDBMS环境配置

项目下载

git clone [email protected]:HuangDunD/DDBMS.git

git submodule update --init --recursive

环境准备

# 安装brpc依赖
sudo apt-get install -y git g++ make libssl-dev libgflags-dev libprotobuf-dev libprotoc-dev protobuf-compiler libleveldb-dev
sudo apt-get install -y libsnappy-dev

cd deps/brpc
mkdir build && cd build && cmake .. && cmake --build . -j6 && make install

编译

目前,整个系统分为服务端和元数据服务器meta_server。

对meta_server进行编译之前需要进行相关参数的配置

dbconfig.h
//config for metaserver
static const std::string DATA_DIR = "/home/t500ttt/DDBMS/data/"; //这里改成自己的数据存放地址,要自己新建一个文件夹
static const std::string META_SERVER_FILE_NAME = "META_SERVER.meta";
static const int META_SERVER_PORT = 8001; // maybe not used
static const std::string META_SERVER_LISTEN_ADDR = "0.0.0.0:8001"; //这里可以修改元数据服务器的监听地址
static const int idle_timeout_s = -1;

之后可以使用以下命令来进行元数据服务器的编译:

cd meta_server
mkdir build
cd build
cmake .. [-DCMAKE_BUILD_TYPE=Debug]|[-DCMAKE_BUILD_TYPE=Release]
make <-j4>|<-j8> # 选择4 or 8线程编译 

对数据库服务端进行编译之前无须进行额外配置,本项目通过gflag可以在命令行输入相关参数避免反复编译

你可以使用以下命令来进行服务端的编译:

mkdir build
cd build 
cmake .. [-DCMAKE_BUILD_TYPE=Debug]|[-DCMAKE_BUILD_TYPE=Release]
make <-j4>|<-j8> # 选择4 or 8线程编译

运行

首先运行meta_server:

cd meta_server/build
./meta_server

然后开启数据库服务端,可以根据自己的机器配置选择合适的节点数量配置伪分布环境,有条件的同学也可以部署真分布式环境,目前当前项目不支持用户直接输入SQL,最高层级为事务层,实验的目标是通过测试样例,并完成性能测试

mkdir build/test
./相应测试用例

测试单元

GoogleTest框架测试

包含以下模块测试: 每一个测试模块的使用和需要完成的代码会在各个任务中详细列出, 以下测试文件也并不是全部都需要的。具体任务请看大作业文档

  • 事务模块:

    • Lock_manager_test
    • transaction_test transaction_test2
  • 日志模块:

    • log_manager_test
  • Raft模块:

    • raft_test
  • 性能测试:

    • benchmark_test