Product
Ocient Favicon
The Ocient Hyperscale Data Warehouse

To deliver next-generation data analytics, Ocient completely reimagined data warehouse design to deliver real-time analysis of complex, hyperscale datasets.

Learn More
Pricing Icon
Pricing

Ocient is uniquely designed for maximum performance and flexibility with always-on analytics, maximizing your hardware, cloud, or data warehouse as a service spend. You get predictable, lower costs (and absolutely zero headaches).

See How
Solutions
Customer Solutions and Workload Services Icon
Customer Solutions and Workload Services

Ocient offers the only solutions development approach that enables customers to try a production-ready solution tailored to their business requirements before investing capital and resources.

Explore
Management Services Icon
Management Services

Tap into the deep experience of the Ocient Management Services team to set up, manage, and monitor your Ocient solution.

Learn More
Company
Ocient Favicon
About Ocient

In 2016 our team of industry veterans began building a hyperscale data warehouse to tackle large, complex workloads.

Learn More
Ocient Sustainability Icon
Sustainability

Our goal at Ocient is to minimize the energy demands and carbon footprint from analyzing large-scale data sets that require continuous, compute-intensive processing.

Learn More
Patents & Innovations
Ocient's Breakthrough Technologies

Our patents demonstrate a commitment to advancing high-performance analytics, cutting-edge AI capabilities and scalability for enterprises tackling the most complex data challenges. By securing these innovations, we deliver trusted, future-ready solutions to our customers around the world.

Patent-Protected Innovation Portfolio

Our database system, The Ocient Hyperscale Data Warehouse®, includes patented technology, which includes the patents listed below.

Patent Category

Total Patents
153
Pending Patents
216
Scalable Storage and Compute
12493588Generating Compressed Column Slabs for Storage in a Database System
Query Execution
12499110Query Execution in a Database System Utilizing Segment Handles
Architecture
11308094Virtual Segment Parallelism in a Database System and Methods for Use Therewith
Loading & Transformation
11297123Fault-Tolerant Data Stream Processing
Architecture
11874833Selective Operating System Configuration of Processing Resources of a Database System
Applications
12197404Generating Row Durability Data in Database Systems
Query Execution
12210572Switching Modes of Operation of a Row Dispersal Operation During Query Execution
Scalable Storage and Compute
12254001Transfer of a Set of Segments Between Storage Clusters of a Database System
Load More
See All
close
12197404 — Generating Row Durability Data in Database Systems
12259886 — Utilizing Query Approval Data Determined Based on Query Cost Data for a Query Request
12265534 — Generating Classification Data via a Query Processing System
12339828 — Executing of Lock Management Functions to Updating Lock State Data of a Database System
12346324 — Communicating Updates to System Metadata via a Database System
12380101 — Generating a Segment Rebuild Plan via a Node of a Database System
12405896 — Processing Instructions to Invalidated Cached Resultant Data in a Database System
12417226 — Generating Query Cost Data Based on Power and at Least One Query Function of a Query Request
11893017 — Utilizing a Prioritized Feedback Communication Mechanism Based on Backlog Detection Data
11936709 — Generating Key Assignment Data for Message Processing
11640400 — Query Processing System and Methods for Use Therewith
11366813 — Maximizing IO Throughput via a Segment Scheduler of a Database System and Methods for Use Therewith
11709835 — Re-Ordered Processing of Read Requests
10754856 — System and Method for Optimizing Large Database Management Systems Using Bloom Filter
12072887 — Optimizing an Operator Flow for Performing Filtering Based on New Columns Values via a Database System
11743316 — Utilizing Key Assignment Data for Message Processing
11775529 — Recursive Functionality in Relational Database Systems
12124449 — Processing Left Join Operations via a Database System Based on Forwarding Input
12130813 — Allocation of Main Memory for Database Operations in a Computing System
11533353 — Processing Messages Based on Key Assignment Data
12182588 — Performing Shutdown of a Node in a Database System
11308094 — Virtual Segment Parallelism in a Database System and Methods for Use Therewith
11874833 — Selective Operating System Configuration of Processing Resources of a Database System
12288040 — System and Method for Improving Load Balancing in Large Database Management System
12373433 — Query Processing in a Database System Based on Applying a Disjunction of Conjunctive Normal Form Predicates
12423296 — Database System Utilizing Probabilistic Indexing
12443600 — End User Configuration of Cost Rules in a Database System with Query Costs Based on Power and Methods for Use Therewith
11868623 — Database Management System with Coding Cluster and Methods for Use Therewith
11880716 — Parallelized Segment Generation via Key-Based Subdivision in Database Systems
11249998 — Large Scale Application Specific Computing System Architecture and Operation
11586647 — Randomized Data Distribution in Highly Parallel Database Management System
11586625 — Maintaining an Unknown Purpose Data Block Cache in a Database System
11599278 — Database System with Designated Leader and Methods for Use Therewith
11599542 — End User Configuration of Cost Thresholds in a Database System and Methods for Use Therewith
11934423 — Data Transition in Highly Parallel Database Management System
11615091 — Database System Implementation of a Plurality of Operating System Layers
11294932 — Data Transition in Highly Parallel Database Management System
11294872 — Efficient Database Management System and Method for Use Therewith
11977545 — Generation of a Query Plan in a Database System
11334542 — Database Management Systems for Managing Data with Data Confidence
11334257 — Database Management System and Methods for Use Therewith
11995057 — Efficient Database Management System and Method for Use Therewith
11675757 — Maintaining Row Durability Data in Database Systems
10706031 — Database Management Systems for Managing Data with Data Confidence
10712967 — Transferring Data Between Memories Utilizing Logical Block Addresses
12045254 — Randomized Data Distribution in Highly Parallel Database Management System
11709834 — Method and Database System for Sequentially Executing a Query and Methods for Use Therein
11416486 — System and Method for Optimizing Large Database Management Systems with Multiple Optimizers
11093500 — Enforcement of Minimum Query Cost Rules Required for Access to a Database System
10747738 — Efficient Database Management System and Method for Prioritizing Analytical Calculations on Datasets
10747765 — Systems and Method for Optimizing Large Database Management Systems with Multiple Optimizers
11734273 — Initializing Routes Based on Physical Network Topology in a Database System
10761745 — System and Method for Managing Parity within a Database Management System
12099876 — Coordinating Main Memory Access of a Plurality of Sets of Threads
12099504 — Utilizing Array Feld Distribution Data in Database Systems
11797506 — Database Management Systems for Managing Data with Data Confidence
12135699 — Database Management Systems for Managing Data with Data Confidence
10868863 — System and Method for Designating a Leader Using a Consensus Protocol within a Database Management System
12182121 — Generating Different Segment Groups for Storage via Storage Devices of Different Storage Clusters
11297123 — Fault-Tolerant Data Stream Processing
12267378 — Data Stream Processing System and Methods for Use Therewith
12380113 — Processing Formatted Record Data with Fixed and Variable Lengths
12380103 — Distributed Limit Processing Over Unsorted Data
11880368 — Compressing Data Sets for Storage in a Database System
11886436 — Segmenting a Partition of a Data Set Based on a Coding Scheme
11256696 — Data Set Compression within a Database System
11609911 — Selecting a Normalized Form for Conversion of a Query Expression
11321288 — Record Deduplication in Database Systems
11983172 — Generation of a Predictive Model for Selection of Batch Sizes in Performing Data Format Conversion
12032581 — Processing Variable Length Fields via Formatted Record Data
10713276 — Data Transition in Highly Parallel Database Management System
11080277 — Data Set Compression within a Database System
11734239 — Processing Row Data for Deduplication Based on Corresponding Row Numbers
11755589 — Delaying Segment Generation in Database Systems
12093262 — Determining a Coding Scheme for a Partition of a Data Set
12093231 — Distributed Generation of Addendum Part Data for a Segment Stored via a Database System
11782922 — Dynamic Data Block Routing via a Database System
12118402 — Utilizing Key Value-Based Record Distribution Data to Perform Parallelized Segment Generation in a Database System
12117986 — Structuring Geospatial Index Data for Access During Query Execution via a Database System
11803526 — Processing Row Data via a Plurality of Processing Core Resources
11803544 — Missing Data-Based Indexing in Database Systems
12141145 — Selective Configuration of File System Management for Processing Resources of a Database System
11182385 — Sorting Data for Storage in a Computing Entity
12182531 — System and Method for Improving Load Balancing in Large Database Management Systems
12182120 — Routing Feedback Data Blocks via a Prioritized Feedback Communication Mechanism
12182088 — Deduplicating Records Received from Multiple Data Sources
12499110 — Query Execution in a Database System Utilizing Segment Handles
12210572 — Switching Modes of Operation of a Row Dispersal Operation During Query Execution
12259878 — Implementing Superset-Guaranteeing Expressions in Query Execution
12259883 — Row Dispersal Across Parallelized Processes During Query Execution Based on Forwarding Data Blocks
12265550 — Caching Precomputed Binomial Coefficient Values for Query Execution
12271381 — Query Execution via Communication with an Object Storage System via an Object Storage Communication Protocol
12287786 — Allocating Partitions for Storing a Data Set for Subsequent Query Execution
12353418 — Handling Null Values in Processing Join Operations During Query Execution
12386831 — Query Execution via Scheduling Segment Chunks for Parallelized Processing Based on Requested Number of Rows
11238041 — Facilitating Query Executions via Dynamic Data Block Routing
11893014 — Method and Database System for Initiating Execution of a Query and Methods for Use Therein
11580102 — Implementing Linear Algebra Functions via Decentralized Execution of Query Operator Flows
11907219 — Query Execution via Nodes with Parallelized Resources
11921718 — Query Execution via Computing Devices with Parallelized Resources
11599463 — Servicing Queries During Data Ingress
11294916 — Facilitating Query Executions via Multiple Modes of Resultant Correctness
11977548 — Allocating Partitions for Executing Operations of a Query
11645273 — Query Execution Utilizing Probabilistic Indexing
11983179 — Method and Database System for Generating a Query Operator Execution Flow
11983114 — Accessing Both Replication Based Storage and Redundancy Coding Based Storage for Query Execution
11983176 — Query Execution Utilizing Negation of a Logical Connective
12008005 — Reassignment of Nodes During Query Execution
11741104 — Data Access via Multiple Storage Mechanisms in Query Execution
11436232 — Per-Query Data Ownership Via Ownership Sequence Numbers in a Database System and Methods for Use Therewith
12093254 — Query Execution During Storage Formatting Updates
12130812 — Accessing Index Data to Handle Null Values During Execution of a Query that Involves Negation
12130817 — Generating Execution Tracking Rows During Query Execution via a Database System
12141150 — Locally Rebuilding Rows for Query Execution Via a Database System
11507578 — Delaying Exceptions in Query Execution
11841862 — Query Execution via Virtual Segments
12182093 — Applying Range-Based Filtering During Query Execution Based on Utilizing an Inverted Index Structure
12271384 — Enforcement of a Minimum Result Set Size Rule for Queries Requested for Execution Against a Database System
12332892 — Power Based Query Processing System and Methods for Use Therewith
12353415 — Generating Query Cost Data for Query Requests Based on Power
12423303 — Query Processing with Limit Optimization in a Database System
11874837 — Generating Query Cost Data Based on at Least One Query Function of a Query Request
11874841 — Enforcement of Query Rules for Access to Data in a Database System
11893021 — Applying Query Cost Data Based on an Automatically Generated Scheme
11921725 — Processing Queries Based on Rebuilding Portions of Virtual Segments
11971890 — Database Management System for Optimizing Queries via Multiple Optimizers
11681703 — Generating Minimum Query Cost Compliance Data for Query Requests
11061910 — Servicing Concurrent Queries via Virtual Segment Recovery
11734283 — Enforcement of a Set of Query Rules for Access to Data Supplied by at Least One Data Provider
11734355 — Processing Queries Based on Level Assignment Information
11106679 — Enforcement of Sets of Query Rules for Access to Data Supplied by a Plurality of Data Providers
12135711 — Implementing Nonlinear Optimization During Query Execution via a Relational Database System
11822532 — Intelligent Selection of Secondary Indexing Strategies Based on User-Provided "Hints"
11853364 — Level Based Queries in a Database System and Methods for Use Therewith
12493588 — Generating Compressed Column Slabs for Storage in a Database System
12254001 — Transfer of a Set of Segments Between Storage Clusters of a Database System
12265533 — Dimensionality Reduction and Model Training in a Database System Implementation of a K Nearest Neighbors Model
12346328 — Creating Compressed Data Slabs that Each Include Compressed Data and Compression Information for Storage in a Database System
12360980 — Per-Segment Secondary Indexing in Database Systems
11893018 — Dispersing Data and Parity Across a Set of Segments Stored via a Computing System
11249916 — Single Producer Single Consumer Buffering in Database Systems
11609912 — Storing Data and Parity via a Computing System
11294902 — Storing Data and Parity in Computing Devices
11314743 — Storing Records via Multiple Field-Based Storage Mechanisms
11977547 — Generating Query Processing Selection Data Based on Processing Cost Data
11010382 — Computing Device with Multiple Operating Systems and Operations Thereof
12050580 — Data Segment Storing in a Database System
12093264 — Storage of Row Data and Parity Data via Different Storage Mechanisms
11775525 — Storage of a Dataset via Multiple Durability Levels
12131036 — Database System with Coding Cluster and Methods for Use Therewith
11182125 — Computing Device Sort Function
10866954 — Storing Data in a Data Section and Parity in a Parity Section of Computing Devices
12175105 — Storage Scheme Transition via Storage Structure Expansion in a Storage System
Ocient Inventors
Jason Arnold
Andrew Bass
Dave Boutcher
Greg Dhuse
Ian Drury
Chris Gladwin
George Kondiles
Joseph Jablonski
Finley Lau
Gregory Papadopoulos
Andrew Park
Benjamin Rabe
Ellis Saupe
Rhett Starr
Pieter Svenson
Richard Wendel
Ready to see Ocient in action?

Learn how you can deploy Ocient and unlock new AI insights.