个性化阅读
专注于IT技术分析

什么是ASD?

本文概述

RDD(弹性分布式数据集)是Spark的核心抽象。它是元素的集合, 分布在集群的各个节点上, 因此我们可以对其执行各种并行操作。

有两种创建RDD的方法:

  • 并行化驱动程序中的现有数据
  • 引用外部存储系统中的数据集, 例如共享文件系统, HDFS, HBase或提供Hadoop InputFormat的任何数据源。

并行集合

要创建并行化的集合, 请在驱动程序中的现有集合上调用SparkContext的parallelize方法。复制集合的每个元素以形成可以并行操作的分布式数据集。

val info = Array(1, 2, 3, 4)
val distinfo = sc.parallelize(info)

现在, 我们可以并行操作分布式数据集(distinfo), 例如distinfo.reduce((a, b)=> a + b)。

外部数据集

在Spark中, 可以从Hadoop支持的任何类型的存储源(例如HDFS, Cassandra, HBase甚至我们的本地文件系统)创建分布式数据集。 Spark提供了对文本文件, SequenceFiles和其他类型的Hadoop InputFormat的支持。

SparkContext的textFile方法可用于创建RDD的文本文件。此方法获取文件的URI(计算机上的本地路径或hdfs://), 并读取文件的数据。

RDD

现在, 我们可以通过数据集操作来操作数据, 例如, 我们可以使用map并减少操作的总和, 如下所示:data.map(s => s.length).reduce((a, b)= > a + b)。


赞(0)
未经允许不得转载:srcmini » 什么是ASD?

评论 抢沙发

评论前必须登录!