0

Я пытаюсь создать решение для управления данными (DM) с использованием большого объема данных, пройти через некоторые правила домена данных, заменить (обогатить), пометить ошибочные данные перед отправкой к нисходящей системе. Проверка правил & замена стоимости может быть чем-то простым, как допустимые пороговые числовые значения, которые должны удовлетворять элементы данных, к чему-то более сложному, как поиск с основными данными для пула доменов значений.# Apache-flink: использование для управления данными

Считаете ли вы, что Apache Flink может быть хорошим кандидатом для такой обработки? Могут ли быть флинковые операторы, определенные для поиска (с основными данными) для каждого кортежа, протекающего через него? Я думаю, что есть несколько недостатков использования Apache Flink для последнего вопроса - 1) поиск может быть блокирующей операцией, которая замедляет пропускную способность, 2) контрольная точка и сохранение состояния оператора не могут быть выполнены, если функции оператора должны извлекать основные данные из других мест.

Каковы мысли? Есть ли какой-нибудь другой инструмент в этом случае?

Thanks

ответ

0

Короткий ответ «да». Вы можете использовать Flink для всех вещей, о которых вы упомянули, включая поиск и обогащение данных, с предостережением о том, что у вас не будет, по крайней мере, один раз или ровно один раз гарантии побочных эффектов, вызванных вашими операторами (например, обновление внешнего состояния). Вы можете обойти добавленную задержку внешнего поиска с более высоким параллелизмом на этом конкретном операторе.

Невозможно дать точный ответ без дополнительной информации, например, о том, что именно представляет собой «данные большого объема» в вашем случае, каковы ваши требования к латентности для каждого события, какие другие ограничения у вас есть и т. Д. Однако в общий смысл, прежде чем вы обязуетесь использовать Flink, вы должны взглянуть как на Spark Streaming, так и на Apache Storm и сравнить. И Spark, и Storm имеют более крупные сообщества и больше документации, поэтому это может сэкономить вам немного боли в длинном роме. Теги на StackOverflow на момент написания: искрообразование x 1746, apache-storm x 1720, apache-flink x 421

Что еще более важно, Spark Streaming имеет аналогичную семантику для Flink, но, скорее всего, даст вам лучшую пропускную способность для массовых данных , В качестве альтернативы, Storm концептуально похож на Flink (носики/болты и операторы) и в большинстве случаев имеет более низкую производительность/пропускную способность, но это всего лишь более прочная структура.

Смежные вопросы