

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

# 開發藍圖概觀
<a name="developing-blueprints-overview"></a>

開發程序的第一個步驟是找出可從藍圖中受益的常見使用案例。一個典型的使用案例涉及重複出現的 ETL 問題，您認為應該以一般方式解決。接下來，設計實作一般化使用案例的藍圖，並定義藍圖輸入參數，這些參數搭配使用可以從一般化使用案例定義特定的使用案例。

藍圖包含內含藍圖參數組態檔的專案，以及定義工作流程要產生之*配置*的指令碼。配置定義要建立的任務和爬蟲程式 (在藍圖指令碼術語中稱為*實體*)。

請勿直接在配置指令碼中指定任何觸發程序。而是改為撰寫程式碼來指定指令碼建立之任務與爬蟲程式之間的相依性。AWS Glue 會根據您的相依性規範來產生觸發程序。配置指令碼的輸出是工作流程物件，其中包含所有工作流程實體的規格。

您可以使用以下 AWS Glue 藍圖程式庫來建置工作流程物件：
+ `awsglue.blueprint.base_resource` – 程式庫所使用的基本資源程式庫。
+ `awsglue.blueprint.workflow` – 用於定義 `Workflow` 類別的程式庫。
+ `awsglue.blueprint.job` – 用於定義 `Job` 類別的程式庫。
+ `awsglue.blueprint.crawler` – 用於定義 `Crawler` 類別的程式庫。

唯一支援配置產生的其他程式庫是可用於 Python Shell 的程式庫。

發佈藍圖之前，您可以使用藍圖程式庫中定義的方法在本機測試藍圖。

當您準備好將藍圖提供給資料分析師使用時，您可以將指令碼、參數組態檔以及任何支援的檔案 (例如其他指令碼和程式庫) 封裝成單一可部署的資產。然後，您將資產上傳到 Amazon S3，並要求管理員向 AWS Glue 註冊。

如需藍圖範例專案的相關資訊，請參閱[範例藍圖專案](developing-blueprints-sample.md)和[藍圖範例](developing-blueprints-samples.md)。