Cloud Concepts

Learn the Oracle NoSQL Database Cloud Service concepts.

  • Table: A Table is a collection of rows where each row holds a data record from your application.

    Each table row consists of key and data fields which are defined when a table is created. In addition, a table has a specified storage, can support a defined maximum read and write throughput, and has a maximum size. The storage capacity is specified at table creation time and can be changed later.

    • Data Types: A table is created using DDL (Data Definition Language) which defines the data types and primary keys used for the table.

      Oracle NoSQL Database Cloud Service supports several data types, including several numeric types, string, binary, timestamp, maps, arrays, records, and a special JSON data type which can hold any valid JSON data. Applications can use unstructured tables where a row uses the JSON data type to store the data, or use structured tables where all row types are defined and enforced. See Supported Data Types to view the list of data types supported in Oracle NoSQL Database Cloud Service.

      Unstructured tables are flexible. But typed data is safer from an enforcement and storage efficiency point of view. Table schema can be modified , but the table structure is less flexible to change.

    • Indexes: Applications can create an index on any data field which has a data type that permits indexing, including JSON data fields. JSON indexes are created using a path expression into the JSON data.

    • Capacity: Applications specify the maximum read and write units and usable storage per table.

      A write unit is throughput of up to 1 kilobyte (KB) of data per second used for a write operation. A read unit is throughput of up to 1 KB of data per second used for an eventually consistent read operation. See Estimating Capacity to learn how to estimate capacity for your application workload.

  • Distribution and Sharding: Although not visible to the user, Oracle NoSQL Database Cloud Service tables are sharded and replicated for availability and performance. Therefore, you should consider this during schema design.
    • Primary and Shard keys: An important consideration for a table is the designation of the primary key, and the shard key. When you create a table in Oracle NoSQL Database Cloud Service, the data in the table is automatically sharded based on a portion of the table primary key, called the shard key. See Primary Keys and Shard Keys for considerations on how to designate the primary and shard keys.

    • Read Consistency: Read consistency specifies different levels of flexibility in terms of which copy of the data is used to fulfill a read operation. Oracle NoSQL Database Cloud Service provides two levels of consistency, EVENTUAL, and ABSOLUTE.

      Applications can specify ABSOLUTE consistency, which guarantees that all read operations return the most recently written value for a designated key. Or, applications capable of tolerating inconsistent data can specify EVENTUAL consistency, allowing the database to return a value more quickly even if it is not up-to-date.

      ABSOLUTE consistency results in a higher cost, consuming twice the number of read units for the same data relative to EVENTUAL consistency, and should only be used when required. Consistency can be set for a NoSQL handle, or as an optional argument for all read operations.

  • Identity Access and Management: Oracle NoSQL Database Cloud Service uses the Oracle Cloud Infrastructure Identity and Access Management to provide secure access to Oracle Cloud. Oracle Cloud Infrastructure Identity and Access Management enables you to create user accounts and give users permission to inspect, read, use, or manage Oracle NoSQL Database Cloud Service tables. See Overview of Oracle Cloud Infrastructure Identity and Access Management.