31 May 2021
2 min read
At Relational AI, we have built the first Relational Knowledge Graph Management System (RKGMS).
We believe relational knowledge graphs are the foundation for data-centric applications - these are systems that learn, reason, and predict over richly interconnected data.
With a Relational Knowledge Graph Management System as the foundation diverse data application workloads can either be learned or declared all grounded on the same data.
A Relational Knowledge Graph Management System as the foundation for these data applications minimizes accidental complexity and automatically provides performance, scalability, incrementality, provenance, and audit trail.
Data Applications built on the RelationalAI platform operate directly against the relational structure. This would perform poorly on a typical database, but Relational AI has implemented new technology and algorithms that makes this possible.
ML/AI and legacy imperatively coded applications are Black Boxes. The models and code are created by specialists, but are opaque to business people. Our approach dramatically reduces lines of codes and declares the requirements in a more concise human readable format.
The days of people telling the computer step by step how to perform a task are behind us -- we no longer have to describe how we want to win a game, we just declare that we want to.
RAI is a cloud-based relational knowledge graph management system, with state of the art probabilistic processing, and declarative reasoning at scale to make developing Data Applications a superpower for your business.
Our language lets developers declaratively model their business problem, define and enrich an enterprise scale Knowledge Graph from multiple data sources and with computed knowledge, then query and reason over the graph. Think of our language as “executable specifications”, enabling high-bandwidth communication between domain experts and application developers.
It is the inevitable next step in the evolution and expansion of the relational paradigm and how data applications will be built.
We believe in the relational paradigm for data storage.
But most application-centric data models use some variation of 3NF, with wide tables designed to answer an application’s specific typical queries. If a different application’s workload needs a different schema, the data is copied and transformed to suit that second application. Data duplication and silos are the result. And business-level constraints, the rules that define the integrity and meaning of the data, are implemented in application-specific code.
RAI data storage is built around “Graph Normal Form”, GNF, which is Sixth Normal Form, 6NF, with the knowledge embodied by the relationships between the tables. This approach allows for clean data to be stored with maximum flexibility for current and future data apps.
If your schema is not organized for a specific application workload, it can better adapt to unanticipated workloads.
A business can answer new questions without having to copy and reorganize the data. Whereas the application-centric approach leads to duplication and silos, the data-centric approach leads to treating a dataset as an organization-wide asset.
Existing machine learning algorithms operate against wide data frames, or tensors, or matrices, depending on your terminology. These data frames are extracted and labeled in the feature engineering process. This consumes both compute and human processing time.
RAI Secret Sauce includes fundamental innovations in this field. We are tapping into almost 2 decades of profound and under-utilized research by the database theory and algorithms community. . . . . more on this in future RAI shots!
We are excited to announce worksheets, a new interface for submitting Rel queries. Worksheets allow you to develop blocks of Rel code and run them against a database. They can be shared with other users using their URLs.Read More
We are excited to announce the support of varargs in Rel. You can use varargs to write more general code that works for multiple arities. Varargs can be useful when writing generic relations for common utilities.Read More
Value types help distinguish between different kinds of values, even though the underlying representation may be identical. Value types can be used to define other value types.Read More