apache-spark - 每个 avro 记录的 Apache Spark 字节大小
问题描述
我有数百 GB 的 Avro 文件,每个文件都包含数千条与移动应用程序及其使用有关的记录。架构中的键之一是应用程序版本 ID,我需要返回按版本 ID 分组的每条记录的字节大小。如果架构是这样设置的......
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
,以衡量每个已发布版本的应用程序的有效负载大小(或字符数,甚至)。我还没有找到任何现成的解决方案,我也不是火花专家。这可能吗?
解决方案
推荐阅读
- android - 如何使用 Android 样式来控制 Views 的 onClick 行为
- python - 如何在python中使用字典创建颜色条
- java - 在 Andriod studio 3.2 中查找 Sqllite 数据库
- tomcat - 提供者 org.ehcache.jcache.JCacheCachingProvider 不是 Tomcat /lib 中的子类型
- r - Most declarative approach to extract data from strings
- shell - 如何搜索关键字然后列出有关该关键字的所有行?
- jquery - 如何在没有任何页面跳转的情况下删除 dom 元素?
- java - 如何按数字对列表进行排序,如果重复按字符串排序?
- java - 使用 SockJS 到 Spring Boot 2.2.0 CORS 策略的 Websocket:请求的资源上不存在“Access-Control-Allow-Origin”标头
- html - 为什么我的标签和输入出现在我的导航栏中?