过去30年,大数据改变了人类的生活方式和工作方式,数据变得越来越多,每天有2.5EB数据产生[1]。过去30年,大数据领域的发展主要分为以下3个阶段。
第一阶段为结构化数据领域的发展。1974年,Donald D.Chamberlin和Raymond F.Boyce[2]提出了结构化查询语言(Structure Query Language,SQL)标准[3],标志着人类可以处理结构化数据,其理论主要为ACID理论,相关研究公司为美国微软公司、甲骨文公司。美国微软公司的系统为SQL Server,甲骨文公司的系统为Oracle和MySQL,以及在移动互联网领域广泛应用的系统SQLite[4]。但是这些数据库底层存储原理主要为文件系统,其查询原理主要为B树。
第二阶段为半结构化数据领域的发展。2004年,谷歌公司提出了BigTable架构[5],标志着NoSQL(Not Only SQL,NoSQL)标准的提出,人类可以处理结构化数据,其理论主要为CAP理论,相关研究公司如美国谷歌公司。NoSQL与SQL不同的是,其数据存储范式相对比较松散。其中行数据库如MongoDB[6],列数据库如Apache Hbase[7]、Google BigTable,图数据库如Neo4J[8],哈希数据库如Leveldb、Redis[9],XML数据库如XMLDB[10]。其存储原理主要基于分布式文件系统,如Apache Hadoop。但是查询原理有不同的实现方式,具体而言,树状查询如MongoDB;全文检索如Apache Lucene;实时检索如基于Apache Lucene的Elastic Search[11],其原理为在内存中保留一棵LSM树,动态实时建立Lucene索引,并定时替换索引;哈希查询如内存NoSQL数据库Redis;Xpath查询如XMLDB。
第三阶段为非结构化数据领域的发展。最近10年,得益于Geoffrey Hinton在深度学习领域的研究[12]和NVDIA GPU硬件性能的提升,人类可以处理结构化数据并应用于产业,如Google TensorFlow引擎[13]。(www.xing528.com)
近5年来,多个领域已经能分别处理结构化数据、半结构化数据和非结构化数据。但是产业的应用落后于科研的发展。其关键问题在于,尽管数据很多,但是缺乏个性化定制服务,而应用需要结合需求去定制。未来30年,大数据驱动下的个性化定制服务将越来越成熟,随着第五代移动通讯技术(5th-Generation,5G)通信技术,甚至第六代移动通讯技术(6th-Generation,6G)通信技术的发展,数据传输不会构成性能瓶颈。但是人类需要的不仅仅是大数据的简单查询,更多的是利用大数据提供服务。
在众多大数据服务中,最引人注意的是保存在各个科研机构图书馆的科技资源服务数据,国家科学技术部对此也发布了相关的指南并给予支持。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。