Размер байта Apache Spark для каждой записи avro - PullRequest
0 голосов
/ 17 марта 2019

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

 root
 |-- useId: string (nullable = true)
 |-- useTime: double (nullable = true)
 |-- appVersion: string (nullable = true)
 |-- useDetails: array (nullable = true)
 |    |-- element: struct (containsNull = true)
 |    |    |-- type: integer (nullable = true)
 |    |    |-- something: double (nullable = true)
 |    |    |-- somethingElse: double (nullable = true)
 .
 .
 .

... тогда я, по сути, хочу сделать что-то вроде select appVersion, sum(bytesPerRecord) from df group by appVersion, чтобы измерить размеры полезной нагрузки (или даже количество символов) для выпущенной версии приложения. Я не нашел никаких готовых решений для этого, и я не искатель искры. Возможно ли это?

...