Skip to content

QuesmaOrg/quesma

Repository files navigation

Quesma

Website | LinkedIn | Twitter | YouTube | Docs

Quesma is an actively developed database gateway. Route your queries through a translation layer that seamlessly connects your apps with the modern database platforms of your choice. No more query refactoring during migrations.

How? Isn't migrating to a new database hard? Quesma does it without touching your application/client stack - keeping backward compatibility and moving safely, step-by-step. We translate your queries so you don’t have to rewrite your database query code during migrations.

Currently supported: Quesma makes it possible to connect seamlessly Kibana/OpenSearch Dashboards to Clickhouse

Getting Started

The easiest way to get started is to try out the example docker-compose setup, which can be found in /examples/kibana-sample-data. It features Kibana connecting to Elasticsearch and Clickhouse through Quesma:

flowchart LR;
    kibana<-->quesma;
    log-generator-->quesma(Quesma);
    quesma<-->clickhouse[(clickhouse)];
    quesma<-->elasticsearch[(elasticsearch)];
Loading

The setup contains following demo datasets:

  • logs-generic-default - generated by log-generator application
    • Logs Explorer: link
  • kibana_sample_data_ecommerce - an official Kibana sample data set
  • kibana_sample_data_flights - an official Kibana sample data set

Running the example

In order to run it, you need to:

  • clone this repository: git clone https://github.com/QuesmaOrg/quesma.git
  • run docker-compose up directly from examples/kibana-sample-data directory

Handy one-liner for above commands:

git clone https://github.com/QuesmaOrg/quesma.git && docker compose -f quesma/examples/kibana-sample-data/docker-compose.yml up

The example above uses the latest Quesma Docker image published in DockerHub. In case you want to build Quesma Docker image from the sources, run ./bin/build-image.sh from the root directory

Once it's running, you can access:

Development

Developer documentation is available in the docs directory.

License

Elastic License 2.0