

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Creazione di uno schema e di un set di dati
<a name="data-prep-creating-datasets"></a>

Dopo aver [creato un gruppo di set](data-prep-ds-group.md) di dati, sei pronto per creare uno schema Amazon Personalize e un set di dati per ogni tipo di dati che stai importando. Uno *schema* indica ad Amazon Personalize la struttura dei dati e consente ad Amazon Personalize di analizzare i dati. Quando crei uno schema in Amazon Personalize, usi il file JSON in cui lo hai creato. [Creazione di file JSON di schema per schemi Amazon Personalize](how-it-works-dataset-schema.md) 

 Un *set* di dati è un contenitore per i dati di addestramento in Amazon Personalize. Tipi di set di dati diversi hanno requisiti diversi. Crei un set di dati per ogni tipo di dati che stai importando. Per informazioni sui diversi tipi di set di dati e su come preparare i dati, consulta. [Preparazione dei dati di formazione per Amazon Personalize](preparing-training-data.md)

Puoi creare schemi e set di dati con la console Amazon Personalize AWS Command Line Interface ,AWS CLI() o. AWS SDKs Non puoi creare le prossime migliori risorse d'azione, inclusi i set di dati Actions e Action Interactions, in un gruppo di set di dati di dominio. 

**Importante**  
 Dopo aver creato uno schema, non è possibile apportare modifiche allo schema. Tuttavia, se aggiungi nuove colonne, puoi sostituire lo schema di un set di dati con uno nuovo. Per ulteriori informazioni, consulta [Sostituzione dello schema di un set di dati per aggiungere nuove colonne](updating-dataset-schema.md).

**Topics**
+ [Creazione di un set di dati e di uno schema (console)](#data-prep-creating-ds-console)
+ [Creazione di un set di dati e di uno schema ()AWS CLI](#data-prep-creating-ds-cli)
+ [Creazione di un set di dati e di uno schema ()AWS SDKs](#data-prep-creating-ds-sdk)

## Creazione di un set di dati e di uno schema (console)
<a name="data-prep-creating-ds-console"></a>

 Se questo è il primo set di dati nel gruppo di set di dati, il primo tipo di set di dati sarà un set di dati sulle interazioni tra elementi. [Per creare il set di dati sulle interazioni degli elementi nella console, specifica il nome del set di dati e quindi specifica uno schema JSON in formato Avro.](https://docs.oracle.com/database/nosql-12.1.3.0/GettingStartedGuide/avroschemas.html) Se non è il primo set di dati in questo gruppo di set di dati, scegli il tipo di set di dati e quindi specifica un nome e uno schema. 

Per informazioni sui requisiti dei set di dati di Amazon Personalize, consulta. [Preparazione dei dati di formazione per Amazon Personalize](preparing-training-data.md) Se hai appena completato [Creazione di un gruppo di set di dati Amazon Personalize](data-prep-ds-group.md) e stai già creando il set di dati, vai al passaggio 4 di questa procedura. 

**Per creare un set di dati e uno schema**

1. Se non l'hai già fatto, segui le istruzioni [Creazione di file JSON di schema per schemi Amazon Personalize](how-it-works-dataset-schema.md) per creare un file JSON di schema che delinei i tuoi dati.

1. Apri la console Amazon Personalize a [https://console.aws.amazon.com/personalize/casa](https://console.aws.amazon.com/personalize/home) e accedi al tuo account.

1.  Nella pagina dei **gruppi di set** di dati, scegli il gruppo di set di dati in cui hai creato. [Creazione di un gruppo di set di dati Amazon Personalize](data-prep-ds-group.md) 

1. Nel **passaggio 1. Crea set di dati e importa dati** scegli **Crea set** di dati e scegli il tipo di set di dati da creare.

1. **Scegli **Importa i dati direttamente nei set di dati di Amazon Personalize e scegli Avanti**.**

1. Nei **dettagli del set** di dati, per Nome del **set di dati, specifica un nome** per il set di dati.

1. Per **lo schema del set** di dati, scegli **Crea un nuovo schema o **Usa** uno schema** esistente.

1. Se utilizzi uno schema esistente, scegli lo schema esistente da utilizzare. Se stai creando un nuovo schema, assegna un nome allo schema e incollalo nello schema JSON che corrisponde ai tuoi dati. Hai creato questo file in[Creazione di file JSON di schema per schemi Amazon Personalize](how-it-works-dataset-schema.md).

1. Per i **tag**, aggiungi facoltativamente qualsiasi tag. Per ulteriori informazioni sull'etichettatura delle risorse Amazon Personalize, consulta. [Etichettare le risorse di Amazon Personalize](tagging-resources.md)

1. Scegli **Avanti** e segui le istruzioni [Importazione di dati di formazione nei set di dati di Amazon Personalize](import-data.md) per importare i dati.

## Creazione di un set di dati e di uno schema ()AWS CLI
<a name="data-prep-creating-ds-cli"></a>

Per creare un set di dati e uno schema utilizzando il AWS CLI, si utilizza il `create-schema` comando (che utilizza l'operazione [CreateSchema](API_CreateSchema.md) API) e then `create-dataset` (che utilizza l'operazione [CreateDataset](API_CreateDataset.md) API).

**Per creare uno schema e un set di dati**

1. Se non l'hai già fatto, segui le istruzioni [Creazione di file JSON di schema per schemi Amazon Personalize](how-it-works-dataset-schema.md) per creare un file JSON di schema che delinei i tuoi dati.

1. Crea uno schema in Amazon Personalize eseguendo il seguente comando. Dopo aver creato uno schema, non puoi apportare modifiche allo schema. Sostituiscilo `schemaName` con il nome dello schema e `file://SchemaName.json` sostituiscilo con la posizione del tuo file JSON. L'esempio illustra il file come appartenente alla cartella corrente. Se state creando uno schema per un set di dati in un gruppo di set di dati Domain, aggiungete il `domain` parametro e impostatelo su o. `ECOMMERCE` `VIDEO_ON_DEMAND` Per ulteriori informazioni sull'API, consulta [CreateSchema](API_CreateSchema.md).

   ```
   aws personalize create-schema \
     --name SchemaName \
     --schema file://SchemaName.json
   ```

   Viene visualizzato lo schema Amazon Resource Name (ARN), come illustrato nell'esempio seguente:

   ```
   {
     "schemaArn": "arn:aws:personalize:us-west-2:acct-id:schema/SchemaName"
   }
   ```

1. Creare un gruppo di set di dati vuoto eseguendo il seguente comando. Fornisci il gruppo di set di dati Amazon Resource Name (ARN) [Creazione di un gruppo di set di dati ()AWS CLI](data-prep-ds-group.md#data-prep-creating-ds-group-cli) e lo schema ARN del passaggio precedente. I valori del tipo di set di dati possono essere`Interactions`,,`Users`, `Items` o. `Actions` `Action_Interactions` Per ulteriori informazioni sull'API, consulta [CreateDataset](API_CreateDataset.md).

   ```
   aws personalize create-dataset \
     --name Dataset Name \
     --dataset-group-arn Dataset Group ARN \
     --dataset-type Dataset Type \
     --schema-arn Schema Arn
   ```

   Viene visualizzato il set di dati ARN, come illustrato nell'esempio seguente.

   ```
   {
     "datasetArn": "arn:aws:personalize:us-west-2:acct-id:dataset/DatasetName/INTERACTIONS"
   }
   ```

1. Registra l'ARN del set di dati per un uso successivo. Dopo aver creato un set di dati, sei pronto per importare i dati di allenamento. Per informazioni, consulta [Importazione di dati di formazione nei set di dati di Amazon Personalize](import-data.md). 

## Creazione di un set di dati e di uno schema ()AWS SDKs
<a name="data-prep-creating-ds-sdk"></a>

Per creare un set di dati e uno schema utilizzando il AWS SDKs, devi prima definire uno schema in [formato Avro](https://docs.oracle.com/database/nosql-12.1.3.0/GettingStartedGuide/avroschemas.html) e aggiungerlo ad Amazon Personalize utilizzando l'operazione. [CreateSchema](API_CreateSchema.md) Dopo aver creato uno schema, non puoi apportare modifiche allo schema. Quindi crea un set di dati utilizzando l'[CreateDataset](API_CreateDataset.md)operazione.

**Per creare uno schema e un set di dati**

1. Se non l'hai già fatto, segui le istruzioni [Creazione di file JSON di schema per schemi Amazon Personalize](how-it-works-dataset-schema.md) per creare un file JSON di schema che delinei i tuoi dati.

1. Crea uno schema in Amazon Personalize con il codice seguente. Specificate il nome dello schema e il percorso del file JSON dello schema. Se state creando uno schema per un set di dati in un gruppo di set di dati di dominio, aggiungete il `domain` parametro e impostatelo su o. `ECOMMERCE` `VIDEO_ON_DEMAND` Per ulteriori informazioni sull'API, consulta [CreateSchema](API_CreateSchema.md).

------
#### [ SDK for Python (Boto3) ]

   ```
   import boto3
   
   personalize = boto3.client('personalize')
   
   with open('schemaFile.json') as f:
       createSchemaResponse = personalize.create_schema(
           name = 'schema name',
           schema = f.read()
       )
   
   schema_arn = createSchemaResponse['schemaArn']
   
   print('Schema ARN:' + schema_arn )
   ```

------
#### [ SDK for Java 2.x ]

   ```
   public static String createSchema(PersonalizeClient personalizeClient, String schemaName, String filePath) {
       
       String schema = null;
       
       try {
           schema = new String(Files.readAllBytes(Paths.get(filePath)));
       } catch (IOException e) {
           System.out.println(e.getMessage());
       }
       
       try {
           CreateSchemaRequest createSchemaRequest = CreateSchemaRequest.builder()
                   .name(schemaName)
                   .schema(schema)
                   .build();
   
           String schemaArn = personalizeClient.createSchema(createSchemaRequest).schemaArn();    
           System.out.println("Schema arn: " + schemaArn);
   
           return schemaArn;
   
       } catch(PersonalizeException e) {
           System.err.println(e.awsErrorDetails().errorMessage());
           System.exit(1);
       }
       return "";
   }
   ```

------
#### [ SDK for JavaScript v3 ]

   ```
   // Get service clients module and commands using ES6 syntax.
   import { CreateSchemaCommand } from "@aws-sdk/client-personalize";
   import { personalizeClient } from "./libs/personalizeClients.js";
   
   // Or, create the client here.
   // const personalizeClient = new PersonalizeClient({ region: "REGION"});
   
   import fs from "node:fs";
   
   const schemaFilePath = "SCHEMA_PATH";
   let mySchema = "";
   
   try {
     mySchema = fs.readFileSync(schemaFilePath).toString();
   } catch (err) {
     mySchema = "TEST"; // For unit tests.
   }
   // Set the schema parameters.
   export const createSchemaParam = {
     name: "NAME" /* required */,
     schema: mySchema /* required */,
   };
   
   export const run = async () => {
     try {
       const response = await personalizeClient.send(
         new CreateSchemaCommand(createSchemaParam),
       );
       console.log("Success", response);
       return response; // For unit tests.
     } catch (err) {
       console.log("Error", err);
     }
   };
   run();
   ```

------

   Amazon Personalize restituisce l'ARN del nuovo schema. Registralo perché ti servirà nel passaggio successivo.

1. Crea un set di dati utilizzando l'[CreateDataset](API_CreateDataset.md)operazione. Il codice seguente mostra come creare un set di dati. Specificate l'Amazon Resource Name (ARN) del gruppo di set di dati, lo schema ARN del passaggio precedente e specificate il tipo di set di dati. I valori del tipo di set di dati possono essere`Interactions`,,, o`Users`. `Items` `Actions` `Action_Interactions` Per informazioni sui diversi tipi di set di dati, vedere. [Preparazione dei dati di formazione per Amazon Personalize](preparing-training-data.md) 

------
#### [ SDK for Python (Boto3) ]

   ```
   import boto3
   
   personalize = boto3.client('personalize')
   
   response = personalize.create_dataset(
       name = 'dataset_name',
       schemaArn = 'schema_arn',
       datasetGroupArn = 'dataset_group_arn',
       datasetType = 'dataset_type'
   )
   
   print ('Dataset Arn: ' + response['datasetArn'])
   ```

------
#### [ SDK for Java 2.x ]

   ```
   public static String createDataset(PersonalizeClient personalizeClient, 
                                       String datasetName, 
                                       String datasetGroupArn, 
                                       String datasetType, 
                                       String schemaArn) {
       try {
           CreateDatasetRequest request = CreateDatasetRequest.builder()
                   .name(datasetName)
                   .datasetGroupArn(datasetGroupArn)
                   .datasetType(datasetType)
                   .schemaArn(schemaArn).build();
       
           String datasetArn = personalizeClient.createDataset(request).datasetArn();
           System.out.println("Dataset " + datasetName + " created. Dataset ARN: " + datasetArn);
           
           return datasetArn;
           
       } catch(PersonalizeException e) {
           System.err.println(e.awsErrorDetails().errorMessage());
           System.exit(1);
       }
       return "";
   }
   ```

------
#### [ SDK for JavaScript v3 ]

   ```
   // Get service clients module and commands using ES6 syntax.
   import { CreateDatasetCommand } from "@aws-sdk/client-personalize";
   import { personalizeClient } from "./libs/personalizeClients.js";
   
   // Or, create the client here.
   // const personalizeClient = new PersonalizeClient({ region: "REGION"});
   
   // Set the dataset's parameters.
   export const createDatasetParam = {
     datasetGroupArn: "DATASET_GROUP_ARN" /* required */,
     datasetType: "DATASET_TYPE" /* required */,
     name: "NAME" /* required */,
     schemaArn: "SCHEMA_ARN" /* required */,
   };
   
   export const run = async () => {
     try {
       const response = await personalizeClient.send(
         new CreateDatasetCommand(createDatasetParam),
       );
       console.log("Success", response);
       return response; // For unit tests.
     } catch (err) {
       console.log("Error", err);
     }
   };
   run();
   ```

------

   Dopo aver creato un set di dati, sei pronto per importare i dati di allenamento. Per informazioni, consulta [Importazione di dati di formazione nei set di dati di Amazon Personalize](import-data.md).