树状结构大数据类型的高效支持
2018-08-15陈世敏
陈世敏
中国科学院计算技术研究所,北京 100190
1 引言
大数据产业是全球高科技竞争的前沿领域。大数据技术的推广应用对国家经济、政治、法治、科技、文化、教育、民生、社会、生态文明、国家安全等方面,都会产生深远的影响。传统的关系数据模型从20世纪70年代出现至今,在商用数据处理方面得到了广泛的应用。但是,关系模型的简单、扁平的二维表结构无法满足各行各业(如社交网络、物联网、医疗生物、金融等)日益丰富的大数据表达和处理的需求。于是,实践中涌现了多种非传统的大数据类型,出现了一批支持非传统数据类型的大数据系统,被统称为NoSQL数据库系统。其中,应用最广泛的是键值对(keyvalue)数据类型、图(graph)数据类型和以JSON(JavaScript object notation)等为代表的树状结构数据类型(treestructured data type)。
树状结构数据类型可直观地表达高级程序设计语言中类(class)、结构(struct)等丰富的结构,能够简洁地支持嵌套、多值和缺值,已被广泛应用于社交网络数据服务、Web服务、数据交换格式、分布式系统协议、物联网等,是一种重要的大数据类型。实践中常见的树状结构数据类型有JSON、Protocol Buffers等。JSON是JavaScript语言标准的一个子集,常常作为数据输出和数据交换的类型。Protocol Buffers是Google公司推出的一种数据类型,是实现分布式系统内部通信协议的数据格式,也是Google公司的Dremel[1]和BigQuery[2]等大数据系统的数据类型。
本文将对以JSON为代表的树状结构大数据类型进行深入介绍,首先举例说明树状结构大数据的含义,然后从多个角度说明树状结构大数据的价值和意义,最后结合笔者近期的研究工作,说明树状结构大数据类型的处理和支持。……
