TypeDB Blog

Learn from our journey building TypeDB & TypeQL.


Introducing the Type Theory and Polymorphic Foundations of TypeDB

When we look at the evolution of databases in the last 40 years since relational algebra and SQL, even though there has been incredible progress in performance and operational capabilities, databases have yet to provide more powerful abstractions to express more advanced logic. Database models have failed to keep up with the rapid evolution of programming languages, and modern applications must use complex layered architectures to manage data as a result.

Haikal Pribadi

What it means to be more strongly-typed than SQL and NoSQL

Unlike existing database paradigms, TypeDB is designed based on modern ideas from type theory. If you want to learn how this works in detail, you may be interested in our article on type-theoretic databases in our learning section. In this post, we will discuss a crucial difference between TypeDB and other database paradigms, which is a direct result of these type-theoretic foundations of TypeDB. But don’t worry, we won’t assume any familiarity with type theory and will keep our discussion as high level as possible!

Dr. Christoph Dorn

The need for subtyping and polymorphism in databases

In this article, we’ll explain how a new revolution in databases overcomes the limitations of relational, document and graph databases by using subtyping and polymorphism — core object-oriented (OO) programming principles — to create higher abstractions and achieve greater expressivity.

Shane Johnson

Accelerating drug discovery with applied knowledge engineering and TypeDB

In this blog post, we’ll look at how TypeDB can be used to model complex biological relationships and accelerate the drug discovery processs as part of the open-source TypeDB Bio project.

Dr. James Whiteside

Building a Cyber Threat Intelligence database with TypeDB

CTI (Cyber Threat Intelligence) plays a critical role in protecting sensitive data and digital assets in the ever-evolving battlefield of cybersecurity, where organizations must stay one step ahead of attackers. Organizations need strong, effective threat research databases in order to recognize and prevent attacks.

Sullivan Daly

Modeling collections in databases: Relational/SQL vs TypeDB

Databases excel at handling traditional data types such as numbers and strings, but they lack robust mechanisms for working with complex data structures like collections (e.g., lists and sets). In this blog post, we explore the difficulties encountered when storing data as collections in databases.

Sullivan Daly

The age of AI is upon us — where are the smart databases?

What if you could ask sophisticated questions without having to tell the database how to answer them? In the same way AI-powered code generation tools can improve developer productivity, so can an AI-powered database.

Shane Johnson

Inheritance and polymorphism: where the cracks in SQL begin to show

Polymorphism can be one of the most challenging things to model in a database. Not only do you want your database to be performant, you also want it to feel intuitive so that queries you write make sense and are simple to maintain, and polymorphic data can easily mess up that balance if you don’t take the time to consider how best to implement it.

Dr. James Whiteside

Identity and access management with TypeDB: Part III, inference

In the last two blogs, we learned how to model polymorphic permissions and automate permission inheritance. Now, we’ll finish this blog series by explaining how to enforce policy compliance at the schema level.

Dr. James Whiteside

Identity and access management with TypeDB: Part II, transitivity

Previously, we learned how to model polymorphic permissions. Here, we’ll show you how to automate permission inheritance. Finally, in the third blog, we’ll explain how to enforce policy compliance at the schema level.

Dr. James Whiteside

Identity and access management with TypeDB: Part I, polymorphism

Designing an IAM platform that can support a broad variety of applications, resources and permissions and enforce sophisticated business policies, both now and in the future, is a daunting task. In this blog series, we’re going to show how TypeDB can meet these requirements with a powerful yet lean data model and intuitive query design.

Dr. James Whiteside

A New Era for TypeDB

When we started building TypeDB, we saw a continuously growing complexity of data in modern applications. Modern programming languages have evolved by introducing powerful abstractions and constructs to express more complex logic — JavaScript is succeeded by TypeScript, Python by Julia, Java by Kotlin, C/C++ by Rust, and Haskell emerging as the leader of functional languages. Modern languages all have a stronger and more expressive type system.

Haikal Pribadi

What is a Knowledge Graph?

Ever since Google popularised the term in 2012, knowledge graphs have seen massive amounts of public interest. From Fortune 500 companies to universities, organisations all over the world are investing large resources into knowledge graphs.

Tomas Sabat

Inference in TypeDB

The Wikipedia interpretation of inference is “moving from premises to logical consequences”. This definition is so broad that we can actually identify two distinct types of inference TypeDB does: Rule inference and type inference. With TypeQL, we’ve combined both types of inference into a powerful query language. This forms the basis of a paradigm-shifting database that puts elegant modelling at your fingertips.

Joshua Send

Feedback