Hello everyone,

Your project seems very interesting but I am bit lost in the ocean of 
possibilities. Let me explain :

We are currently developing an application with a microservices architecture. 
Those services are written in Python but few are in Java or Go.
Of course a lot of them need to persist data and we are using a CQRS approach. 
The idea is that our micro services will use two kind of databases : one for 
ACID/OLTP and another one for OLAP.

Our main issue is that we want to be agnostic of the underlying databases 
because we will install our application into different clients environments. 
These clients could have clusters of Mongo, Cassandra or Couchbase for OLTP or 
Spark for OLAP.

So our first idea was to stick to the SQL query language with ODBC drivers to 
stay agnostic and find a way to translate our SQL queries into whatever query 
languages such databases accept while keeping good performances.

Your framework seems to provide both a SQL translator + an optimizer. However 
it raised few questions :
- It seems you don’t have support for insert, update and delete but when 
digging I see that Apache Hive is using your framework and they now supports 
insert,update,delete. How comes ? Are they using only part of your framework ?
- Also you said you are a framework but can you work as an engine that is 
queried through ODBC/JDBC ? Is that the purpose of Avatica ? If yes can we 
cluster it to handle many clients queries ?

As you might feel I am a bit lost and I am wondering what we should do for our 
use case. So any insights are welcome, such as what would you do if you were us 
?

Thank you very much,

Kind regards,

Maxime JATTIOT




Reply via email to