Получить доступ к локальной папке в Heron - PullRequest
0 голосов
/ 13 ноября 2018

Я написал топологию Heron, которая берет данные из локальной папки и обрабатывает их.Однако, heron не может видеть никаких других папок, кроме той, что описана в файле .pex.Как я могу прочитать данные за пределами заявленных папок .pex?

Ответы [ 2 ]

0 голосов
/ 13 ноября 2018

В идеале вы не должны полагаться на локальные данные в своей топологии. Было бы лучше поместить любые данные, к которым ваши болты должны иметь доступ, во внешнюю систему, такую ​​как база данных или хранилище ключей: значений. Тогда вы получите свои болты для запроса (и локального кэширования в памяти) этих данных. Это также дает преимущество лучшего масштабирования, если вам нужно добавить больше копий каждого болта, поскольку вы избегаете возможного конфликта ресурсов в локальных файлах.

Если вы действительно хотите, чтобы данные были доступны для болтов локально, ответ зависит от того, какой планировщик вы используете. Это может включать добавление файлов в образ контейнера экземпляра heron, который использует ваш планировщик, и может означать перестройку контейнеров при каждом изменении данных. Опять же, я бы предложил использовать внешнее хранилище данных.

0 голосов
/ 13 ноября 2018

После запуска экземпляра heron он должен иметь доступ к файлам в том же контейнере.Одним из примеров является то, что они могут записывать журналы в ./logs/INSTANCE_ID.log, что означает, что он имеет доступ на запись к этим файлам.

Не могли бы вы проверить, доступны ли файлы данных внутри работающего контейнера, и экземпляриспользуя правильный путь к файлу для доступа к этим файлам?

...