Uso do QHMM Shell Script

Este tópico fornece instruções sobre o uso de dois scripts de shell, qhmm_usr_export.sh e qhmm_import_sre.sh, para o manuseio de dados de diagnóstico no QHMM.

Pré-requisitos

O administrador deve obter o QHMM Shell Script da equipe de suporte da IBM.

qhmm_usr_export.sh

Esse script permite que os usuários agrupem arquivos de dados de diagnóstico do seu bucket de diagnóstico QHMM e compartilhem o arquivo de diagnóstico compactado com a equipe de suporte para análise posterior. (Isso pode ser feito carregando-os em um Repositório de Dados de Clientes Aprimorados (Enhanced Customer Data Repository, ECuRep)). O script aceita argumentos de linha de comando para configuração ou pode ser executado com valores padrão.

  • -e: ENDPOINT (padrão: nenhum)- O ponto final do armazenamento.

  • -r: REGION (padrão: nenhum)- A região de armazenamento.

  • -b: BUCKET_NAME (padrão: nenhum)- O nome do compartimento.

  • -a: ACCESS_KEY (padrão: nenhum)- A chave de acesso para o armazenamento.

  • -s: SECRET_KEY (padrão: none)- A chave secreta do armazenamento.

  • -i: WXD_INSTANCE_ID (padrão: nenhum)- A ID da instância do WXD.

  • -t: ENGINE_TYPE (padrão: nenhum)- O tipo do mecanismo (por exemplo, Presto).

  • -d: ENGINE_ID (padrão: nenhum)- A ID do mecanismo.

  • --data-type- Os dados a serem exportados (suporte a Dump, QueryEvent, e QueryHistory ).

  • -p: DOWNLOAD_DIR (padrão: /root/data)- A pasta de destino dos arquivos baixados.

  • -x: START_DATE (padrão: últimas 24 horas)- A data de início para filtrar objetos.

  • -y: END_DATE (padrão: data atual)- A data final para filtrar objetos.

  • -h, --base-path- Caminho base no bucket.

Exemplo de comando:

./qhmm_usr_export.sh -e <ENDPOINT> -r <REGION> -b <BUCKET_NAME> -a <ACCESS_KEY> -s <SECRET_KEY> -i <WXD_INSTANCE_ID> -t <ENGINE_TYPE> -d <ENGINE_ID> -p <DOWNLOAD_DIR> -x <START_DATE> -y <END_DATE>

qhmm_import_sre.sh

Esse script foi criado para que a equipe de suporte recupere dados de diagnóstico de um Repositório de Dados Avançados do Cliente (ECuRep) e os carregue em um bucket da equipe de suporte para análise posterior. Semelhante ao primeiro script, ele pode ser configurado usando argumentos de linha de comando ou executado com valores padrão.

  • -e: ENDPOINT (padrão: nenhum)- O ponto final do armazenamento.

  • -r: REGION (padrão: nenhum)- A região de armazenamento.

  • -b: BUCKET_NAME (padrão: nenhum)- O nome do compartimento.

  • -a: ACCESS_KEY (padrão: nenhum)- A chave de acesso para o armazenamento.

  • -s: SECRET_KEY (padrão: none)- A chave secreta do armazenamento.

  • -i: WXD_INSTANCE_ID (padrão: nenhum)- A ID da instância do WXD.

  • -t: ENGINE_TYPE (padrão: nenhum)- O tipo do mecanismo (por exemplo, Presto).

  • -d: ENGINE_ID (padrão: nenhum)- A ID do mecanismo.

  • -p: COMPRESSED_FILE (padrão: /root/data/bundle.zip)- A pasta de origem do arquivo compactado.

Exemplo de comando:

./qhmm_import_sre.sh -e <ENDPOINT> -r <REGION> -b <BUCKET_NAME> -a <ACCESS_KEY> -s <SECRET_KEY> -i <WXD_INSTANCE_ID> -t <ENGINE_TYPE> -d <ENGINE_ID> -p <COMPRESSED_FILE>

bucket_data_migration.sh

Esse script permite que os usuários transfiram dados QHMM do compartimento de origem para o compartimento de destino. O script de migração pode ser configurado usando os seguintes argumentos de linha de comando ou executado com os valores padrão:

-se: --source-endpoint- Ponto de extremidade URL do armazenamento de origem S3-compatible (padrão: http://localhost:9000 )

-se: --source-endpoint- Ponto de extremidade URL do armazenamento de origem S3-compatible (padrão: http://localhost:9000 )

-sr: --source-region- Região do armazenamento de origem S3-compatible (padrão: us-east-1 )

-sb: --source-bucket- Nome do bucket de origem (obrigatório)

-sa: --source-access-key- Chave de acesso para o armazenamento de origem (obrigatório)

-ss: --source-secret-key- Chave secreta para armazenamento de origem (obrigatório)

-sbp: --source-base-path- Caminho de base no bucket de origem (padrão: qhmm)

-de: --dest-endpoint- Ponto de extremidade URL do armazenamento de destino S3-compatible (padrão: http://localhost:9000 )

-dr: --dest-region- Região do armazenamento de destino S3-compatible (padrão: us-east-1 )

-db: --dest-bucket- Nome do bucket de destino (obrigatório)

-da: --dest-access-key- Chave de acesso para o armazenamento de destino (obrigatório)

-ds: --dest-secret-key- Chave secreta para o armazenamento de destino (obrigatório)

-dbp: --dest-base-path- Caminho base no bucket de destino (padrão: qhmm)

-bp: --base-path- Caminho base no bucket (padrão: qhmm)

  • -i: --instance-id- ID da instância (obrigatório)

  • -t: --engine-type- Tipo de motor (obrigatório)

  • -d: --engine-id- ID do motor (obrigatório)

  • -x: --start-date- Data de início para filtragem de objetos (DD-MM-AAAA, opcional)

  • -y: --end-date- Data final para filtragem de objetos (DD-MM-AAAA, opcional)

  • --data-type- Dados a serem exportados (tipos compatíveis: Dump, QueryEvent, QueryHistory, opcional)

  • --max-size- Tamanho máximo do download em MB (padrão: 500MB )

  • --help- Exibir esta ajuda e sair

Exemplo de comando:

./bucket_data_migration.sh \
    --source-endpoint <source-endpoint> \
    --source-bucket <source-bucket> \
    --source-access-key <source-access-key> \
    --source-secret-key <source-secret-key> \
    --source-base-path <source-base-path> \
    --dest-endpoint <dest-endpoint> \
    --dest-bucket <dest-bucket> \
    --dest-access-key <dest-access-key> \
    --dest-secret-key <dest-secret-key> \
    --dest-base-path <dest-base-path> \
    --instance-id <instance-id> \
    --engine-type <engine-type> \
    --engine-id <engine-id> \
    --start-date <start-date> \
    --end-date <end-date> \
    --data-type <data-type> \
    --max-size <max-size>

Gerenciamento de dados de diagnóstico por método manual

  1. Execute o seguinte comando para criar uma tabela para armazenar os dados do evento de consulta gerados usando qhmm_import_sre.sh:
` CREATE TABLE IF NOT EXISTS <catalog>.diag.query_event_raw (
  record VARCHAR,
  dt VARCHAR
)
WITH (
  external_location = 's3a://<bucket>/qhmm/<instance-id>/<engine>/<engine-id>/QueryEvent/',
  format = 'textfile',
  partitioned_by = ARRAY['dt']
);`
  1. Execute o seguinte comando para criar uma tabela para armazenar os dados do histórico de consultas no formato JSON:
` CREATE TABLE IF NOT EXISTS <catalog>.diag.query_history(
  query_id VARCHAR,
  query VARCHAR,
  state VARCHAR,
  source VARCHAR,
  created VARCHAR,
  started VARCHAR,
  "end" VARCHAR,
  dt VARCHAR,
  user VARCHAR)
WITH (
  external_location = 's3a://<bucket>/qhmm/<instance-id>/<engine>/<engine-id>/QueryHistory/',
  format = 'JSON',
  partitioned_by = ARRAY['dt','user']
);`