- 博客(5)
- 资源 (2)
- 收藏
- 关注
原创 Java中Hash的基本原理与实现(详细)
本篇博文主要介绍散列表(Hash Table)这一常见数据结构的原理与实现。一、概述 符号表是一种用于存储键值对(key-value pair)的数据结构,我们平常经常使用的数组也可以看做是一个特殊的符号表,数组中的“键”即为数组索引,值为相应的数组元素。也就是说,当符号表中所有的键都是较小的整数时,我们可以使用数组来实现符号表,将数组的索引作为键,而索引处的数组元素即为键对应的值,...
2018-09-20 16:49:18 10986
原创 spark基础之shuffle机制、原理分析及Shuffle的优化(很好很详细)
一 概述Shuffle就是对数据进行重组,由于分布式计算的特性和要求,在实现细节上更加繁琐和复杂在MapReduce框架,Shuffle是连接Map和Reduce之间的桥梁,Map阶段通过shuffle读取数据并输出到对应的Reduce;而Reduce阶段负责从Map端拉取数据并进行计算。在整个shuffle过程中,往往伴随着大量的磁盘和网络I/O。所以shuffle性能的高低也直接决定了...
2018-09-11 11:02:52 2302 1
原创 Hadoop和HBase中的压缩算法、压缩比和压缩配置介绍(详细)
Hadoop中常用的压缩算法有bzip2、gzip、lzo、snappy,其中lzo、snappy需要操作系统安装native库才可以支持。下面这张表,是比较官方一点的统计,不同的场合用不同的压缩算法。bzip2和GZIP是比较消耗CPU的,压缩比最高,GZIP不能被分块并行的处理;Snappy和LZO差不多,稍微胜出一点,cpu消耗的比GZIP少。通常情况下,想在CPU和IO之间取得平衡...
2018-09-07 11:39:37 4160
转载 hbase热点问题(数据倾斜)解决方案---rowkey散列和预分区设计
Hbase的表会被划分为1....n个Region,被托管在RegionServer中。Region二个重要的属性:Startkey与EndKey表示这个Region维护的rowkey的范围,当我们要读写数据时,如果rowkey落在某个start-end key范围内,那么就会定位到目标region并且读写到相关的数据。 默认情况下,当我们通过hbaseAdmin指定TableD...
2018-09-04 14:34:07 880 1
原创 HBase二级索引的设计与应用(详解)
最近面试,涉及到了HBase的多条件组合查询,数据存储用的是HBase,恰恰HBase对于这种场景的查询特别不给力,一般HBase的查询都是通过RowKey(要把多条件组合查询的字段都拼接在RowKey中显然不太可能),或者全表扫描再结合过滤器筛选出目标数据(太低效),所以通过设计HBase的二级索引来解决这个问题。查询需求多个查询条件构成了多维度的组合查询,需要根据不同组合查询出符合...
2018-09-04 11:47:15 12189 2
document-sharing-master.zip
2020-05-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人