hadoop
别和硬盘比记忆
这个作者很懒,什么都没留下…
展开
-
MapReduce执行流程
1、输入拆分将源文件转为InputSplit,只记录数据信息不储存数据,然后转为kv键值对,k:偏移量,v:每行内容。2、map数据处理,返回键值对3、map shuffle:map生成的键值对进入内存环形缓冲区,默认100M,达到80%时进行溢写,溢写之前进行排序(按K)、合并(如果定义)、分区(按reduce个数),每次溢写在磁盘生成一个文件,map执行完后将所有文件合并4、red...原创 2019-03-10 17:31:29 · 108 阅读 · 0 评论 -
Hbase在小米中的应用
简介1、在hbase上层开发结构化存储和对象存储服务。2、基础架构图Hbase上层为存储服务,其中OpenTSDB为时序数据存储服务3、数据备份机制:热备、冷备、Point-in-time热备:通过replication将主hbase集群的数据备份到备hbase集群冷备:对用户的一些表定期的进行snapshot,通过MR任务把snapshot拷贝到一个异构的其他存储服务中(如S3)...原创 2019-07-07 20:23:32 · 579 阅读 · 0 评论 -
hbase读写流程
一、写流程1、Client先访问zookeeper,找到meta表的数据2、根据meta表的数据找到写入数据对应的region信息3、找到对应的regionserver4、把数据分别写到HLog和MemStore上一份5、MemStore达到一个阈值后则把数据刷成一个StoreFile文件。(若MemStore中的数据有丢失,则可以总HLog上恢复)6、 当多个StoreFile文件达...原创 2019-04-09 15:19:43 · 125 阅读 · 0 评论 -
zookeeper
一、是什么分布式协调服务(半数以上节点存活就可正常使用)设计目标是将那些复杂且容易出错的分布式一致性服务封装起来,构成一个高效可靠的原语集,并以一系列简单易用的接口提供给用户使用分布式数据一致性解决方案,分布式应用程序可以基于 ZooKeeper 实现诸如数据发布/订阅、负载均衡、命名服务、分布式协调/通知、集群管理、Master 选举、分布式锁和分布式队列等功能。读效率高写效率低(写时会...原创 2019-04-08 15:52:53 · 120 阅读 · 0 评论 -
hive合并小文件
一、产生小文件的原因1、hive分区可能会产生小文件2、reduce过多会产生过多的结果小文件3、其他二、map端的输入合并sethive.input.format=org.apache.Hadoop.hive.ql.io.CombineHiveInputFormat三、输出端的合并配置解释set hive.merge.mapfiles=truemap only...原创 2019-04-07 21:32:24 · 611 阅读 · 0 评论 -
yarn
包括三个部分:1、ResourceManager:负责全局的资源管理与任务调度。2、NodeManager:负责向ResourceManager汇报当前Node的状态。3、ApplicationMaster:负责申请任务所需要的资源,监控单个任务的运行状态,并且任务失败时重新申请资源过程:1、用户提交job到yarn,其中包括ApplicationMaster;2、Applicatio...原创 2019-03-27 19:26:47 · 108 阅读 · 0 评论 -
kafka
一、是什么:1、一个分布式、支持分区的(partition)、多副本的(replica),基于zookeeper协调的分布式消息系统,2、最大的特性就是可以实时的处理大量数据以满足各种需求场景:比如基于hadoop的批处理系统、低延迟的实时系统、storm/Spark流式处理引擎,web/nginx日志、访问日志,消息服务等等。二、特点1、高吞吐量、低延迟:每秒可以处理几十万条消息;2、...原创 2019-03-30 15:37:14 · 128 阅读 · 0 评论 -
HBase架构
一、查询方式:1、根据单个rowkey查询;2、根据rowkey范围查询;3、全表扫描。注:通过 rowkey+列族+列+时间戳 来唯一确定一个单元格。二、物理储存模型table在行方向上被分割为多个HRegion,每个HRegion分配在一个HRegionServer上;每个HRegion由一个或多个Store组成;每个Store由一个MemStore和0到多个StoreFile...原创 2019-03-23 10:07:12 · 112 阅读 · 0 评论 -
flume基础
一、基本特点flume是一个分布式、高可用的海量日志收集、聚合、传输系统。二、可靠性:当节点出现故障时,日志能够被传送到其他节点上而不会丢失。三种级别的可靠性保障,从强到弱依次分别为:end-to-end(收到数据agent首先将event写到磁盘上,当数据传送成功后,再删除;如果数据发送失败,可以重新发送。Store on failure(当数据接收方crash时,将数据写到本地,待...原创 2019-03-29 17:55:00 · 209 阅读 · 0 评论 -
hive内置函数
1.内置运算符1.1关系运算符运算符类型说明A = B所有原始类型如果A与B相等,返回TRUE,否则返回FALSEA == B无失败,因为无效的语法。 SQL使用”=”,不使用”==”。A <> B所有原始类型如果A不等于B返回TRUE,否则返回FALSE。如果A或B值为”NULL”,结果返回”NULL”。A < B所有原...原创 2019-03-21 20:09:09 · 1064 阅读 · 0 评论 -
hive建表与修改表语句
一、新建表1、基本建表语句CREATE [EXTERNAL] TABLE [IF NOT EXISTS] table_name //EXTERNAL:外部表[(col_name data_type [COMMENT col_comment], …)][COMMENT table_comment] //表描述[PARTITIONED BY (col_name data_type [CO...原创 2019-03-21 18:55:51 · 1101 阅读 · 0 评论 -
hive执行流程
一、基本概念(1) 解释器:解释器的作用是将 HiveSQL 语句转换为抽象语法树(AST)(2) 编译器:编译器是将语法树编译为逻辑执行计划(3) 优化器:优化器是对逻辑执行计划进行优化(4) 执行器:执行器是调用底层的运行框架执行逻辑执行计划二、流程 HiveQL 通过命令行或者客户端提交,经过 Compiler 编译器,运用 MetaStore 中的元数 据进行类型检测和语法分...原创 2019-03-21 17:41:49 · 460 阅读 · 0 评论 -
hive与hdfs交互过程
1、命令行或Web UI发送查询驱动程序(任何数据库驱动程序,如JDBC,ODBC等)来执行。2、 在驱动程序帮助下查询编译器,分析查询检查语法和查询计划或查询的要求。3、 编译器发送元数据请求到Metastore(任何数据库)。4、 Metastore发送元数据,以编译器的响应。5、编译器检查要求,并重新发送计划给驱动程序。到此为止,查询解析和编译完成。6、驱动程序发送的执行计划到执行...原创 2019-03-21 15:56:05 · 1664 阅读 · 0 评论 -
kafka保证数据只正确处理一次
kafka0.11.0.0版本正式支持精确一次处理语义(exactly onece semantic–EOS)。EOS主要体现在3个方面:1、幂等producer 保证单个分区的只会发送一次,不会出现重复消息;2、事务(transation):保证原子性的写入多个分区,即写入到多个分区的消息要么全部成功,要么全部回滚;3、流式EOS: 可看成是“ 读取-处理-写入的管道 ”。此EOS保证整...原创 2019-03-16 20:49:12 · 1135 阅读 · 0 评论 -
HBase优化
一、预先创建一些空的regions默认情况下,在创建HBase表的时候会自动创建一个region分区,当导入数据的时候,所有的HBase客户端都向这一个region写数据,直到这个region足够大了才进行切分。一种可以加快批量写入速度的方法是通过预先创建一些空的regions,这样当数据写入HBase时,会按照region分区情况,在集群内做数据的负载均衡。二、row key设计row k...原创 2019-03-15 19:56:15 · 154 阅读 · 0 评论 -
hive优化及参数配置
1、本质:MR的优化2、列裁剪和分区裁剪:减少不必要的列和分区列裁剪:hive.optimize.cp=true(默认值为真)分区裁剪hive.optimize.pruner=true(默认值为真)3、...原创 2019-03-11 10:58:45 · 301 阅读 · 0 评论 -
机器学习数据量判定
**判定标准 **1、 数据的粒度:数据的细分程度数据的粒度越细,数据量越大;细粒度数据可通过聚合还原到粗粒度数据,但不是越细越好;寻找有效特征在某特定的粒度;2、 数据量与特征量的比例不能只关注说有多少条数据,也要考虑数据的特征数。3、 特征间的相关性与有效性数据间的重复性低、相关性低变量对于解决问题有帮助4、数据量与模型选择数据量很小,使用朴素贝叶斯、逻辑回归或支持向量机...原创 2019-03-10 18:55:34 · 613 阅读 · 0 评论 -
HDFS基础(1)
一、特点高容错性(数据多副本)、批处理(移动计算)大数据处理(PB)、流式文件访问(一次写入多次读取,写入后可追加不可修改)不适合低延时数据访问、小文件存储和并发写入、文修改。二、组件1、架构:Master/Slave2.Client:客户端:文件切分与 NameNode 交互,获取文位置信息与 DataNode 交互,读取、写入数据。管理与访问HDFS3、NameNode:M...原创 2019-03-10 18:42:37 · 152 阅读 · 0 评论 -
PageRank算法
一、算法描述:。。。二、代码实现:package com.hadoop.mr.pagerank;import java.io.IOException;import java.util.Arrays;import org.apache.commons.lang.StringUtils;public class Node { private double pageRank = ...原创 2019-07-09 13:04:06 · 208 阅读 · 0 评论