春雨里洗过的太阳

世间所有的相遇,都是久别重逢

Kafka消息队列 一消息队列概述 1 kafka企业级消息系统kafka企业级消息系统 为何使用消息系统 在没有使用消息系统以前,我们对于传统许多业务,以及跨服务器传递消息的时候,会采用串行方式或者并行方法; 与串行的差别是并行的方式可以缩短程序整体处理的时间。 消息系统: 消息系统负责将数据从一个应用程序传送到另一个应用程序,因此应用程序可以专注于数据,但是不必担心 如何共享它。分布式消息系统基于可靠的消息队列的概念。消息在客户端应用程序和消息传递系统之间的异步排队。 有两种类型的消息模式可用 点对点;发布-订阅消息系统 点对点消息系统中,消息被保留在队列中,一个或者多个消费者
阅读全文 »

Oozie 一 概述 * 是一个工作流调度软件 本身属于cloudera 后来贡献给了apache * oozie目的根据一个定义DAG(有向无环图)执行工作流程 * oozie本身的配置是一种xml格式的配置文件 oozie跟hue配合使用将会很方便 * oozie特点:顺序执行 周期重复定时 可视化 追踪结果 二 架构 Oozie Client:提供命令行、java api、rest等方式,对Oozie的工作流流程的提交、启动、运行等操作; Oozie WebApp:即 Oozie Server,本质是一个java应用。可以使用内置的web容器,也可以使用外置的web容器;
阅读全文 »

一 简介 ​ impala来自于cloudera,后来贡献给了apache ​ impala是cloudera提供的一款高效率的sql查询工具,提供实时的查询效果,官方测试性能比hive快10到100倍,其sql查询比sparkSQL还要更加快速,号称是当前大数据领域最快的查询sql工具, ​ impala是参照谷歌的新三篇论文(Caffeine–网络搜索引擎、Pregel–分布式图计算、Dremel–交互式分析工具)当中的Dremel实现而来,其中旧三篇论文分别是(BigTable,GFS,MapReduce)分别对应我们即将学的HBase和已经学过的HDFS以及MapReduce。
阅读全文 »

Sqoop 一 简介 Apache Sqoop是在Hadoop生态体系和RDBMS体系之间传送数据的一种工具。 ​ Sqoop工作机制是将导入或导出命令翻译成mapreduce程序来实现。在翻译出的mapreduce中主要是对inputformat和outputformat进行定制。 Hadoop生态系统包括:HDFS、Hive、Hbase等 RDBMS体系包括(关系型数据库):Mysql、Oracle、DB2等 Sqoop也可以理解为:“SQL 到 Hadoop 和 Hadoop 到SQL”。 站在Apache的立场数据可以分为导入和导出: Import:数据导入。RDBMS—–
阅读全文 »

一 概述 ​ flume是一个高可用,高可靠的,分布式的海量日志采集,聚合和传输的软件.特别指的是数据流转的过程,或者说是数据搬运的过程。把数据从一个存储介质通过flume传递到另一个存储介质中。 ​ 核心是把数据从数据源(source)收集过来,再将收集的数据送到指定的目的地(sink).为保证一定能送到目的地,再送到目的地之前,会先缓存数据(channel),等到数据到达目的地后,flume删除缓存. ​ flume支持定义各类数据发送方,用于收集各种类型数据,同时,Flume支持定制各种数据接受方,用于最终存储数据。一般的采集需求,通过对flume的简单配置即可实现。针对特殊场景也具
阅读全文 »

Hive hive中所有查询除了select * from table 其他都要通过MapReduce方式执行 即使只有一行一列 如不是select * from table 也要查询8,9秒. 1. 数据仓库 1.1. 基本概念 英文名称为Data Warehouse,可简写为DW或DWH。数据仓库的目的是构建面向分析的集成化数据环境,为企业提供决策支持(Decision Support)。 数据仓库是存数据的,企业的各种数据往里面存,主要目的是为了分析有效数据,后续会基于它产出供分析挖掘的数据,或者数据应用需要的数据,如企业的分析性报告和各类报表等。 可以理解为:面向分析的存储系统
阅读全文 »

MapReduce详解 1 .MapReduce的运行机制详解 全流程: 1.1:MapTask 工作机制 简单概述:inputFile通过split被逻辑切分为多个split文件,通过Record按行读取内容给map(用户自己实现的)进行处理,数据被map处理结束之后交给OutputCollector收集器,对其结果key进行分区(默认使用hash分区),然后写入buffer,每个map task都有一个内存缓冲区,存储着map的输出结果,当缓冲区快满的时候需要将缓冲区的数据以一个临时文件的方式存放到磁盘,当整个map task结束后再对磁盘中这个map task产生的所有临时文件做合并
阅读全文 »

hadoop的核心 MapReduce 1. MapReduce 介绍 MapReduce思想在生活中处处可见。或多或少都曾接触过这种思想。MapReduce的思想核心是“分而治之”,适用于大量复杂的任务处理场景(大规模数据处理场景)。 * Map负责“分”,即把复杂的任务分解为若干个“简单的任务”来并行处理。可以进行拆分的前提是这些小任务可以并行计算,彼此间几乎没有依赖关系。 * Reduce负责“合”,即对map阶段的结果进行全局汇总。 * MapReduce运行在yarn集群 1. ResourceManager 2. NodeManager 这两个阶段
阅读全文 »

Hadoop 一概述 狭义上来说Hadoop就是: * HDFS :分布式文件系统 * MapReduce : 分布式计算系统 * Yarn:分布式样集群资源管理 广义上来说: Hadoop指代大数据的一个生态圈,包括很多其他软件: 历史版本与发行公司 2.1 Hadoop历史版本 1.x版本系列:hadoop版本当中的第二代开源版本,主要修复0.x版本的一些bug等 2.x版本系列:架构产生重大变化,引入了yarn平台等许多新特性 3.x版本系列: 加入多namenoode新特性 2.2 Hadoop三大发行版公司 * 免费开源版本apache: http:
阅读全文 »

Hadoop的核心 Hdfs 1. HDFS概述 1.1 介绍 在现代的企业环境中,单机容量往往无法存储大量数据,需要跨机器存储。统一管理分布在集群上的文件系统称为分布式文件系统 。 ​ HDFS(Hadoop Distributed File System)是 Apache Hadoop 项目的一个子项目. Hadoop 非常适于存储大型数据 (比如 TB 和 PB), 其就是使用 HDFS 作为存储系统. HDFS 使用多台计算机存储文件, 并且提供统一的访问接口, 像是访问一个普通文件系统一样使用分布式文件系统. 1.2 历史 1. Doug Cutting 在做 Lucene
阅读全文 »