資料載入操作手冊

2021-10-10 22:55:08 字數 2717 閱讀 4574

二、流程規範

三、手動排程

3.2. 資料檔案篩選

3.3. 將要載入的表的備份表清空;

3.4. 資料載入指令碼執行

3.5. sql還原

四、輪詢定時排程

五、日誌軌跡

簡述:

將ods推送的資料檔案,載入到資料庫的臨時b表中,然後通過儲存過程將臨時b表中的資料同步到目標a表中。

注:臨時b表結構和目標a表表結構必須一致,同步失敗。

一、基礎資料準備

1.1.表名規約

ods同步表的表名稱、欄位名稱、字段數量規範,雙方需要提前約定好,一旦約定好不允許修改,否則載入資料和同步資料會失敗。

1.2.設計1套臨時表和1套同構層表

臨時b表作用:將ods推送的資料檔案內容載入到資料庫的臨時表中,每次執行指令碼臨時表中的資料會清空。

注:臨時b表可以理解為緩衝區

同構層表作用:儲存或者備份推送過來的資料,資料不會也不允許更改。

同構層表目的:查閱資料問題可以直接查閱同構層表的資料,不用請求其他系統諮詢,減少時間損耗和提高資料區配的效率。

1.3.儲存過程

設計與表關係為1:1的儲存過程

儲存過程作用:將臨時b表中的資料同步到目標的a表中。

注:同步資料種類:有全量-0和增量-1

二、流程規範

2.1. 生成控制檔案(.ctl)

0/control/

rm -rf new

.unl old.unl file/

sh .

/new

.sh

2.2. 拉取ods推送的資料檔案

#進入sql_loadv1.0下面0/

#拉取ods推送指定日期的資料檔案

#格式:sh load.sh 年月日

案例:sh load.sh 20201027

2.3. 資料載入+資料同步

將資料檔案的資料載入到臨時b表 把臨時表到b表資料同步到目標a表

#進入拉取的某一天資料檔案的目錄

0/loaded/

20201027

/#1.將資料檔案中的資料載入到資料庫中的臨時b表中

#2.將資料庫中的臨時b表中的資料同步到目標a表中

sh run_sqlldr.sh
注:run_sqlldr.sh這個指令碼做了2件事情

三、手動排程

如當天的排程出現問題,修正後,想手動指定跑某張表的資料

3.2. 資料檔案篩選

案例:如果:20201027這一天dbx_ljtempfee 表資料載入失敗,就留下dir.ods.dbx_ljtempfee.20201027.000.01.i這一行,把其他資料檔案刪除。

3.3. 將要載入的表的備份表清空;

只保留truncate table t01_indv_cust_hb;

sh truncateyw.sh
3.4. 資料載入指令碼執行

0/loaded/

20201027

/sh .

/run_sqlldr.sh

3.5. sql還原

四、輪詢定時排程

自動將前一天的資料載入到行協test使用者下的表中。

4.1. 設定指令碼執行頻次

crontab –e
4.2. 設定執行頻次
案例:每天上午10

:15觸發:0

1510**

?0/hxloadupgrade.sh

4.3. 定時任務檢視
crontab -l
五、日誌軌跡
select *

from load_log where

to_char

(load_time,

'yyyymmdd')=

20200330

;--實際載入日期

select *

from

load_pl_log

where

to_char

(s_time,

'yyyymmdd')=

20200330

;--實際載入日期

select *

from

load_pl_error_log

where

to_char

(s_time,

'yyyymmdd')=

20200330

;--實際載入日期

注意:

如果第一次初始話在凌晨3點前完成資料載入,則crontab -e

解除定時的注釋,以後每天3:00-9:00會自動載入呼叫。

sh run_sqlldr.sh

自動將前一天的資料載入到行協test使用者下的表中。

定時檢視:crontab -l

資料庫中的日誌表:

表名作用

load_z_log

每天只生成1條記錄,記錄每天整體裝載情況

load_log

記錄表加載入備份表的狀態

load_pl_log

記錄表從備份表到目標表正確的狀態

load_pl_error_log

記錄表從備份表到目標表錯誤的狀態

Docker操作手冊

安裝 curl fssl sh sudo groupadd docker sudo gpasswd a docker登出 重新登陸 檢視映象 docker search 用互動方式建立並進入容器 docker run i t 映象id bin bash 再次進入容器docker start 容器id...

git 操作手冊

我們先來理解下git 工作區 暫存區和版本庫概念 下面這個圖展示了工作區 版本庫中的暫存區和版本庫之間的關係 圖中我們可以看出此時 head 實際是指向 master 分支的乙個 游標 所以圖示的命令中出現 head 的地方可以用 master 來替換。圖中的 objects 標識的區域為 git ...

Hbase Solr操作手冊

hbase solr操作手冊 1 對於初次建立得表,可以使用 create table 注 其中1表示開啟replication功能,0表示不開啟,預設為0 對於已經存在得表,可以 disable hcc score alter hcc score enable hcc score 2 生成實體配置...