Uso della console per creare le tabelle in Oracle NoSQL Database Cloud Service

Scopri come creare e gestire tabelle e indici di Oracle NoSQL Database Cloud Service dalla console.

Questo articolo contiene i seguenti argomenti:

Creazione di un compartimento

Quando ti iscrivi a Oracle Cloud Infrastructure, Oracle crea la tua tenancy con un compartimento radice che contiene tutte le tue risorse cloud. Successivamente, creerai compartimenti aggiuntivi all'interno della tenancy (compartimento radice) e i criteri corrispondenti per controllare l'accesso alle risorse in ciascun compartimento. Prima di creare una tabella Oracle NoSQL Database Cloud Service, Oracle consiglia di impostare il compartimento a cui appartiene la tabella.

Puoi creare compartimenti in Oracle Cloud Infrastructure Identity and Access Management (IAM). Vedere Impostazione della tenancy e Gestione dei compartimenti nella documentazione di Oracle Cloud Infrastructure.

Creazione delle tabelle Singleton

È possibile creare la nuova tabella Oracle NoSQL Database Cloud Service dalla console NoSQL.

La console NoSQL consente di creare le tabelle di Oracle NoSQL Database Cloud Service in due modalità:
  1. Modalità di input semplice: è possibile utilizzare questa modalità per creare la tabella NoSQL Database Cloud Service in modo dichiarativo, ovvero senza scrivere un'istruzione DDL.
  2. Modalità di input DDL avanzata: è possibile utilizzare questa modalità per creare la tabella NoSQL Database Cloud Service utilizzando un'istruzione DDL.

Creazione della tabella Singleton: modalità di input semplice

Informazioni su come creare una tabella dalla console NoSQL utilizzando la modalità di creazione della tabella Input semplice.

Per creare una tabella:
  1. Accedere alla console NoSQL dalla console dell'infrastruttura. Vedere Accesso al servizio dalla console dell'infrastruttura.
  2. Fare clic su Crea tabella.
  3. Nella finestra di dialogo Crea tabella, selezionare Input semplice per Modalità creazione tabella.
  4. In Capacità riservata è possibile abilitare la configurazione Sempre gratis o configurare la modalità Capacità. La configurazione Sempre gratis è attualmente disponibile solo nell'area Phoenix.
    • Configurazione sempre gratuita (disponibile solo nell'area Phoenix):

      Abilitare il pulsante di attivazione/disattivazione per creare una tabella NoSQL Sempre gratis. Se si disabilita il pulsante di attivazione/disattivazione, viene creata una tabella NoSQL normale. È possibile creare fino a tre tabelle NoSQL Sempre gratis nella tenancy. Se nella tenancy sono presenti tre tabelle NoSQL Sempre gratis, il pulsante di attivazione/disattivazione per creare una tabella SQL Sempre gratis viene disabilitato.

      Se si abilita il pulsante di attivazione/disattivazione per creare una tabella NoSQL Sempre gratis, ai campi Capacità di lettura, Capacità di scrittura e Memoria su disco vengono assegnati i valori predefiniti. La modalità Capacità diventa Capacità con provisioning eseguito. Questi valori non possono essere modificati.


      Se si desidera creare una tabella normale, disabilitare il pulsante di attivazione/disattivazione. Sarà possibile immettere i valori di capacità appropriati per la tabella.
      • Capacità di lettura (ReadUnits): immettere il numero di unità di lettura. Per ulteriori informazioni sulle unità di lettura, vedere Stima della capacità.
      • Capacità di scrittura (WriteUnits): immettere il numero di unità di scrittura. Vedere Stima della capacità per informazioni sulle unità di scrittura.
      • Storage su disco (GB): specificare lo spazio su disco in gigabyte (GB) da utilizzare per la tabella. Per ulteriori informazioni sulla capacità di storage, vedere Stima della capacità.


    • Modalità capacità

      È possibile specificare l'opzione per la modalità Capacità come Capacità con provisioning eseguito o Capacità su richiesta. Le modalità Capacità con provisioning eseguito e Capacità su richiesta si escludono a vicenda. Se si abilita Capacità su richiesta per una tabella, non è necessario specificare la capacità di lettura/scrittura della tabella. Viene addebitato il costo per l'uso effettivo delle unità di lettura e scrittura, non per l'uso di cui è stato eseguito il provisioning.

      L'abilitazione della capacità su richiesta per una tabella è una buona opzione se si verifica una delle condizioni riportate di seguito.
      1. È possibile creare nuove tabelle con carichi di lavoro sconosciuti.
      2. Hai un traffico delle applicazioni imprevedibile.
      3. Preferisci la facilità di pagare solo per quello che usi.
      Limitazioni dell'abilitazione della capacità On Demand per una tabella:
      1. La capacità On Demand limita la capacità della tabella a 5.000 scritture e 10.000 letture.
      2. Il numero di tabelle con capacità On Demand per tenant è limitato a 3.
      3. È possibile pagare più unità per unità per le unità della tabella Capacità su richiesta rispetto alle unità della tabella di cui è stato eseguito il provisioning.


      Se si seleziona Capacità su richiesta, viene disabilitata la configurazione Sempre gratis. Le caselle di input Capacità di lettura e Capacità di scrittura diventano di sola lettura e mostrano il testo Capacità su richiesta. Le tabelle Capacità su richiesta mostrano Capacità su richiesta nelle relative colonne di capacità di lettura e scrittura. Se la modalità Capacità è Capacità su richiesta, il controllo Sempre gratis è disabilitato.


  5. Nel campo Nome immettere un nome di tabella univoco all'interno della tenancy.
    I nomi delle tabelle devono essere conformi alle convenzioni di denominazione di Oracle NoSQL Database Cloud Service. Vedere Oracle NoSQL Database Cloud Service Limits .
  6. Nella sezione Colonne chiave primaria, immettere i dettagli della chiave primaria riportati di seguito.
    • Nome colonna: immettere un nome di colonna per la chiave primaria nella tabella. Per ulteriori informazioni sui requisiti di denominazione delle colonne, vedere Limiti di Oracle NoSQL Database Cloud Service.
    • Tipo: selezionare il tipo di dati per la colonna della chiave primaria.
    • Precisione: applicabile solo per le colonne con tipo TIMESTAMP. I valori dell'indicatore orario hanno una precisione in secondi frazionari compresa tra 0 e 9. Ad esempio, una precisione pari a 0 indica che non vengono memorizzati secondi frazionari, 3 indica che l'indicatore orario memorizza millisecondi e 9 indica una precisione di nanosecondi. 0 è la precisione minima e 9 è il massimo.
    • Imposta come chiave di partizione: fare clic su questa opzione per impostare questa colonna di chiave primaria come chiave di partizione. La chiave di partizionamento orizzontale consiste nel distribuire i dati nel cluster Oracle NoSQL Database Cloud Service per aumentare l'efficienza e nel posizionare i record che condividono la chiave di partizionamento in locale per facilitare il riferimento e l'accesso. I record che condividono la chiave partizione vengono memorizzati nella stessa posizione fisica ed è possibile accedervi in modo atomico ed efficiente.
    • + Altra colonna chiave primaria: fare clic su questo pulsante per aggiungere altre colonne durante la creazione di una chiave primaria composta (a più colonne).
    • Utilizzare le frecce su e giù per modificare la sequenza di colonne durante la creazione di una chiave primaria composta.

  7. Nella sezione Colonne, immettere i dettagli delle colonne non principali:

    • Nome colonna: immettere il nome della colonna. Assicurarsi di essere conformi ai requisiti di denominazione delle colonne descritti in Limiti di Oracle NoSQL Database Cloud Service.
    • Tipo: selezionare il tipo di dati per la colonna.
    • Precisione: applicabile solo per le colonne con tipo TIMESTAMP. I valori dell'indicatore orario hanno una precisione in secondi frazionari compresa tra 0 e 9. Ad esempio, una precisione pari a 0 indica che non vengono memorizzati secondi frazionari, 3 indica che l'indicatore orario memorizza millisecondi e 9 indica una precisione di nanosecondi. 0 è la precisione minima e 9 è il massimo.
    • Dimensione: applicabile solo per le colonne con tipo BINARY. Specificare la dimensione in byte per rendere il binario un binario fisso.
    • Valore predefinito: (facoltativo) fornire un valore predefinito per la colonna.

      Nota

      Impossibile specificare i valori predefiniti per le colonne di tipo dati binario e JSON.
    • Il valore non è nullo: fare clic su questa opzione per specificare che una colonna deve avere sempre un valore.
    • + Altra colonna: fare clic su questo pulsante per aggiungere altre colonne.
    • Fare clic sull'icona di eliminazione per eliminare una colonna.
  8. (Facoltativo) Per specificare le opzioni avanzate, fare clic su Mostra opzioni avanzate e immettere i dettagli avanzati:
    • Tabella Time To Live (giorni): (facoltativo) specificare la durata della scadenza (n. di giorni) per le righe nella tabella. Dopo il numero di giorni, le righe scadono automaticamente e non sono più disponibili. Il valore predefinito è zero, a indicare l'ora di scadenza.

      Nota

      L'aggiornamento di TTL (Table Time To Live) non modificherà il valore TTL di alcun dato esistente nella tabella. Il nuovo valore TTL verrà applicato solo alle righe aggiunte alla tabella dopo la modifica di questo valore e alle righe per le quali non è stato fornito alcun valore specifico di riga di override.
    Nella sezione Tag inserire:
    • Spazio di nomi tag: selezionare uno spazio di nomi tag dalla lista di selezione. Uno spazio di nomi tag è come un contenitore per le tue chiavi di tag. Non fa distinzione tra maiuscole e minuscole e deve essere univoco in tutta la tenancy.
    • Chiave tag: immettere il nome da utilizzare per fare riferimento alla tag. Una chiave tag non fa distinzione tra maiuscole e minuscole e deve essere univoca all'interno di uno spazio di nomi.
    • Valore: immettere il valore da assegnare alla tag.
    • + Tag aggiuntiva: fare clic per aggiungere altre tag.

  9. Fare clic su Crea tabella.
La tabella viene creata ed elencata nella console NoSQL.
Per visualizzare la Guida per la pagina corrente, fare clic sul collegamento della Guida nella parte superiore della pagina.

Creazione della tabella Singleton: modalità di input DDL avanzata

Informazioni su come creare una tabella dalla console NoSQL utilizzando la modalità di creazione avanzata della tabella di input DDL.

Per creare una tabella:
  1. Accedere alla console NoSQL dalla console dell'infrastruttura. Vedere Accesso al servizio dalla console dell'infrastruttura.
  2. Fare clic su Crea tabella.
  3. Nella finestra Crea tabella, selezionare Input DDL avanzato per Modalità creazione tabella.
  4. In Capacità riservata è possibile abilitare la configurazione Sempre libera o configurare la modalità Capacità.
    • Configurazione sempre gratuita (disponibile solo nell'area Phoenix):

      Abilitare il pulsante di attivazione/disattivazione per creare una tabella NoSQL Sempre gratis. Se si disabilita il pulsante di attivazione/disattivazione, viene creata una tabella NoSQL normale. È possibile creare fino a tre tabelle NoSQL Sempre gratis nella tenancy. Se nella tenancy sono presenti tre tabelle NoSQL Sempre gratis, il pulsante di attivazione/disattivazione per creare una tabella SQL Sempre gratis viene disabilitato.

      Se si abilita il pulsante di attivazione/disattivazione per creare una tabella NoSQL Sempre gratis, ai campi Capacità di lettura, Capacità di scrittura e Memoria su disco vengono assegnati i valori predefiniti. La modalità Capacità diventa Capacità con provisioning eseguito. Questi valori non possono essere modificati.


      Se si desidera creare una tabella normale, disabilitare il pulsante di attivazione/disattivazione. Sarà possibile immettere i valori di capacità appropriati per la tabella.
      • Capacità di lettura (ReadUnits): immettere il numero di unità di lettura. Per ulteriori informazioni sulle unità di lettura, vedere Stima della capacità.
      • Capacità di scrittura (WriteUnits): immettere il numero di unità di scrittura. Vedere Stima della capacità per informazioni sulle unità di scrittura.
      • Storage su disco (GB): specificare lo spazio su disco in gigabyte (GB) da utilizzare per la tabella. Per ulteriori informazioni sulla capacità di storage, vedere Stima della capacità.


    • Modalità capacità

      È possibile specificare l'opzione per la modalità Capacità come Capacità con provisioning eseguito o Capacità su richiesta. Le modalità Capacità con provisioning eseguito e Capacità su richiesta si escludono a vicenda. Se si abilita Capacità su richiesta per una tabella, non è necessario specificare la capacità di lettura/scrittura della tabella. Viene addebitato il costo per l'uso effettivo delle unità di lettura e scrittura, non per l'uso di cui è stato eseguito il provisioning.

      L'abilitazione della capacità su richiesta per una tabella è una buona opzione se si verifica una delle condizioni riportate di seguito.
      1. È possibile creare nuove tabelle con carichi di lavoro sconosciuti.
      2. Hai un traffico delle applicazioni imprevedibile.
      3. Preferisci la facilità di pagare solo per quello che usi.
      Limitazioni dell'abilitazione della capacità On Demand per una tabella:
      1. La capacità On Demand limita la capacità della tabella a 5.000 scritture e 10.000 letture.
      2. Il numero di tabelle con capacità On Demand per tenant è limitato a 3.
      3. È possibile pagare più unità per unità per le unità della tabella Capacità su richiesta rispetto alle unità della tabella di cui è stato eseguito il provisioning.


      Se si seleziona Capacità su richiesta, viene disabilitata la configurazione Sempre gratis. Le caselle di input Capacità di lettura e Capacità di scrittura diventano di sola lettura e mostrano il testo Capacità su richiesta. Le tabelle Capacità su richiesta mostrano Capacità su richiesta nelle relative colonne di capacità di lettura e scrittura. Se la modalità Capacità è Capacità su richiesta, il controllo Sempre gratis è disabilitato.


  5. Nella sezione input DDL, immettere l'istruzione DDL di creazione tabella per Query. È possibile che venga visualizzato un errore che indica che l'istruzione è incompleta o errata. Vedere Debug degli errori delle istruzioni SQL nella console OCI per informazioni sui possibili errori nella console OCI e su come correggerli. Per esempi sull'istruzione create table, vedere Developers Guide.
  6. (Facoltativo) Per specificare le opzioni avanzate, fare clic su Mostra opzioni avanzate e immettere i dettagli avanzati:
    • Spazio di nomi tag: selezionare uno spazio di nomi tag dalla lista di selezione. Uno spazio di nomi tag è come un contenitore per le tue chiavi di tag. Non fa distinzione tra maiuscole e minuscole e deve essere univoco in tutta la tenancy.
    • Chiave tag: immettere il nome da utilizzare per fare riferimento alla tag. Una chiave tag non fa distinzione tra maiuscole e minuscole e deve essere univoca all'interno di uno spazio di nomi.
    • Valore: immettere il valore da assegnare alla tag.
    • + Tag aggiuntiva: fare clic per aggiungere altre tag.

  7. Fare clic su Crea tabella.
La tabella viene creata ed elencata nella console NoSQL.
Per visualizzare la Guida per la pagina corrente, fare clic sul collegamento della Guida nella parte superiore della pagina.

Creazione di una tabella figlio

Oracle NoSQL Database consente di creare tabelle in una struttura gerarchica (come tabelle padre-figlio).

Gerarchie di tabelle

È possibile utilizzare l'istruzione Crea tabella per creare una tabella come tabella figlio di un'altra tabella, che diventa quindi l'elemento padre della nuova tabella. Questa operazione viene eseguita utilizzando un nome composto (name_path) per la tabella figlio. Un nome composto è costituito da un numero N (N > 1) di identificatori separati da punti. L'ultimo identificativo è il nome locale della tabella figlio e i primi identificativi N-1 sono il nome del padre.
   
           A   
         /   \ 
      A.B    A.G  
       /  
    A.B.C   
     /  
   A.B.C.D

La tabella padre più in alto è A. La tabella figlio B ottiene il nome composto A.B. Il livello successivo della tabella figlio C ottiene il nome composto A.B.C e così via.

Proprietà delle tabelle figlio:

  • Non è possibile specificare i limiti di capacità di lettura, capacità di scrittura o memorizzazione su disco durante la creazione di una tabella figlio. La tabella figlio condivide i valori corrispondenti della tabella padre.
  • Una tabella figlio viene conteggiata in base al numero totale di tabelle di una tenancy.
  • Una tabella padre e le relative tabelle figlio si trovano sempre nello stesso compartimento.
  • Le informazioni sulle metriche vengono raccolte e aggregate a livello padre. Nessuna metrica visibile a livello di tabelle figlio.
  • Una tabella figlio ha i propri tag indipendenti dalla tabella padre.
  • Una tabella figlio eredita anche il modello di determinazione prezzi capacità della tabella padre. Ad esempio, se la tabella padre è configurata con capacità su richiesta, la tabella figlio può anche essere configurata con lo stesso modello di determinazione prezzi capacità.

Transazioni nelle tabelle padre-figlio

Una tabella padre e una tabella figlio condividono la stessa chiave partizione. Utilizzando le tabelle figlio, è possibile ottenere transazioni ACID su più oggetti utilizzando i due semplici passi riportati di seguito.
  • Dichiarare una tabella come figlio di un'altra tabella.
  • Utilizzare l'API writeMutliple per aggiungere operazioni per le tabelle padre e figlio.
Se le tabelle figlio non sono presenti, ottenere transazioni ACID su più oggetti è una procedura noiosa. Senza tabelle figlio, eseguire le operazioni riportate di seguito.
  • Trovare i valori delle chiavi di partizione per tutti gli oggetti che si desidera includere in una transazione.
  • Assicurarsi che le chiavi partizione per tutti gli oggetti siano uguali.
  • Utilizzare l'API writeMutliple per aggiungere ogni oggetto a una raccolta.

Utilizza le tabelle figlio per ottenere facilmente transazioni ACID su più oggetti.

Autorizzazione in una tabella figlio:

Se non si è proprietari di una tabella e si desidera leggere, eliminare o inserire in questa tabella, devono essere soddisfatte due condizioni:
  • Si dispone del privilegio specifico (READ/INSERT/DELETE) per la tabella figlio.
  • Si dispone degli stessi privilegi, o almeno del privilegio di lettura, per la tabella padre della tabella figlio specifica nella gerarchia.

Per ulteriori dettagli, vedere Criteri IAM per l'autorizzazione.

Ad esempio, se si desidera inserire dati nella tabella figlio myTable.child1, di cui non si è proprietari, è necessario disporre del privilegio INSERT sulla tabella figlio e dei privilegi READ e/o INSERT su myTable. La concessione dei privilegi alle tabelle figlio è indipendente dalla concessione dei privilegi alla tabella padre. Ciò significa che è possibile concedere privilegi specifici alla tabella figlio senza concedere lo stesso privilegio alla relativa tabella padre. Qualsiasi query di join padre/figlio richiede i privilegi pertinenti per tutte le tabelle utilizzate nella query. Per ulteriori dettagli, vedere Utilizzo di Left Outer join con tabelle padre-figlio.

Creazione di una tabella figlio

  • Fare clic sulla tabella padre per visualizzarne i dettagli. Viene visualizzato l'elenco delle tabelle figlio già presenti per il padre.
  • Nel menu di navigazione a sinistra, in Risorse, fare clic su Tabelle figlio.

  • Per creare la tabella figlio è possibile scegliere il metodo Input semplice o il metodo Input DDL avanzato.
  • Specificare un nome per la tabella figlio. Il nome della tabella padre viene preceduto automaticamente da un punto. Specificare la lista di colonne e colonne di chiavi primarie.



  • La casella di controllo Imposta come chiave partizione non viene visualizzata durante la creazione di una tabella figlio, in quanto le tabelle figlio ereditano la chiave partizione dalla tabella padre di livello superiore.

Nota

I campi Capacità di lettura, Capacità di scrittura e Storage su disco non sono specificati perché una tabella figlio eredita questi limiti dalla tabella di livello superiore. I limiti impostati per la tabella di livello superiore vengono applicati automaticamente alla tabella figlio.

Visualizzazione dei dettagli di una tabella figlio

È possibile visualizzare i dettagli di una tabella figlio dopo la creazione.