從本機檔案設定和工作流程載入資料 - Amazon Redshift

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

從本機檔案設定和工作流程載入資料

您可以將資料從本機檔案載入到現有資料表或新的資料表。

從本機檔案載入資料的管理員設定

您的查詢編輯器 v2 管理員必須在帳戶設定視窗中指定常用的 Amazon S3 儲存貯體。您必須已為帳戶使用者設定適當的許可。

  • 必要IAM許可 – 從本機檔案載入的使用者必須具有 s3:ListBuckets3:GetBucketLocations3:putObjects3:getObjects3:deleteObject許可。所以此 optional-prefix 可指定此儲存貯體的查詢編輯器 v2 相關使用限制為具有此字首的物件。如果您透過查詢編輯器 v2 以外的工具使用這個相同的 Amazon S3 儲存貯體,便可以使用此選項。如需儲存貯體和字首的相關資訊,請參閱《Amazon Simple Storage Service 使用者指南》中的管理使用者對特定資料夾的存取。為了確保系統不會允許跨使用者的資料存取,建議查詢編輯器 v2 管理員使用 Amazon S3 儲存貯體政策來根據 aws:userid 限制物件的存取。下列範例允許 Amazon S3 的 許可 <staging-bucket-name> 只具有 Amazon S3 物件的讀取/寫入存取權,並以 aws:userid作為字首。

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:ListBucket", "s3:GetBucketLocation" ], "Resource": [ "arn:aws:s3:::<staging-bucket-name>" ] }, { "Effect": "Allow", "Action": [ "s3:PutObject", "s3:GetObject", "s3:DeleteObject" ], "Resource": [ "arn:aws:s3:::<staging-bucket-name>[/<optional-prefix>]/${aws:userid}/*" ] } ] }
  • 資料分隔 — 建議不要讓使用者擁有存取彼此資料的權限 (即使很短暫也不行)。從本機檔案載入的方式會使用查詢編輯器 v2 管理員所設定的暫存 Amazon S3 儲存貯體。請設定暫存儲存貯體的儲存貯體政策,以在使用者之間提供資料分隔機制。下列範例顯示儲存貯體政策,可在 的使用者之間分隔資料 <staging-bucket-name>.

    { "Version": "2012-10-17", "Statement": [ {"Sid": "userIdPolicy", "Effect": "Deny", "Principal": "*", "Action": ["s3:PutObject", "s3:GetObject", "s3:DeleteObject"], "NotResource": [ "arn:aws:s3:::<staging-bucket-name>[/<optional-prefix>]/${aws:userid}/*" ] } ] }

從本機檔案載入資料

將本機檔案的資料載入到現有資料表

您的查詢編輯器 v2 管理員必須在帳戶設定視窗中指定常見的 Amazon S3 儲存貯體。查詢編輯器 v2 會自動將本機檔案上傳到您帳戶使用的常見 Amazon S3 儲存貯體,然後使用 COPY命令載入資料。查詢編輯器 v2 載入本機檔案視窗產生的和執行的COPY命令,支援可從 Amazon S3 複製的COPY命令語法可用的許多參數。如需有關COPY命令及其用於從 Amazon S3 載入資料之選項的資訊,請參閱 Amazon Redshift 資料庫開發人員指南 中的來自 Amazon COPY Amazon S3

  1. 確認您要將資料載入到其中的資料庫內已建立資料表。

  2. 確認您已連線至查詢編輯器 v2 的樹狀檢視面板中的目標資料庫。您可以使用內容功能表 (按一下滑鼠右鍵) 對要在其中載入資料的叢集或工作群組建立連線。

  3. 選擇 Load 載入資料

  4. 對於資料來源,選擇從本機檔案載入

  5. 選擇瀏覽以尋找包含要載入檔案之資料的檔案。依預設,系統會顯示副檔名為 .csv.avro.parquet.orc 的檔案,但您也可以選擇其他檔案類型。 檔案大小上限為 100 MB。

  6. 為要上傳的檔案選擇檔案格式。支援的資料格式為 CSV、JSON、DELIMITER、FIXEDWIDTH、SHAPEFILE、AVRO、 PARQUET和 ORC。根據指定的檔案格式,您可以選擇相應的檔案選項。如果資料已加密,您也可以選取資料已加密,並輸入用於加密資料的KMS金鑰的 Amazon Resource Name (ARN)。

    如果您選擇 CSV或 DELIMITER,您也可以選擇分隔符號字元,以及如果指定的資料列數目實際上是資料欄名稱,而不是要載入的資料,則是否要忽略標頭列。

  7. (選擇性) 進階設定支援各種資料轉換參數載入操作。視需要為您的檔案輸入此資訊。

    如需資料轉換和資料載入參數的相關資訊,請參閱《Amazon Redshift 資料庫開發人員指南》中的資料轉換參數資料載入操作

  8. 選擇 Next (下一步)

  9. 選擇載入現有資料表

  10. 確認或選擇在其中載入資料的目標資料表的位置,包括叢集或工作群組資料庫結構描述以及資料表名稱。

  11. (選擇性) 您可以選擇資料欄名稱,在資料欄映射中輸入以依照輸入資料檔案的順序映射資料欄。

  12. 選擇載入資料以開始載入資料。

    載入完成時,無論載入是否成功,系統都會顯示訊息。如果成功,您現在可以使用 從載入的資料表SQL中選取資料。發生錯誤時,請查詢系統檢視 STL_LOAD_ERRORS 以取得更多詳細資訊。如需COPY命令錯誤的相關資訊,請參閱 Amazon Redshift 資料庫開發人員指南 中的 STL_LOAD_ERRORS

    用於載入資料的COPY命令範本會出現在查詢歷史記錄 中。此COPY命令範本顯示使用的某些參數,但無法直接在編輯器索引標籤中執行。如需查詢歷史記錄的相關資訊,請參閱檢視查詢和標籤歷史記錄

當您將資料載入到新的資料表時,查詢編輯器 v2 會先在資料庫中建立資料表,再於相同工作流程中以個別動作的形式載入資料。

將本機檔案資料載入到新的資料表

您的查詢編輯器 v2 管理員必須在帳戶設定視窗中指定常用的 Amazon S3 儲存貯體。本機檔案會自動上傳到您的帳戶使用的常見 Amazon S3 儲存貯體,然後查詢編輯器 v2 使用 COPY命令來載入資料。查詢編輯器 v2 載入本機檔案視窗產生的和執行的COPY命令,支援可從 Amazon S3 複製的COPY命令語法可用的許多參數。如需從 Amazon S3 載入資料之COPY命令及其選項的相關資訊,請參閱 Amazon Redshift 資料庫開發人員指南 中的從 Amazon COPY Amazon S3 下載。

  1. 確認您已連線至查詢編輯器 v2 的樹狀檢視面板中的目標資料庫。您可以使用內容功能表 (按一下滑鼠右鍵) 對要在其中載入資料的叢集或工作群組建立連線。

  2. 選擇 Load 載入資料

  3. 對於資料來源,選擇從本機檔案載入

  4. 選擇瀏覽以尋找包含要載入檔案之資料的檔案。依預設,系統會顯示副檔名為 .csv.avro.parquet.orc 的檔案,但您也可以選擇其他檔案類型。 檔案大小上限為 100 MB。

  5. 為要上傳的檔案選擇檔案格式。支援的資料格式為 CSV、JSON、DELIMITER、FIXEDWIDTH、SHAPEFILE、AVRO、 PARQUET和 ORC。根據指定的檔案格式,您可以選擇相應的檔案選項。如果資料已加密,您也可以選取資料已加密,並輸入用於加密資料的KMS金鑰的 Amazon Resource Name (ARN)。

    如果您選擇 CSV或 DELIMITER,您也可以選擇分隔符號字元,以及如果指定的資料列數目實際上是資料欄名稱,而不是要載入的資料,則是否要忽略標頭列。

  6. (選擇性) 進階設定支援各種資料轉換參數載入操作。視需要為您的檔案輸入此資訊。

    如需資料轉換和資料載入參數的相關資訊,請參閱《Amazon Redshift 資料庫開發人員指南》中的資料轉換參數資料載入操作

  7. 選擇 Next (下一步)

  8. 選擇載入新資料表

  9. 確認或選擇在其中載入資料的目標資料表的位置,包括叢集或工作群組資料庫結構描述。輸入要建立的資料表名稱。

  10. 選擇建立資料表,使用所顯示的定義建立資料表。

    此時會顯示資料表定義的檢閱摘要。資料表會建立到資料庫中。若要稍後刪除資料表,請執行 DROPTABLESQL命令。如需詳細資訊,請參閱 Amazon Redshift 資料庫開發人員指南 DROP TABLE 中的 。

  11. 選擇載入資料以開始載入資料。

    載入完成時,會顯示訊息以指出載入是否成功。如果成功,您現在可以使用 從載入的資料表SQL中選取資料。發生錯誤時,請查詢系統檢視 STL_LOAD_ERRORS 以取得更多詳細資訊。如需COPY命令錯誤的相關資訊,請參閱 Amazon Redshift 資料庫開發人員指南 中的 STL_LOAD_ERRORS

    用於載入資料的COPY命令範本會出現在查詢歷史記錄 中。此COPY命令範本顯示使用的某些參數,但無法直接在編輯器索引標籤中執行。如需查詢歷史記錄的相關資訊,請參閱檢視查詢和標籤歷史記錄