使用 Azure Data Factory 或 Synapse Analytics 從 Drill 複製資料
適用於:Azure Data Factory
Azure Synapse Analytics
本文概述如何使用 Azure Data Factory 或 Synapse Analytics 管線中的複製活動,從 Drill 複製資料。 本文是根據複製活動概觀一文,該文提供複製活動的一般概觀。
支援的功能
此 Drill 連接器支援下列活動:
您可以將資料從 Drill 複製到任何支援的接收資料存放區。 如需複製活動所支援作為來源/接收器的資料存放區清單,請參閱支援的資料存放區表格。
此服務提供的內建驅動程式可啟用連線,因此,您不需手動安裝任何驅動程式,即可使用此連接器。
必要條件
如果您的資料存放區位於內部部署網路、Azure 虛擬網路或 Amazon 虛擬私人雲端中,則必須設定自我裝載整合執行階段以與其連線。
如果您的資料存放區是受控雲端資料服務,則可使用 Azure Integration Runtime。 如果只能存取防火牆規則中核准的 IP,您可以將 Azure Integration Runtime IP 新增至允許清單。
您也可以使用 Azure Data Factory 中的受控虛擬網路整合執行階段功能來存取內部部署網路,而不需要安裝和設定自我裝載整合執行階段。
如需 Data Factory 支援的網路安全性機制和選項的詳細資訊,請參閱資料存取策略。
開始使用
若要透過管線執行複製活動,您可以使用下列其中一個工具或 SDK:
使用 UI 建立連結至 Drill 的服務
使用下列步驟,在 Azure 入口網站 UI 中建立連結至 Drill 的服務。
瀏覽至 Azure Data Factory 或 Synapse 工作區中的 [管理] 索引標籤,並選取 [連結的服務],然後按一下 [新增]:
搜尋 Drill,然後選取 Drill 連接器。
設定服務詳細資料、測試連線,然後建立新的連結服務。
連接器設定詳細資料
下列各節提供屬性的相關詳細資料,這些屬性是用來定義 Drill 連接器專屬的 Data Factory 實體。
連結服務屬性
以下是針對 Drill 已連結服務支援的屬性:
屬性 | 描述 | 必要 |
---|---|---|
type | type 屬性必須設定為:Drill | 是 |
connectionString | 連線到 Drill 的 ODBC 連接字串。 您也可以將密碼放在 Azure Key Vault 中,並從連接字串中提取 pwd 組態。 請參閱下列範例和在 Azure Key Vault 中儲存認證一文中的更多詳細資料。 |
是 |
connectVia | 用來連線到資料存放區的 Integration Runtime。 深入了解必要條件一節。 如果未指定,就會使用預設的 Azure Integration Runtime。 | 否 |
範例︰
{
"name": "DrillLinkedService",
"properties": {
"type": "Drill",
"typeProperties": {
"connectionString": "ConnectionType=Direct;Host=<host>;Port=<port>;AuthenticationType=Plain;UID=<user name>;PWD=<password>"
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
範例:在 Azure Key Vault 中儲存密碼
{
"name": "DrillLinkedService",
"properties": {
"type": "Drill",
"typeProperties": {
"connectionString": "ConnectionType=Direct;Host=<host>;Port=<port>;AuthenticationType=Plain;UID=<user name>;",
"pwd": {
"type": "AzureKeyVaultSecret",
"store": {
"referenceName": "<Azure Key Vault linked service name>",
"type": "LinkedServiceReference"
},
"secretName": "<secretName>"
}
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
資料集屬性
如需可用來定義資料集的區段和屬性完整清單,請參閱資料集一文。 本節提供 Drill 資料集所支援的屬性清單。
若要從 Drill 複製資料,請將資料集的 type 屬性設定為 DrillTable。 以下是支援的屬性:
屬性 | 描述 | 必要 |
---|---|---|
type | 資料集的 type 屬性必須設定為:DrillTable | 是 |
結構描述 | 結構描述的名稱。 | 否 (如果已指定活動來源中的「查詢」) |
資料表 | 資料表的名稱。 | 否 (如果已指定活動來源中的「查詢」) |
tableName | 具有結構描述的資料表名稱。 支援此屬性是基於回溯相容性。 對於新的工作負載,請使用 schema 和 table 。 |
否 (如果已指定活動來源中的「查詢」) |
範例
{
"name": "DrillDataset",
"properties": {
"type": "DrillTable",
"typeProperties": {},
"schema": [],
"linkedServiceName": {
"referenceName": "<Drill linked service name>",
"type": "LinkedServiceReference"
}
}
}
複製活動屬性
如需可用來定義活動的區段和屬性完整清單,請參閱管線一文。 本節提供 Drill 來源所支援的屬性清單。
將 DrillSource 作為來源
若要從 Drill 複製資料,請將複製活動中的來源類型設定為 DrillSource。 複製活動的 source 區段支援下列屬性:
屬性 | 描述 | 必要 |
---|---|---|
type | 複製活動來源的 type 屬性必須設定為:DrillSource | 是 |
查詢 | 使用自訂 SQL 查詢來讀取資料。 例如: "SELECT * FROM MyTable" 。 |
否 (如果已指定資料集中的 "tableName") |
範例︰
"activities":[
{
"name": "CopyFromDrill",
"type": "Copy",
"inputs": [
{
"referenceName": "<Drill input dataset name>",
"type": "DatasetReference"
}
],
"outputs": [
{
"referenceName": "<output dataset name>",
"type": "DatasetReference"
}
],
"typeProperties": {
"source": {
"type": "DrillSource",
"query": "SELECT * FROM MyTable"
},
"sink": {
"type": "<sink type>"
}
}
}
]
查閱活動屬性
若要了解關於屬性的詳細資料,請參閱查閱活動。
後續步驟
如需複製活動支援做為來源和接收器的資料存放區清單,請參閱支援的資料存放區。