В целом: наш код получает данные из Snowflake (= хранилище данных), выполняет определенные преобразования в Python с помощью Spark и возвращает их обратно в Snowflake.
Когда я выполняю эту задачу на своем компьютере, вещиидти хорошо: #inputrows = #outputrows.Когда кто-то выполняет это на своем компьютере, данные теряются.Потерянные данные являются случайными: каждый раз, когда этот человек выполняет задачу, возвращаются как разные строки, так и разное количество строк.Также выполнение задачи на EMR не возвращает правильное количество строк.Мы выполняем точно такую же команду spark-submit.
Мы полагаем, что это не в части «запись в снежинку», поскольку выполнение counts
в коде уже дает неправильное количество строк перед записью в Snowflake.
Возможно ли потерять данные при использовании Spark?