-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathindex.html
221 lines (140 loc) · 10.2 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
<!DOCTYPE html>
<html>
<head>
<title>Spark原理与实践</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
</head>
<body>
<h1>Spark原理与实践</h1>
<p>陈一帅</p>
<p><a href="mailto:[email protected]">[email protected]</a></p>
<p>北京交通大学电子信息工程学院网络智能实验室</p>
<img src="figures/cn.png" width="150" alt="2dmark" />
<p>
课程源自Databrick官方教程,搭配 <a href="https://piotrszul.github.io/spark-tutorial/">Piotrszul
Spark入门练习代码</a> (<a href="https://github.com/piotrszul/spark-tutorial">Github</a>),采用 <a href="https://www.hwtelcloud.com/">华为网络人工智能引擎在线实验环境</a> ,是 Spark 大数据研发的入门课。每个视频几分钟,一路下来,带大家在动手中,走上大数据研发的职业道路。详细课程信息请访问:https://yishuai.github.io/spark
</p>
<h3>目录</h3>
<ol>
<li>Spark</li>
<ul>
<li><a href="#intro">优点和特性</a></li>
<li><a href="#memory">基于内存的数据分享</a></li>
<li><a href="#component">内核和组件</a></li>
</ul>
<li>RDD</li>
<ul>
<li><a href="#rdd">弹性分布式数据集(RDD)</a></li>
<li><a href="#partition">分区并行机制</a></li>
<li><a href="#method">RDD操作方法</a></li>
<li><a href="#rdd-lab">RDD编程练习</a></li>
<li><a href="#mit">MIT RDD编程示例</a></li>
</ul>
<li>DataFrame</li>
<ul>
<li><a href="#dataframe">DataFrame编程</a></li>
<li><a href="#df">DataFrame入门示例</a></li>
<li><a href="#pandas">Python数据处理</a></li>
</ul>
<li>组件</li>
<ul>
<li><a href="#stream">Streaming流式计算</a></li>
<li><a href="#ml">机器学习</a></li>
</ul>
<li>实验</li>
<ul>
<li><a href="#lab">实验介绍</a></li>
<li><a href="#prince">单词计数示例</a></li>
</ul>
<li>实验平台</li>
<ul>
<li><a href="#spark">实验平台</a></li>
<li><a href="#naienb">Jupyter Notebook</a></li>
<li><a href="#naieup">NAIE文件上传技巧</a></li>
</ul>
</ol>
<!-- <h2><a name="">、</a></h2>
<!-- == -->
<h1>A. Spark</h1>
<h2><a name="intro">一、优点和特性</a></h2>
<p>Spark是目前最流行的大数据计算平台。我们首先简单了解一下它的各项优点和特性。</p>
<p><a href="https://www.bilibili.com/video/BV1hT4y1F7xw/">B站视频</a></p>
<p>课程PPT:<a href="ppt/1-intro.pdf">PDF</a>(2MB)</p>
<h2><a name="memory">二、基于内存的数据分享</a></h2>
<p>Spark极大地提高了大数据计算的速度,这来自于它基于内存的数据分享机制。本节比较各种存储介质访问的性能差异,获得对Spark基于内存的数据分享机制的理解。</p>
<p><a href="https://www.bilibili.com/video/BV1RZ4y1G7Xn/">B站视频</a></p>
<h2><a name="component">三、Spark的内核和组件</a></h2>
<p>本节介绍Spark的内核和各组成模块,包括Spark SQL、数据流、机器学习库和图计算库</p>
<p><a href="https://www.bilibili.com/video/BV1yz4y1o7yg/">B站视频</a></p>
<h1>B. RDD</h1>
<h2><a name="rdd">四、弹性分布式数据集(RDD)</a></h2>
<p>弹性分布式数据集(RDD)是Spark的核心数据结构。它是只读的、分布式的、容错的。对它的操作是Lazy(懒)的。理解RDD是理解Spark工作机制的关键。本节介绍它的各项核心设计决策背后的思想,请一定细心领会。</p>
<p><a href="https://www.bilibili.com/video/BV15t4y1i7za/">B站视频</a></p>
<p>课程PPT:<a href="ppt/4-rdd.pdf">PDF</a>(3.4MB)</p>
<h2><a name="partition">五、分区并行机制</a></h2>
<p>Spark通过将RDD进行分区,然后在各分区上并行计算,实现高性能分布式计算。本节介绍分区的原理、性能和优化方法。本节内容对优化Spark性能非常重要,请细心领会。</p>
<p><a href="https://www.bilibili.com/video/BV1uA411E74q/">B站视频</a></p>
<h2><a name="method">六、RDD操作方法</a></h2>
<p>Spark提供了基于Map-Reduce计算范式的各种RDD操作方法,同时设计了Lazy的操作执行方式。本节介绍它提供的各种操作函数,并通过实例讲解这些函数的使用,以及Lazy方式带来的好处。本节对Spark编程非常重要。</p>
<p><a href="https://www.bilibili.com/video/BV1gy4y187Mx/">B站视频</a></p>
<h2><a name="rdd-lab">七、RDD编程练习</a></h2>
<p>本节基于华为NAIE Spark在线练习平台,练习Piotrszul Spark入门代码的第一课:RDD基础。这是一个简单的文本处理例子,帮助你熟悉RDD编程的基本流程和函数。实验手册如下:</p>
<p><a href="https://www.bilibili.com/video/BV13a4y1s7G2/">B站视频</a></p>
<p>实验手册1:Spark环境配置和使用,<a href="lab/ppt/1-env.pptx">PPT</a>(941KB)</p>
<p>实验手册2:RDD和DataFrame练习,<a href="lab/ppt/2-rdd-df.pptx">PPT</a>(60KB)</p>
<h2><a name="mit">八、MIT RDD编程示例</a></h2>
<p>MIT(麻省理工学院)经典课程 6.824 分布式系统中,有一节Spark课程。本节我们一起来看这个课程中讲解的网页PageRank RDD编程实例,进一步提高我们对RDD编程的认识。</p>
<p><a href="https://www.bilibili.com/video/BV17V411y7Br/">B站视频</a></p>
<h1>C. DataFrame</h1>
<h2><a name="dataframe">九、DataFrame编程</a></h2>
<p>实际中,Spark提供了SQL和DataFrame编程接口,让我们能够快速上手大数据编程。本节介绍这些编程接口,然后基于华为NAIE Spark在线大数据实验平台,练习Piotrszul Spark入门练习代码的第二课:结构化数据编程。学习了这一课,你就可以开始你的Spark编程之旅了。实验手册如下。Enjoy!</p>
<p><a href="https://www.bilibili.com/video/BV1a5411L7vt/">B站视频</a></p>
<p><a href="ppt/9-dataframe.pdf">PPT</a>(PDF,3.4MB)</p>
<h2><a name="df">十、DataFrame入门示例</a></h2>
<p>本节介绍Piotrszul
Spark入门练习代码中的DataFrame入门代码。 DataFrame在Spark大数据编程中非常重要,请一定要看看哦。</p>
<p><a href="https://www.bilibili.com/video/BV1nz4y1C7HC/">B站视频</a></p>
<h2><a name="pandas">十一、Python数据处理</a></h2>
<p>本节介绍用Python进行数据分析和处理时常用到的几个库:Pandas,NumPy,SciPy,Matplotlib。学会了它们,你就可以用Python进行基本的数据分析了哦,快快学习吧。</p>
<p><a href="https://www.bilibili.com/video/BV1Ya411F7La/">B站视频</a></p>
<h1>D. 组件</h1>
<h2><a name="stream">十二、Streaming流式计算</a></h2>
<p>Streaming流式计算能及时给出分析结果,帮助决策、管理和控制,因此应用越来越广。本节介绍Spark流式计算的基本原理,并讲解一个代码。</p>
<p><a href="https://www.bilibili.com/video/BV1kZ4y1V7xX/">B站视频</a></p>
<p><a href="ppt/16-streaming.pdf">PPT</a>(PDF,1.7MB)</p>
<h2><a name="ml">十三、机器学习</a></h2>
<p>人工智能时代,机器学习是同学们必须掌握的技能。本节介绍Spark机器学习相关的各种函数,并定位到各个实验中。通过本节及其配套实验的练习,你将打开机器学习的大门。加油!我们还提供了一个基于Python机器学习库SciKit Learn的Python机器学习入门指南,它能帮助你快速上手Python机器学习,快来看看吧。</p>
<p><a href="https://www.bilibili.com/video/BV1eK4y1E7b8/">B站视频</a></p>
<p><a href="ppt/15-ml.pdf">PPT</a>(PDF,1.1MB)</p>
<p>张璇,Python机器学习入门指南:<a href="/lab/zhangxuan-guide.docx">Doc</a>(180KB),<a
href="/lab/zhangxuan-guide.pdf">PDF</a>(343KB)</p>
<h1>E. 实验</h1>
<h2><a name="lab">十四、实验介绍</a></h2>
<p>本节我们将提供给大家一系列的实验,包括数据和代码,供大家练习。掌握Spark编程的秘诀是什么呢?就是编。好好做好这些实验吧。</p>
<p><a href="https://www.bilibili.com/video/BV1y54y1r7DS/">B站视频</a></p>
<p>实验手册3:Spark 大数据练习,<a href="lab/ppt/3-lab.pptx">PPT</a>(64KB)</p>
<h2><a name="prince">十五、单词计数示例</a></h2>
<p>本节介绍利用 RDD 和 DataFrame 对文本中的单词进行筛选、频率统计、排序、和结果保存。这项工作在大数据编程中经常遇到,请一定要看看哦。</p>
<p><a href="https://www.bilibili.com/video/BV12K41137kS/">B站视频</a></p>
<p><a href="">B站视频</a></p>
<p><a href="/lab/pandas-cheat-sheet.pdf">Pandas函数速查表</a>(PDF,180KB)</p>
<h1>F. 实验平台</h1>
<h2><a name="spark">十六、实验平台</a></h2>
<p>Spark是目前大数据系统的主流平台。安装Spark非常简单,你也可以利用很多在线的Spark实验环境,快来看看吧。</p>
<p><a href="https://www.bilibili.com/video/BV1jA41147T9/">B站视频</a></p>
<p>课程PPT:<a href="ppt/13-spark.pptx">PPT</a>(1MB)</p>
<h2><a name="naienb">十七、Jupyter Notebook</a></h2>
<p>本节以华为NAIE Python/PySpark 在线实验平台为例,讲解如何使用 Jupyter Notebook 这个超级友好的工具,在浏览器中进行Python编程。Jupyter Notebook 太好用了,你一定会喜欢它的。快来看看吧。</p>
<p><a href="https://www.bilibili.com/video/BV1WZ4y1g7Zt/">B站视频</a></p>
<!-- <h2><a name="naieup">十八、NAIE文件上传技巧</a></h2>
<p>本节介绍在华为NAIE平台上传文件后,找到该文件,确定它的路径的方法。很多同学在操作中遇到这一难题,请一定要看看哦。</p>
<p><a href="https://www.bilibili.com/video/BV1TV411h7TR/">B站视频</a></p> -->
<!-- <h2><a name="">、</a></h2>
<p></p>
<p><a href="">B站视频</a></p> -->
<!-- <h2 id="致谢">致谢</h2>
<ul>
<li></li>
</ul> -->
</body>
</html>