2017-05-04 53 views

回答

0

沒有內置的工具來做到這一點,所以你必須編寫一些代碼。因爲HAWQ不支持UPDATE或DELETE,因此編寫應該不會太困難。您只需將新數據附加到質量檢查。

  • 在Production中爲每個將數據放入HDFS的表創建可寫的外部表。您將使用PXF格式來寫入數據。
  • 爲每個讀取此數據的表在QA中創建可讀的外部表。
  • 第1天,您將所有內容寫入HDFS,然後從HDFS讀取所有內容。
  • 第2天,您可以從QA中找到最大(id)。從表中刪除HDFS文件。插入到可寫外部表中,但過濾查詢,以便只獲取比QA中的max(id)更大的記錄。最後,通過選擇外部表中的所有數據在QA中執行插入。
1

無恥的自我插件 - 看看下面的開放PR,以便使用Apache Falcon編排DR批處理作業,看看它是否符合您的需求。

https://github.com/apache/incubator-hawq/pull/940

下面是該過程的概要:

  1. 運行hawqsync-extract捕獲已知良好HDFS的文件大小(保護免受HDFS /目錄不一致如果同步過程中失敗)
  2. 運行ETL料(如果有的話)
  3. 運行hawqsync-falcon,其執行以下步驟:
    1. 停止既HAWQ主人(源和目標)
    2. 存檔源MASTER_DATA_DIRECTORY(MDD)壓縮包到HDFS
    3. 重新啓動源HAWQ主
    4. 啓用HDFS安全模式和力源的檢查點
    5. 禁用源和遠程HDFS安全模式
    6. 執行基於獵鷹的Apache DistCp使用同步過程
    7. 啓用HDFS安全模式和強制遠程檢查點

還擁有設計描述一個JIRA:

https://issues.apache.org/jira/browse/HAWQ-1078