15 January 2022
less than a minute read
Semantic Optimization makes your complex data workloads more efficient, which in turn improves overall system performance and scalability.
Users can express their problems in a way that is logically clear to them, regardless of the shape of the graph or the distribution of the data and spend more time solving the business problem and less time worrying about how to write the most performant query. Think of the Semantic Optimizer as an “algorithm designer”.
In a navigational graph system, this algorithm design falls to the query author, or to a human expert helping the author. And often it falls back to the vendor, who may even rewrite the query in the graph database’s internal implementation language.
In RAI’s relational knowledge graph system, the semantic optimizer takes input Rel queries and rewrites them to get the same results but with less intermediate data or fewer calculations. These rewrites exploit the graph’s schema, knowledge, and ontology to generate an optimal Rel program. The rewrites are mathematically provably equivalent to the original queries, and thus will return the same results. This provable equivalence is dependent on having an entirely deterministic query language, such as Rel, operating against a relational data model.
Dovetail Join is a WCOJ (Worst Case Optimal Join) algorithm, meaning we can mathematically prove that the more complicated the problem is, the faster we will go.Read More
This demo is called the “Knowledge Graph to Learn Knowledge Graphs”, or KGLKG. It parallels the authors own journey from programming in imperative languages like Java, C++, and Python to RAI's declarative language, Rel. For many years, I used those legacy languages plus SQL in an application-centric database-oriented way of solving business problems. But today I am using Rel and a data-centric business modeling approach to creating business solutions.Read More
Our distillers provide a quick shot of information covering key concepts in our RKGMSRead More