Я пытаюсь вычислить контрольную сумму двоичного файла в pyspark.Я не уверен, правильный ли код или нет
Двоичный файл - 1234FOOB
Код pyspark
Импорт hashlib
Rdd = sc.binaryFiles («путь к файлу 1234FOOB ”)
Rdd.map (лямбда-строка: hashlib.md5 (str (строка)). hexdigest ()). collect ()
Здесь я использую str (строка), хотя в строках двоичного файла нет строк
Результат равен b7358c1d34751a ....... n и т. д.
Вычислил контрольную сумму непосредственно в python, как в
Print (Hashlib.md5 (open («путь к файлу», «rb»). Read ()). Hexdigest ())
Res - 2708e57 ..... n и т. Д.
В идеале оба результата должны быть одинаковыми, но контрольная сумма из rdd и напрямую из файла отличается.Пожалуйста, помогите мне понять, почему это происходит и что я делаю не так.Я бы предпочел исправление с моим кодом Pyspark