同步客户端
目录
简介
企业中为了数据安全性或是防止被意外攻击,一般会将内部存储系统和外部进行隔离。针对这类使用场景,BDP提供了内网本地部署的同步客户端工具,该工具部署在企业内部的服务器上,企业可以根据自己的需要来灵活设置向BDP推送同步数据”
支持的数据库类型
同步客户端目前支持以下几种数据库:MySQL,SQL Server,Oracle,PostgreSQL,Hive,Access,SQLite,Firebird,DB2。
后续还将会支持更多主流数据库同步。
准备
同步客户端对于所部属的机器上有一定的要求,建议采用推荐配置。
服务器操作系统方面:同步客户端支持主流的 Windows 和 Linux 系统。Windows系统需要WIn 7以上,Linux系统需要CentOS 6.0以上,Ubuntu 12.0以上,Glibc2.14以上,等主流Linux系统。
服务器硬件要求:
最低配置:2核4G
推荐配置:4核4G
大数据量情况下,可以同时触发同步的数据源个数依赖于当前机器CPU的内核数和可用内存量,具体视情况而定。
下载同步客户端
用户可以在BDP数据源菜单的添加数据源的同步工具中看到介绍和下载页面链接。
可以根据自己服务器的操作系统类型,来选择相应的操作系统来进行下载。这里需要注意的是,客户端所要部署的服务器必须要有访问数据库的权限。
安装同步客户端
Windows版下载后会有一个安装包,鼠标右键单击安装包以管理员方式运行,点击同意安装协议,点击安装环境监测,安装环境监测主要是给出部署同步客户端的推荐配置,另外如果同步数据体量较大,也会对机器的性能提出相应的更高要求,最后点击安装即可完成。安装路径默认在系统盘Program Files(x86)下的BDP Noah文件夹。
Linux版下载后会得到一个名为noa.bin的文件,执行命令sh BDP_Noah_setup.bin,选择同意协议,设置完环境变量,安装路径,端口号后,即可完成安装。安装完成后,同步客户端即自动运行。
启动客户端
Windows安装完成后,桌面会生成BDP Noah的快捷方式,单击快捷方式右键以管理员方式启动,启动后,右下角会有图标。右键单击图标选择打开主界面,即可进入同步客户端登录页,默认的访问地址是127.0.0.1:9999,如果该端口被占用,可以右键单击图标选择更多设置,去配置端口号监听地址。
Linux版输入命令./bdpsync-noah,即可完成启动,在浏览器输入安装客户端机器的IP地址和设置的端口号即可进入到同步客户端登录页。如果想要在后台运行,执行命令nohup ./bdpsync-noah &。
使用同步客户端
安装完和登录到同步客户端后,进行相应的添加,设置后,就可以将数据库数据便捷的同步到 BDP 中。
添加数据源
要同步到BDP的数据可以看成是一个数据源,登录到同步客户端首先会进入添加数据源页面,在这个页面可以选择数据所在的数据库类型。
选择完数据库类型后,会进入数据库连接配置页面,用户输入相应的连接参数即可完成数据库的连接。
填写完成后,点击下一步即可进入数据表配置页,如果选择的类型有误,可以点击上一步返回到选择数据库类型页面。
数据表设置
数据库连接成功后,会进入到库和表的选择界面。在此界面中,你可以选择要同步到 BDP 的数据表,同时还可以进行一定的筛选和增量设置。
选择库和表
为了使用的准确性和方便性,同步客户端的设定是:一个数据源对应一个数据库,一个数据库可以对应多个数据源。如果想要同步多个库的数据表,那就要相应的建多个数据源。同时还建议,一个库下的同一张表,不要存在多个数据源下,这样对于数据同步没有意义。
在选择配置数据表选项栏中,对要同步的表进行相应的勾选。因为前面提到:建议一个库下的同一张表存在一个数据源下。对已经存在于其它数据源下的表会出现不可选提示,可以通过点击警告图标来查看此数据表已经存在哪个数据源下。
选择字段与主键设置
选择完要同步的表后,可以对要同步的表中的字段进行设置。
在配置数据表页面中可以看到选中表的字段进行预览和选择。点击字段与主键设置,可以对选择要同步的字段和主键设置。如果当前表有默认主键,则同步客户端不再支持自定义主键。如果当前表没有默认主键,则同步客户端支持自定义主键。如果该表有主键,但是主键字段并未在同步字段里,数据同步到BDP后,BDP会自动对两条一模一样进行去重操作。
单次上传条数
单次上传条数是指每次同步过程中数据包包含的数据条数,该值设置的越大,则同步耗时会更少,但是这依赖于服务器自身的配置以及网络情况,如果在网络不好或是机器配置不高的情况下,将该值设置的很高,则会导致同步失败。
数据表配置
目前BDP同步客户端支持三种同步方式,自定义条件同步,自定义SQL同步和高性能同步。
自定义条件同步适用于对SQL不熟悉的用户,用户可以通过图形化的操作界面来代替复杂的SQL语句编写。
同步方式支持全量和增量,全量同步是每次同步数据都会覆盖以前该表所有的数据,增量同步则是每次同步数据在以前该表的数据上进行追加。选择增量同步后,需要指定一个增量依据字段,目前只支持日期时间戳和整型数值类型的字段作为增量字段。增量值是用来查看和修改当前已经同步到的增量值是多少,建议第一次不要配置此值,如果想配置起始值,可在下面的筛选条件进行起始值的添加。
如果想对原始数据库数据进行筛选,可以点击添加筛选条件,通过设置多个筛选条件来将要同步到BDP的数据筛选出来。
自定义SQL同步适用于使用SQL熟练的用户,可在此输入筛选条件以及数据库本身支持的函数来实现数据的同步。
高性能同步适用于数据库读取较慢的情况的场景,目前高性能同步只支持全量同步。高性能同步实际是将要同步的数据切分成多份,然后这几份数据会同时同步到BDP。因此使用高性能同步需要设置四个参数,分别是选择字段,并发数,起始值和结束值。选择字段是设置进行切分的依据字段,并发数是要切分的份数,份数越高,相应的进程数就越高,对机器的要求就越高。字段起始值和结束值是选出要同步到BDP的数据。
同步条件配置
同步设置一共需要设置四项内容:
数据源名:数据源名是数据集在 BDP 的唯一标识。 备注同步:开启后,可同步数据库字段备注信息。 定时同步:开启后,可每天自动同步数据库中的数据。 同步时间:开启定时同步后,设置每天的同步时间。目前同步的最高频度支持小时级同步,因此设置的同步时间间隔必须要大于1小时。
在BDP中,是不允许存在同名的数据源,在同步客户端也是如此,因为重名的数据源不方便定位问题和查看错误。在同步客户端创建的数据源和在BDP中数据源菜单下数据源名称是一一对应的关系。如果想要删除同步客户端的数据源,请现在BDP数据源里将该数据源删除,否则删除不可能成功。
导入旧版配置文件
对于2.0.0以下的同步客户端用户,可以通过导入旧版配置文件,来完成旧版文件的配置。这样可以方便的将老版本的数据源迁移到新版的数据源。而2.0.0以上的用户直接点击系统即可升级到新的版本。
查看同步情况
数据源管理
在我的数据源界面可以看到每个数据的同步状况。如果失败的话,可以点击查看按钮,查看失败信息,并且支持发送日志反馈给BDP的技术人员。同时还可以进行相应的同步设置。同步过程中可以查看当前同步任务的占有的线程数,内存使用率等参数,这些可以帮助用户查看同步任务对机器性能的占用情况。
线程数是和数据源所拥有的数据表数量以及设置的同步方式有关的,同步的表数量越多,所需要的线程数就越大,对机器的性能要求就越高。设置的高性能同步并发数越高,所需要的线程数也越多,对机器的性能要求也越高。同步客户端所部署的服务器需要保证稳定的网络环境以及满足同步设置的服务器硬件性能。
数据源同步记录
在同步记录里面可以看到数据源以及数据表的同步历史记录。
邮箱提醒
在同步记录里面,点击邮箱提醒可以设置接收数据源同步信息的邮件。以此来查看数据源的同步信息。
升级
同步客户端每次启动时,都会检测有没有新版,并且有新版的时候会提醒给用户,用户可以根据实际情况来选择升级。一般情况下,是建议用户来进行升级的,因为新的版本会对同步稳定性和性能都有相应的改进。升级完成后,需要重启服务,并且还要对浏览器缓存进行清除操作。
注意事项
添加Oracle数据库数据源
1.Linux下,添加Oracle数据库数据源时,需要本地安装相应的驱动intantclient 11.2,oracle_linux_11.2/instantclient-basic-linux.x64-11.2.0.3.0,oracle_linux_11.2/instantclient-sdk-linux.x64-11.2.0.3.0。然后将两个包的内容解压到同一个文件夹下
unzip instantclient-basic-linux.x64-11.2.0.3.0.zip -d 路径名
unzip instantclient-sdk-linux.x64-11.2.0.3.0.zip -d 路径名
将以下内容写到~/.bash_profile文件末尾,如不存在,可自行创建该文件,注意将路径名更换为上一步的解压路径
export LD_LIBRARY_PATH=路径名:$LD\_LIBRARY\_PATH
export PATH=路径名:$PATH
export ORACLE_HOME=路径名
2.Windows下,添加Oracle数据库数据源时,也需要下载oracle_win_11.2/instantclient-basic-win32-11.2.0.1.0,oracle_win_11.2/instantclient-sdk-win32-11.2.0.1.0.zip,下载完后将两个包的内容解压到同一个文件夹下。比如:
C:\develop\instantclient-basic-win32-11.2.0.1.0\instantclient_11_2
C:\develop\instantclient-basic-win32-11.2.0.1.0\instantclient_11_2\sdk
配置环境变量:
LD_LIBRARY_PATH = C:\develop\instantclient-basic-win32-11.2.0.1.0\instantclient_11_2
ORACLE_HOME = C:\develop\instantclient-basic-win32-11.2.0.1.0\instantclient_11_2
PATH= C:\develop\instantclient-basic-win32-11.2.0.1.0\instantclient_11_2
3.TNS连接配置可参考 https://docs.oracle.com/cd/B28359_01/network.111/b28317/tnsnames.htm#NETRF268
添加PostgreSQL数据库数据源
Windows下需要安装PostgreSQL客户端,Linux下则需要安装
yum install postgresql-devel
安装时需要root权限。
添加Hive数据库数据源
连接Hive数据库,CentOS需要在本地安装这两个包:
yum install libgsasl-devel
yum install cyrus-sasl-plain
安装时需要root权限。
如果是其它操作系统,可直接联系BDP小红帽。
添加DB2数据库数据源
安装DB2需要先下载[1],然后在同步客户端部署的机器装上即可。
使用注意事项
同步客户端不支持多个版本同时运行,如果在已安装同步客户端基础上安装了新版同步客户端,需要将老版本客户端的环境变量删除掉才能启动使用。