数据分发服务器由dispserver、dispcli两个服务组成。这两个服务以tar包的形式单独提供,用户使用时,只需使用tar命令解压即可。配置数据加载的任务文件和dispcli工具必须存在于一台物理机器上,数据源文件和dispserver工具必须在同一台物理机器上。
2.2、数据加载步骤
1 启动服务器端 ./dispserver
2 设置配置数据加载的任务文件,如:xxxx.txt
disp_server=192.168.80.250:6666 ####服务端地址
file_list=path ####源文件目录
table_name=aaa ####加载的数据表名称
db_user=root ####登陆的用户名
db_name=bigdata ####加载的数据库名称
format=0 ####文本文件
delimiter=' ' ####源文件中数据的分隔符
socket=/tmp/gbase_8a_5050.sock
extra_loader_args=--parallel=12 ####数据的格式相关
hash_parallel=4 ####并发数,与硬件环境相关,硬件性能越高,此参数可以加大在本次集群环境中使用此配置
3 启动客户端加载程序
【数据加载实例】
将exmple.TXT.gz文件中的数据导入bigdata数据库的aaa表中,
数据加载过程
1 服务端dispserver与数据放在192.168.80.250服务器上,并进入dispserver所在目录,启动服务端 ./dispserver
2 设置配置数据加载的任务文件 aaa
[loader]
disp_server=192.168.80.250:6666 ####服务端地址
file_list=path ####源文件目录
table_name=aaa ####加载的数据表名称
db_user=root ####登陆的用户名
db_name=bigdata ####加载的数据库名称
format=0 ####0表示文本文件
delimiter=' ' ####源文件中数据的分隔符,此处为tab
socket=/tmp/gbase_8a_5050.sock
extra_loader_args=--parallel=12 ####数据的格式相关
hash_parallel=4 ###Hash操作使用的线程个数,最小为1,最大为节点个数
3、数据加载常见问题解决方案
2.3.2一张表中只有一种时间格式时
如,2013-09-10 00:00:00.000,只需要将配置文件的extra_loader_args参数设置为
extra_loader_args=12--def-datetime-format='%Y-%m-%d %H:%i:%s.%f'
一张表中有多种不同的时间格式的字段
需要在配置数据加载的任务文件中对每个字段单独指定时间格式,如:
extra_loader_args=--parallel=12 --table_fields=
CompletedDate date "%Y-%m-%d %H:%i:%s.%f",
OdsDateTime date "%Y-%m-%d",
DynamicFlag'
分隔符delimiter参数设定
该参数必须与数据文件中一样;注意tab与空格的区别。
数据导入后出现乱码
在数据导入之前,使用iconv -c -fgb18030 -t utf8 xxx.txt >yyy.txt
再使用yyy.txt导入数据
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)