Databricks Apache Spark快速入门
这是Databricks快速入门指南的内容。
开始学习 Apache Spark | 在 AWS 上使用 Databricks [截至 2021 年 3 月 17 日]。
在这个教程中,我们将帮助您立即开始使用Apache Spark。在简要介绍了关键概念后,我们将立即编写第一个Apache Spark应用程序。在其他教程模块中,您可以根据自己的兴趣进一步加深理解。
在这个模块中,你将学习以下内容:
-
- キーとなるApache Sparkインタフェース
-
- Apache Sparkアプリケーションことはじめ
- Databricksデータセットにアクセスする
重要文件
请完成面向用户的Databricks入门指南。
火花接口
Apache Spark有三个主要接口需要理解:弹性分布式数据集(RDD),数据框(DataFrame)和数据集(Dataset)。
レジリエント分散データセット: 一番最初のApahce Sparkの抽象化レイヤーは、レジリエント分散データセット(RDD)でした。マシンの集合体(クラスター)に渡って配置される、1種類以上のデータオブジェクトのシーケンスに対するインタフェースです。
データフレーム: PythonのpandasライブラリやR言語でおなじみのデータフレームのコンセプトに近しいものです。Dataframe APIは、Java、Python、R、Scalaで利用できます。
データセット: データフレームとRDDを組み合わせたものです。データフレームの利便性を保ったまま、型インタフェースを提供します。データセットAPIは、JavaとScalaで利用できます。
在许多情况下,由于对数据框和数据集进行了性能优化,因此很少使用RDD。然而,从以下几个理由来理解RDD的抽象化是很重要的。
-
- Sparkが高速に動作し、データの証跡を得るために、RDDは基盤となるインフラストラクチャです。
-
- Sparkのより高度なコンポーネントを使う際に、RDDを使用する必要があるかもしれません。
Spark UIの可視化はRDDを参照しています。
在开发Spark应用程序时,特别是要参考Apache Spark数据框架教程和Datasets教程(英文)。
开始使用Apache Spark应用程序。
为了编写第一个Spark应用程序,您需要在Databricks笔记本单元中添加代码。在此示例中,我们将使用Python。您还可以参考Apache Spark快速入门指南获取更详细的信息。
要显示Databricks文件系统中文件夹的内容,请执行以下操作。
# Take a look at the file system
display(dbutils.fs.ls("/databricks-datasets/samples/docs/"))

使用以下命令,我们将使用在所有笔记本中可用的SparkSession实例spark。要读取README.md文本文件并创建名为textFile的数据框,可以执行以下操作。
textFile = spark.read.text("/databricks-datasets/samples/docs/README.md")
要计算文本文件的行数,可以在数据框中应用计数操作。
textFile.count()

也许您在这里注意到了一件事。 在第二个命令中读取文本文件时没有显示任何结果,但在执行count指令的第三个命令中却显示了结果。 这是因为前者是转换处理(transformation),而后者是操作(action)。 转换处理是惰性的(lazy),只有在执行操作时才会执行。 这使得Spark能够优化性能(例如,在执行连接之前进行过滤),而不是按顺序执行命令。 有关转换处理和操作的完整列表,请参阅Apache Spark编程指南中的Transformations和Actions部分。
DataBricks 数据集
在Databricks工作区中,存储了各种数据集,可以用于学习Spark和测试算法。通过快速入门指南,您将能够查看这些数据集。这些数据集被存储在/databricks-datasets中。
笔记本电脑
以下是示例笔记本。
-
- PythonによるSparkクイックスタート
- Quick Start Using Scala – Databricks(英語)
Databricks 免费试用
达帝布鲁克免费试用