本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
COPYJOB(預覽)
這是預覽版本中的 autocopy (SQLCOPYJOB) 的發行前說明文件。文件和功能會隨時變更。我們建議僅在測試環境中使用此功能,不要在生產環境中使用。公開預覽將於 2024 年 10 月 31 日結束。預覽叢集將在預覽版結束的兩週後自動移除。如需預覽版條款和條件,請參閱 AWS 服務條款 |
如需有關在檢視中使用此命令的資訊,請參閱從 Amazon S3 載入具有連續檔案擷取的資料表 (預覽)。
管理將資料載入表格的COPY指令。該COPYJOB命令是命令的延伸,可自動從 Amazon S3 儲存貯體載入資料。COPY當您建立COPY任務時,Amazon Redshift 會偵測是否在指定路徑中建立新的 Amazon S3 檔案,然後自動載入這些檔案,而無需您介入。載入資料時,會使用原始COPY指令中使用的相同參數。Amazon Redshift 會追蹤載入的檔案,以確認檔案只載入一次。
注意
如需有關COPY指令的資訊,包括用法、參數和權限,請參閱COPY。
所需的許可
要運行的COPY命令 COPYJOB,您必須具有被加載的表的INSERT權限。
使用COPY命令指定的IAM角色必須具有存取要載入之資料的權限。如需詳細資訊,請參閱IAM COPY、 UNLOAD和 的許可 CREATE LIBRARY。
語法
建立複製任務。COPY命令的參數會與複製工作一起儲存。
COPY copy-command JOB CREATE job-name [AUTO ON | OFF]
變更複製任務的組態。
COPY JOB ALTER job-name [AUTO ON | OFF]
執行複製任務。會使用儲存的COPY指令參數。
COPY JOB RUN job-name
列出所有複製任務。
COPY JOB LIST
顯示複製任務的詳細資訊。
COPY JOB SHOW job-name
刪除複製任務。
COPY JOB DROP job-name
參數
- copy-command
-
將資料從 Amazon S3 載入到亞馬 Amazon Redshift 的COPY命令。該子句包含COPY定義 Amazon S3 儲存貯體、目標資料表、IAM角色和載入資料時使用的其他參數的參數。支援 Amazon S3 資料載入的所有COPY命令參數,但以下情況除外:
-
COPYJOB不會將預先存在的檔案夾內擷取命令所指向的COPY檔案。只有在建立時間戳記之COPYJOB後建立的檔案才會擷取。
您無法使用MAXERROR或IGNOREALLERRORS選項指定指COPY令。
您不能指定資訊清單檔案。COPYJOB需要指定的 Amazon S3 位置來監控新建立的檔案。
您不能使用諸如 Access 和秘密密鑰之類的授權類型來指定COPY命令。僅支援使COPY用該
IAM_ROLE
參數進行授權的命令。如需詳細資訊,請參閱授權參數。COPYJOB不支援與叢集相關聯的預設IAM角色。您必須
IAM_ROLE
在指COPY令中指定。
如需詳細資訊,請參閱COPY 從 Amazon S3。
-
- job-name
-
用來參照工作的工COPY作名稱。
- [AUTO開啟 |OFF]
-
指出是否將 Amazon S3 資料自動載入 Amazon Redshift 資料表的子句。
Amazon Redshift 何時
ON
會監控新建立檔案的來源 Amazon S3 路徑,如果找到,則會使用任務定義中的COPY參數執行COPY命令。此為預設值。什麼時候
OFF
,Amazon Redshift 不會COPYJOB自動運行。
使用須知
COPY命令的選項在運行時之前不會驗證。例如,無效IAM_ROLE
或 Amazon S3 資料來源會在COPYJOB啟動時導致執行階段錯誤。
如果叢集已暫停,則不COPYJOBS會執行。
若要查詢載入的COPY指令檔案和載入錯誤,請參閱 STL_LOAD_COMMITSSTL_LOAD_ERRORS,,STL_LOADERROR_DETAIL。如需詳細資訊,請參閱驗證資料已正確載入。
範例
下列範例顯示建立COPYJOB以從 Amazon S3 儲存貯體載入資料的方式。
COPY public.target_table
FROM 's3://amzn-s3-demo-bucket/staging-folder'
IAM_ROLE 'arn:aws:iam::123456789012:role/MyLoadRoleName'
JOB CREATE my_copy_job_name
AUTO ON;