云服务器内容精选
-
create命令扩展属性 针对HDFS与SFTP服务器或RDB进行数据交换场景, MRS 在开源sqoop-shell工具的基础上对create命令属性进行扩展,以达到在创建作业时指定行、列分隔符及转换步骤的目的。 表2 create命令扩展属性 属性 说明 fields-terminated-by 默认的列分割符。 lines-terminated-by 默认的行分割符。 input-fields-terminated-by 输入步骤的列分割符,当不指定时,默认等于fields-terminated-by的值。 input-lines-terminated-by 输入步骤的行分割符,当不指定时,默认等于lines-terminated-by的值。 output-fields-terminated-by 输出步骤的列分割符,当不指定时,默认等于fields-terminated-by的值。 output-lines-terminated-by 输出步骤的行分割符,当不指定时,默认等于lines-terminated-by的值。 trans 指定转换步骤,值为转换步骤文件所在的路径。当指定文件的相对路径时,默认为“sqoop2-shell”脚本所在路径下的文件。当配置了该属性,其他扩展属性都被忽略。
-
sqoop1对接MRS服务 下载开源Sqoop,http://www.apache.org/dyn/closer.lua/sqoo:p/1.4.7。 将下载好的sqoop-1.4.7.bin__hadoop-2.6.0.tar.gz 包放入MRS集群master节点的/opt/sqoop目录下并解压。 tar zxvf sqoop-1.4.7.bin__hadoop-2.6.0.tar.gz 进入解压完成的目录,修改配置。 cd /opt/sqoop/sqoop-1.4.7.bin__hadoop-2.6.0/conf cp sqoop-env-template.sh sqoop-env.sh vi sqoop-env.sh 添加配置: export HADOOP_COMMON_HOME=/opt/client/HDFS/hadoop export HADOOP_MAPRED_HOME=/opt/client/HDFS/hadoop export HIVE_HOME=/opt/Bigdata/MRS_1.9.X/install/ FusionInsight -Hive-3.1.0/hive(请按照实际路径填写) export HIVE_CONF_DIR=/opt/client/Hive/config export HCAT_HOME=/opt/client/Hive/HCatalog 添加系统变量,将“SQOOP_HOME”添加到PATH中。 vi /etc/profile 添加以下信息: export SQOOP_HOME=/opt/sqoop/sqoop-1.4.7.bin__hadoop-2.6.0 export PATH=$PATH:$SQOOP_HOME/bin 执行以下命令复制jline-2.12.jar文件到lib文件下。 cp /opt/share/jline-2.12/jline-2.12.jar /opt/sqoop/sqoop-1.4.7.bin__hadoop-2.6.0/lib 执行以下命令,在文件中添加下列配置。 vim $JAVA_HOME/jre/lib/security/java.policy permission javax.management.MBeanTrustPermission "register"; 执行以下命令,实现sqoop1对接MRS服务。 source /etc/profile
-
概述 本章节适用于MRS 3.x及后续版本。 sqoop-shell是一个开源的shell工具,其所有功能都是通过执行脚本“sqoop2-shell”来实现的。 sqoop-shell工具提供了如下功能: 支持创建和更新连接器 支持创建和更新作业 支持删除连接器和作业 支持以同步或异步的方式启动作业 支持停止作业 支持查询作业状态 支持查询作业历史执行记录 支持复制连接器和作业 支持创建和更新转换步骤 支持指定行、列分隔符 sqoop-shell工具支持如下模式: 交互模式 通过执行不带参数的“sqoop2-shell”脚本,进入Loader特定的交互窗口,用户输入脚本后,工具会返回相应信息到交互窗口。 批量模式 通过执行“sqoop2-shell”脚本,带一个文件名作为参数,该文件中按行存储了多条命令,sqoop-shell工具将会按顺序执行文件中所有命令;或者在“sqoop2-shell”脚本后面通过“-c”参数附加一条命令,一次只执行一条命令。 sqoop-shell通过表1的命令来实现Loader各种功能。 表1 命令一览表 命令 说明 exit 表示退出交互模式。 该命令仅支持交互模式。 history 查看执行过的命令。 该命令仅支持交互模式。 help 查看工具帮助信息。 set 设置服务端属性。 show 显示服务属性和Loader所有元数据信息。 create 创建连接器和作业。 update 更新连接器和作业。 delete 删除连接器和作业。 clone 复制连接器和作业。 start 启动作业。 stop 停止作业。 status 查询作业状态。
-
create命令扩展属性 针对HDFS与SFTP服务器或RDB进行数据交换场景,MRS在开源sqoop-shell工具的基础上对create命令属性进行扩展,以达到在创建作业时指定行、列分隔符及转换步骤的目的。 表2 create命令扩展属性 属性 说明 fields-terminated-by 默认的列分割符。 lines-terminated-by 默认的行分割符。 input-fields-terminated-by 输入步骤的列分割符,当不指定时,默认等于fields-terminated-by的值。 input-lines-terminated-by 输入步骤的行分割符,当不指定时,默认等于lines-terminated-by的值。 output-fields-terminated-by 输出步骤的列分割符,当不指定时,默认等于fields-terminated-by的值。 output-lines-terminated-by 输出步骤的行分割符,当不指定时,默认等于lines-terminated-by的值。 trans 指定转换步骤,值为转换步骤文件所在的路径。当指定文件的相对路径时,默认为“sqoop2-shell”脚本所在路径下的文件。当配置了该属性,其他扩展属性都被忽略。
-
sqoop1对接MRS服务 下载开源Sqoop,http://www.apache.org/dyn/closer.lua/sqoo:p/1.4.7。 将下载好的sqoop-1.4.7.bin__hadoop-2.6.0.tar.gz 包放入MRS集群master节点的/opt/sqoop目录下并解压。 tar zxvf sqoop-1.4.7.bin__hadoop-2.6.0.tar.gz 进入解压完成的目录,修改配置。 cd /opt/sqoop/sqoop-1.4.7.bin__hadoop-2.6.0/conf cp sqoop-env-template.sh sqoop-env.sh vi sqoop-env.sh 添加配置: export HADOOP_COMMON_HOME=/opt/client/HDFS/hadoop export HADOOP_MAPRED_HOME=/opt/client/HDFS/hadoop export HIVE_HOME=/opt/Bigdata/MRS_1.9.X/install/FusionInsight-Hive-3.1.0/hive(请按照实际路径填写) export HIVE_CONF_DIR=/opt/client/Hive/config export HCAT_HOME=/opt/client/Hive/HCatalog 添加系统变量,将“SQOOP_HOME”添加到PATH中。 vi /etc/profile 添加以下信息: export SQOOP_HOME=/opt/sqoop/sqoop-1.4.7.bin__hadoop-2.6.0 export PATH=$PATH:$SQOOP_HOME/bin 执行以下命令复制jline-2.12.jar文件到lib文件下。 cp /opt/share/jline-2.12/jline-2.12.jar /opt/sqoop/sqoop-1.4.7.bin__hadoop-2.6.0/lib 执行以下命令,在文件中添加下列配置。 vim $JAVA_HOME/jre/lib/security/java.policy permission javax.management.MBeanTrustPermission "register"; 执行以下命令,实现sqoop1对接MRS服务。 source /etc/profile
-
概述 sqoop-shell是一个开源的shell工具,其所有功能都是通过执行脚本“sqoop2-shell”来实现的。 sqoop-shell工具提供了如下功能: 支持创建和更新连接器 支持创建和更新作业 支持删除连接器和作业 支持以同步或异步的方式启动作业 支持停止作业 支持查询作业状态 支持查询作业历史执行记录 支持复制连接器和作业 支持创建和更新转换步骤 支持指定行、列分隔符 sqoop-shell工具支持如下模式: 交互模式 通过执行不带参数的“sqoop2-shell”脚本,进入Loader特定的交互窗口,用户输入脚本后,工具会返回相应信息到交互窗口。 批量模式 通过执行“sqoop2-shell”脚本,带一个文件名作为参数,该文件中按行存储了多条命令,sqoop-shell工具将会按顺序执行文件中所有命令;或者在“sqoop2-shell”脚本后面通过“-c”参数附加一条命令,一次只执行一条命令。 sqoop-shell通过表1的命令来实现Loader各种功能。 表1 命令一览表 命令 说明 exit 表示退出交互模式。 该命令仅支持交互模式。 history 查看执行过的命令。 该命令仅支持交互模式。 help 查看工具帮助信息。 set 设置服务端属性。 show 显示服务属性和Loader所有元数据信息。 create 创建连接器和作业。 update 更新连接器和作业。 delete 删除连接器和作业。 clone 复制连接器和作业。 start 启动作业。 stop 停止作业。 status 查询作业状态。
-
任务实例 不更新作业参数,直接运行名称为“sftp-hdfs”的作业。 ./submit_job.sh -n sftp-hdfs -u n 更新名称为“sftp-hdfs”导入作业的输入路径、编码类型、后缀、输出路径和启动的map数量参数,并运行作业。 ./submit_job.sh -n sftp-hdfs -u y -jobType import -connectorType sftp -inputPath /opt/tempfile/1 -encodeType UTF-8 -suffixName '' -frameworkType hdfs -outputDirectory /user/user1/tttest -extractors 10 更新名称为“db-hdfs”导入作业的数据库模式、表名、输出路径参数,并运行作业。 ./submit_job.sh -n db-hdfs -u y -jobType import -connectorType rdb -schemaName public -tableName sq_submission -sql '' -partitionColumn sqs_id -frameworkType hdfs -outputDirectory /user/user1/dbdbt
-
操作步骤 在SFTP服务器的“/opt/houjt/test03”路径中,创建多个以“table1”为前缀,“.txt”为后缀,中间为yyyyMMdd的日期格式的文件。 图1 示例 创建一个从SFTP服务器导入数据到HDFS的Loader作业,具体操作请参见使用Loader从SFTP服务器导入数据到HDFS/OBS。 使用安装客户端的用户登录客户端所在节点。 执行以下命令,进入schedule-tool工具的conf目录。例如,Loader客户端安装目录为“/opt/client/Loader/”。 cd /opt/client/Loader/loader-tools-1.99.3/schedule-tool/conf 执行以下命令,编辑schedule.properties文件,配置登录方式。 vi schedule.properties schedule-tool工具支持两种登录方式,两者只能选一。详细参数请参见schedule-tool工具使用指导。配置文件中包含认证密码信息可能存在安全风险,建议当前场景执行完毕后删除相关配置文件或加强安全管理。 以密码方式登录,配置信息示例如下: [server.url = 10.10.26.187:21351,127.0.0.2:21351] [authentication.type = kerberos] [use.keytab = false] [authentication.user = admin] # 密码明文存储存在安全风险,建议在配置文件或者环境变量中密文存放,使用时解密,确保安全 [authentication.password= xxx] 以keytab文件方式登录,配置信息示例如下: [server.url = 10.10.26.187:21351,127.0.0.2:21351] [authentication.type = kerberos] [use.keytab = true] [client.principal = bar] [client.keytab = /opt/hadoopclient/Loader/loader-tools-1.99.3/loader-tool/hadoop-config/user.keytab] [krb5.conf.file = /opt/hadoopclient/Loader/loader-tools-1.99.3/loader-tool/hadoop-config/krb5.conf] 执行以下命令,编辑job.properties文件,配置作业信息。 vi job.properties #job name job.jobName = sftp2hdfs-schedule-tool #Whether to update the loader configuration parameters(File filter)£?This parameter is used to match the import file name.Values are true or false. #false means update.the file name which is get by schedule tool will be updated to Loader configuration parameters (File filter). #false means no update.the file name which is get by schedule tool will be updated to Loader configuration parameters (import path). file.filter = false #File name = prefix + date + suffix #Need to import the file name prefix file.fileName.prefix=table1 #Need to import the file name suffixes file.fileName.posfix=.txt #Date Days.Value is an integer. #According to the date and number of days to get the date of the import file. date.day = 1 #Date Format.Import file name contains the date format.Format Type£ºyyyyMMdd,yyyyMMdd HHmmss,yyyy-MM-dd,yyyy-MM-dd HH:mm:ss file.date.format = yyyyMMdd #Date Format.Scheduling script execution. Enter the date format. parameter.date.format = yyyyMMdd #Whether the import file is a compressed format.Values ??are true or false. #true indicates that the file is a compressed format£?Execution scheduling tool will extract the files.false indicates that the file is an uncompressed.Execution scheduling tool does not unpack. file.format.iscompressed = false #Hadoop storage type.Values are HDFS or HBase. storage.type = HDFS 根据1的所准备的数据,以文件table120160221.txt为例,过滤规则设置如下: 文件名的前缀 file.fileName.prefix=table1 文件名的后缀 file.fileName.posfix=.txt 文件名中包含的日期格式 file.date.format = yyyyMMdd 调用脚本输入的日期参数 parameter.date.format = yyyyMMdd 顺延的天数 date.day = 1 例如,脚本传入的日期参数是20160220,则通过加法计算,得到的结果是20160221。 如果执行的命令是 ./run.sh 20160220 /user/loader/schedule_01时,以上过滤规则会拼凑出一个字符串:"table1"+"20160221"+.txt = table120160221.txt 根据file.filter的值,选择过滤规则。 精确匹配某一个文件,请执行8。 模糊匹配一系列文件,请执行9。 将job.properties文件中“file.filter”的值修改为“false”。 执行以下命令,运行作业,任务结束。 cd /opt/client/Loader/loader-tools-1.99.3/schedule-tool ./run.sh 20160220 /user/loader/schedule_01 其中20160220为输入的日期,/user/loader/schedule_01为输出的路径。 通过以上过滤规则,拼凑得到的字符串“table120160221.txt”,会直接作为文件名,追加到作业配置的输入路径中。所以,作业只会处理唯一匹配到的文件“table120160221.txt”。 将job.properties文件中“file.filter”的值修改为“true”,“file.fileName.prefix”设置为“*”。 执行以下命令,运行作业,任务结束。 cd /opt/client/Loader/loader-tools-1.99.3/schedule-tool ./run.sh 20160220 /user/loader/schedule_01 其中20160220为输入的日期,/user/loader/schedule_01为输出的路径。 通过以上过滤规则,拼凑到的字符串“*20160221.txt”,会作为文件过滤器的模糊匹配模式,在作业配置的输入路径下,所有符合“*20160221.txt”这个模式的文件都将被作业处理。
-
操作步骤 使用安装客户端的用户登录客户端所在节点,具体操作请参见使用客户端运行Loader作业。 执行以下命令,进入“backup.properties”文件所在目录。例如,Loader客户端安装目录为 “/opt/client/Loader/”。 cd /opt/client/Loader/loader-tools-1.99.3/loader-backup/conf 执行以下命令,修改“backup.properties”文件的配置参数,参数具体说明如表1所示。 vi backup.properties server.url = 10.0.0.1:21351,10.0.0.2:12000 authentication.type = kerberos authentication.user = authentication.password= job.jobId = 1 use.keytab = true client.principal = loader/hadoop client.keytab = /opt/client/conf/loader.keytab 表1 配置参数说明 配置参数 说明 示例 server.url Loader服务的浮动IP地址和端口(21351)。 为了兼容性,此处支持配置多个IP地址和端口,并以“,”进行分隔。其中第一个必须是Loader服务的浮动IP地址和端口(21351),其余的可根据业务需求配置。 10.0.0.1:21351,10.0.0.2:12000 authentication.type 登录认证的方式。 “kerberos”,表示使用安全模式,进行Kerberos认证。Kerberos认证提供两种认证方式:密码和keytab文件。 “simple”,表示使用普通模式,不进行Kerberos认证。 kerberos authentication.user 普通模式或者使用密码认证方式时,登录使用的用户。 keytab登录方式,则不需要设置该参数。 bar authentication.password 使用密码认证方式时,登录使用的用户密码。 普通模式或者keytab登录方式,则不需要设置该参数。 用户需要对密码加密,加密方法: 进入“encrypt_tool”所在目录。例如,Loader客户端安装目录为“/opt/hadoopclient/Loader”,则执行如下命令。 cd /opt/hadoopclient/Loader/loader-tools-1.99.3 执行以下命令,对非加密密码进行加密。命令中如果携带认证密码信息可能存在安全风险,在执行命令前建议关闭系统的history命令记录功能,避免信息泄露。 ./encrypt_tool 未加密的密码 得到加密后的密文,作为“authentication.password”的取值。 说明: 非加密密码中含有特殊字符时需要转义。例如,$符号属于特殊字符,可使用单引号进行转义;非加密密码中含有单引号时可用双引号进行转义,非加密密码中含有双引号应使用反斜杠\进行转义。可参考Shell的转义字符规则。 - job.jobId 需要执行数据备份的作业ID。 作业ID可通过登录Loader webUI在已创建的作业查看。 1 use.keytab 是否使用keytab方式登录。 true,表示使用keytab文件登录 false,表示使用密码登录。 true client.principal 使用keytab认证方式时,访问Loader服务的用户规则。 普通模式或者密码登录方式,则不需要设置该参数。 loader/hadoop client.keytab 使用keytab认证方式登录时,使用的keytab文件所在目录。 普通模式或者密码登录方式,则不需要设置该参数。 /opt/client/conf/loader.keytab 执行以下命令,进入备份脚本“run.sh”所在目录。例如,Loader客户端安装目录为“/opt/hadoopclient/Loader”。 cd /opt/hadoopclient/Loader/loader-tools-1.99.3/loader-backup 执行以下命令,运行备份脚本“run.sh”,进行Loader作业数据备份。系统将数据备份到作业的输出路径同一层目录。 ./run.sh 备份数据的输入目录 例如,备份数据的输入目录为“/user/hbase/”,作业的输出路径为/opt/client/sftp/sftp1,其中sftp1只起到一个占位符的作用。执行如下命令,数据将备份到/opt/client/sftp/hbase目录。 ./run.sh /user/hbase/
更多精彩内容
CDN加速
GaussDB
文字转换成语音
免费的服务器
如何创建网站
域名网站购买
私有云桌面
云主机哪个好
域名怎么备案
手机云电脑
SSL证书申请
云点播服务器
免费OCR是什么
电脑云桌面
域名备案怎么弄
语音转文字
文字图片识别
云桌面是什么
网址安全检测
网站建设搭建
国外CDN加速
SSL免费证书申请
短信批量发送
图片OCR识别
云数据库MySQL
个人域名购买
录音转文字
扫描图片识别文字
OCR图片识别
行驶证识别
虚拟电话号码
电话呼叫中心软件
怎么制作一个网站
Email注册网站
华为VNC
图像文字识别
企业网站制作
个人网站搭建
华为云计算
免费租用云托管
云桌面云服务器
ocr文字识别免费版
HTTPS证书申请
图片文字识别转换
国外域名注册商
使用免费虚拟主机
云电脑主机多少钱
鲲鹏云手机
短信验证码平台
OCR图片文字识别
SSL证书是什么
申请企业邮箱步骤
免费的企业用邮箱
云免流搭建教程
域名价格