Giter Site home page Giter Site logo

flink-proto-confluent's Introduction

flink-proto-confluent

A confluent protobuf format for flink.

WIP

This is a work in progress. Should be usable already though, just run:

./gradlew build shadowJar

# Then copy the jar to your flink lib folder

COPY flink-proto-confluent/build/libs/proto-confluent.jar /opt/flink/lib/proto-confluent.jar

Run this locally

docker-compose up

# Go to rp-console and create topic: http://localhost:8080
# topic name: example

# >>>>>>>>>>>>>> Send some proto events to example topic (+ make sure schema is registered)

# Connect to flink sql
docker exec -it FLINK_JOB_MANAGER bin/sql-client.sh

# Run the following SQL
SET sql-client.verbose = true;
SET 'sql-client.execution.result-mode' = 'tableau';

    
CREATE TABLE example (

  `kafka_key_id` STRING,
  `nested_value` ROW (
    `value` STRING
  )

) WITH (

  'connector' = 'kafka',
  'topic' = 'example',
  'properties.bootstrap.servers' = 'kafka:29092',
  'properties.group.id' = 'testGroup',
  'scan.startup.mode' = 'earliest-offset',

  'key.format' = 'proto-confluent',
  'key.proto-confluent.url' = 'http://karapace-registry:8085',
  'key.proto-confluent.topic' = 'example',
  'key.proto-confluent.is_key' = 'true',
  'key.fields' = 'kafka_key_id',
  'key.fields-prefix' = 'kafka_key_',

  'value.format' = 'proto-confluent',
  'value.proto-confluent.url' = 'http://karapace-registry:8085',
  'value.proto-confluent.topic' = 'example',
  'value.proto-confluent.is_key' = 'false',
  'value.fields-include' = 'EXCEPT_KEY'
);

flink-proto-confluent's People

Contributors

amstee avatar

Stargazers

Elad Leev avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.