java框架之spring解析

Apache Spark是一个集群计算设计的快速计算。它是建立在Hadoop MapReduce之上,它扩展了 MapReduce 模式,有效地使用更多类型的计算,其中包括交互式查询和流处理。这是一个简单的Spark教程,介绍了Spark核心编程的基础知识。

工业公司广泛的使用 Hadoop 来分析他们的数据集。其原因是,Hadoop框架是基于简单的编程模型(MapReduce),并且它使用的计算解决方案,是可扩展的,柔性的,容错和低成本。 在这里,主要关心的是在查询之间等待时间和等待时间来运行程序处理大型数据集的速度。

Spark由Apache软件基金会对于加快Hadoop计算软件的过程。

作为对一个共同的信念,Spark不是 Hadoop 的修改版本,不依赖于Hadoop,因为它有自己的集群管理。Hadoop仅仅是实现Spark的方式之一。

Spark使用Hadoop的方式有两种- 一种是存储和第二个是处理。由于Spark有自己的集群管理计算,所以一般它使用Hadoop只有存储的目的。

Apache Spark

Apache Spark是一个快速的集群计算技术,设计用于快速计算。它是基于Hadoop MapReduce和它扩展了MapReduce模型,以有效地将其用于多种类型的计算,其中包括交互式查询和流处理。Spark的主要特征是其内存集群计算,增加的应用程序的处理速度。

Spark旨在涵盖广泛的工作负载,如批量应用,迭代算法,交互式查询和分流。除了支持所有这些工作负载在各自的系统中,它减少了维护单独工具的管理负担。

Apache Spark的演变

Spark是在加州大学伯克利分校的AMPLab由马太·扎哈里亚在2009年开发的Hadoop子项目之一。它在2010年开源,在BSD许可下。它在2013年捐赠给Apache Software 基金,现在的Apache Spark已经在2014年2月成为Apache的顶级项目。

Apache Spark特色

Apache Spark有以下特点。

  • 速度 − Spark有助于运行Hadoop集群应用,在存储器高达100倍更快的速度,以及10倍的速度在磁盘上运行时。这可以通过减少读/写操作数到磁盘。它存储在内存中的中间处理数据。
  • 支持多语言 − Spark 提供了Java, Scala, Python的内置API。因此,可以使用不同语言来写应用程序。Spark 配备了80个高层次的操作符进行互动查询。
  • 高级分析 − Spark不只支持“Map”和“reduce”。它还支持SQL查询,流数据,机器学习(ML),和图形的算法。

Spark在Hadoop上建立

下图显示了Spark 如何使用Hadoop组件的三种方式来构建。

有三种方法部署Spark ,如下面所解释。

  • 单机版 − Spark独立部署是指Spark占据在HDFS之上(Hadoop分布式文件系统)并将空间分配给HDFS。在这里,Spark和MapReduce将并列覆盖所有Spark的作业集群。
  • Hadoop Yarn − Hadoop Yarn部署方式,简单地说,spark运行在Yarn没有任何必要预安装或使用root访问权限。它有助于Spark融入Hadoop生态系统和Hadoop堆栈。它允许在其它部件叠上层的顶部上运行。
  • Spark 在 MapReduce (SIMR) − Spark在MapReduce的用于启动spark作业,除了独立部署。通过SIMR,用户可以启动Spark和使用Shell,而不需要任何管理权限。

Spark组件

下图说明了Spark的不同组成部分。

Apache Spark 核心

Spark核心是底层一般执行引擎,所有其他的功能都是建立在Spark的平台之上。 它提供了内存计算和引用数据集在外部存储系统。

Spark SQL

星火SQL是引入了一种名为SchemaRDD一个新的数据抽象,它提供了结构化和半结构化数据的支持,它是Spark核心的组成部分。

Spark 数据流

Spark数据流充分利用Spark核心快速调度能力进行流分析。它摄取的数据在小型分批进行RDD(弹性分布式数据集),对这些小批量的数据转换。

MLlib (机器学习库)

MLlib是一个分布式的机器学习框架的分布式存储器为基础的Spark架构。它根据基准,由MLlib开发商对交替最小二乘(ALS)实现完成。Spark MLlib 9倍快于Hadoop基于磁盘的版本(前Mahout中获得了星火接口)Apache Mahout 。

GraphX

GraphX是Spark顶部上的分布式图形处理框架。它提供了用于表达图表计算,并可以通过使用预凝胶抽象API来建模用户定义的图形的API。

原文地址:https://www.cnblogs.com/ybh777/p/10829801.html

时间: 2024-07-31 05:03:16

java框架之spring解析的相关文章

java框架篇---spring AOP 实现原理

什么是AOP AOP(Aspect-OrientedProgramming,面向方面编程),可以说是OOP(Object-Oriented Programing,面向对象编程)的补充和完善.OOP引入封装.继承和多态性等概念来建立一种对象层次结构,用以模拟公共行为的一个集合.当我们需要为分散的对象引入公共行为的时候,OOP则显得无能为力.也就是说,OOP允许你定义从上到下的关系,但并不适合定义从左到右的关系.例如日志功能.日志代码往往水平地散布在所有对象层次中,而与它所散布到的对象的核心功能毫无

玩转Java框架之详细解析

A 代码生成器(开发利器);     增删改查的处理类,service层,mybatis的xml,SQL( mysql   和oracle)脚本,   jsp页面 都生成   就不用写搬砖的代码了,生成的放到项目里,可以直接运行B 阿里巴巴数据库连接池druid;  数据库连接池  阿里巴巴的 druid.Druid在监控.可扩展性.稳定性和性能方面都有明显的优势C 安全权限框架shiro ;  Shiro 是一个用 Java 语言实现的框架,通过一个简单易用的 API 提供身份验证和授权,更安

java框架篇---spring aop两种配置方式

第一种:注解配置AOP 注解配置AOP(使用 AspectJ 类库实现的),大致分为三步: 1. 使用注解@Aspect来定义一个切面,在切面中定义切入点(@Pointcut),通知类型(@Before, @AfterReturning,@After,@AfterThrowing,@Around). 2. 开发需要被拦截的类. 3. 将切面配置到xml中,当然,我们也可以使用自动扫描Bean的方式.这样的话,那就交由Spring AoP容器管理. 另外需要引用 aspectJ 的 jar 包:

Java框架之Spring(四)

本文主要讲述在Spring中 1 注解方式装配 2 以自动扫描把组件纳入spring容器中管理 3 面象切面编程-代理的jdk 版实现 4 使用 Cglib 生成代理 5 aop编程的一些概念 6 使用 Spring 创建代理对象(注解方式) 7 使用 Spring 创建代理对象(基于XML配置的方式) 8 关于Spring JDBC 一.注解方式装配 1) 导入jar包 2) 引入名称空间 Spring-context <beans xmlns="http://www.springfra

Java框架之Spring MVC(一)

一.Spring简介 Spring MVC是当前最优秀的 MVC 框架,自从Spring 2.5 版本发布后,由于支持注解配置,易用性有了大幅度的提高.Spring 3.0 更加完善,实现了对 Struts 2 的超越.现在越来越多的开发团队选择了Spring MVC. 1)Spring3 MVC使用简单,学习成本低.学习难度小于Struts2,Struts2用不上的多余功能太多 2)Spring3 MVC很容易就可以写出性能优秀的程序,Struts2要处处小心才可以写出性能优秀的程序(指MVC

java框架篇---spring IOC 实现原理

IOC(DI):其实这个Spring架构核心的概念没有这么复杂,更不像有些书上描述的那样晦涩.java程序员都知道:java程序中的每个业务逻辑至少需要两个或以上的对象来协作完成,通常,每个对象在使用他的合作对象时,自己均要使用像new object() 这样的语法来完成合作对象的申请工作.你会发现:对象间的耦合度高了.而IOC的思想是:Spring容器来实现这些相互依赖对象的创建.协调工作.对象只需要关系业务逻辑本身就可以了.从这方面来说,对象如何得到他的协作对象的责任被反转了(IOC.DI)

java框架篇---spring hibernate整合

在会使用hibernate 和spring框架后 两个框架的整合就变的相当容易了, 为什么要整合Hibernate?1.使用Spring的IOC功能管理SessionFactory对象 LocalSessionFactoryBean2.使用Spring管理Session对象  HibernateTemplate3.使用Spring的功能实现声明式的事务管理 第一步:搭建hibernate环境(包括引入hibernate的jar,包配置数据源,建立类和表的映射),为什么这么做.我觉得hiberna

java框架篇---spring 依赖注入

spring依赖注入的方式有4种 构造方法注入 属性注入 工厂注入 注解注入 下面通过一个实例统一讲解: User.java package com.bjsxt.model; public class User { private String username; private String password; public User(){} public User(String username, String password) { super(); this.username = use

java框架篇---spring IOC依赖注入

spring依赖注入的方式有4种 构造方法注入 属性注入 工厂注入 注解注入 下面通过一个实例统一讲解: User.java package com.bjsxt.model; public class User { private String username; private String password; public User(){} public User(String username, String password) { super(); this.username = use