Итак, у меня есть сценарий использования, когда я буду передавать около 1000 записей в минуту с kafka. Мне просто нужно вывести эти записи в необработанном виде в нет sql дБ или что-то вроде озера данных в этом отношении, я выполнил это с помощью двух подходов
Подход 1 —————————— Создайте потребителей kafka в java и запускайте их как три разных контейнера в kubernetes. Поскольку все контейнеры находятся в одной и той же группе потребителей kafka, все они будут способствовать чтению из одной и той же kafka topi c и выгружать данные в озеро данных. Это работает довольно быстро для объема рабочей нагрузки, который у меня есть
Подход 2 ——————————- Затем я создал искровой кластер и тот же java logi c для чтения из Кафка и данные дампа в озере данных
Наблюдения ———————————- Производительность kubernetes, если неплохо, была равна производительности искрового задания, работающего в кластерном режиме.
Итак, мой вопрос: каков реальный вариант использования искры над кубернетами так, как я ее использую, или даже искры над кубернетами? Искра будет только подниматься и освещать гораздо более тяжелые рабочие нагрузки, скажем, порядка 50 000 записей в минуту или случаи, когда необходимо выполнить некоторую обработку данных в реальном времени, прежде чем выгрузить их в приемник? С Spark связано больше затрат, поэтому мне нужно убедиться, что я использую его только в том случае, если он масштабируется лучше, чем решение для лечения туберкулеза