Copiar dados do HBase usando o Azure Data FactoryCopy data from HBase using Azure Data Factory

APLICA-SE A: Azure Data Factory Azure Synapse Analytics

Este artigo descreve como usar a atividade de cópia no Azure Data Factory para copiar dados de e para o HBase.This article outlines how to use the Copy Activity in Azure Data Factory to copy data from HBase. Ele amplia o artigo Visão geral da atividade de cópia que apresenta uma visão geral da atividade de cópia.It builds on the copy activity overview article that presents a general overview of copy activity.

Funcionalidades com suporteSupported capabilities

Este conector do HBase tem suporte para as seguintes atividades:This HBase connector is supported for the following activities:

Você pode copiar dados de um HBase para qualquer armazenamento de dados de coletor com suporte.You can copy data from HBase to any supported sink data store. Para obter uma lista de armazenamentos de dados com suporte como origens/coletores da atividade de cópia, confira a tabela Armazenamentos de dados com suporte.For a list of data stores that are supported as sources/sinks by the copy activity, see the Supported data stores table.

Azure Data Factory fornece um driver interno para habilitar a conectividade, portanto, não é necessário instalar manualmente qualquer driver usando esse conector.Azure Data Factory provides a built-in driver to enable connectivity, therefore you don't need to manually install any driver using this connector.

Pré-requisitosPrerequisites

Se o armazenamento de dados estiver localizado dentro de uma rede local, em uma rede virtual do Azure ou na Amazon Virtual Private Cloud, você precisará configurar um runtime de integração auto-hospedada para se conectar a ele.If your data store is located inside an on-premises network, an Azure virtual network, or Amazon Virtual Private Cloud, you need to configure a self-hosted integration runtime to connect to it.

Por outro lado, se o armazenamento de dados for um serviço de dados de nuvem gerenciado, você poderá usar o Azure Integration Runtime.Alternatively, if your data store is a managed cloud data service, you can use Azure integration runtime. Se o acesso for restrito aos IPs que estão aprovados nas regras de firewall, você poderá adicionar IPs do Azure Integration Runtime à lista de permissões.If the access is restricted to IPs that are approved in the firewall rules, you can add Azure Integration Runtime IPs into the allow list.

Para obter mais informações sobre os mecanismos de segurança de rede e as opções compatíveis com o Data Factory, consulte Estratégias de acesso a dados.For more information about the network security mechanisms and options supported by Data Factory, see Data access strategies.

IntroduçãoGetting started

Para executar a atividade de Cópia com um pipeline, será possível usar as ferramentas ou os SDKs abaixo:To perform the Copy activity with a pipeline, you can use one of the following tools or SDKs:

As seções que a seguir fornecem detalhes sobre as propriedades usadas para definir entidades do Data Factory específicas ao HBase.The following sections provide details about properties that are used to define Data Factory entities specific to HBase connector.

Propriedades do serviço vinculadoLinked service properties

As propriedades a seguir têm suporte para o serviço vinculado do HBase:The following properties are supported for HBase linked service:

PropriedadeProperty DescriçãoDescription ObrigatórioRequired
typetype A propriedade type deve ser definida como: HBaseThe type property must be set to: HBase SimYes
hosthost O endereço IP ou nome do host do servidor HBase.The IP address or host name of the HBase server. ,. [clustername].azurehdinsight.net, 192.168.222.160 )(i.e. [clustername].azurehdinsight.net192.168.222.160) SimYes
portaport A porta TCP que a instância HBase usa para escutar as conexões de clientes.The TCP port that the HBase instance uses to listen for client connections. O valor padrão é 9090.The default value is 9090. Se você conectar ao Microsoft Azure HDInsights, especifique a porta como 443.If you connect to Azure HDInsights, specify port as 443. NãoNo
httpPathhttpPath A URL parcial correspondente ao servidor do HBase, por exemplo, /hbaserest0 ao usar cluster HDInsights.The partial URL corresponding to the HBase server, e.g. /hbaserest0 when using HDInsights cluster. NãoNo
authenticationTypeauthenticationType O mecanismo de autenticação a ser usado para se conectar ao servidor do HBase.The authentication mechanism to use to connect to the HBase server.
Os valores permitidos são: Anônimo, BásicoAllowed values are: Anonymous, Basic
SimYes
Nome de Usuáriousername O nome de usuário usado para se conectar à instância do HBase.The user name used to connect to the HBase instance. NãoNo
passwordpassword A senha correspondente ao nome de usuário.The password corresponding to the user name. Marque este campo como uma SecureString para armazená-la com segurança no Data Factory ou faça referência a um segredo armazenado no Azure Key Vault.Mark this field as a SecureString to store it securely in Data Factory, or reference a secret stored in Azure Key Vault. NãoNo
enableSslenableSsl Especifica se as conexões com o servidor são criptografadas usando TLS.Specifies whether the connections to the server are encrypted using TLS. O valor padrão é false.The default value is false. NãoNo
trustedCertPathtrustedCertPath O caminho completo do arquivo. pem que contém certificados de AC confiáveis para verificar o servidor ao se conectar via TLS.The full path of the .pem file containing trusted CA certificates for verifying the server when connecting over TLS. Essa propriedade só pode ser definida ao usar TLS no IR auto-hospedado.This property can only be set when using TLS on self-hosted IR. O valor padrão é o arquivo de cacerts.pem instalado com o IR.The default value is the cacerts.pem file installed with the IR. NãoNo
allowHostNameCNMismatchallowHostNameCNMismatch Especifica se deve ser necessário um nome de certificado TLS/SSL emitido pela autoridade de certificação para corresponder ao nome de host do servidor ao se conectar por TLS.Specifies whether to require a CA-issued TLS/SSL certificate name to match the host name of the server when connecting over TLS. O valor padrão é false.The default value is false. NãoNo
allowSelfSignedServerCertallowSelfSignedServerCert Especifica se deve permitir os certificados autoassinados do servidor.Specifies whether to allow self-signed certificates from the server. O valor padrão é false.The default value is false. NãoNo
connectViaconnectVia O Integration Runtime a ser usado para se conectar ao armazenamento de dados.The Integration Runtime to be used to connect to the data store. Saiba mais na seção Pré-requisitos.Learn more from Prerequisites section. Se não for especificado, ele usa o Integration Runtime padrão do Azure.If not specified, it uses the default Azure Integration Runtime. NãoNo

Observação

Se o cluster não der suporte para sessão temporária, p. ex., HDInsight, inclua explicitamente o índice do nó no final da configuração do caminho http, p. ex. especifique /hbaserest0em vez de/hbaserest.If your cluster doesn't support sticky session e.g. HDInsight, explicitly add node index at the end of the http path setting, e.g. specify /hbaserest0 instead of /hbaserest.

Exemplo de HBase no HDInsights:Example for HDInsights HBase:

{
    "name": "HBaseLinkedService",
    "properties": {
        "type": "HBase",
        "typeProperties": {
            "host" : "<cluster name>.azurehdinsight.net",
            "port" : "443",
            "httpPath" : "/hbaserest0",
            "authenticationType" : "Basic",
            "username" : "<username>",
            "password": {
                "type": "SecureString",
                "value": "<password>"
            },
            "enableSsl" : true
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

Exemplo de HBase genérico:Example for generic 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"
        }
    }
}

Propriedades do conjunto de dadosDataset properties

Para obter uma lista completa das seções e propriedades disponíveis para definir os conjuntos de dados, confira o artigo sobre conjuntos de dados.For a full list of sections and properties available for defining datasets, see the datasets article. Esta seção fornece uma lista das propriedades com suporte pelo conjunto de dados do HBase.This section provides a list of properties supported by HBase dataset.

Para copiar dados de HBase, defina a propriedade type do conjunto de dados como HBaseObject.To copy data from HBase, set the type property of the dataset to HBaseObject. Há suporte para as seguintes propriedades:The following properties are supported:

PropriedadeProperty DescriçãoDescription ObrigatórioRequired
typetype A propriedade Type do conjunto de conjuntos deve ser definida como: HBaseObjectThe type property of the dataset must be set to: HBaseObject SimYes
tableNametableName Nome da tabela.Name of the table. Não (se "query" na fonte da atividade for especificada)No (if "query" in activity source is specified)

ExemploExample

{
    "name": "HBaseDataset",
    "properties": {
        "type": "HBaseObject",
        "typeProperties": {},
        "schema": [],
        "linkedServiceName": {
            "referenceName": "<HBase linked service name>",
            "type": "LinkedServiceReference"
        }
    }
}

Propriedades da atividade de cópiaCopy activity properties

Para obter uma lista completa das seções e propriedades disponíveis para definir atividades, confia o artigo Pipelines.For a full list of sections and properties available for defining activities, see the Pipelines article. Esta seção fornece uma lista das propriedades com suporte pela origem do HBase.This section provides a list of properties supported by HBase source.

HBaseSource como a fonteHBaseSource as source

Para copiar dados de HBase, defina o tipo de fonte na atividade de cópia como HBaseSource.To copy data from HBase, set the source type in the copy activity to HBaseSource. As propriedades a seguir têm suporte na seção source da atividade de cópia:The following properties are supported in the copy activity source section:

PropriedadeProperty DescriçãoDescription ObrigatórioRequired
typetype A propriedade type da fonte da atividade de cópia deve ser definida como: HBaseSourceThe type property of the copy activity source must be set to: HBaseSource SimYes
Consultaquery Utiliza a consulta SQL personalizada para ler os dados.Use the custom SQL query to read data. Por exemplo: "SELECT * FROM MyTable".For example: "SELECT * FROM MyTable". Não (se "tableName" no conjunto de dados for especificado)No (if "tableName" in dataset is specified)

Exemplo:Example:

"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>"
            }
        }
    }
]

Pesquisar propriedades de atividadeLookup activity properties

Para saber detalhes sobre as propriedades, verifique Pesquisar atividade.To learn details about the properties, check Lookup activity.

Próximas etapasNext steps

Para obter uma lista de armazenamentos de dados com suporte como origens e coletores pela atividade de cópia no Azure Data Factory, consulte Armazenamentos de dados com suporte.For a list of data stores supported as sources and sinks by the copy activity in Azure Data Factory, see supported data stores.