# data_flood
**Repository Path**: movead/data_flood
## Basic Information
- **Project Name**: data_flood
- **Description**: data_flood是致力于PostgreSQL数据测试, 起源于作者想迅速生成无意义的PostgreSQL的测试数据。
- **Primary Language**: Unknown
- **License**: PostgreSQL
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2024-12-07
- **Last Updated**: 2025-12-09
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
## 什么是data_flood
data_flood是致力于PostgreSQL数据测试, 起源于作者想迅速生成无意义的PostgreSQL的测试数据。
## 工具蓝图
- 目前实现了迅速生成测试数据的初衷,目前可以在测试机一个比较渣的SSD上100s内生成200G的表数据。
- TODO:增加分区表支持
- TODO:增加自定义列数据
- TODO:构建一个测试模型,并完成TPCC测试代码
## DB支持
- 测试通过PG10~PG18
- 测试通过OG3.0~OG5.0
## data_flood编译
data_flood需要依赖安装好的PG进行编译,编译需要PGHOME环境变量
```
lchch@deepin:~/h1/data_flood$ export PGHOME=/home/lchch/h2/pg17
lchch@deepin:~/h1/data_flood$ export LD_LIBRARY_PATH=$PGHOME/lib:$LD_LIBRARY_PATH
lchch@deepin:~/h1/data_flood$ export PATH=$PGHOME/bin:$PATH
lchch@deepin:~/h1/data_flood$ make > /dev/null
lchch@deepin:~/h1/data_flood$ ll bin/
总用量 52
-rwxr-xr-x 1 lchch lchch 52720 12月 7 12:33 data_flood
lchch@deepin:~/h1/data_flood$
```
bin目录下就是可以运行的工具。
## data_flood运行
运行data_flood时也需要设置好数据库的lib路径
```
export LD_LIBRARY_PATH=$PGHOME/lib/:$LD_LIBRARY_PATH
```
## 使用简介
```
data_flood [options]
-h 显示帮助命令
-V 显示data_flood版本
-v 打印debug信息
-p 连接数据库端口
-P 连接数据库的密码
-U 连接数据库的用户
-d 连接的数据库名
-u 唯一性列
-r 需要扩展的表
-j 并行扩展线程数
-n 扩展表文件大小(单位GB)
-f 如果表存在则强制truncate表
```
```
data_flood -p 10060 -U lchch -d postgres -u i -r t4 -j 5 -n 10 -f
```
为postgres库的t4表生成10G的数据
联系我(lchch1990@sina.cn)