大数据的发展展望通常包含两个层面:一是海量数据集合,二是处理这些数据集合的技术。海量数据集合很容易理解,即不断积累起来的各种数据资源。那么,什么是大数据技术呢?接下来我们将简要介绍大数据技术的发展历程。
从定义上看,大数据技术指的是能够从各种类型的大规模数据中快速提取有价值信息的技术。在各行各业中,大数据开发者致力于将这种技术应用到相关领域,从而从海量数据中获取有用的信息。
我们对大数据技术的理解通常包括数据采集工具、平台以及数据分析系统等方面。
最早的大型数据技术框架是由Doug Cutting在2003年参考谷歌的《Google File System》论文创建的Hadoop开源项目,并于2006年捐赠给了Apache基金会。该项目主要用于构建大规模搜索引擎和解决大规模数据存储及离线计算的问题。
Hadoop项目首先推出了分布式文件系统HDFS和分布式计算框架MapReduce。随后在2007年,Facebook开发了Hive,允许使用类似SQL的语言查询存储在HDFS上的数据。同时,PowerSet公司开发了分布式NoSQL数据库HBase。
从2006年至2009年,以MapReduce计算框架为代表的时期,大数据技术在大型互联网企业中广泛应用,主要应用于大规模结构化数据的批处理,具体应用场景包括日志分析和用户行为分析等。这一阶段被称为大数据的1.0时代。
大数据进入2.0时代的标志性事件是Spark核心计算引擎的出现。
由于MapReduce在需要快速响应的交互式分析场景下表现不佳,以Spark和Flink为代表的新一代计算引擎应运而生,并迅速普及。这一时期有三个关键变化:
一是大数据的应用更多转向处理结构化数据,这使得所有大数据公司开始在Hadoop之上构建SQL引擎或分布式数据库。2012年开始到之后的两年间,出现了二十多种基于Hadoop的SQL引擎,如Impala、Spark SQL等,以及星环科技的Inceptor,旨在解决结构化数据的问题;
二是实时数据处理方面的需求日益增加,许多实时数据需要即时处理。到2015年,Flink、Beam、Spark Streaming等开源技术逐渐成熟,而商业化流计算引擎如星环科技的Slipstream也得到了快速发展,相比开源流引擎提供了更多的功能,包括数据不丢失不重复、安全保障及SQL引擎支持等;
此外,随着数据科学的进步,非结构化数据处理技术也开始兴起,包括非结构化文档数据处理和图分析技术等。
随着企业数据量的不断增加,数据业务的多样性和复杂性也随之增加,这导致了在数据存储、计算以及数据业务整合方面面临越来越大的挑战。
以上就是关于大数据技术和其发展历程的简单介绍。大数据技术不断更新迭代,对于技术开发者而言,持续学习和紧跟最新技术趋势是至关重要的。