blaze
blaze copied to clipboard
Implement a Datalog Engine
Having even a basic Datalog engine would make implementing #294 much simpler. A good read is https://github.com/juji-io/datalevin/blob/query/planner.md
I understand that Blaze is inspired by XTDB. Is there any specific reason you didn't choose it as the underlying database?
This project seems to be an excellent accomplishment by itself! Really inspired by this.
I do think XTDB comes with some benefits:
- Datalog + SQL Engine
- Multiple storage backend options - including Kafka, JDBC, S3. (Does not seem to support Cassandra for document store yet).
Anything FHIR specific why XTDB was not used, and things were built from scratch?
We at (Medblocks) are trying to make this work with Postgres as the transaction, and document store.
We'd like to help this project in any way possible!
@sidharthramesh Good to have you here.
There are some reasons we didn't choose XTDB back in 2020:
- there was no possibility for function-based indices needed for the search params
- we don't need the bitemporal feature
More of our reasoning can be found in this issue #120.
But I'm open to discuss and evaluate how we can switch to XTDB in 2023.
@alexanderkiel thank you for your reply. I’m exploring XTDB and the FHIR search index is the main issue.
I feel there’s a possibility to translate most FHIR searches into datalog and then let XTDB (or another library for that matter) take it from there. I’d love to catch up with you and discuss this more. My email is [email protected]. Can we maybe have a short call?