Este conteúdo foi traduzido por máquina para sua conveniência e a Huawei Cloud não pode garantir que o conteúdo foi traduzido com precisão. Para exibir o conteúdo original, use o link no canto superior direito para mudar para a página em inglês.
Atualizado em 2024-08-19 GMT+08:00

Gerenciamento de fontes de dados do OBS

GaussDB(DWS) permite que você acesse dados no OBS usando uma agência. Você pode criar uma agência do GaussDB(DWS), conceder as permissões OBS ou OBS Administrator à agência e vincular a agência a uma fonte de dados do OBS que você criou. Dessa forma, você pode acessar dados no OBS usando tabelas estrangeiras do OBS.

  • Este recurso é suportado apenas na versão 8.2.0 ou posterior.
  • Para a origem de dados do OBS de um cluster, apenas uma das operações de criação, modificação e eliminação pode ser executada de cada vez.

Criar uma agência do OBS

Cenário

Antes de criar uma fonte de dados do OBS, crie uma agência que conceda ao GaussDB(DWS) a permissão OBS OperateAccess ou OBS Administrator.

Procedimento

  1. Clique em sua conta no canto superior direito da página e escolha Identity and Access Management.

  2. No painel de navegação à esquerda, escolha Agency. No canto superior direito, clique em Create Agency.

  3. Selecione Cloud Service e defina Cloud Service como DWS.

  4. Clique em Next para conceder a permissão OBS OperateAccess ou OBS Administrator à agência.

  5. Clique em Next. Selecione All resources ou recursos específicos, confirme as informações e clique em Submit.

Criar uma fonte de dados do OBS

Pré-requisitos

Uma agência foi criada para conceder ao GaussDB(DWS) a permissão OBS OperateAccess.

Procedimento

  1. No console de gerenciamento do GaussDB(DWS), escolha Clusters.
  2. Na lista de clusters, clique no nome de um cluster. Na página exibida, escolha Data Sources > OBS Data Source.
  3. Clique em Create OBS Cluster Connection e configure parâmetros.

    Tabela 1 Parâmetros de conexão da origem de dados do OBS

    Parâmetro

    Descrição

    Data Source

    Nome da conexão de origem de dados do OBS a ser criada

    OBS Agency

    Agência com permissão OBS OperateAccess a ser concedida ao DWS

    Database

    Banco de dados onde a conexão de fonte de dados do OBS deve ser criada

    Description

    Descrição sobre a conexão de origem de dados do OBS

  4. Confirme as configurações e clique em OK. A criação demora cerca de 10 segundos.

Atualizar a configuração da origem de dados do OBS

Cenário

Depois que uma conexão de fonte de dados do OBS é criada, o GaussDB(DWS) atualiza periodicamente as informações da agência temporária usadas pela fonte de dados. Se a atualização automática falhar durante 24 horas, a conexão à origem de dados não estará disponível. Para resolver esse problema, atualize manualmente as informações no console.

Procedimento

  1. No console de gerenciamento do GaussDB(DWS), escolha Clusters.
  2. Na lista de clusters, clique no nome de um cluster. Na página exibida, escolha Data Sources > OBS Data Source.
  3. Na coluna Operation de uma origem de dados do OBS, clique em Update Configuration.

  4. Confirme as configurações e clique em OK. A atualização demora cerca de 10 segundos.

Alterar a agência de origem de dados do OBS

Cenário

Você pode alterar a agência vinculada à fonte de dados do OBS.

Procedimento

  1. No console de gerenciamento do GaussDB(DWS), escolha Clusters.
  2. Na lista de clusters, clique no nome de um cluster. Na página exibida, escolha Data Sources > OBS Data Source.
  3. Na coluna Operation de uma fonte de dados, clique em Manage Agency. Na caixa de diálogo exibida, selecione uma nova agência.

  4. Confirme as configurações e clique em OK. A mudança leva cerca de 10 segundos.

Excluir uma fonte de dados do OBS

  1. No console de gerenciamento do GaussDB(DWS), escolha Clusters.
  2. Na lista de clusters, clique no nome de um cluster. Na página exibida, escolha Data Sources > OBS Data Source.
  3. Na coluna Operation de uma fonte de dados do OBS, clique em Delete.

  4. Confirme as configurações e clique em OK. A exclusão demora cerca de 10 segundos.

Usar uma fonte de dados do OBS

GaussDB(DWS) usa tabelas estrangeiras para acessar dados no OBS. Os parâmetros SERVER especificados para acessos com e sem agência são diferentes.

Se você acessar o OBS sem uma agência, o SERVER fornecido no console conterá os parâmetros access_key e secret_access_key, que são o AK e a SK do protocolo de acesso do OBS, respectivamente.

Se você acessar o OBS com uma agência, o SERVER fornecido no console conterá os parâmetros access_key, secret_access_key e security_token, que são o AK temporário, a SK temporária e o valor de SecurityToken da credencial de segurança temporária no IAM, respectivamente.

Depois que a agência do OBS e a fonte de dados do OBS forem criadas, você poderá obter as informações do SERVER, por exemplo, obs_server, no console. A maneira como os usuários criam e usam tabelas estrangeiras com uma agência é a mesma como eles fazem sem uma agência. Para obter detalhes sobre como usar a fonte de dados do OBS, consulte Importação de dados do OBS.

O exemplo a seguir lê dados do OBS por meio de uma tabela estrangeira.

  1. Crie uma tabela estrangeira do OBS customer_address que não contenha colunas de partição. Os arquivos no obs_server estão no formato ORC e são armazenados em /user/obs/region_orc11_64stripe1/.
     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    CREATE FOREIGN TABLE customer_address
    (
        ca_address_sk             integer               not null,
        ca_address_id             char(16)              not null,
        ca_street_number          char(10)                      ,   
        ca_street_name            varchar(60)                   ,   
        ca_street_type            char(15)                      ,   
        ca_suite_number           char(10)                      ,   
        ca_city                   varchar(60)                   ,   
        ca_county                 varchar(30)                   ,   
        ca_state                  char(2)                       ,   
        ca_zip                    char(10)                      ,   
        ca_country                varchar(20)                   ,   
        ca_gmt_offset             decimal(36,33)                  ,   
        ca_location_type          char(20)    
    ) 
    SERVER obs_server OPTIONS (
        FOLDERNAME '/user/obs/region_orc11_64stripe1/',
        FORMAT 'ORC',
        ENCODING 'utf8',
        TOTALROWS  '20'
    )
    DISTRIBUTE BY roundrobin;
    
  2. Consulte dados armazenados no OBS usando uma tabela estrangeira.
    1
    2
    3
    4
    5
    SELECT COUNT(*) FROM customer_address;
    count
    -------
    20
    (1row)