Я пытаюсь понять, как работает apache луч, и я не совсем уверен, если я делаю. Итак, я хочу, чтобы кто-нибудь сказал мне, правильно ли я понимаю:
- Beam - это слой абстракции над средами больших данных, такими как spark, имеет oop, поток данных Google и c. Теперь практически все функции, но почти в этом случае
- Beam обрабатывает данные в двух формах, ограниченных и неограниченных. Ограниченный как .csv и неограниченный как подписка kafka. Для каждого есть разные методы чтения ввода / вывода. Для неограниченных данных нам нужно реализовать управление окнами (прикрепление метки времени к каждой точке данных) и триггер (метка времени). Пакет здесь будет все точки данных в окне, пока не нажмет триггер. Однако для ограниченных наборов данных весь набор данных загружается в ОЗУ (? I f да, как мне заставить луч работать на пакетах? ). Выходные данные метода ввода / вывода - это pCollection
- . Существуют pTransformations (это операции, которые я хочу выполнить с данными), которые применяются к каждому элементу pCollection. Я могу заставить эти pTransformations применить к кластеру искры или кремня (этот выбор идет в начальных опциях, установленных для конвейера). каждая pTransformation испускает pCollection, и таким образом мы объединяем различные pTransformation вместе. End - это pCollection, которую можно сохранить на диск
- Конец конвейера может быть сохранением в некоторой файловой системе ( Как это происходит, когда я читаю .csv в пакетном режиме? )
Пожалуйста, укажите мне какие-либо ошибки в моем понимании