大规模数据处理实战
蔡元楠
Google Brain资深工程师
立即订阅
8409 人已学习
课程目录
已完结 46 讲
0/4登录后,你可以任选4讲全文学习。
开篇词 (1讲)
开篇词 | 从这里开始,带你走上硅谷一线系统架构师之路
免费
模块一 | 直通硅谷大规模数据处理技术 (3讲)
01 | 为什么MapReduce会被硅谷一线公司淘汰?
02 | MapReduce后谁主沉浮:怎样设计下一代数据处理技术?
03 | 大规模数据处理初体验:怎样实现大型电商热销榜?
模块二 | 实战学习大规模数据处理基本功 (8讲)
04 | 分布式系统(上):学会用服务等级协议SLA来评估你的系统
05 | 分布式系统(下):架构师不得不知的三大指标
06 | 如何区分批处理还是流处理?
07 | Workflow设计模式:让你在大规模数据世界中君临天下
08 | 发布/订阅模式:流处理架构中的瑞士军刀
09 | CAP定理:三选二,架构师必须学会的取舍
10 | Lambda架构:Twitter亿级实时数据分析架构背后的倚天剑
11 | Kappa架构:利用Kafka锻造的屠龙刀
模块三 | 抽丝剥茧剖析Apache Spark设计精髓 (10讲)
12 | 我们为什么需要Spark?
13 | 弹性分布式数据集:Spark大厦的地基(上)
14 | 弹性分布式数据集:Spark大厦的地基(下)
15 | Spark SQL:Spark数据查询的利器
16 | Spark Streaming:Spark的实时流计算API
17 | Structured Streaming:如何用DataFrame API进行实时数据分析?
18 | Word Count:从零开始运行你的第一个Spark应用
19 | 综合案例实战:处理加州房屋信息,构建线性回归模型
20 | 流处理案例实战:分析纽约市出租车载客信息
21 | 深入对比Spark与Flink:帮你系统设计两开花
模块四 | Apache Beam为何能一统江湖 (8讲)
22 | Apache Beam的前世今生
23 | 站在Google的肩膀上学习Beam编程模型
24 | PCollection:为什么Beam要如此抽象封装数据?
25 | Transform:Beam数据转换操作的抽象方法
26 | Pipeline:Beam如何抽象多步骤的数据流水线?
27 | Pipeline I/O: Beam数据中转的设计模式
28 | 如何设计创建好一个Beam Pipeline?
29 | 如何测试Beam Pipeline?
模块五 | 决战 Apache Beam 真实硅谷案例 (7讲)
30 | Apache Beam实战冲刺:Beam如何run everywhere?
31 | WordCount Beam Pipeline实战
32 | Beam Window:打通流处理的任督二脉
33 | 横看成岭侧成峰:再战Streaming WordCount
34 | Amazon热销榜Beam Pipeline实战
35 | Facebook游戏实时流处理Beam Pipeline实战(上)
36 | Facebook游戏实时流处理Beam Pipeline实战(下)
模块六 | 大规模数据处理的挑战与未来 (4讲)
37 | 5G时代,如何处理超大规模物联网数据
38 | 大规模数据处理在深度学习中如何应用?
39 | 从SQL到Streaming SQL:突破静态数据查询的次元
40 | 大规模数据处理未来之路
专栏加餐 | 特别福利 (4讲)
FAQ第一期 | 学习大规模数据处理需要什么基础?
加油站 | Practice makes perfect!
FAQ第二期 | Spark案例实战答疑
FAQ第三期 | Apache Beam基础答疑
结束语 (1讲)
结束语 | 世间所有的相遇,都是久别重逢
大规模数据处理实战
登录|注册

FAQ第一期 | 学习大规模数据处理需要什么基础?

蔡元楠 2019-05-20
你好,我是蔡元楠。
专栏上线已经一个月了,在这里我要先感谢大家的留言,留言的对答可以使我们互有补益。
这段时间,我发现留言中的很多问题都很有价值,希望你也可以看到。所以,我根据已发布的文章中的思考题,从留言中摘录了一些典型的、常见的问题做出答疑集锦,最终成为了今天你看到的“特别福利篇”。

开篇词”问题精选

问题一:学习大规模数据处理需要有什么基础?
这是一个很好的问题,虽然专栏已经更新了一个月,我还是要把这个开篇词中的提问放进来。就像你看到的那样,有好几位读者都问了类似的问题。
其实在最开始做专栏的内容设计时,我并没有对读者的知识背景作任何假设。
所以,即使是一些基础的技术概念,我也会举例解释一下(如果你已经会了可能会觉得啰嗦,这时候就需要你照顾一下其他同学了)。如果你有一些语言的编程经验(任何语言都可以)的话,看文章的理解速度会快一点。文章中会有一些示例代码,是用 Python 编写的。
但是在设计类型的案例中,我不觉得它对读者有特别的技术要求。
希望你在后面的阅读中提出建议,告诉我有哪些地方我讲得不够清楚,或者解释的过多,我会适当调整内容。
问题二:小型公司程序员学习大规模数据处理的意义?
这个问题问得很好。以客观条件来看,韩程的说法没有问题。
取消
完成
0/1000字
划线
笔记
复制
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
该试读文章来自付费专栏《大规模数据处理实战》,如需阅读全部文章,
请订阅文章所属专栏。
立即订阅
登录 后留言

精选留言(6)

  • HomeyLiu
    数据均匀分片的核心是 哈希函数的设计。
    如果你数据结构和算法不错的话,我觉得这是一个很简单的问题。
    通过hashFunchiton(key)函数,输入key,输出hash值。

    哈希函数设计的特点:
    1》输入的key一样,得到的hash值肯定一样
    2》输入的key不一样,得到的hash值可能一样,也就是hash冲突。
    这个是评判一个哈希函数的好坏的重要标准。
    冲突概率大的哈希函数肯定会引起严重的数据倾斜。极端的例子,
    所有的key的hash值都一样,都跑到一个桶里面去了。

    所以衡量一个哈希函数的好坏:
    1》冲突要小。(例如用素数,还有模拟10进制,弄个26进制,abc可以编码为 0×26的0次方+1×26+2×26的2次方)
    2》计算要快。常用位运算。
    3》key哪怕很小的变动,输出的hash值差距越大越好。

    有很多很经典的hash算法。

    但是如果key一样hash值肯定一样。
    所有key重复的数据很多的话,哈希函数是解决不了问题的。
    必须对key进行组合,只要 组合后的key的重复的比率 不要
    比 哈希冲突的概率 大太多就行。

    2019-05-20
    4
  • 火星人
    老师,请以你专家级的视角,推荐5篇将来可能影响大数据发展趋势的论文吧!

    作者回复: 谢谢你的留言!可以参考我在第22讲里所讲到的论文呀。

    2019-05-20
    3
  • sunsweet
    但是比特币交易平台就是实时的,那是怎么实现呢
    2019-05-23
    2
  • 朱同学
    刚入行时,师傅曾指导我,hash可以做随机,但是不能做key,因为不同平台hash算法可能是不一样的,类似需求推荐使用md5。
    2019-05-21
    2
  • 时间是最真的答案
    感觉不是做大数据领域的同学,读这个专栏还是比较吃力的。专栏设计知识的很广,提升了大家的认识,但不懂大数据相关技术,没法实践,比如spark不懂如何部署,然后用自己所熟悉的需要去实践
    2019-05-22
  • listen
    老师你好,我们是做学生学习情况的,现在要做实时,就是一节课的信息,是一个大json,1-10+M,其中嵌套多个json,由于各个子json的耦合性太强没办法分离,使用kafka的话一条数据太大了,数据是在OSS上,现在是先拉取到hdfs,
    现在是发现3中方法,
    1、java put到hdfs时,mq发送位置信息,sparkstreaming订阅,根据位置拉取
    2、put 到hbase,sparkstreaming 扫描
    3、使用sparkstreaming的textFileStream算子监控路径
    三种方法没种都有很大的缺陷,老师能指点一下吗
    2019-05-21
收起评论
6
返回
顶部