Utilisation du script Shell QHMM

Cette rubrique fournit des instructions sur l'utilisation de deux scripts shell, qhmm_usr_export.sh et qhmm_import_sre.sh, pour le traitement des données de diagnostic dans QHMM.

Prérequis

L'administrateur doit obtenir le script shell QHMM auprès de l'équipe d'assistance IBM.

qhmm_usr_export.sh

Ce script permet aux utilisateurs de regrouper les fichiers de données de diagnostic de leur seau de diagnostic QHMM et de partager le fichier de diagnostic compressé avec l'équipe d'assistance pour une analyse plus approfondie. (Cela peut se faire en les téléchargeant vers un référentiel de données client amélioré (ECuRep)). Le script accepte des arguments de ligne de commande pour la configuration ou peut être exécuté avec les valeurs par défaut.

  • -e: ENDPOINT (par défaut : none)- Le point de terminaison du stockage.

  • -r: REGION (par défaut : none)- La région de stockage.

  • -b: BUCKET_NAME (default : none)- Le nom du seau.

  • -a: ACCESS_KEY (par défaut : none)- Clé d'accès au stockage.

  • -s: SECRET_KEY (par défaut : none)- Clé secrète pour le stockage.

  • -i: WXD_INSTANCE_ID (par défaut : none)- L'identifiant de l'instance de WXD.

  • -t: ENGINE_TYPE (default : none)- Le type de moteur (par exemple, Presto).

  • -d: ENGINE_ID (par défaut : none)- L'ID du moteur.

• --data-type- Les données à exporter (support Dump, QueryEvent, et QueryHistory ).

  • -p: DOWNLOAD_DIR (par défaut : /root/data)- Dossier cible pour les fichiers téléchargés.

  • -x: START_DATE (par défaut : dernières 24 heures)- La date de début du filtrage des objets.

  • -y: END_DATE (par défaut : date actuelle)- La date de fin de filtrage des objets.

  • -h, --base-path- Chemin de base dans le seau.

Exemple de commande :

./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

Ce script est destiné à l'équipe d'assistance pour récupérer des données de diagnostic à partir d'un référentiel de données client amélioré (ECuRep), et les télécharger vers un seau de l'équipe d'assistance pour une analyse plus approfondie. Comme le premier script, il peut être configuré à l'aide d'arguments de ligne de commande ou exécuté avec les valeurs par défaut.

  • -e: ENDPOINT (par défaut : none)- Le point de terminaison du stockage.

  • -r: REGION (par défaut : none)- La région de stockage.

  • -b: BUCKET_NAME (default : none)- Le nom du seau.

  • -a: ACCESS_KEY (par défaut : none)- Clé d'accès au stockage.

  • -s: SECRET_KEY (par défaut : none)- Clé secrète pour le stockage.

  • -i: WXD_INSTANCE_ID (par défaut : none)- L'identifiant de l'instance de WXD.

  • -t: ENGINE_TYPE (default : none)- Le type de moteur (par exemple, Presto).

  • -d: ENGINE_ID (par défaut : none)- L'ID du moteur.

  • -p: COMPRESSED_FILE (par défaut : /root/data/bundle.zip)- Le dossier source du fichier compressé.

Exemple de commande :

./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

Ce script permet aux utilisateurs de transférer les données du QHMM du godet source au godet de destination. Le script de migration peut être configuré à l'aide des arguments de ligne de commande suivants ou exécuté avec les valeurs par défaut :

-se : --source-endpoint- Point de terminaison URL du stockage source S3-compatible (par défaut : http://localhost:9000 )

-se : --source-endpoint- Point de terminaison URL du stockage source S3-compatible (par défaut : http://localhost:9000 )

  • ssr : --source-region- Région de stockage de la source S3-compatible (par défaut : us-east-1 )

-sb : --source-bucket- Nom du seau source (obligatoire)

  • sa : --source-access-key- Clé d'accès au stockage de la source (obligatoire)

-ss : --source-secret-key- Clé secrète pour le stockage de la source (obligatoire)

-sbp : --source-base-path- Chemin de base dans le panier source (par défaut : qhmm)

-de : --dest-endpoint- Point d'arrivée URL du stockage de destination S3-compatible (par défaut : http://localhost:9000 )

-dr : --dest-region- Région du stockage de destination S3-compatible (par défaut : us-east-1 )

-db : --dest-bucket- Nom de la base de données de destination (obligatoire)

-da : --dest-access-key- Clé d'accès au stockage de destination (obligatoire)

-ds : --dest-secret-key- Clé secrète pour le stockage de destination (obligatoire)

-dbp : --dest-base-path- Chemin de base dans le panier de destination (par défaut : qhmm)

-bp : --base-path- Chemin de base dans le seau (par défaut : qhmm)

  • -i: --instance-id- ID de l'instance (obligatoire)

  • -t: --engine-type- Type de moteur (obligatoire)

  • -d: --engine-id- ID du moteur (obligatoire)

  • -x: --start-date- Date de début du filtrage des objets (JJ-MM-AAAA, facultatif)

  • -y: --end-date- Date de fin du filtrage des objets (JJ-MM-AAAA, facultatif)

  • --data-type- Données à exporter (types pris en charge : Dump, QueryEvent, QueryHistory, facultatif)

  • --max-size- Taille maximale du téléchargement en Mo (par défaut : 500MB )

  • --help- Afficher cette aide et quitter

Exemple de commande :

./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>

Gestion des données de diagnostic par méthode manuelle

  1. Exécutez la commande suivante pour créer une table afin de stocker les données de l'événement de requête généré à l'aide de 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. Exécutez la commande suivante pour créer une table qui stockera les données de l'historique des requêtes au format 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']
);`