kafka-questdb-connector icon indicating copy to clipboard operation
kafka-questdb-connector copied to clipboard

Configuration file

Open CSharpDummy opened this issue 2 years ago • 4 comments

I'm a bit lost about the configuration file. Can I just define in the docker build process and copy it into the right directory? Also not sure which directory to store it.

I am trying to use docker compose and set up questdb, the questdb kafka conenctor and redpanda as kafka broker.

CSharpDummy avatar Nov 09 '22 22:11 CSharpDummy

You may want to watch the video in here: https://www.youtube.com/watch?v=Jkcp28ki82k

iamkucuk avatar Nov 10 '22 05:11 iamkucuk

Hello @CSharpDummy,

indeed it's a bit confusing. In short: Kafka Connect has 2 modes:

  1. Standalone
  2. Distributed

The Standalone mode indeed allows you to define a configuration property file and pass the file as an argument to Kafka Connect. This is described at https://questdb.io/docs/third-party-tools/kafka/questdb-kafka/

However, the Standalone mode has drawbacks in terms of scalability and fault tolerance - there can be only one JVM running the connector - when this crash then you have to restart it.

The Distributed mode has better fault-tolerance properties and also it allows to run the same connect in multiple JVMs. Unfortunately, it's a bit awkward in terms of configuration - you have to start connectors via the REST API.

The video shared by @iamkucuk looks good, I assume it'll explain these concepts into greater details.

I could also add a Dockerized code sample with the standalone mode - given the high performance of QuestDB connector there is not much need for horizontal scalability and failures can be handled on different levels, eg. Kubernetes. So thanks for creating this issue!

jerrinot avatar Nov 10 '22 09:11 jerrinot

Ah yes that makes sense. So the connector spans over the cluster.

CSharpDummy avatar Nov 18 '22 04:11 CSharpDummy

@CSharpDummy exactly. there is a bit mismatch between the Distributed mode and the way how container orchestrator work. but an individual connector cannot change that.

I'm keeping this issue open as a reminder to add a Standalone code example.

jerrinot avatar Nov 18 '22 10:11 jerrinot