SenseiDB is a distributed database that supports the backend of LinkedIn homepage and LinkedIn Signal. The data is protected by replication and eventual consistency is guaranteed. Driven by a large number of search tasks, SenseiDB is also a efficient search engine on structured metadata and unstructured contents.
SenseiDB was initially developed and employed by LinkedIn team in 2012. It was then contributed by a number of engineers across different companies and continents. After three releases, SenseiDB has no longer updated since year 2013.
SenseiDB partitions its data within the system to improve processing speed, but it only accepts a single data stream at a time.
Joins are not supported in SenseiDB since it is not a strictly relational database.
The users are responsible for guaranteeing data isolation.
SenseiDB applies an indexing manager called Zoie, which is a real-time search and indexing system. The biggest feature of Zoie is the support for real-time updates while preserving the high-efficiency.
A SenseiDB instance is a table of data that is organized into columns. Each column may fall into one of the supported types: **string**, **int**, **long**, **short**, **float**, **double**, **char**, **date**, **text**.
The entire database is partitioned into a number of shards. Each shard is replicated across N nodes so that there might be more than one shards in a single node. Below is an example of a Sensei cluster. !(http://senseidb.github.io/sensei/images/index-sharding.png)
All OS with Java VM