Я читал статьи, связанные с Kafka и StreamSets, и мое понимание было
Kafka выступает в роли посредника между системой Producer и подписчиком. Производитель передает данные в кластер Kafka, подписчик извлекает данные из Kafka.
StreamsSets — это технология перемещения данных из одного источника в другой по конвейеру.
Теперь ниже мои вопросы, пожалуйста, помогите уточнить
В чем принципиальная разница между Kafka и StreamSets? Разве Kafka не перемещает данные, а StreamSets перемещает данные?
Если Kafka не перемещает данные, для чего используется Kafka? Если он перемещает данные, как решения ETL, чем он отличается от SSIS, Informatica и т. д.?
Чем StreamSets отличается от SSIS, Informatica и т. д.?





StreamSets — это графический инструмент, содержащий компоненты, позволяющие перемещать данные, в том числе производители и потребители Kafka, но вы не обязаны их использовать.
Они дополняют друг друга, и с помощью Kafka вы можете допустить обратное давление в системах потоковой передачи или заставить производителей/потребителей, не относящихся к StreamSet, взаимодействовать с другими темами Kafka. Нет, Kafka не перемещает данные (кроме внутренней репликации), это делают клиенты, взаимодействующие с брокерами.
Я не использовал Informatica или SSIS, но я уверен, что если бы вы связались с кем-то из StreamSets, они могли бы ответить, как они сравнивают
1) В StreamSets большую часть времени мы создаем «конвейеры данных», думаем о конвейере как о приложении, которое может состоять из нескольких шагов/задач, первая задача может считывать данные из базы данных или kafka или любого количества источников данных, вторая на шаге можно изменить данные, на третьем шаге можно запустить скрипт... и т. д. и, наконец, он может сохранить преобразованные данные в месте назначения, которое может быть базой данных, AWS... и т. д. Таким образом, Fafka и StreamSets могут работать вместе, где StreamSets может читать данные и писать в Kafka
2) Я думаю о Kafka как о месте, где собираются данные из нескольких источников и доступны для потребителей в течение определенного времени. Например, Kafka может периодически читать из таблицы базы данных и сохранять изменения в «теме», периодически читать из веб-службы, а затем сохранять эти данные в другой теме. Эти темы теперь доступны для потребителей, разработчик теперь может создать приложение, которое считывает данные из первой темы и что-то делать с данными, Kafka может отслеживать то, что читал потребитель, используя смещения, и предлагает репликацию и другие параметры. Это устраняет необходимость писать собственный код, объединяющий несколько источников и мест назначения, вместо этого вы можете настроить эту часть.
StreamSets может читать и писать в Kafka. StreamSets не хранит данные в своей собственной системе, в то время как Kafka хранит данные в течение настраиваемого периода времени.
3) SSIS похож на StreamSets тем, что он используется для создания конвейеров/пакетов, состоящих из нескольких задач, каждая задача может брать данные/результат от предыдущих задач, а затем что-то с ними делать. Как StreamSets, так и SSIS могут подключаться ко многим типам источников данных и мест назначения.
Мое личное мнение о том, чем отличаются StreamSets и SSIS:
Спасибо всем, я думаю, что должен поделиться некоторыми идеями о том, как мы можем смотреть на спецификацию между kafka и набором потоков, если мы используем оба в одном кластере, то как мы можем их различать.
«Поскольку мы используем надежность Kafka и простоту Streamset»
Не стесняйтесь принимать ответ, используя галочку рядом с сообщением