FAQ第二期 | Spark案例实战答疑
蔡元楠
该思维导图由 AI 生成,仅供参考
你好,我是蔡元楠。
这里是第二期答疑,上周我们结束了 Spark 部分的内容,时隔一周,我们的 Spark 案例实战答疑终于上线了。
通过 10 讲的 Spark 学习,相信你已经对 Spark 的基本特性有了深入的了解,也基本掌握了如何使用各类常用 API,如 RDD、DataSet/DataFrame、Spark Streaming 和 Structured Streaming。今天我将针对模块三中提出的一些共性留言做一个集中答疑。
我首先要为积极留言的同学们点个赞,感谢同学们亲自动手实践,有的同学还通过查阅官方 API 文档的形式找出了正确的实现方式,这非常值得鼓励。
第 18 讲
在第 18 讲中,kylin 同学留言问到,为什么用我们通篇用的是 DataFrame API 而不是 DataSet。这是因为 PySpark 的 SQL 库只有 DataFrame,并没有 DataSet。不过在 Scala 和 Java 中,DataSet 已经成为了统一的 SQL 入口。
斯盖丸同学问道,第 18 讲代码中 groupBy(‘value’) 中 value 是什么意思?
这里我说一下,SparkSession.read.text() 读取文件后生成的 DataFrame 只有一列,它的默认名字就是“value”。
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
本文是蔡元楠的第二期答疑,主要围绕Spark案例实战展开。文章内容涵盖了读者在学习Spark过程中提出的问题和疑惑,并对这些问题进行了详细的解答和讨论。作者首先解释了为什么在讲解中主要使用DataFrame API而不是DataSet,并对一些具体的代码细节进行了解释。在讨论中,作者还提到了Spark在语言支持、Inner-Join和Outer-Join等方面的局限性,并对如何改进Spark进行了探讨。此外,作者还对Flink相比Spark的优势进行了介绍,强调了Flink在窗口支持方面的优势。整体而言,本文通过解答读者提出的问题,深入探讨了Spark的技术特点和局限性,并对其与其他数据处理框架的比较进行了分析,为读者提供了一次全面的技术知识盘点。
仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《大规模数据处理实战》,新⼈⾸单¥59
《大规模数据处理实战》,新⼈⾸单¥59
立即购买
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
全部留言(6)
- 最新
- 精选
- 楚翔style老师,请教个问题: 1.spark多表做join,表里的数据都要加载到内存的吗? 2.假设都是上亿条数据,每张表有500+字段;导致内存不足,除了硬件角度处理,代码角度能否解决?2019-08-164
- 王盛武想听老师讲讲storm与其它大数据框架的差异2019-06-212
- coder老师,再问两个问题: 1、> PySpark 现在不支持 DataSet,只有 Scala 和 Java 支持。这是由语言特性决定的,Python 是动态类型的语言,而 DataSet 是强类型的,要求在编译时检测类型安全。所以,在所有用 Python 的代码例子中,我用的都是 DataFrame。 怎么理解动态类型的语言不支持强类型的数据结构,编译时检测类型安全都在检测类型哪些方面的安全性?强类型和弱类型这种概念出现了很多次,但是一直不理解它们的含义,怎么从编译原理的角度去理解强类型和弱类型? 2、流数据确实是无边界的,所以它们算出来的结果背后应该会有一套概率理论模型做支撑,准确说应该是一套基于局部时间窗口和全局数据概率统计模型的。也就是说我想得到最大值,这个最大值往往是局部时间窗口的,但是我如果想得到全局的最大值,岂不是要从流数据的源头就开始统计? 基于局部时间窗口算出来的一般不是最准确的,那么对于那些需要非常精确处理结果的应用场景,流处理框架是不是就不适用了,或者需要结合其它技术来完善? 流数据框架在哪些场景中是不适用的?2019-06-141
- FengX^_^谢谢老师答疑解惑2019-06-141
- 西南偏北多谢老师的答疑2019-06-14
- Geek_f89209老是,能介绍一下pyspark处理hbase数据源的方案吗,happybase虽然流行,但限制很多,无法批量按照每个row特定的前缀过滤数据?我们目前的方案是用java原生这个处理hbase的进程,用py4j和这个进程通信2019-06-141
收起评论