RDD操作详解1——Transformation和Actions概况[转]

Spark算子的作用

下图描述了Spark在运行转换中通过算子对RDD进行转换。 算子是RDD中定义的函数,可以对RDD中的数据进行转换和操作。
rdd_dataspace
1.输入:在Spark程序运行中,数据从外部数据空间(如分布式存储:textFile读取HDFS等,parallelize方法输入Scala集合或数据)输入Spark,数据进入Spark运行时数据空间,转化为Spark中的数据块,通过BlockManager进行管理。
2.运行:在Spark数据输入形成RDD后便可以通过变换算子,如filter等,对数据进行操作并将RDD转化为新的RDD,通过Action算子,触发Spark提交作业。 如果数据需要复用,可以通过Cache算子,将数据缓存到内存。
3.输出:程序运行结束数据会输出Spark运行时空间,存储到分布式存储中(如saveAsTextFile输出到HDFS),或Scala数据或集合中(collect输出到Scala集合,count返回Scala int型数据)。

Spark应用执行机制[转]

Spark应用概念

Spark应用(Application)是用户提交的应用程序。执行模式又Local、Standalone、YARN、Mesos。根据Spark Application的Driver Program是否在集群中运行,Spark应用的运行方式又可以分为Cluster模式和Client模式。
下面是Spark应用涉及的一些基本概念:

弹性分布式数据集RDD概述[转]

弹性分布数据集RDD

RDD(Resilient Distributed Dataset)是Spark的最基本抽象,是对分布式内存的抽象使用,实现了以操作本地集合的方式来操作分布式数据集的抽象实现。RDD是Spark最核心的东西,它表示已被分区,不可变的并能够被并行操作的数据集合,不同的数据集格式对应不同的RDD实现。RDD必须是可序列化的。RDD可以cache到内存中,每次对RDD数据集的操作之后的结果,都可以存放到内存中,下一个操作可以直接从内存中输入,省去了MapReduce大量的磁盘IO操作。这对于迭代运算比较常见的机器学习算法, 交互式数据挖掘来说,效率提升比较大。

你将RDD理解为一个大的集合,将所有数据都加载到内存中,方便进行多次重用。第一,它是分布式的,可以分布在多台机器上,进行计算。第二,它是弹性的,在计算处理过程中,机器的内存不够时,它会和硬盘进行数据交换,某种程度上会减低性能,但是可以确保计算得以继续进行。

Spark与Scala学习[转]

Spark概览

Spark 是一个通用的大规模数据快速处理引擎。可以简单理解为 Spark 就是一个大数据分布式处理框架。

Spark是基于map reduce算法实现的分布式计算框架,但不同的是Spark的中间输出和结果输出可以保存在内存中,从而不再需要读写HDFS,因此Spark能更好地用于数据挖掘与机器学习等需要迭代的map reduce的算法中。

备份namenode的元数据

#!/bin/bash
export dirname=/mnt/tmphadoop/dfs/namesecondary/current/`date +%y%m%d%H`
if [ ! -d ${dirname} ]
then
mkdir  ${dirname}
cp /mnt/tmphadoop/dfs/namesecondary/current/*  ${dirname}
fi
scp -r ${dirname} slave1:/mnt/namenode_backup/
rm -r ${dirname}

Spark Streaming + Kafka集成指南(Kafka broker version 0.8.2.1 or highe)

本文为Spark官方Spark Streaming + Kafka Integration Guide (Kafka broker version 0.8.2.1 or higher)译文,有不足之处还请指正。

本篇我们阐述如何配置Spark Streaming从Kafka接收数据。 有两种方法可以实现:老的方法是使用Receiver和Kafka的高级API实现,新方法则不需要使用Receiver(自Spark 1.3开始)。它们有不同的编程模型,性能特性和语义保证,所以请继续阅读更多细节。 这两种方法都被认为是当前版本的Spark的稳定API。

Apache Kafka 初学者指南[译]

当以正确方式的打开并且用正确的姿势使用的情况下,Kafka其独特的属性,使它成为一个极具吸引力的数据集成选择。

Apache Kafka 最近造成了很大反响。作为Kafka的创建者LinkedLn,是最广为人知的用户。还有很多公司也在用Kafka。

那么对于Kafka大家都想知道些什么:它是做什么的?为什么每个人都想使用它吗?它比现有的解决方案好在哪里?是否有足够的理由替换现有的系统和架构?

在这篇文章中,我们试图回答这些问题。我们首先简要介绍Kafka,然后通过一些应用场景Kafka的一些独特功能。我们还将讨论一些额外用例来对Kafka和现有方案进行对比。

|