xtdb
grakn
xtdb | grakn | |
---|---|---|
18 | 11 | |
2,453 | 3,688 | |
0.9% | 0.9% | |
9.9 | 9.3 | |
5 days ago | 5 days ago | |
Clojure | Java | |
Mozilla Public License 2.0 | Mozilla Public License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
xtdb
-
Mariposa – A programming language with time-travel
You don't necessarily need to embed it into the programming language itself to get a ton of value. XTDB (https://github.com/xtdb/xtdb) offer a Clojure, Java and HTTP API for interacting with the database, which is bitemporal and lets you query the database for a specific point in time for example.
- Everything wrong with databases and why their complexity is now unnecessary
-
I made a basic python client and ORM for XTDB
XTDB is a bitemporal and dynamic relational database for SQL and Datalog, written in Clojure. The Python application I work on uses XTDB for its bitemporal and schema-less nature. There were a few Python clients that looked unmaintained and lacked some features we needed, so I tried to build something that would have fit our own requirements in hindsight. This includes:
-
Endatabas: A SQLite-inspired, SQL document database with full history
it's bitemporal, will be SQL-compatible, and also has another query-language - XTQL :
https://github.com/xtdb/xtdb/tree/2.x/dev/xtql
-
Is Datomic right for my use case?
You can also consider other durable Datalog options like datahike or datalevin which can work either as lib (SQLite style) or in a client-server setup; if you want to play with bi-temporality XTDB is a rock solid option with very good support and documentation.
-
Datomic Is Now Free
You could look into http://xtdb.com/ if you want an open source alternative
-
Taming the Time: how to install & develop with XTDB
XTDB, or Cross-Time Database, is a distributed and transactional database system designed to handle complex and changing data with ease. It is based on a bitemporal model, which allows for the tracking of both the valid time and transaction time of data, enabling powerful and flexible querying capabilities. With XTDB, developers can work with immutable data structures, which simplifies development and improves reliability. Its graph query language, Datalog, provides a powerful and expressive way to navigate relationships within the data.
- Introduction to Datalog
- Clojure Turns 15 panel discussion video
- Xtdb
grakn
- Datomic Is Now Free
-
Best Websites For Coders
TypeDB : A Strongly-typed Database
-
Fluree DB - A datomic like database that I just discovered
How does it compare to, say grakn (renamed https://vaticle.com/, I think?), or draph (https://dgraph.io/), or Ontotext's GraphDB (https://www.ontotext.com/products/graphdb/), or Datomic?
- Typedb
-
Firebase is Dead: What is the Perfect Database in 2022?
Edge database looks pretty freakin awesome. It basically seems to re-write SQL and Graph databases together to create some new-ish programming language. It takes care of all the problems GraphQL has, and seems to be built separately but on top of postgres. It is really something unique, beautiful, and powerful. They don't have a security layer yet or a cloud hosting environment, but both are in the works. However, postgres still suffers from the scalable problems we all know. If you like unique fetching and strong typing, also check out TypeDB. It doesn't make its own list number because there is not cloud version, middleware, etc. However, worth checking out.
-
Ask HN: Why are relational DBs are the standard instead of graph-based DBs?
If you find yourself limited by triplestores, there's also a new growing area of development in knowledge engines, which allow edges-of-edges, entailed relations, hypergraph relations, and more of the power you'd get from full logic programming. TypeDB (recently renamed from Grakn) is an example of that type of database.
-
How Roche Discovered Novel Potential Gene Targets with TypeDB
In the story to follow, David presents how his team at Roche was able to identify potential novel targets that were not identified by Open Targets as highly ranked. This was made possible with TypeDB, which his team used to store the relevant data and then find underlying biological evidence for those new targets.
-
Why are the downloaded zip files not in scope?
{ stdenv, lib, openjdk,typedbHome ? "~/.typedb_home", fetchzip}: let typedbVersion = "2.1.1"; typedbDirLinux = "typedb-all-linux-${typedbVersion}"; typedbDirMac = "typedb-all-mac-${typedbVersion}"; typedbDirWindows = "typedb-all-windows-${typedbVersion}"; typedbDir = if stdenv.hostPlatform.isWindows then typedbDirWindows else if stdenv.isDarwin then typedbDirMac else typedbDirLinux; linuxSrc = builtins.fetchTarball { url = "https://github.com/vaticle/typedb/releases/download/2.1.1/typedb-all-linux-2.1.1.tar.gz"; sha256 = "15nwm2dr68p67c2xcqigs66gd679j1zr72gqv7qxgvflwyvyz8fb"; }; windowsSrc = fetchzip { url = "https://github.com/vaticle/typedb/releases/download/2.1.1/typedb-all-windows-2.1.1.zip"; sha256 = "0vd66gfshkg697z07nhy957mwqzlli4r4pmn67hx58n9mkg024kq"; }; macSrc = fetchzip { url = "https://github.com/vaticle/typedb/releases/download/2.1.1/typedb-all-mac-2.1.1.zip"; sha256 = "16hlfy6kh2rnvcralz206q13mghb0rv8wazpg6q3h324p5rdys54"; }; srcFolder = if stdenv.hostPlatform.isWindows then windowsSrc else if stdenv.isDarwin then macSrc else linuxSrc ; javaPatch = '' 20c20 < JAVA_BIN=java --- > JAVA_BIN=${openjdk}/bin/java ''; in stdenv.mkDerivation rec { pname = "typedb"; version = typedbVersion; src = srcFolder; phases = [ "installPhase" ]; buildDepends = [ openjdk ]; installPhase = '' echo "here" # added for debugging ls -lah # " echo "--" # " #patch before install echo "${javaPatch}" > typedb_java.patch patch ./${typedbDir}/typedb typedb_java.patch mkdir $out cp -r ./${typedbDir} $out # add a wrapper script to $out that will move typedb to $typedb # this is necessary because typedb needs a writable environment echo " # on the first start copy everything to typedbHome if [ ! -f ${typedbHome}/typedb ]; then mkdir -p ${typedbHome}; cp -r $out/${typedbDir}/* ${typedbHome}; # correct permissions so that typedb and the user can write there chmod -R u+rw ${typedbHome} chmod u+x ${typedbHome}/typedb fi; ${typedbHome}/typedb \$@; " > $out/typedb chmod +x $out/typedb ''; doCheck = true; meta = with lib; { description = "TypeDB is a distributed knowledge graph: a logical database to organise large and complex networks of data as one body of knowledge."; longDescription = '' TypeDB is a distributed knowledge graph: a logical database to organise large and complex networks of data as one body of knowledge. TypeDB provides the knowledge engineering tools for developers to easily leverage the power of Knowledge Representation and Automated Reasoning when building complex systems. Ultimately, TypeDB serves as the knowledge-base foundation for intelligent systems. ''; homepage = "https://www.grakn.ai/"; license = licenses.gpl3Plus; platforms = platforms.all; maintainers = [ maintainers.haskie ]; }; }
-
Best Websites Every Programmer Should Visit
grakn.ai : The Database for AI
-
Need Graph Db Recommendations Lightweight Neo4j
Give the open-source Grakn a look as well (full transparency: I work there), it is an abstraction over a built in-house hypergraph storage engine and persisted layer using RocksDB. It's a logical database with a reasoning engine at the database level. https://github.com/graknlabs/grakn
What are some alternatives?
datahike - A durable Datalog implementation adaptable for distribution.
datalevin - A simple, fast and versatile Datalog database
asami - A graph store for Clojure and ClojureScript
crux - General purpose bitemporal database for SQL, Datalog & graph queries. Backed by @juxt [Moved to: https://github.com/xtdb/xtdb]
topic-db - TopicDB is a topic maps-based semantic graph store (using SQLite for persistence)
datascript - Immutable database and Datalog query engine for Clojure, ClojureScript and JS
biff - A Clojure web framework for solo developers.
Serpent.AI - Game Agent Framework. Helping you create AIs / Bots that learn to play any game you own!
spring-data-jpa-temporal - Temporal auditing extension of the Spring Data JPA module
gremlin-scala - Scala wrapper for Apache TinkerPop 3 Graph DSL