Источник данных - PullRequest
       5

Источник данных

0 голосов
/ 22 сентября 2019

Я изо всех сил пытаюсь найти информацию о работе с форматом чтения binaryFile в Databricks. У меня есть куча файлов, которые со временем были записаны в смонтированное хранилище с "функциональным эквивалентом" по существуделает их нечитаемыми для человека, то есть:

import zlib

contentStr = '{"data": "sample"}'
contentBytes = contentStr.encode('utf-8')
contentCompress = zlib.compress(contentBytes)

with open('output/sample.bytes', 'wb') as f:
    f.write(contentCompress)

Это на самом деле немного сложнее, так как их содержимое на самом деле тоже шифруется, но я подумал, что я бы загрузил их в фрейм данных, то есть:

df = spark.read.format('binaryFile').load('/mnt/path/')

так что теперь я могу видеть байты, но мне нужны некоторые сведения о наиболее эффективном способе работы с данными, находящимися в столбце байтов кадра данных ...

Я кое-что рассмотрелкак UDF, чтобы в конечном итоге сделать дешифрование и распаковку, но я а) не уверен, как на самом деле написать это, и б) не уверен в производительности .. к счастью, файлы довольно малы (50 КБ), хотя, возможно, не является большой проблемой.. ?

Конечная цель - найти конкретный файл с определенным содержимым.

Даже если не учитывать udf fили сейчас, будет ли что-то подобное этой работе:

import zlib

df.withColumn('uncompressed', zlib.decompress('content'))

Я на самом деле не пробовал это, я набираю это без доступа к каким-либо данным ... так что это просто продумывает нагрузку в данный момент?

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