本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
開發自訂連接器
您可以編寫程式碼以從資料存放區讀取資料或將資料寫入資料存放區,以及將用於 AWS Glue Studio 任務的資料格式化。您可以為 Spark、Athena 和JDBC資料存放區建立連接器。張貼在上面的範例程式碼 GitHub 提供您需要實作的基本介面概觀。
您將需要一個本機開發環境來建立您的連接器程式碼。您可以使用任何IDE或甚至只是一個命令行編輯器來編寫連接器。開發環境的範例包括:
-
具有本地 AWS Glue ETL Maven 庫的本地 Scala 環境,如開發AWS Glue 人員指南中的 Scala 在本地開發中所述。
-
IntelliJIDE, 通過下IDE載. https://www.jetbrains.com/idea/
開發 Spark 連接器
您可以創建一個星火 DataSource API V2(星火 2.4)讀取數據的星火連接器。
建立自訂 Spark 連接器
遵循AWS Glue GitHub 範例程式庫中的步驟,用於開發 Spark 連接器,該連接器位於 https://github.com/aws-samples/aws-glue-samples/樹/主//開發/火花 GlueCustomConnectors
開發 Athena 連接器
您可以建立 Athena 連接器,以供 AWS Glue 和 AWS Glue Studio 用於查詢自訂資料來源。
建立自訂 Athena 連接器
遵循AWS Glue GitHub 範例程式庫中的步驟,以開發位於 https://github.com/aws-samples/aws-glue-samples/tree/master //開發/ GlueCustomConnectors
開發JDBC連接器
您可以建立用JDBC於存取資料倉庫的連接器。
建立自訂JDBC連接器
-
在您的本機開發環境中安裝 AWS Glue Spark 執行時間程式庫。請參閱AWS Glue GitHub 範例程式庫中的說明,位於 https://github.com/aws-samples/aws-glue-samples/樹/主//開發/ GlueCustomConnectors
/.md。GlueSparkRuntime README -
實現負責從數據源檢索數據的JDBC驅動程序。請參閱適用於 Java SE 8 的 Java 文件
。 在您的程式碼中建立一個入口點,供 AWS Glue Studio 用來找到您的連接器。[類別名稱] 欄位應該是JDBC驅動程式的完整路徑。
-
使用
GlueContext
API與連接器一起讀取資料。如有必要,使用者可以在 AWS Glue Studio 主控台中新增更多輸入選項以設定連到資料來源的連線。如需顯示如何使用自訂JDBC連接器從資料庫讀取和寫入JDBC資料庫的程式碼範例,請參閱自訂和 AWS Marketplace connectionType 值。
搭配 AWS Glue Studio 使用自訂連接器的範例
如需使用自訂連接器的範例,請參閱下列部落格:
-
Apache Hudi:使用 AWS Glue 自訂連接器寫入 Apache Hudi 資料表
-
谷歌 BigQuery:使用AWS Glue自定義連接器將數據從谷歌遷移 BigQuery 到 Amazon S3
-
雪花(JDBC):使用雪花和執行數據轉換 AWS Glue
-
SingleStore: 建立快速ETL使用 SingleStore 和 AWS Glue
Salesforce:使用CDataJDBC自訂連接器將 Salesforce 資料擷取至 Amazon S3,並搭配下列
功能: AWS Glue -
MongoDB:使用 Amazon DocumentDB(與 MongoDB 兼容性)和 MongoDB 構建AWS Glue星火任ETL務
-
Amazon Relational Database Service (AmazonRDS):通過為 Amazon 帶來自己的JDBC驅動程序來構建 AWS Glue Spark ETL 任務 RDS
-
我的SQL(JDBC):https://github.com/aws-samples/aws-glue-samples/斑點/碩士//發展/火花/ GlueCustomConnectors
.scala SparkConnectorMy SQL
開發AWS Glue連接器 AWS Marketplace
身為 AWS 合作夥伴,您可以建立自訂連接器,並將其上傳 AWS Marketplace 至銷售給AWS Glue客戶。
開發連接器程式碼的程序與自訂連接器的程序相同,但是上傳和驗證連接器程式碼的程序比較詳細。請參閱 GitHub 網站上的建立連接器