Wednesday, April 23, 2014

[Interview] Big Data Processing (Scalability and Memory Limits) -- Summary

今天开个专题总结 Big Data Processing, 基本上只是一些总结,引用和Copy的材料很多,一下内容基本都不是原创,我在最后会附上Reference, 我这里只为自己总结, 如果你喜欢看原文,直接看Reference就OK.

以前一直把这部分题目理解成System Design, 其实这是专门的一类题目暂且叫它 海量数据题目. 这类题目和Distribute System 有很多相关的地方, 比如实际的存储方式,瓶颈,处理方法等,对于准备System Design 也是至关重要. 大公司而言更希望我们有这部分知识。以前自己这块完全是空白, 因为自己做过的一些小项目,完全没有机会接触,思路非常受限, 希望这次能弄明白一点,很多知识点我自己还没弄清楚,先挖个大坑在这,会用黄色字体标注,欢迎讨论,斧正.

因为这部分题目涉及很多内容,分三部分总结,
第一部分 Background Knowledge,  主要谈数据结构,
第二部分是 Methodology, 如何结合这些 数据结构用合适的方法来解题, 这里偏重于总结技巧,方法,适用题目, 会尽量详解一个例子. 
第三部分 Problems. 总结 Big Data Processing的题目, 会附上解法和我的理解.

每部分会单独一篇文章写, 废话尽量在这篇总领的文章里说,后面尽量全部干活,不废话,不扯淡.

Background Knowledge
http://shanjiaxin.blogspot.com/2014/04/interview-big-data-processing_23.html
1. Bloom Filter
2. Hash
3. Bit Map
4. Heap
5. 双层桶划分
6. External Sort (Merge Sort)
7. Map Reduce Framework
8. Trie Tree
9. Database Index and Optimization
10. Inverted Index (倒排索引)

1. Bloom Filter
2. 分治 + Hash + HashMap 统计
3. Bit Map
4. Heap
5. 双层桶划分
6. External Sort (Merge Sort)
7. Map Reduce Framework
8. Trie Tree
9. Database Index and Optimization
10. Inverted Index (倒排索引)

Problems
相关题目

大部分是叙述性题目,面试时候只讲思路即可,但也不排除写代码的可能,最后会选2-3道可以
写程序的题目,比如bitmap. 以防万一.


No comments:

Post a Comment