logo头像

Aoho's Blog

算法

由散列表到BitMap的概念与应用(三):面试中的海量数据处理

面试题在面试软件开发工程师时,经常会遇到海量数据排序和去重的面试题,特别是大数据岗位。 例1:给定a、b两个文件,各存放50亿个url,每个url各占64字节,内存限制是4G,找出a、b文件共同的url? 首先我们最常想到的方法...

由散列表到BitMap的概念与应用(二)

在前一篇文章中我们介绍了散列表和BitMap的相关概念与部分应用。本文将会具体讲解BitMap的扩展:布隆过滤器(Bloom filter)。 概念Hash表实际上为每一个可能出现的数字提供了一个一一映射的关系,每个元素都相当于有了自...

由散列表到BitMap的概念与应用(一)

散列表提到散列表,大家可能会想到常用的集合HashMap,HashTable等。 散列表(Hash table,也叫哈希表),是根据关键码值(Key value)而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置...

由Consul谈到Raft

在前一篇文章consul配置与实战中,介绍了consul的一些内幕及consul配置相关,并对项目中的一些实际配置进行展示。这篇文章重点介绍consul中所涉及到的一致性算法raft。 1. 背景分布式系统的一致性是相当重要的,即为C...