Concetti del cloud

Verranno descritti i concetti relativi a Oracle NoSQL Database Cloud Service.

  • Tabella: una tabella è una raccolta di righe in cui ogni riga contiene un record di dati dell'applicazione.

    Ogni riga della tabella è costituita da campi chiave e dati definiti al momento della creazione di una tabella. Inoltre, una tabella dispone di uno storage specificato, può supportare un throughput massimo di lettura e scrittura definito e ha una dimensione massima. La capacità di storage viene specificata al momento della creazione della tabella e può essere modificata in un secondo momento.

    • Tipi di dati di livello elevato: Oracle NoSQL Database Cloud Service supporta tutti e tre i tipi di Big Data. È possibile creare tabelle NoSQL per memorizzare dati strutturati, non strutturati o semistrutturati.

      • Strutturato: questo tipo di dati può essere organizzato e memorizzato in tabelle con una struttura o uno schema predefiniti. Ad esempio, i dati memorizzati nelle normali tabelle di database relazionali rientrano in questa categoria. Aderiscono a uno schema fisso e sono semplici da gestire e analizzare. I dati generati dalle transazioni con carta di credito e dalle transazioni di e-commerce sono alcuni esempi di dati strutturati.

      • Semi-Strutturati: i dati che non possono essere inseriti in un database relazionale ma che possono essere organizzati in righe e colonne dopo un determinato livello di elaborazione vengono definiti dati semistrutturati. Oracle NoSQL Database Cloud Service è in grado di memorizzare ed elaborare dati semistrutturati memorizzando coppie chiave-valore nelle tabelle NoSQL. I dati XML sono un esempio di dati semistrutturati.

      • Non strutturato: i dati che non possono essere organizzati o memorizzati in tabelle con uno schema o una struttura fissi sono denominati dati non strutturati. Video, immagini e media sono alcuni esempi di dati non strutturati. Oracle NoSQL Database Cloud Service consente di definire tabelle con righe di tipo dati JSON per memorizzare i dati non strutturati.

    • Tipi di dati: viene creata una tabella utilizzando DDL (Data Definition Language) che definisce i tipi di dati e le chiavi primarie utilizzate per la tabella.

      Oracle NoSQL Database Cloud Service supporta diversi tipi di dati, tra cui diversi tipi numerici, stringhe, binari, indicatori orari, mappe, array, record e un tipo di dati JSON speciale che può contenere qualsiasi dato JSON valido. Le applicazioni possono utilizzare tabelle non strutturate in cui una riga utilizza il tipo di dati JSON per memorizzare i dati oppure utilizzare tabelle strutturate in cui tutti i tipi di riga sono definiti e applicati. Per visualizzare la lista dei tipi di dati supportati in Oracle NoSQL Database Cloud Service, vedere Tipi di dati supportati.

      I tavoli non strutturati sono flessibili. Ma i dati digitati sono più sicuri dal punto di vista dell'applicazione e dell'efficienza dello storage. È possibile modificare lo schema di tabella, ma la struttura di tabella è meno flessibile da modificare.

    • Indici: le applicazioni possono creare un indice su qualsiasi campo dati con un tipo di dati che consente l'indicizzazione, inclusi i campi dati JSON. Gli indici JSON vengono creati utilizzando un'espressione di percorso nei dati JSON.

    • Capacità: quando si crea una tabella, è possibile scegliere tra Capacità con provisioning e Capacità su richiesta.
      • Scegliendo Capacità con provisioning eseguito, è inoltre possibile specificare le risorse di throughput e storage disponibili per la tabella. Le operazioni di lettura e scrittura nella tabella sono limitate dalla capacità di throughput di lettura e scrittura definita dall'utente. La quantità di spazio che la tabella può utilizzare è limitata dalla capacità di storage.
      • Scegliendo Capacità su richiesta, le operazioni di lettura e scrittura nella tabella vengono gestite automaticamente da Oracle. La quantità di spazio che la tabella può utilizzare è limitata dalla capacità di storage.

      Consulta la sezione relativa alla stima della capacità per scoprire come stimare la capacità per il carico di lavoro dell'applicazione.

  • Distribuzione e partizionamento orizzontale: sebbene non siano visibili all'utente, le tabelle di Oracle NoSQL Database Cloud Service vengono partizionate e replicate per garantire disponibilità e prestazioni. Pertanto, è necessario considerare questo aspetto durante la progettazione dello schema.
    • Chiavi principali e partizioni: una considerazione importante per una tabella è la designazione della chiave primaria e della chiave di partizione. Quando si crea una tabella in Oracle NoSQL Database Cloud Service, i dati nella tabella vengono partizionati automaticamente in base a una parte della chiave primaria della tabella, denominata chiave partizione. Per considerazioni su come designare le chiavi primarie e le chiavi delle partizioni, vedere Chiavi principali e chiavi delle partizioni.

    • Consistenza lettura: la coerenza lettura specifica diversi livelli di flessibilità in termini di quale copia dei dati viene utilizzata per eseguire un'operazione di lettura. Oracle NoSQL Database Cloud Service offre due livelli di coerenza, EVENTUAL e ABSOLUTE.

      Le applicazioni possono specificare la coerenza ABSOLUTE, che garantisce che tutte le operazioni di lettura restituiscano il valore scritto più di recente per una chiave designata. In alternativa, le applicazioni in grado di tollerare dati incoerenti possono specificare la coerenza EVENTUAL, consentendo al database di restituire un valore più rapidamente anche se non è aggiornato.

      La coerenza ABSOLUTE comporta un costo più elevato, consumando il doppio del numero di unità di lettura per gli stessi dati rispetto alla coerenza EVENTUAL e deve essere utilizzata solo quando necessario. La coerenza può essere impostata per un handle NoSQL o come argomento facoltativo per tutte le operazioni di lettura.

  • Accesso e gestione delle identità: Oracle NoSQL Database Cloud Service utilizza Oracle Cloud Infrastructure Identity and Access Management per fornire un accesso sicuro a Oracle Cloud. Oracle Cloud Infrastructure Identity and Access Management consente di creare account utente e di concedere agli utenti l'autorizzazione per ispezionare, leggere, utilizzare o gestire le tabelle di Oracle NoSQL Database Cloud Service. Consulta la panoramica di Oracle Cloud Infrastructure Identity and Access Management nella documentazione di Oracle Cloud Infrastructure.