Spark S3 Возможные проблемы с согласованностью - PullRequest
0 голосов
/ 19 ноября 2018

У меня есть несколько заданий Spark, которые записывают данные и читают данные из S3. Время от времени (примерно один раз в неделю в течение приблизительно 3 часов) задания Spark не выполняются со следующим исключением:

org.apache.spark.sql.AnalysisException: Path does not exist.

Я обнаружил, что это, вероятно, связано с моделью согласованности в S3, где операции со списками в конечном итоге непротиворечивы. S3 Guard утверждает, что решил эту проблему, но я нахожусь в среде Spark, которая не поддерживает эту утилиту.

Кто-нибудь еще сталкивался с этой проблемой и нашел разумный подход к решению этой проблемы?

1 Ответ

0 голосов
/ 19 ноября 2018
  • Если вы используете AWS EMR, они предлагают согласованную EMR.
  • , если вы используете блоки данных: они предлагают механизм согласованности в их транзакционном IO
  • Как HDP, так и CDH поставляются с S3Guard
  • , если вы используете свой собственный искровой стек, перейдите на Hadoop 2.9+, чтобы получить S3Guard, еще лучше: Hadoop 3.1 для коммиттера S3A с нулевым переименованием.

В противном случае: не используйте S3 в качестве прямого места назначения работы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...