Utilizzo del programma di importazione Cloud Object Storage per migrare i log di chat

IBM Cloud Pak for Data

Puoi utilizzare il servizio di importazione Cloud Object Storage per migrare i tuoi log di chat da un'installazione all'altra.

Questo diagramma mostra due cluster:

Cluster di diagrammi
Cluster Descrizione
Cloud Object Storage consumatore Cluster Red Hat OpenShift con l'installazione utilizzata per esportare i dati del log di chat in Cloud Object Storage
Cloud Object Storage importatore Cluster Red Hat OpenShift con l'installazione che importa i dati del log chat dal bucket copiato dal cluster del consumer Cloud Object Storage

Diagramma architettura{caption="Architecture Diagram" caption-side="bottom"}

Configurazione del servizio consumer Cloud Object Storage del data governor

  1. Utilizzare lo script per creare un nuovo file sul cluster consumer Cloud Object Storage.

    COS_ACCESS_KEY=`echo -n "<enter_COS_key_here>"|base64`
    COS_SECRET_ACCESS_KEY=`echo -n "<enter_COS_secret_access_key_here>"|base64`
    COS_ENDPOINT="<enter_COS_endpoint here>"
    #For e.g. COS_ENDPOINT="https://s3.us.cloud-object-storage.appdomain.cloud"
    
    cat <<EOF | oc apply -f -
    
    apiVersion: v1
    kind: Secret
    metadata:
      name: wa-data-governor-cos-credentials
      namespace: cpd
    data:
      COS_ACCESS_KEY: ${COS_ACCESS_KEY}
      COS_SECRET_KEY: ${COS_SECRET_ACCESS_KEY}
    type: Opaque
    
    EOF
    
    cat <<EOF | oc apply -f -
    apiVersion: assistant.watson.ibm.com/v1
    kind: TemporaryPatch
    metadata:
      name: wa-data-governor
      namespace: cpd
    spec:
      apiVersion: assistant.watson.ibm.com/v1
      kind: WatsonAssistant
      name: wa
      patch:
        data-governor:
          dataexhaust:
            spec:
              consumers:
                cosConsumer: true
              cos:
                endpoint: ${COS_ENDPOINT}
                secret:
                  accessKey: COS_ACCESS_KEY
                  name: wa-data-governor-cos-credentials
                  secretKey: COS_SECRET_KEY
      patchType: patchStrategicMerge
    EOF
    
  2. Nello script, sostituire questi segnaposto con i valori effettivi:

    • <enter_COS_key_here>
    • <enter_COS_secret_access_key_here>
    • <enter_COS_endpoint here>
  3. Esegui lo script.

  4. Attendere da 15 a 20 minuti, quindi controllare se i pod del governor dei dati sono stabili.

  5. Quando i pod sono stabili, accedi alla tua istanza.

  6. Selezionare l'assistente corretto, quindi fare clic sull'icona Preview sulla barra verticale a sinistra e generare i log di chat.

  7. Controlla se gli oggetti Cloud Object Storage vengono creati nel bucket data-exhaust-backup-wa-data-governor-e58d5f4a1344 Cloud Object Storage.

Configurazione del servizio del programma di importazione Cloud Object Storage del data Governor

Crea un file sul cluster del programma di importazione Cloud Object Storage e copia il seguente script in esso. Sostituire i segnaposto <enter_COS_key_here>, <enter_COS_secret_access_key_here> e <enter_COS_endpoint here> con i valori effettivi e salvare il file. Quindi, eseguire lo script. Attendere 15 -20 minuti e verificare se i pod del governor dei dati sono stabili. Quando i pod sono stabili, verificare se il cron del programma di importazione è in esecuzione come pianificato. Quando il pod importer è stato completato, controlla se i dati dei log di chat sono stati importati nei log di chat dell'assistente corretti andando alla IU dell'assistente e controllando la schermata Analyze per i dati importati.

  1. Utilizzare lo script per creare un nuovo file nel cluster del programma di importazione Cloud Object Storage.

       COS_ACCESS_KEY=`echo -n "<enter_COS_key_here>"|base64`
       COS_SECRET_ACCESS_KEY=`echo -n "<enter_COS_secret_access_key_here>"|base64`
    
       cat <<EOF | oc apply -f -
    
       apiVersion: v1
       kind: Secret
       metadata:
         name: wa-data-governor-cos-credentials
         namespace: cpd
       data:
         COS_ACCESS_KEY: ${COS_ACCESS_KEY}
         COS_SECRET_KEY: ${COS_SECRET_ACCESS_KEY}
       type: Opaque
    
       EOF
    
    COS_ENDPOINT="<enter_COS_endpoint here>"  # For e.g. COS_ENDPOINT="https://s3.us.cloud-object-storage.appdomain.cloud"
    # See "How to generate a JSON mapping defintion" below for instructions on how to create the next line
    JSON_ID_MAPPING='{"instances":[{"source_id":"<instance_id_consumer1>","target_id":"<instance_id_importer1>","assistants":[{"source_id":"<draft_or_live_environment_id_consumer1>","target_id":"<draft_or_live_environment_id_importer1>"}],"workspaces":[{"source_id":"<action_skill_id_consumer1>","target_id":"<action_skill_id_importer1>"}]}]}'
    
    cat <<EOF | oc apply -f -
    apiVersion: assistant.watson.ibm.com/v1
    kind: TemporaryPatch
    metadata:
      name: wa-data-governor
    spec:
      apiVersion: assistant.watson.ibm.com/v1
      kind: WatsonAssistant
      name: wa
      patchType: patchStrategicMerge
      patch:
        data-governor:
          dataexhaust:
            spec:
              cos:
                endpoint: ${COS_ENDPOINT}
                secret:
                  accessKey: COS_ACCESS_KEY
                  name: wa-data-governor-cos-credentials
                  secretKey: COS_SECRET_KEY
              cosImporter:
                fromBucket: data-exhaust-backup-wa-data-governor-e58d5f4a1344
                clearObjectTags: false
                filter:
    # Modify prefix value.
                  prefix: "20230322"
                fromTenant: "*"
    # Modify schedule to run importer cron less frequently
                schedule: '* * * * *'
    # See "How to generate a JSON mapping defintion" below for instructions on how to create the next line
                schema: ${JSON_ID_MAPPING}
                workers: 3
    
  2. Nello script, sostituire questi segnaposto con i valori effettivi:

    • <enter_COS_key_here>
    • <enter_COS_secret_access_key_here>
    • <enter_COS_endpoint here>
  3. Esegui lo script.

  4. Attendere da 15 a 20 minuti, quindi controllare se i pod del governor dei dati sono stabili.

  5. Quando i pod sono stabili, verificare che il cron del programma di importazione sia in esecuzione come pianificato.

  6. Quando il pod importer è stato completato, controlla che i log di chat siano stati importati nell'assistente corretto aprendo il tuo assistente e controllando la schermata Analyze per i dati importati.

Parametri
Parametro Descrizione
fromBucket Bucket Cloud Object Storage con i dati da importare
pianificazione Pianificazione per l'esecuzione del lavoro cron Cloud Object Storage
clearObjectTags Impostare su true per consentire al programma di importazione di eseguire nuovamente gli oggetti Cloud Object Storage già elaborati
Worker Numero di thread di lavoro. L'aumento del numero richiede più risorse di lavoro.
filtro Fornisce il controllo su quali oggetti vengono importati dal bucket Cloud Object Storage
prefisso Consente l'importazione di oggetti da una data specifica
documentTimestampWindow Consente l'importazione di oggetti durante un intervallo di tempo specifico
cos Cloud Object Storage credenziali
schema Schema di trasformazione, che consente al programma di importazione di modificare i campi per consentire ai dati analitici dall'istanza pprd di essere visualizzati in corso. Per ulteriori informazioni, consultare Generazione di una definizione di associazione ID JSON per il servizio del programma di importazione del programma di gestione dati.
fromTenant Consente l'importazione su dati tenant di filtro specifici

I valori instance_id_consumer1, draft_or_live_environment_id_consumer1 e action_skill_id_consumer1 possono essere trovati nella pagina delle impostazioni dell'assistente nel cluster consumer Cloud Object Storage.

Impostazioni dell'assistente{caption="Assistant settings" caption-side="bottom"}

Ad esempio:

  • instance_id_consumer1 può essere estratto da Service Instance URL. Ad esempio, 00000000-0000-0000-1679-443304652288.

  • I valori draft_or_live_environment_id_consumer1 sono gli ID Draft environment o Live Environment.

  • Il valore action_skill_id_consumer1 è Action Skill ID.

Allo stesso modo, puoi estrarre le istanze del programma di importazione Cloud Object Storage, gli assistenti e i valori target_id degli spazi di lavoro dalle impostazioni dell'assistente per il cluster di importazione Cloud Object Storage.

Generazione di una definizione di associazione ID JSON per il servizio del programma di importazione Data Governor

Puoi utilizzare i report Analytics nel tuo ambiente di sviluppo per ottenere informazioni dettagliate sui tuoi log di chat di produzione.

È necessario spostare i dati dei log di chat di produzione nel proprio ambiente di sviluppo e quindi trasformare i dati dei log di chat di produzione in modo che vengano utilizzati dai report Analytics negli assistenti di sviluppo.

Per i log di chat spostati che devono essere utilizzati dai report di Analytics in un'istanza e un assistente diversi nel proprio ambiente di sviluppo, i vari ID dei documenti Elastic del log di chat devono essere trasformati dall'origine alla destinazione.

Utilizzare questo codice per la definizione di associazione ID.

  • Questa definizione di associazione supporta la trasformazione dei log chat per più istanze e assistenti.

  • L'associazione è gerarchica, quindi ogni associazione di livello istanza contiene anche più associazioni di livello assistente per tale istanza.

  • Ogni associazione contiene due campi ID: source_id e target_id. È necessario fornire i dati per ogni associazione a livello di istanza e di assistente.

È possibile ricercare i dati ID nelle istanze applicabili e negli assistenti.

{
	"instances": [
		{
			"source_id": "<string>",
			"target_id": "<string>",
			"assistants": [
				{
					"source_id": "<string>",
					"target_id": "<string>"
				}
			],
			"workspaces": [
				{
					"source_id": "<string>",
					"target_id": "<string>"
				}
			]
		}
	]
}

Esempi di utilizzo

Associa gli assistenti da un'istanza di origine agli assistenti in più istanze di destinazione.

Il seguente esempio associa 2 assistenti in 1 istanza di origine a 2 assistenti in 2 istanze di destinazione.

{
	"instances": [
		{
			"source_id": "07079e0a-a8cd-4dc5-b3a4-7879d7cf0a8f",
			"target_id": "90876f0b-c98d-fcc9-c4b5-0291a3bd4f9a",
			"assistants": [
				{
					"source_id": "081513d5-9858-4eb9-9012-5ce0af8182a6",
					"target_id": "f4e5f6d5-3903-486f-8563-416446d8c8a0"
				}
			]
		},
		{
			"source_id": "07079e0a-a8cd-4dc5-b3a4-7879d7cf0a8f",
			"target_id": "79640a7b-45bc-7eea-b4f1-98b55fca6b1c",
			"assistants": [
				{
					"source_id": "9645f5d1-f432-4abd-a589-12bc4af5b133",
					"target_id": "a4bb579e-e3b5-34bc-afe5-9afc490e8bac"
				}
			]
		}
	]
}