贾书伟,锁配春
(云南经济管理学院,云南 昆明 650106)
在当今大数据时代,企业管理数据、电子产品社会化数据、互联网信息数据等极大地丰富了人们的生活,为人们提供多样化的信息。并且,大数据不仅数据量较大,而且数据类型复杂多样,影像、报表、文档、账单等已经在商业企业中普遍运用。网络游戏、网络视频等数量越来越多。同时,大数据具有多样性、规模性、高速性的特点,对未来发展有着重要作用。大数据关键技术主要包括系统架构、文件系统、数据处理系统、数据库系统等技术,只有具备这些关键技术才能够解决大数据发展过程中的数据管理问题。研究大数据关键技术不仅能够促进大数据的发展,而且对社会生活及智能化发展意义深刻。
大数据系统架构主要包括大数据存储和大数据处理方面,其中,大数据存储主要采用分布式存储结构,大数据处理主要采购分布式软件架构计算结构。大数据处理主要包括数据分享、数据检索、数据分析和数据展现。大数据关键技术主要针对数据存储和数据运算,大数据关键技术的研究主要依靠凭借大数据活力的大企业。面对大数据的发展,大数据企业依靠提升服务器的性能已经无法满足企业的业务需求,需要企业加快大数据存储技术及大数据处理技术研发,提高大数据技术水平。Google公司是全球最大的信息检索公司,一直走在大数据技术研究的前言,在2006年提出了云计算的概念,并研发除了分布式文件系统、数据处理技术、数据库系统等关键技术。
文件系统是大数据的基础,在Google公司发展过程中,现有的发展方案已经无法满足大数据存储,因此,Google公司提出了分布式文件管理系统——GFS。GFS与传统文件系统在可用性、可靠性、伸缩性等方面的目标相同。然而,GFS认为系统组件失败属于常态,采用主从结构构件能够用于廉价服务器的文件系统,并通过追加更新、数据分块等方式实现数据存储。但是,随着数据业务的发展,GFS系统已经难以适应大数据的需求。因此,Google公司对GFS进行了改进,研发了Colosuss系统,Colosuss系统能够解决海量文件存储问题和GFS单点故障问题。并且,其他企业也加强了对文件系统的研发,理论如,微软开发出了Cosmos系统,用于支撑广告业务和搜索业务。
大数据背景下的数据处理模式主要包括批处理和流处理,流处理直接对数据信息进行处理,而批处理则需要先存储信息,然后再对信息进行处理。流处理将源源不断的数据视为数据流,及时处理新数据,并反馈数据结果。而大数据的规模较大,要实现实时处理必须采用分布式处理方式。现阶段,比较典型的开源流处理系统主要包括Storm、Kafka、S4等。而批处理最典型的模型是Google公司所研发的MapReduce编程模型。这一模型能够实现大量普通配置和并行化信息处理,能够通过简单结构实现大规模的分布式计算,提高计算机的计算性能。并且,Google公司在后续研究中对模型的调节技术、连接技术、索引技术等进行了优化。另外,Yunhong Gu等人研发出了sector and Sphere云计算平台,促进了分布式数据处理系统技术的推广。
传统的分布式数据库难以适应大数据的要求,这是因为,大数据的规模效应压力较大,数据处理要求远远超出了传统计算机的数据处理能力,采用分布式技术是计算机数据处理的必然选择。而传统的数据库系统采用纵向拓展的方式,数据库系统性能低于数据增加速度。因此,大数据库系统应采取横向发展的方式,提高数据库系统的扩展性。并且,传统数据库系统的数据类型较多,价值较低,而大数据形式多种多样,数据库系统需要解决多样化数据处理的问题。另外,大数据的数据处理方式、数据理性、数据处理时间与传统的数据处理存在着较大的差异,在大数据时代并不存在一种适用于所有场景的数据存储方式,需要数据企业建立分布式数据库,满足不同场景的数据存储和数据处理要求。为此,Google公司研发出了Bigtable。Bigtable的扩展性和可靠性较高,适用范围广泛,能够应用在Google企业所生产的60多个项目和产品上。另外,其他企业也提出了大数据系统,Amazon提出了Dynamo,Yahoo提出了PNUTS,促进了人们对关系数据库的反思与研究。
Google公司除了对大数据处理进行研究之外,还对开源项目进行了深入研究,并研发出了Hadoop,Hadoop属于开源分布计算平台,是MapReduce编程模型的载体。软件开发者可以借助Hadoop对分布式并行程序进行编制,进而使计算机完成海量的数据计算工作。