In the realm of database technology, Oracle Database 23c marks a transformative era by ushering in a wave of advancements. Among these advancements, a standout focus lies on augmenting the capabilities of the Oracle Globally Distributed Database. As we approach this release, our attention centers on the integration of pioneering features tailored for distributed data environments. This blog serves as a preview, shedding light on the exciting enhancements Oracle Database 23c brings to the Oracle Globally Distributed Database. These new features are poised not only to address challenges but also to reshape the landscape of distributed database operations, bringing forth heightened performance and unparalleled efficiency. As we delve into the specifics of these transformative features, Oracle Database 23c emerges as a pivotal milestone, empowering businesses with tools to harness the full potential of distributed data scenarios. This blog sets the stage for exploring these enhancements, offering insights into how Oracle Database 23c elevates the capabilities of the Oracle Globally Distributed Database, propelling it into a new era of excellence.
One of the notable features introduced in Database version 23c is Raft replication (Consensus based replication protocol), offering automatic configuration of replication across all shards. Raft replication is integrated and transparent to applications. Raft replication automatically reconfigures replication in case of shard host failures or when shards are added or removed from the sharded database. The system declaratively configures the replication factor to help maintain a specified number of replicas available at all times. In the event of a node failure, failover is swift, and all nodes remain active. Crucially, this feature encompasses an automatic sub-second failover mechanism, reinforcing data integrity and operational continuity. This capability suits organizations requiring a highly available and scalable database system.
Raft Replication brings streamlined management and heightened availability to distributed database environments. This proves pivotal in scenarios where high availability and data integrity are paramount. With rapid fail-over and consistent data across nodes, Raft Replication empowers organizations to deliver optimal user experiences and meet stringent SLAs. This benefit is especially crucial in critical applications where uptime and data consistency directly influence business success.
Directory-based sharding introduces a versatile user-defined approach, where the location of data records associated with a sharding key is specified dynamically at the time of insert based on user preferences. The process involves storing key location information within a directory, housing an extensive collection of key values, often numbering in the hundreds of thousands. This technique not only facilitates the dynamic movement of individual key values between locations but also allows for efficient bulk movements. The capability to adaptively shift key values offers a high degree of customization, enhancing data management, scalability, and load balancing across databases or clusters.
Directory-based sharding is useful when you need to group certain key values together into the same location or chunk for affinity purposes, and when needed this group can be moved together in an efficient manner
An example is a social network application, where grouping together customers who often exchange messages on the same shard minimizes the cross-shard traffic. The grouping must be preserved during re-sharding when data is moved between shards. On the other hand, if a member of a group starts communicating more with members of another group, their data must be moved to the appropriate group with minimal impact on the application.
Automatic data move on sharding key update is a potent attribute within Oracle Globally Distributed Database that streamlines data management within sharded tables. Sometimes a sharding key value needs updating. The previous solution was to delete the data associated with the old key value and re-insert it with a new key value. The goal of this enhancement is to allow row movement both within a shard and between shards.
When the sharding key value on a particular row of a sharded table is updated, Now moving the data to a new location is handled by Oracle Globally Distributed Database, whether it is in a different partition on the same shard or on a different shard.
This feature provides you with the flexibility to update the sharding key without worrying about the destination of the records, because this feature allows Oracle Globally Distributed Database to take care of the row movement regardless of the row destination, which could be on a different shard.
In a global e-commerce platform with sharded tables, automatic data movement on sharding key updates helps ensure seamless transitions. For instance, when customers relocate, their order history effortlessly shifts to the new region's shard, eliminating manual intervention. This dynamic reallocation empowers businesses with efficient sharded table management, maintaining data integrity and uninterrupted user services amidst changes.
Fine-grained refresh rate control for duplicated tables is a powerful feature that enables refresh rate control for individual duplicated tables. This feature allows configuring varying refresh intervals during table creation or via the ALTER TABLE statement. By tailoring refresh rates to data change frequency, resource utilization optimization is achieved. This capability enhances system performance and efficiency by customizing refresh rates per duplicated table.
In complex data environments, where data change rates vary across tables, fine-grained refresh rate control proves indispensable. Imagine a sales database with high-frequency transaction tables and reference tables that change less often. With this feature, high-transaction tables can be set to refresh more frequently, allowing real-time insights. Simultaneously, reference tables refresh less often, conserving resources. This customization maximizes efficiency, streamlining resource allocation, and bolstering system performance.
The introduction of synchronous duplicated tables offers a robust mechanism for synchronizing duplicated tables across all shards. This feature introduces a new kind of duplicated table that is synchronized on the shards ‘on-commit’ on the shard catalog. The synchronization occurs when active transactions executing Data Manipulation Language (DML) operations on the duplicated tables in the shard catalog are committed. This feature provides impeccable data consistency and real-time synchronization across all shards, underscoring a heightened level of data integrity.
In data-intensive environments, like financial systems, the synchronous duplicated table feature plays a crucial role. As transactions span multiple shards, this feature provides instant synchronization of duplicated table data across all shards upon transaction commitment. Financial data remains uniformly accurate, reducing disparities and delivering real-time insights. Particularly vital in precision-dependent sectors, this feature enhances data integrity and reliability in distributed systems.
Coordinated backup and restore functionality in Oracle Globally Distributed Database has been extended to include the following:
The benefits of this functionality are:
This feature enhances diagnosability and automation in backup and restore jobs while securing data with encryption and supporting additional backup destinations.
Imagine a scenario where a sharded e-commerce platform faces a catastrophic data loss event. By utilizing the enhanced coordinated backup and restore functionality, the system gains superior error handling, automated restoration processes, and broader backup destination options such as Amazon S3 and Oracle Object Storage. Additionally, encrypted backup sets enhance data security. This feature helps ensure swift diagnosis of backup issues, safeguarded data integrity through encryption, and efficient data restoration for minimal downtime and maintaining operational resilience.
The Oracle Globally Distributed Database query coordinator can run cross-shard updates and inserts in parallel on multiple shards.
This feature improves cross-shard DML performance by running updates and inserts in parallel rather than serially.
In an online retail business with a globally distributed database, Oracle's Parallel Cross-Shard DML Support plays a crucial role in managing inventory. When restocking products or updating prices across multiple geographical regions, the feature allows simultaneous updates and inserts into different shard locations. This means that inventory data remains synchronized, prices are adjusted in real-time, and customer orders are processed efficiently, providing a seamless shopping experience for customers while optimizing inventory management for the retailer.
SQL*Loader enables direct data loading into the database shards for high speed data ingest. SQL*Loader can load data faster and easier into Oracle Database with automatic parallelism and more efficient data storage.
With this release, SQL*Loader client can automatically start a parallel direct path load for data without dividing the data into separate files and starting multiple SQL*Loader clients. Instead of preparing your tables manually for parallel loads and setting the PARALLEL parameter, you can perform the same task automatically by running SQL*Loader with just one command, setting the degree of parallelism using the DEGREE_OF_PARALLELISM parameter, and setting DIRECT=TRUE.
In the context of a financial services organization, managing vast volumes of market data from various sources is paramount for timely and accurate analytics. With the Automatic Parallel Direct Path Load feature using SQL*Loader, the organization can seamlessly ingest massive datasets into its Oracle Globally Distributed Database. Instead of labor-intensive manual preparation, SQL*Loader simplifies the process and an organization achieves efficient, high-speed data ingestion for real-time financial analysis, enabling informed decision-making and competitive advantage.
To conclude, Oracle Database 23c brings groundbreaking advancements to the world of database technology. These innovations, with a keen focus on optimizing the Oracle Globally Distributed Database, are set to revolutionize the world of distributed database operations.
From the dynamic capabilities of Raft Replication to the agility of Directory-Based Sharding, these features redefine how businesses manage data across regions. Automatic Data Move on Sharding Key Update provides seamless transitions in evolving scenarios, while Fine-Grained Refresh Rate Control optimizes resource utilization. The Synchronous Duplicated Tables' near real-time data consistency enhances reliability. Coordinated Backup and Restore Enhancements reinforce data protection, while Parallel Cross-Shard DML Support revolutionizes cross-shard data management by allowing parallel updates and inserts, boosting efficiency. Additionally, Automatic Parallel Direct Path Load Using SQL*Loader simplifies high-volume data ingestion, benefitting financial analytics and decision-making processes for organizations dealing with vast market data.
Oracle Database 23c doesn't just mark an upgrade; it signifies a new era where these features empower businesses to embrace the potential of distributed data scenarios, all underpinned by the reliability of the Oracle Globally Distributed Database.
Deeksha Sehgal is a Senior Product Manager in Oracle with over 11 years of experience in IT Infrastructure services across product management, GTM strategy, technical design and integration, service delivery, database consulting, and hybrid/multi-cloud solutions. In her current role, she develops and effectively positions Oracle Sharding services as a standout offering among other products in the market. Her proficiency in market research and product analysis plays a key role in propelling the product's success.