1、为什么要引入Yarn和Spark。 (1)现有的hadoop生态系统中存在的问题 1)使用mapreduce进行批量离线分析; 2)使用hive进行历史数据的分析; 3)使用hbase进行实时数据的查询; 4)使用storm进行实时的流处理; (2)选用spark的原因 1) 应用于流式计算的S ...
分类:
其他好文 时间:
2021-03-16 13:32:12
阅读次数:
0
RDD是分布式内存的一个抽象概念,是一种高度受限的共享内存模型,即RDD是只读的记录分区的集合,能横跨集群所有节点并行计算,是一种基于工作集的应用抽象。 RDD底层存储原理:其数据分布存储于多台机器上,事实上,每个RDD的数据都以Block的形式存储于多台机器上,每个Executor会启动一个Blo ...
分类:
其他好文 时间:
2019-11-09 19:19:31
阅读次数:
127
spark建立在抽象的RDD上,把不同处理的数据的需求转化为RDD,然后对RDD进行一系列的算子运算,从而得到结果。RDD是一个容错的,并行的数据结构,可以将数据存储到磁盘和内存中,并能控制数据分区,并提供了丰富的API来操作数据。1:RDD的定义及五大特性剖析RDD是分布式内存的一个抽象概念,是一种高度受限的共享内存模型,即RDD时只读的记录分区的集合,能跨集群所有节点并行计算,是一种基于工作集
分类:
其他好文 时间:
2019-09-06 14:32:16
阅读次数:
103
并发模型 常见的并发模型一般包括3类,基于线程与锁的内存共享模型,actor模型和CSP模型,其中尤以线程与锁的共享内存模型最为常见。由于go语言的兴起,CSP模型也越来越受关注。基于锁的共享内存模型与后两者的主要区别在于,到底是通过共享内存来通信,还是通过通信来实现访问共享内存。由于actor模型 ...
分类:
其他好文 时间:
2019-08-18 19:39:03
阅读次数:
86
1、并发编程模型的两个关键问题:线程之间的通信和同步。 2、并发线程模型有两种: (1)共享内存:线程之间有公共状态,通过读-写内存中的公共状态进行隐式通信,显示同步。 (2)消息传递:线程之间没有公共状态,必须通过发送消息进行显示通信,隐式同步。 3、Java的并发采用共享内存模型,线程间的通信总 ...
分类:
编程语言 时间:
2019-07-20 13:06:17
阅读次数:
101
第一、java内存模型 共享内存模型指的就是Java内存模型(简称JMM),JMM决定一个线程对共享变量的写入时,能对另一个线程可见。 从抽象的角度来看,JMM定义了线程和主内存之间的抽象关系:线程之间的共享变量存储在主内存(main memory)中, 每个线程都有一个私有的本地内存(local ...
分类:
其他好文 时间:
2019-07-13 09:28:00
阅读次数:
117
一、并发编程两个关键问题 线程之间如何通信及线程之间如何同步。java并发采用的是共享内存模型 一、并发编程两个关键问题 线程之间如何通信及线程之间如何同步。java并发采用的是共享内存模型 二、JMM内存模型 Java内存模型(即Java Memory Model,简称JMM)本身是一种抽象的概念 ...
分类:
编程语言 时间:
2019-06-27 00:32:55
阅读次数:
150
Apache Spark是一个分布式计算框架,旨在简化运行于计算机集群上的并行程序的编写。 RDD:弹性分布式数据集(Resilient Distributed Dataset)是分布式内存的一个抽象概念,提供了一个高度受限的共享内存模型。一个RDD包含多个分区(Partition)。 DAG:有向 ...
分类:
其他好文 时间:
2018-12-02 19:17:45
阅读次数:
209
基本概念 1.并发编程模型 线程之间的通信机制有两种:共享内存和消息传递。Java的并发采用的是隐式的共享内存模型。 Java内存模型(JMM)是围绕着在并发过程中如何处理原子性、可见性和有序性来建立的。 原子性:基本数据类型的访问读写是具备原子性的(针对long和double有非原子性协定),sy ...
分类:
编程语言 时间:
2018-10-04 11:45:42
阅读次数:
156
Java内存模型 前面讲到了Java线程之间的通信采用的是共享内存模型,这里提到的共享内存模型指的就是Java内存模型(简称JMM),JMM决定一个线程对共享变量的写入何时对另一个线程可见。从抽象的角度来看,JMM定义了线程和主内存之间的抽象关系:线程之间的共享变量存储在主内存(main memor ...
分类:
编程语言 时间:
2018-09-17 19:46:25
阅读次数:
195