
大数据算法
zhangztSky
这个作者很懒,什么都没留下…
展开
-
Consistent Hashing--一致性哈希代码实现Java
一致性哈希的介绍 public class Solution { public int n, k; public Set<Integer> ids = null; public Map<Integer, List<Integer>> machines = null; // @param n a positive integer...原创 2020-04-06 22:30:16 · 158 阅读 · 0 评论 -
分布式一致性算法raft的理解与go实现
raft的动画演示 raft demo1 raft demo2 -----来自于github,不懂的可以自行搜索查阅 raft论文 raft的go实现 package main import ( "os" "strconv" "fmt" "sync" "net/rpc" "net/http" "math/rand" "time" "log" ) //对每个节点id和端口的封装...原创 2020-04-06 20:41:47 · 485 阅读 · 0 评论 -
mapreduce编程模型的方法论
这位作者写的非常好,从分布式方法论的角度阐述了mapreduce 在此留下一个链接mapreduce原创 2020-03-16 20:25:48 · 157 阅读 · 0 评论 -
概率类的大数据问题
概率类的大数据问题 概率类的大数据问题,本质上是概率问题而不是大数据问题。这类问题中最常出现的则是如何在数据流中等概率的取出 M 个元素。这个问题有标准解法的,知道就知道,不知道一般也很难想到。记住就好。 我们通过一道经典面试题来学习一下。 问题描述:给你一个 Google 搜索日志记录,存有上亿挑搜索记录(Query)。这些搜索记录包含不同的语言。随机挑选出其中的 100 万条中文搜索记录。假设...原创 2019-12-18 21:44:57 · 301 阅读 · 0 评论 -
海量数据处理--外排序算法
外排序算法是指能够处理极大量数据的排序算法。通常来说,外排序处理的数据不能一次装入内存,只能放在读写较慢的外存储器(通常是硬盘)上。通常采用“排序-归并”的策略,将原本的大文件,拆分为若干个小文件,小文件可以读入内存中进行排序,然后使用归并操作。 因此,外排序通常分为两个基本步骤: 将大文件切分为若干个个小文件,并分别使用内存排好序 使用K路归并算法将若干个排好序的小文件合并到一个大文件中 接下来...原创 2019-12-18 21:33:38 · 713 阅读 · 0 评论 -
最高频K项问题的在线和离线方法 Top K
这一类问题在海量数据类面试题中出现频率最高。问题的形式通常如下: 找到一个大文件或者数据流中出现频率最高的 K 项 这个问题的难点在于,如果条件不一样,解决的办法是完全不一样的,比如: 是否需要精确的 Top K 结果?即,是否允许小概率出错。 数据是离线的还是在线的?即是一个大文件的形式计算一次得到一个结果,还是数据流的形式实时返回结果。 接下来我们来看一个比较简单的算法题,一来让你切身地感受条...原创 2019-12-14 13:31:34 · 1204 阅读 · 0 评论 -
实现布隆过滤器 · Standard Bloom Filter以及CountingBloomFilter
这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入 ##代码 ...原创 2019-12-14 12:00:35 · 249 阅读 · 0 评论