#数据导入命令
# load
本命令用于拆分大的csv文件,并将拆分后的小文件导入YashanDB的物理表中。文件拆分和导入是通过调用yasldr完成。
| 选项 | 含义 |
|---|---|
| -c, --cluster | YashanDB的集群名 |
| -b, --batch-size | 每批次的CSV数据行数,范围[1,65535] |
| -m, --mode | 导入模式,包括BASIC和BATCH模式 |
| -sm, --split-mode | 拆分模式,包括PART、NODE和NODEPART模式,默认PART模式 |
| -f, --control-file | control-file文件路径 |
| -j,--part-job | 导入分区数据到节点时并行启动的yasldr数量 |
| -n,--no-load | 只拆分不导入 |
| -s,--split-file-directory | 已拆分文件路径,表示将已拆分好的数据导入数据库,前提是已经完成了文件拆分命令 |
| -u,--username | 集群用户名 |
| -p,--password | 集群用户名对应的密码 |
| --delete | 删除拆分文件存放目录中的csv文件 |
| --param | 透传给yasldr的命令行参数 |
| -w, --nowait | 运行后不等待执行命令结果 |
| -d, --child | 展示任务以及子任务信息 |
| --disable | 屏蔽任务进度条展示 |
# 拆分模式
yasboot load命令支持以下三种拆分模式:
| 拆分模式 | 说明 |
|---|---|
| PART | 拆分成分区数据: * 分布式:连接DN主节点拆分成分区数据;将分区数据通过连接CN节点导入。 * 单机:拆分和导入都是连接DN主节点。 |
| NODE | 拆分成节点数据,仅支持分布式: * 分布式:连接CN节点拆分成节点数据;连接DN主节点,将节点数据导入各自节点。 |
| NODEPART | 拆分成节点分区数据,仅支持分布式: * 分布式:连接CN节点拆分成节点数据;连接DN主节点将节点数据拆分成分区数据;连接DN主节点,将节点分区数据导入各自节点。 |
示例
# 一键拆分和导入csv数据
$ yasboot load -c yashandb -f /var/database/yashan/load/yashanload.ctl -sm PART --param "CONN_POOL_SIZE=10"
# 一键拆分csv文件
$ yasboot load -c yashandb -f /var/database/yashan/load/yashanload.ctl -sm PART -n
# 一键导入已拆分好的csv数据(前提:已完成了一键拆分csv文件命令)
$ yasboot load -c yashandb -s /var/database/yashan/load/splitFileDirectory