大數據技術無疑是當前高新科技領域的“明星”,成為各國角逐的重點科技領域。事實上,大數據技術脫胎于有著50年發展歷史的數據管理技術,是面向大規模數據分析的技術棧,主要采取分布式架構的設計思路,通過并行計算的方式來提升處理效率;同時具備高擴展能力,能夠根據業務需求隨時擴展。從總體上來看,大數據技術是為了應對挑戰而生,未來也將順應挑戰而變。
大數據技術是數據管理技術的一種,而數據管理技術擁有著至少50年的發展歷史,是所有計算機應用的基礎。數據管理系統處于底層硬件和上層應用之間,本質上是利用計算機硬件的存儲和計算能力,對數據進行存儲、管理、加工等操作,最終支持上層各類應用。
數據管理技術的發展總共經歷了四個階段。第一個階段是關系型數據模型的提出,為關系數據庫發展奠定了理論基礎。第二個階段是Oracle和DB2等商業關系型數據庫的興起和發展壯大,數據庫正式成為繼服務器、操作系統之外的第三個必需品。第三階段是由于業務場景的需要,數據庫被分為面向業務的事務數據庫和面向分析統計的分析數據庫,兩者之間的架構和建模方式也發生了變化,完成了數據庫技術的第一次分離。第四個階段是數據庫技術的分布式浪潮:最早在數據分析端,由于單機無法應對海量數據分析的需求,分布式水平擴展的需求提上日程,Hadoop、Spark和各類NoSQL都是為了滿足這一需求;分布式技術在2010年左右擴展到事務數據庫領域,主要是為了應對越來越多的互聯網業務。
數據管理系統處于硬件和應用之間的位置,決定了其自身的技術演進主要依賴于底層硬件的發展和上層應用端的需求變化。
在硬件端,從20世紀70年代開始,通用服務器的芯片、內存的發展就遵循摩爾定律,單機的性能越來越強,推動著數據庫的處理能力不斷增強,利用內存能力成為一大趨勢。進入21世紀,芯片處理能力的增長已趕不上業務和數據量的增長,單機系統的“瓶頸”顯現,促使數據管理系統向分布式架構轉型。
在應用端,業務的互聯網化、在線化使得業務流量和訪問頻率呈指數級增長,單機集中式架構處理遇到“瓶頸”。移動互聯網時代動輒千萬級的用戶量,同時也提出了海量數據分析的挑戰。分布式架構,正是為了應對這些挑戰而生。
應對挑戰10年后生態初成
大數據應用和技術的誕生,是為了應對數據量爆發式增長的挑戰。從2004年出現之后,大數據經過10年的發展后進入平穩期,初步構建了生態。
10多年前,網站和網頁的爆發式增長,令搜索引擎公司最早感受到海量數據給技術帶來的挑戰,隨后興起的社交網絡、視頻網站、移動互聯網的浪潮加劇了這一挑戰。互聯網企業發現新數據的增長量、多樣性和對處理時效的要求,是傳統數據庫、商業智能縱向擴展架構無法應對的。在此背景下,谷歌公司率先于2004年提出一套分布式數據處理的技術體系,即谷歌分布式文件系統(Googlefilesystem,GFS)、分布式計算系統MapReduce和分布式數據庫Big-Table,以較低成本很好地解決了大數據面臨的困境,奠定了大數據技術的基礎。
受谷歌公司的啟發,ApacheHa-doop推出了分布式文件系統HDFS、分布式計算系統MapReduce和分布式數據庫HBase,并將其進行開源,這成為大數據技術開源生態體系的起點。
2008年左右,雅虎最早在實際環境中搭建了大規模的Hadoop集群,這是Hadoop在互聯網公司使用最早的案例,后來Hadoop生態的技術就滲透到互聯網、電信、金融乃至更多的行業。
2009年,加利福尼亞大學伯克利分校的AMPLab研發出Spark。Spark經過5年的發展,正式替代了Hadoop生態中MapReduce的地位,成為新一代計算引擎。不過,2013年純計算的Flink誕生,對Spark發起了挑戰。2014年之后大數據技術生態的發展就進入了平穩期。
經過10年左右的發展,大數據技術形成了以開源為主導、多種技術和架構并存的特點。從數據在信息系統中的生命周期來看,大數據技術生態主要有5個發展方向,分別是數據采集與傳輸、數據存儲、資源調度、計算處理、查詢與分析。其中,在數據采集與傳輸領域,漸漸形成了Sqoop、Flume、Kafka等一系列開源技術,兼顧離線和實時數據的采集和傳輸;在存儲領域,HDFS已經成為大數據磁盤存儲的事實標準,針對關系型以外的數據模型,開源社區形成了K-V(key-value)、列式、文檔、NoSQL數據庫體系,HBase、Cas-sandra、MongoDB、Neo4j、Redis等數據庫百花齊放;在資源調度方面,Yarn獨領風騷,Mesos有一定的發展潛力。計算處理引擎慢慢覆蓋了離線批量計算、實時計算、流計算等場景,誕生了MapReduce、Spark、Flink、Storm等計算框架;在數據查詢和分析領域形成了豐富的SQLonHadoop解決方案,Hive、HAWQ、Impala、Presto、Drill等技術與傳統的大規模并行處理(massivelyparallelpro-cessor,MPP)數據庫競爭激烈。
與時俱進四大新動向顯現