Как использовать Kafka Connect для Cassandra без Confluent

Как мы можем использовать Kafka Connect с Cassandra без использования фреймворков Confluent.


person RAJ GUPTA    schedule 03.03.2017    source источник


Ответы (2)


Kafka Connect является платформой. Confluent предлагает только коннекторы. Если вы не хотите использовать Confluent Open Source (а почему бы и нет?), вы можете использовать все эти коннекторы и с ванильным Apache Kafka.

Доступно несколько коннекторов Casandra: https://www.confluent.io/product/connectors/

Кстати: ни один из перечисленных коннекторов Casandra не поддерживается Confluent.

Конечно, вы также можете написать свой собственный коннектор или использовать любой сторонний коннектор.

person Matthias J. Sax    schedule 03.03.2017
comment
Основная концепция доступа к базе данных заключается в использовании запроса SQL/CQL в моем случае. connect также выполняет запрос к базе данных для сохранения или извлечения данных. если я создаю группу потребителей, одну для обработки, а другую для хранения в БД, тогда одна используется для хранения в БД, скажем, DB-Consumer, ее работа заключается только в том, чтобы хранить данные в базе данных, что я мог бы легко сделать с помощью ORM, и я также буду иметь полную прозрачность и контроль над ним. Поэтому меня беспокоит то, чем он на самом деле отличается от этого типа (потребителя БД) в отношении производительности и скорости. заранее спасибо за вашу помощь и помощь в этом. - person RAJ GUPTA; 15.03.2017
comment
Connect as framework позаботится об отказоустойчивости, и вы также можете запустить его в распределенном режиме, чтобы масштабировать задание импорта/экспорта данных. Таким образом, Connect — это действительно опыт «огонь и забудь». Кроме того, для Connect вам не нужно писать код — вы просто настраиваете коннектор. - person Matthias J. Sax; 15.03.2017
comment
Confluent cp-kafka-connect не имеет коннектора cassandra - person happy; 17.10.2018
comment
Коннектор Cassandra можно найти в Confluent Hub: confluent.io/connector/kafka-connect- Кассандра - person Matthias J. Sax; 18.10.2018

DataMountaineer Stream Reactor содержит решение Cassandra Source and Sink, которое можно использовать с Kafka. Соединять.

Перетащите файл jar (скачать) в папку Kafka libs, а затем укажите ваш разъем следующим образом:

{
"name": "cassandra-NAME",
"config": {
    "tasks.max": "1",
    "connector.class": "com.datamountaineer.streamreactor.connect.cassandra.source.CassandraSourceConnector",
    "connect.cassandra.key.space": "KEYSPACE",
    "connect.cassandra.source.kcql": "INSERT INTO KAFKA_TOPIC SELECT column1, timestamp_col FROM CASSANDRA_TABLE PK timestamp_col",
    "connect.cassandra.import.mode": "incremental",
    "connect.cassandra.contact.points": "localhost",
    "connect.cassandra.port": 9042,
    "connect.cassandra.import.poll.interval": 10000
}}

Запустите Kafka Connect

bin/connect-distributed.sh config/connect-distributed.properties

И загрузите коннектор Cassandra в Kafka Connect через файл свойств JSON, указанный выше (при условии, что он имеет имя connect-cassandra-source.json).

curl -X POST -H "Content-Type: application/json" -d @config/connect-cassandra-source.json localhost:8083/connectors

Вам нужно будет создать таблицу со столбцом timeuuid в качестве ключа кластера. Это описано здесь.

person Mike Barlotta    schedule 07.03.2017