Deploy Streambased I.S.K.

Step 1: Prepare a base configuration

Streambased I.S.K. (Iceberg Service for Kafka) requires only a single short config file to start. An example can be seen below:

{
  "port": 11000,
  "catalog": {
    "port": 11001,
  },
  "external.hostname": "streambased-isk",
  "kafka.bootstrap.servers": "localhost:9092",
  "schema-registry.url": "http://localhost:8081"
}

For more information on the configuration parameters see configuration

Save this example configuration as streambased-isk-config.json in your environment, make any changes necessary and mount as below.

Step 2: Start Streambased I.S.K.

An indexer can be started with the following command:

docker run -v ${PWD}/streambased-isk-config.json:/etc/streambased/etc/streambased-isk-config.json -p 11000:11000 -p 11001:11001 streambased/directstream:latest

Step 3: Connect to Streambased I.S.K.

Streambased exposes two ports:

  • A S3 compatible filesystem

  • An Apache Iceberg catalog

Any Iceberg supporting client can use these endpoints to access I.S.K. An example Spark configuration can be seen below:

A full example client implementation can be seen in the streambased-demos repository here.

Step 4: Scale

Streambased I.S.K. can scale alongside your Kafka infrastructure to practically unlimited capability. Please reach out to our team to schedule your free architecture assessment.

Last updated