适用于:Azure 数据工厂
Azure Synapse Analytics
本文概述如何使用 Azure 数据工厂或 Synapse Analytics 管道中的复制活动从 HBase 复制数据。 它基于 复制活动概述 文章构建,本文概述了复制活动。
支持的功能
以下功能支持此 HBase 连接器:
支持的功能 | IR |
---|---|
复制活动(源/-) | ① |
查找活动 | ① |
(1) Azure 集成运行时 (2) 自承载集成运行时
有关复制活动支持作为源/接收器的数据存储的列表,请参阅 支持的数据存储 表。
该服务提供内置的驱动程序用于启用连接,因此使用此连接器无需手动安装任何驱动程序。
先决条件
如果数据存储是托管的云数据服务,则可以使用 Azure Integration Runtime。 如果访问权限仅限于防火墙规则中批准的 IP,则可以将 Azure Integration Runtime IP 添加到允许列表。
还可以使用 Azure 数据工厂中的 托管虚拟网络集成运行时 功能访问本地网络,而无需安装和配置自承载集成运行时。
有关数据工厂支持的网络安全机制和选项的详细信息,请参阅 数据访问策略。
入门
若要使用管道执行复制活动,可以使用以下工具或 SDK 之一:
使用 UI 创建到 HBase 的链接服务
使用以下步骤在 Azure 门户 UI 中创建到 HBase 的链接服务。
浏览到 Azure 数据工厂或 Synapse 工作区中的“管理”选项卡,并选择“链接服务”,然后单击“新建”:
- Azure 数据工厂
- Azure Synapse
搜索 HBase 并选择 HBase 连接器。
配置服务详细信息、测试连接并创建新的链接服务。
连接器配置详细信息
对于特定于 HBase 连接器的数据工厂实体,以下部分提供有关用于定义这些实体的属性的详细信息。
链接服务属性
HBase 链接服务支持以下属性:
属性 | 描述 | 必需 |
---|---|---|
类型 | type 属性必须设置为: HBase | 是 |
主持人 | HBase 服务器的 IP 地址或主机名。 (即 [clustername].azurehdinsight.cn 、192.168.222.160 ) |
是 |
移植 | HBase 实例用来侦听客户端连接的 TCP 端口。 默认值为 9090。 如果连接到 Azure HDInsights,请指定端口 443。 | 否 |
httpPath | 与 HBase 服务器对应的部分 URL,例如使用 HDInsights 群集时的 /hbaserest0 。 |
否 |
验证类型 | 用于连接到 HBase 服务器的身份验证机制。 允许的值为: Anonymous、 Basic |
是 |
用户名 | 用于连接到 HBase 实例的用户名。 | 否 |
密码 | 用户名所对应的密码。 将此字段标记为 SecureString 以安全存储,或 引用存储在 Azure Key Vault 中的机密。 | 否 |
启用SSL | 指定是否使用 TLS 加密到服务器的连接。 默认值为 false。 | 否 |
信任证书路径 (trustedCertPath) | 包含受信任 CA 证书(通过 TLS 进行连接时用来验证服务器)的 .pem 文件的完整路径。 只有在自承载 IR 上使用 TLS 时才能设置此属性。 默认值是随 IR 一起安装的 cacerts.pem 文件。 | 否 |
allowHostNameCNMismatch | 指定通过 TLS 进行连接时是否要求 CA 颁发的 TLS/SSL 证书名称与服务器的主机名相匹配。 默认值为 false。 | 否 |
allowSelfSignedServerCert | 指定是否允许来自服务器的自签名证书。 默认值为 false。 | 否 |
connectVia | Integration Runtime 用于连接到数据存储。 从 “先决条件 ”部分了解详细信息。 只能使用 Azure Integration Runtime。 | 否 |
注意
如果群集不支持 HDInsight 等粘性会话,请在 http 路径设置的末尾显式添加节点索引,例如,指定 /hbaserest0
而不是 /hbaserest
。
HDInsights HBase 的示例:
{
"name": "HBaseLinkedService",
"properties": {
"type": "HBase",
"typeProperties": {
"host" : "<cluster name>.azurehdinsight.cn",
"port" : "443",
"httpPath" : "/hbaserest0",
"authenticationType" : "Basic",
"username" : "<username>",
"password": {
"type": "SecureString",
"value": "<password>"
},
"enableSsl" : true
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
泛型 HBase 的示例:
{
"name": "HBaseLinkedService",
"properties": {
"type": "HBase",
"typeProperties": {
"host" : "<host e.g. 192.168.222.160>",
"port" : "<port>",
"httpPath" : "<e.g. /gateway/sandbox/hbase/version>",
"authenticationType" : "Basic",
"username" : "<username>",
"password": {
"type": "SecureString",
"value": "<password>"
},
"enableSsl" : true,
"trustedCertPath" : "<trustedCertPath>",
"allowHostNameCNMismatch" : true,
"allowSelfSignedServerCert" : true
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
数据集属性
有关可用于定义数据集的部分和属性的完整列表,请参阅 数据集 文章。 本部分提供 HBase 数据集支持的属性列表。
要从 HBase 复制数据,请将数据集的 type 属性设置为“HBaseObject”。 支持以下属性:
属性 | 描述 | 必需 |
---|---|---|
类型 | 数据集的 type 属性必须设置为: HBaseObject | 是 |
表名称 | 表的名称。 | 否(如果指定了活动源中的“query”) |
例
{
"name": "HBaseDataset",
"properties": {
"type": "HBaseObject",
"typeProperties": {},
"schema": [],
"linkedServiceName": {
"referenceName": "<HBase linked service name>",
"type": "LinkedServiceReference"
}
}
}
复制活动属性
有关可用于定义活动的节和属性的完整列表,请参阅 Pipelines 文章。 本部分提供 HBase 数据源支持的属性列表。
以 HBaseSource 作为源
要从 HBase 复制数据,请将复制活动中的源类型设置为“HBaseSource”。 复制活动 源 部分支持以下属性:
属性 | 描述 | 必需 |
---|---|---|
类型 | 复制活动源的 type 属性必须设置为: HBaseSource | 是 |
查询 | 使用自定义 SQL 查询读取数据。 例如:"SELECT * FROM MyTable" 。 |
否(如果指定了数据集中的“tableName”) |
例:
"activities":[
{
"name": "CopyFromHBase",
"type": "Copy",
"inputs": [
{
"referenceName": "<HBase input dataset name>",
"type": "DatasetReference"
}
],
"outputs": [
{
"referenceName": "<output dataset name>",
"type": "DatasetReference"
}
],
"typeProperties": {
"source": {
"type": "HBaseSource",
"query": "SELECT * FROM MyTable"
},
"sink": {
"type": "<sink type>"
}
}
}
]
查找活动属性
若要了解有关属性的详细信息,请查看查找活动。
相关内容
有关复制活动支持的作为源和接收器的数据存储的列表,请参阅 支持的数据存储。