日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

元數(shù)據(jù)導(dǎo)出

更新時(shí)間:

DLF提供了元數(shù)據(jù)導(dǎo)出工具,可以幫您將DLF元數(shù)據(jù)導(dǎo)出到Hive Metastore元數(shù)據(jù)中。

前提條件

  1. 已有一個(gè)EMR集群,且Metastore服務(wù)配置的元數(shù)據(jù)庫(kù)與導(dǎo)出的目標(biāo)RDS庫(kù)要一致。同步任務(wù)會(huì)使用EMR集群的Metastore服務(wù),以Spark作業(yè)的方式運(yùn)行在該EMR集群上實(shí)現(xiàn)導(dǎo)出。

  2. 所有元數(shù)據(jù)的location路徑建議都在oss上,如果location的路徑為hdfs,則庫(kù)表location的hdfs namespace必須與EMR集群的hdfs namespace一致,否則導(dǎo)出會(huì)報(bào)錯(cuò)(即location為hdfs時(shí),不支持跨集群元數(shù)據(jù)導(dǎo)出)。

  3. 請(qǐng)保證目標(biāo)RDS庫(kù)中已經(jīng)存在元數(shù)據(jù)表,RDS元數(shù)據(jù)初始化參照配置自建RDS

操作步驟

1. 準(zhǔn)備配置文件

請(qǐng)參照如下示例,根據(jù)自己的環(huán)境準(zhǔn)備一份yaml文件,yaml文件準(zhǔn)備好之后,上傳到自己的一個(gè)oss路徑下。

!!com.aliyun.dlf.migrator.app.config.MigratorConfig
clientInfo:
  accessKeyId: <替換為access key>
  accessKeySecret: <替換為access key secret>
  endPoint: dlf-vpc.cn-hangzhou.aliyuncs.com
  regionId: cn-hangzhou
  catalogId: <替換為catalogId,默認(rèn)為阿里云賬號(hào)uid>
mysql:
  connectionUri: jdbc:mysql://emr-header-1:3306/hivemeta
  driver: com.mysql.cj.jdbc.Driver
  userName: root
  password: xxxx
runOptions:
  batchSize: 100
  lowerCaseTableNames: false
  schema: hivemeta
  records: oss://xxxx/migrator/validate/log/
  objectTypes:
    - database
    - table
    - partition
    - function
  operations:
    - validate
  fixIfInConsistence: true
  fixMode: to_hive
  validateDatabases: [db1,db2]
  excludeTables: [aa,bb]
  excludeTablePrefixes: [xx,yy]
  ignoreValidateCreateTime: true
  skipFixTime: 1
  ignoreDropOperation: false

配置項(xiàng)說明

DLF SDK Client 相關(guān)信息

參數(shù)名稱

是否必填

描述

accessKeyId

必填

用戶阿里云賬號(hào)的 Access Key Id。

asscessKeySecret

必填

用戶阿里云賬號(hào)的 Access Key Secret。

endPoint

必填

DLF的EndPoint;一般為 dlf-vpc.[region-id].aliyuncs.com。

catalog

必填

DLF數(shù)據(jù)目錄。

說明

阿里云賬號(hào)需要有讀寫 DLF 元數(shù)據(jù)所有庫(kù)和表的權(quán)限,如ListDatabase、ListTables等(權(quán)限配置可以在DLF控制臺(tái)->數(shù)據(jù)權(quán)限->數(shù)據(jù)授權(quán)進(jìn)行操作)。

MySQL 元數(shù)據(jù)庫(kù)相關(guān)信息

參數(shù)名稱

是否必選

參數(shù)說明

connectionUrl

必選

元數(shù)據(jù)庫(kù) JDBC 連接信息。

driver

必選

mysql driver,一般不需要改。

userName

必選

數(shù)據(jù)庫(kù)用戶名。

password

必選

數(shù)據(jù)庫(kù)密碼。

RunOptions 運(yùn)行時(shí)參數(shù)

參數(shù)名稱

是否必選

參數(shù)說明

schema

必選

hive元數(shù)據(jù)庫(kù)的名稱。

說明

MySQL connectionUrl中的庫(kù)名要與schema保持一致,修改時(shí)要同時(shí)修改。

batchSize

必選

批量調(diào)用 DLF SDK 的批次大小,最大不能超過 500,太大可能會(huì)超時(shí),太小效率慢,一般 100 左右可以。

lownerCaseTableNames

必選

客戶的RDS元數(shù)據(jù)庫(kù)里面的表是大寫還是小寫,目前需要客戶自行判斷。false表示RDS元數(shù)據(jù)表名為大寫。

records

必選

工具的運(yùn)行結(jié)果日志存放路徑,日志包含處理的記錄和錯(cuò)誤信息。

objectTypes

必選

導(dǎo)出對(duì)象的類型列表,可以包含 database、function、table、partition。

operations

必選

固定填validate。

fixIfInConsistence

必選

固定填true。

fixMode

必選

to_hive,以DLF元數(shù)據(jù)為基準(zhǔn),對(duì)比hive元數(shù)據(jù);to_dlf, 以hive元數(shù)據(jù)為基準(zhǔn),對(duì)比DLF元數(shù)據(jù)。

validateDatabases

可選

指定對(duì)比的庫(kù)名列表,則只會(huì)對(duì)比該列表下的庫(kù)并進(jìn)行補(bǔ)償。

excludeTablePrefixes

可選

對(duì)比是排除的表列表,則不會(huì)對(duì)比列表下的表。

excludeTables

可選

對(duì)比時(shí)排除的表前綴列表,則不會(huì)對(duì)比列表下前綴開頭的表。

compareTotalNumber

可選

默認(rèn)為false。是否輸出DLF與RDS兩邊元數(shù)據(jù)數(shù)量的最終比對(duì)結(jié)果。

ignoreValidateCreateTime

可選

對(duì)比兩邊元數(shù)據(jù)時(shí),忽略對(duì)比create time。

skipFixTime(單位min)

可選

只對(duì)比skipFixTime之前創(chuàng)建的元數(shù)據(jù),skipFixTime之間之內(nèi)創(chuàng)建的表則不會(huì)進(jìn)行對(duì)比。默認(rèn)值為4h。

ignoreDropOperation

可選

如果不想刪除目標(biāo)元數(shù)據(jù),則該選項(xiàng)設(shè)置為true。

locationMappings

可選

對(duì)象 location 映射支持,應(yīng)用于要修改替換database、table、partition 等對(duì)象 location 信息的場(chǎng)景。

source

可選

表示要替換的路徑(建議/結(jié)尾),示例如下:

runOptions:
 locationMappings:
 source: hdfs://emr-header-1:9000/uesr/hive/
 target: oss://hive/warehouse/

target

可選

表示目標(biāo)路徑,示例如下:

runOptions:
 locationMappings:
 source: hdfs://emr-header-1:9000/uesr/hive/
 target: oss://hive/warehouse/

hiveConfPath

可選

集群環(huán)境中hive配置文件地址,默認(rèn)/etc/ecm/hive-conf/hive-site.xml。

kerberosInfo

可選

如果任務(wù)運(yùn)行在Kerberos集群,則需要runOptions下添加此配置:

runOptions:
 kerberosInfo:
 principal: xxx/xxx@xxx.COM
 keytab: /xxx/xxx.keytab

2. 準(zhǔn)備執(zhí)行導(dǎo)出Spark任務(wù)

  1. 登錄到EMR集群header節(jié)點(diǎn)。

  2. 獲取導(dǎo)出工具的jar包。

wget https://dlf-lib.oss-cn-hangzhou.aliyuncs.com/migrator_jar/application-1.1.jar
  1. 編寫Spark任務(wù)執(zhí)行腳本。

vim /root/migrator_validate.sh
  1. 填寫如下內(nèi)容。

#!/bin/bash
source /etc/profile
spark-submit --master yarn --deploy-mode client --driver-memory 12G --executor-memory 8G --executor-cores 2 --num-executors 4 --conf spark.sql.shuffle.partitions=200 --conf spark.sql.adaptive.enabled=false --class com.aliyun.dlf.migrator.app.MigratorApplication application-1.1.jar oss://xxxx/migrator_config_validate.yml

最后的配置文件參數(shù),即為上一步驟上傳到oss的配置文件路徑。

  1. 修改執(zhí)行腳本權(quán)限。

chmod +x /root/migrator_validate.sh

3. 運(yùn)行導(dǎo)出任務(wù)

手動(dòng)運(yùn)行:直接運(yùn)行上述腳本。

定時(shí)運(yùn)行

crontab -e
0 22 * * * nohup sh /root/migrator_validate.sh > /root/validate.txt 2>&1 &
說明

示例中配置的cron為每天晚上22:00執(zhí)行。