Provisioning di Analytics Engine
Si applica a: Motore a scintilla
L'opzione di registrazione di motori Spark esterni in watsonx.data è deprecata in questa versione e sarà rimossa nella versione 2.3. watsonx.data include già motori Spark integrati che si possono fornire e utilizzare direttamente, tra cui il motore Spark accelerato da Gluten e il motore Spark nativo watsonx.data.
Per watsonx.data, si consiglia di utilizzare IBM Analytics Engine Spark per ottenere i seguenti casi di utilizzo:
- Inserimento di grandi volumi di dati nelle tabelle watsonx.data. Puoi anche ripulire e trasformare i dati prima dell'inserimento.
- Operazione di manutenzione della tabella per migliorare le watsonx.data prestazioni della tabella
- Workload di analytics complessi, difficili da rappresentare come query.
Puoi creare un'istanza IBM Analytics Engine:
- Utilizzo della console IBM Cloud®
- Utilizzo dell'interfaccia riga di comando IBM Cloud®
- Utilizzo dell'API REST del controller delle risorse
Devi avere accesso alla regione IBM Cloud® us - south (Dallas) o eu - de (Francoforte). Quando aggiungi una regione per il provisioning di un'istanza Analytics Engine, scegli una più vicina alla regione in cui hai eseguito il provisioning watsonx.data per evitare problemi di latenza dei dati.
Creare un'istanza di servizio dalla console IBM Cloud®
Puoi creare un'istanza utilizzando la console IBM Cloud®.
Per creare un'istanza di IBM Analytics Engine:
-
Accedi alla consoleIBM Cloud®.
-
Fare clic su Servizi e selezionare la categoria Analytics.
-
Cerca Analytics Engine, quindi fai clic sul tile per aprire la pagina di creazione dell'istanza di servizio.
-
Scegli l'ubicazione più vicina alla regione di cui hai eseguito il provisioning watsonx.data per la distribuzione dell'istanza del servizio. Attualmente, us - south e eu - de sono le uniche regioni supportate.
-
Seleziona un piano. Attualmente, Standard Serverless for Apache Spark è l'unico piano senza server supportato.
-
Configurare l'istanza immettendo un nome a scelta, selezionando un gruppo di risorse e aggiungendo tag.
-
Selezionare l'ultima versione runtime disponibile (ad esempio 3.4 ). Per altre versioni di Spark supportate, vedere Versione di Spark supportata.
-
Selezionare l'istanza Object Storage IBM Cloud dal proprio account che si desidera utilizzare come home istanza Analytics Engine per archiviare i dati relativi all'istanza.
-
Fai clic su Crea per eseguire il provisioning dell'istanza del servizio in background.
Il servizio appena creato è elencato nel tuo elenco di risorseIBM Cloud® sotto Servizi.
Creazione di un'istanza del servizio utilizzando l'interfaccia riga di comando IBM Cloud®
Per creare un'istanza del servizio utilizzando l'interfaccia riga di comando IBM Cloud®:
-
Scarica e configurare la CLI IBM Cloud®. Segui le istruzioni in Introduzione alla CLI IBM Cloud®.
-
Imposta l'endpoint API per la tua regione e accedi:
ibmcloud api https://DOMAIN_NAME ibmcloud loginValore parametro:
- DOMAIN_NAME: l'endpoint API per la tua regione. Ad esempio, cloud.ibm.com
-
Ottieni l'elenco dei gruppi di risorse per il tuo account e seleziona uno dei gruppi di risorse restituiti come gruppo di risorse di destinazione in cui creare l'istanza senza server IBM Analytics Engine:
ibmcloud resource groups ibmcloud target -g <RESOURCE_GROUP_NAME>Valore parametro:
- RESOURCE_GROUP_NAME: fornire lo stesso nome specificato durante il provisioning di watsonx.data per un'organizzazione efficiente.
-
Crea un'istanza del servizio:
ibmcloud resource service-instance-create <SERVICE_INSTANCE_NAME> ibmanalyticsengine <PLAN_NAME> <REGION> -p @<PATH_to JSON file with cluster parameters>Valore parametro:
- SERVICE_INSTANCE_NAME: specificare un nome per l'istanza.
- PLAN_NAME: specificare come nome piano plan_name8afde05e-5fd8-4359-a597-946d8432dd45.
- REGIONE: Specificare la regione in cui si desidera eseguire il provisioning dell'istanza.
Nota che attualmente, standard - serverless - spark è l'unico piano senza server supportato e us - south e eu - de le uniche regioni supportate. Scegli una regione più vicina a quella in cui hai eseguito il provisioning di watsonx.data.
- PATH_to JSON file: include il percorso del file JSON che contiene i parametri di provisioning.
Ad esempio, per la regione Dallas:
ibmcloud resource service-instance-create MyServiceInstance ibmanalyticsengine standard-serverless-spark us-south -p @provision.jsonPuoi fornire all'istanza del servizio qualsiasi nome tu scelga. Nota che attualmente, standard - serverless - spark è l'unico piano senza server supportato e us - south e eu - de le uniche regioni supportate.
Il file
provision.jsoncontiene i parametri di provisioning per l'istanza che vuoi creare.L'endpoint alla tua istanza Object Storage IBM Cloud® nel file JSON del payload deve essere l'endpoint diretto. Gli endpoint diretti offrono prestazioni migliori rispetto agli endpoint pubblici e non comportano costi per la larghezza di banda in uscita o in entrata.
Di seguito è riportato un file provision.json di esempio.
{ "default_runtime": { "spark_version": "3.4" }, "instance_home": { "region": "us-south", "endpoint": "https://s3.direct.us-south.cloud-object-storage.appdomain.cloud", "hmac_access_key": "<your-hmac-access-key", "hmac_secret_key": "<your-hmac-secret-key" }, "default_config": { "key1": "value1", "key2": "value2" } }La risposta IBM Cloud® al comando create instance:
Creating service instance MyServiceInstance in resource group Default of account <your account name> as <your user name>... OK Service instance MyServiceInstance was created. Name: MyServiceInstance ID: crn:v1:staging:public:ibmanalyticsengine:us-south:a/d628eae2cc7e4373bb0c9d2229f2ece5:1e32e***-afd9-483a-b1**-724ba5cf4***:: GUID: 1e32e***-afd9-483a-b1**-724ba5cf4*** Location: us-south State: provisioning Type: service_instance Sub Type: Service Endpoints: public Allow Cleanup: false Locked: false Created at: 2021-11-29T07:20:40Z Updated at: 2021-11-29T07:20:42Z Last Operation: Status create in progress Message Started create instance operationLa risposta di esempio al comando di creazione dell'istanza è:
Creating service instance MyServiceInstance in resource group Default of account <your account name> as <your user name>... OK Service instance MyServiceInstance was created. Name: MyServiceInstance ID: crn:v1:staging:public:ibmanalyticsengine:us-south:a/d628eae2cc7e4373bb0c9d2229f2ece5:1e32e***-afd9-483a-b1**-724ba5cf4***:: GUID: 1e32e***-afd9-483a-b1**-724ba5cf4*** Location: us-south State: provisioning Type: service_instance Sub Type: Service Endpoints: public Allow Cleanup: false Locked: false Created at: 2021-11-29T07:20:40Z Updated at: 2021-11-29T07:20:42Z Last Operation: Status create in progress Message Started create instance operationPrendere nota dell'ID istanza dall'output. Avrai bisogno dell'ID istanza quando richiami le API di gestione dell'istanza o di gestione dell'applicazione Spark. Vedi API REST dell'applicazione Spark.
Creazione di un'istanza del servizio utilizzando l'API REST del controller di risorse
Un'istanza senza server IBM Analytics Engine deve risiedere in un gruppo di risorse IBM Cloud®. Come primo passo verso la creazione di un'istanza senza server IBM Analytics Engine attraverso l'API REST del controller delle risorse, devi avere l'ID gruppo di risorse e l'ID piano senza server a portata di mano.
Per creare un'istanza del servizio utilizzando l'API REST del controller di risorse:
-
Ottieni l'ID del gruppo di risorse accedendo alla CLI IBM Cloud® ed eseguendo il seguente comando:
ibmcloud resource groupsRisultato di esempio:
Retrieving all resource groups under account <Account details..> OK Name ID Default Group State Default XXXXX true ACTIVE -
Utilizzare il seguente ID piano delle risorse per il piano Standard Serverless per Apache Spark:
8afde05e-5fd8-4359-a597-946d8432dd45 -
Ottieni il token IAM. Per istruzioni, consultare la procedura.
-
Crea un'istanza utilizzando l'API REST del controller di risorse:
curl -X POST https://resource-controller.cloud.ibm.com/v2/resource_instances/ --header "Authorization: Bearer $token" -H 'Content-Type: application/json' -d @provision.jsonIl file provision.json contiene i parametri di provisioning per l'istanza che vuoi creare. Vedi Architettura e concetti nelle istanze senza server per una descrizione dei parametri di provisioning nel payload.
Di seguito è riportato un esempio del file
provision.json.{ "name": "your-service-instance-name", "resource_plan_id": "8afde05e-5fd8-4359-a597-946d8432dd45", "resource_group": "resource-group-id", "target": "us-south", "parameters": { "default_runtime": { "spark_version": "3.4" }, "instance_home": { "region": "us-south", "endpoint": "s3.direct.us-south.cloud-object-storage.appdomain.cloud", "hmac_access_key": "your-access-key", "hmac_secret_key": "your-secret-key" } } }
Per ulteriori informazioni sull'API REST del controller delle risorse per creare un'istanza, vedi Crea(provisioning)una nuova istanza della risorsa.
Traccia della disponibilità dell'istanza
Per eseguire le applicazioni su un'istanza senza server appena creata, l'istanza deve essere in stato attivo.
Per tenere traccia della disponibilità dell'istanza:
- Immetti il seguente comando:
Risposta di esempio:curl -X GET https://api.us-south.ae.cloud.ibm.com/v3/analytics_engines/{instance_id} -H "Authorization: Bearer $token"{ "id": "dc0e****-eab2-4t9e-9441-56620949****", "state": "created", "state_change_time": "2021-04-21T04:24:01Z", "default_runtime": { "spark_version": "3.4", "instance_home": { "provider": "ibm-cos", "type": "objectstore", "region": "us-south", "endpoint": "https://s3.direct.us-south.cloud-object-storage.appdomain.cloud", "bucket": "ae-bucket-do-not-delete-dc0e****-eab2-4t**-9441-566209499546", "hmac_access_key": "eH****g=", "hmac_secret_key": "4d********76" }, "default_config": { "spark.driver.memory": "4g", "spark.driver.cores": 1 } } } - Controllare il valore dell'attributo state. Deve essere attivo prima di poter avviare l'esecuzione delle applicazioni nell'istanza.
Ulteriori informazioni
Quando esegui il provisioning di istanze senza server, segui le procedure ottimaliconsigliate.