大数据的概念在《大数据时代》一书中提出,该书指出大数据是指不再依赖随机分析,而是通过所有数据来进行分析处理。书中提出了三个重要观点:数据不再是随机样本,而是涵盖所有数据;数据的准确性不重要,关键在于其混杂性;数据间的关联比因果关系更为重要。那么,大数据的应用框架又是怎样的呢?
随着信息社会的发展,数据量在不断膨胀,尤其是用户阅读数据的存储和分析计算成为巨大挑战。例如,Google这样的公司就需要解决这个问题。他们在2003年发表了《The Google File System》一文,在2004年又发表了《MapReduce: Simplified Data Processing》。
GFS大数据
GFS大数据处理的核心问题是如何高效地存储海量数据。传统意义上的MB或GB级别的数据已经无法满足需求,现在需要处理的是TB甚至PB级别的数据。因此,需要设计出一种低成本、高效率且可靠的存储方案。
2003年,Google发布了《The Google File System》一文,详细介绍了处理大规模数据存储的设计理念。在此基础上,Apache Lucene的子项目开发出了HDFS(Hadoop Distributed File System),这是一种分布式文件系统,用于实现海量数据的存储。
MapReduce大数据
MapReduce大数据处理的关键问题是如何高效地分析和计算海量数据。在编程领域,并行计算框架并不是新事物。Google在2004年发表了《MapReduce: Simplified Data Processing》一文,详细介绍了这一技术。
BigTable大数据
BigTable大数据处理的核心问题是在对海量数据进行分析后,如何提高数据查询和应用的效率。现有的数据库技术虽然能提高数据查询和应用的效率,但无法完全满足分布式存储的需求。
Google工程师在2006年发表了《Bigtable: A Distributed Storage System for Structured Data》一文,阐述了基于分布式存储的数据库设计理念。这标志着数据库技术从关系型数据库转向非关系型数据库。BigTable的设计理念是将所有数据集中存储在一个表中,并通过冗余机制来提升效率和可靠性。基于这种设计理念,开源了HBase这一基于HDFS的NoSQL数据库。
提示
实际上,我们日常使用的云盘或网盘的设计思想与此类似。例如,笔者常用的百度网盘就采用了类似的分布式存储方案。建议感兴趣的读者可以阅读Google的这三篇论文,以便更好地理解其设计思想。
今天为大家整理了一些大数据学习资源,大家可以依据自己的需求选择合适的学习材料。