海量数据的常用10大解决方案

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_1018944104/article/details/84979545

教你如何迅速秒杀掉:99%的海量数据处理面试题:

https://blog.csdn.net/v_july_v/article/details/7382693

July:海量数据处理:

https://blog.csdn.net/u013074465/article/details/40504281

1、布隆过滤器

2、Hash散列

3、BitMap: 降低内存的使用量。 操作复杂度有所上升的。

    位图

    找出100G的数据中,出现次数为2次的元素  并且给定的内存有限

    要求出出现次数为3次的  怎么做?

    简化:

    有一批数据,是从1-10000, 请给我找出不存在的元素  并且给定的内存有限

    排序: 计数排序

    存在不存在用1位

            0

            1

    1次 2次用2位

            00

            01

            10

            11

    3次 4次 5次 6次 用3位

            000

            001

            010

            011

            100

            101

            110

            111

4、堆

    HDFS

    hbase   布隆过滤器

    es

    kafka

    mysql  的索引: B+树

5、双层桶划分

    

    hive的分区:手动建立, 数据不一定是完美的分区的

    hive的分桶:经过算法严格校验

6、数据库索引

    索引:提高查询效率的

    B+树    二分查找

7、倒排索引

    根据ID 找文档 很容易

    根据身份证编号找人  容易

    根据姓名找人 身份证里面 

    现在有10本书

        请找出编号为3的书

        1   hadoop权威指南

        2   算法导论

        3   编程珠玑

        .....

        请找出书中有讨论hadoop的书

        实现的复杂度很高

        hadoop权威指南  hadoop(233) spark(44)  flink(5)

        算法导论    HDFS mapreduce hadoop(66)

        编程珠玑    java hdfs

        html1       key1  key2  key3 ...

        html2       key2    key4    kye7

        ......

        key1   html1

        key2    html1  html2

        HDFS        编程珠玑    算法导论

        hadoop      hadoop权威指南(233) 算法导论(66)    abc(20)

        spark       hadoop权威指南

        flink       hadoop权威指南

        mapreduce   算法导论

        java        编程珠玑

        PageRank算法

    大数据

    从谷歌来的

    hadoop 从三篇论文

    nutch

    lucene

    es

    hbase

    hdfs

    mapreduce

    提高计算和存储效率

        storm

        mahout

        ambari

        sqoop

        ....

8、外排序

    归并排序

        两个效果:

        1、合并

        2、排序

    本质原理:

        把两个有序数组 合并一个

        把两个有序文件合并成一个文件

9、Trie树

    字典树

10、分布式解决方案:MapReduce或者Spark

    通用解决方案

    求TopN

    求交集

    判断元素存在不存在

    求元素出现不出现

    求元素出现几次

    .....

程序:

    数据结构 + 算法

分布式场景中,最复杂的就是优化

猜你喜欢

转载自blog.csdn.net/qq_1018944104/article/details/84979545