新しいクリーンな過去のデータを促進するための新たなインフラプロジェクト

1.背景:

      データが頻繁に使用されるため、データがゆっくりといくつかの時間のために凍結し、時間内にデータ点を引き起こす他の未知の要因の数は、この現象に基づいて、利用できない、きれいな履歴データを設計する必要があるであろう、プロセスの使用に減衰します。私たちの現在の生の洗浄プロセスは、基本的な情報を得た後、タスクを行うことはありませんので、過去のデータのクリーニングの、基本的な情報を得るための唯一の責任があるので、私は二段階でクリーンプライマリとセカンダリの洗浄に設計データの歴史をきれいにします。初期の清掃は、タスクを行うことができ、第2の洗浄は、データから抽出された基本的な情報を得ることです。

2、論理設計:

  過去のデータは、例えば、三つの部分に毎月バックアップされる:his_clean_t2018111、his_clean_t2018112、his_clean_t2018113

       過去のデータは、エンジニアリングXX-CK-クリーン、old_clean_tを除去し、重複を格納するためのキーフィールドでの履歴データのすべての部分を最初に洗浄されるエンジニアリングXX-RBT-クリーンな結果をクリーニングした後old_short_succ_t一時テーブルを取得するための第一号店、一時テーブルにデータを配信old_short_error_t、そのデータを確実にするために繰り返し配布するデータ記憶がold_short_run_t、最終的にはold_used_t基本情報テーブルに永続一時テーブルに配布されているされていません。

       過去のデータクリーニングは、すでに存在している有効なデータが2次洗浄を必要としない場合の二次の表は、old_used_tデータold_used_task_tテーブルに挿入されますされているので、データ消去の第二のテーブルold_used_task_tすでに効果的なフィルタリングの前に清掃する必要性が存在します。第2クリーニングプロジェクトXX-RBT-タスクのUUIDにエンジニアリングXX-CK-タスク分布データ取得有効なデータがRedisのに保つために、最終的にはRedisのデータストアのテーブルにリンクされているUUIDが最終のタスクを実行するために、二次効果的な洗浄を抽出しましたテーブルcookie_used_t。

3、デザインプロジェクト:

初期分布のデータクリーニング:XX-CK-きれい。

まずウォッシュ:XX-RBT-きれい。

第2の洗浄データを配信:XX-CK-タスクを。

2次洗浄:XX-RBT-タスク

4、データメンテナンスSQL:

-自动长度过长修改内容
UPDATEがUA = 'HUAWEI-ARS-TL00__weibo__7.3.0__android__android8.1.0' SET his_clean_t2018113
LENGTH(UA)> 200。
-插入数据初次清洗
SET @のUUID = 2018111010000000000。
(uuid`、 `cki`、` cks`、 `ckua`、` ckaid`、 `ckuid`、` ckfrom`、 `` ckgsid`)old_clean_t。INSERT INTO
= @ UUID + 1つのUUID、I、S:@uuid SELECT 、UA、助剤、UID、 `from`、GSID BY his_clean_t2018111群から` gsid`。
SETする@ UUID = 2018112010000000000。
(uuid`、 `cki`、` cks`、 `ckua`、` ckaid`、 `ckuid`、` ckfrom`、 `` ckgsid`)old_clean_t。INSERT INTO
= @ UUID + 1つのUUID、I、S:@uuid SELECT 、UA、助剤、UID、 `from`、GSID BY his_clean_t2018112群から` gsid`。

-查询
SELECT COUNT(1)FROM old_clean_t。
SELECT COUNT(1)ここで、状態= 0 old_clean_t FROM。
SELECT COUNT(1)ここで、状態= 1 old_clean_t FROM。
SELECT COUNT(1)ここで、状態= 2 old_clean_t FROM。
SELECT COUNT(1)FROM old_short_run_t。
SELECT COUNT(1)FROM old_short_error_t。
SELECT COUNT(1)FROM old_short_succ_t。
SELECT COUNT(1)FROM old_used_t。
SELECT COUNT(1)FROM old_used_task_t。
-清理
old_clean_t。DELETE FROM。
old_used_task_t。DELETE FROM。

-洗浄セカンダリデータ挿入
INSERT INTO old_used_task_t(UUID、CKI、CKS、ckua、ckaid、ckuid、ckfrom、ckgsid、CUID、cLevel、CVIP、CNV、cfollower、cfriend、carticle、cheader)
SELECT UUID、CKI、CKSをckua、ckaid、ckuid、ckfrom、ckgsid、CUID、cLevel、CVIP、CNV、cfollower、cfriend、carticle、old_used_t FROM cheader;
-削除する第2の洗浄が効果的であった(データ既にアクティブになっていない二次洗浄)している
OUTT削除カットからのcookie_used_t JOIN old_used_task_t INNERはOUTT ON outt.cuid = cut.cuid;
-プログラム実行cookie_used_tにデータを挿入する第2の洗浄Redisの後に再び記憶されている有効データを、

おすすめ

転載: www.cnblogs.com/xx0829/p/11647196.html