简介
odb是Apache孵化项目Trafodion自带的ETL工具,主要可完成数据表的导入、导出和两个数据库之间的复制功能。是一个小巧实用、linux/windows双平台的工具。
当环境安装配置好odbc驱动后,就可使用odb对Trafodion、oracle等数据库进行导入、导出、复制操作。
指令及参数说明
指令如下:
./odb64luo -u USERNAME -p PASSWD -d DSN -l src=FILE_PATH:tgt=TRAFODION.SCHEMA_NAME.TABLE_NAME:loadcmd=UL:max=N:fs=,:parallel=M
使用以上指令可以把文件 FILE_PATH 导入数据库的表 TRAFODION.SCHEMA_NAME.TABLE_NAME 中。
-u:数据库用户名
-p:数据库密码
-d:数据库DSN,对应odbc.ini文件中的配置
-l:说明是load功能,相应的有 -e 导出, -cp 表复制
src:源文件路径
tgt:目标表
loadcmd:提供IN/UP/UL,其中UL速度最快,不过不做检查
max:load多少行,不写该参数默认load整个文件
fs:文件总每列的分隔符
parallel:并行程度,同时起多少个线程load数据,根据环境配置,正确设置该值可以极大优化load速率
当然,还有很多参数可以设置,这里不一一描述。
load性能
load性能和文件属性有很大的关系,如果文件中每行数据较多(对应表的列数多,每列内容多),则吞吐量较大
不同并发程度load数据的吞吐量如上图,在文件每行长度较大的情况下,可达135MB/s。
想要使用的朋友可以在GITHUB开源社区搜索 INCUBATOR_TRAFODION。
具体使用方法见官方说明书:
http://trafodion.incubator.apache.org/docs/odb/