「數據遷移」pgloader從各種來源加載數據到PostgreSQL

2020-01-07     首席架構師

介紹

pgloader從各種來源加載數據到PostgreSQL。它可以轉換動態讀取的數據,並在加載前後提交原始SQL。它使用複製PostgreSQL協議將數據流到伺服器,並通過填寫一對reject.dat和reject.log文件來管理錯誤。

pgloader知道如何從不同的來源讀取數據:

  • 文件CSVFixed FormatDBF
  • 資料庫SQLiteMySQLMS SQL ServerPostgreSQLRedshift

pgloader知道如何使用PostgresQL協議針對不同的產品:

  • PostgreSQL
  • Citus
  • Redshift

pgloader提供的自動化程度取決於數據源類型。對於CSV和固定格式文件,必須向pgloader提供預期輸入屬性的完整描述。對於資料庫,pgloader連接到live服務,並知道如何直接從它獲取所需的元數據。

特徵矩陣

下面是根據源資料庫引擎所支持的特性的比較。一些不支持的功能可以添加到pgloader中,只是還沒有人需要這樣做。那些功能用轉述動詞標記。當特性對所選的源資料庫沒有意義時,將使用空單元格。



有關特性的詳細信息,請參閱資料庫源的特定參考頁面。

對於某些特性,缺少支持只意味著其他來源不需要該特性,比如覆蓋關於表或列的MySQL編碼元數據的功能。這個列表中只有MySQL完全不能保證文本編碼。或者沒有外鍵的紅移。

命令

pgloader實現了自己的命令語言,這是一種DSL,允許指定要實現的數據加載和遷移的各個方面。該語言中提供的一些功能只適用於特定的源類型。

命令行

pgloader命令行接受這兩個變種:

pgloader [] []...pgloader [] SOURCE TARGET

您可以使用pgloader命令語言擁有一個包含遷移規範的命令文件,也可以提供一個數據源和一個PostgreSQL資料庫連接目標,以便將數據加載到其中。

原文:https://pgloader.readthedocs.io/en/latest/intro.html

本文:https://pub.intelligentx.net/pgloader-loads-data-various-sources-postgresql

討論:請加入知識星球或者微信圈子【首席架構師圈】

文章來源: https://twgreatdaily.com/zh-my/6HHUgG8BMH2_cNUgRycZ.html