時至今日,“Big data”(大數據)時代的來臨已經毋庸置疑,尤其是在電信、金融等行業,幾乎已經到了“數據就是業務本身”的地步。這種趨勢已經讓很多相信數據之力量的企業做出改變。恰逢此時,為了讓更多的人了解和使用分析大數據,CSDN(微博)獨家承辦的大數據技術大會于今日在北京中旅大廈召開。本次大會匯集Hadoop、NoSQL、數據分析與挖掘、數據倉庫、商業智能以及開源云計算架構等諸多熱點話題。包括百度、淘寶、新浪等業界知名專家與參會者齊聚一堂,共同探討大數據浪潮下的行業應對法則以及大數據時代的抉擇。

傳統的關系數據庫在應付web2.0網站網站時暴露了很多難以克服的問題:web2.0網站要根據用戶個性化信息來實時生成動態頁面和提供動態信息,數據庫并發負載非常高,往往要達到每秒上萬次讀寫請求。對于關系數據庫來說,在如此海量的信息中進行SQL查詢,效率是極其低下乃至不可忍受的。
在最后的沙龍環節中MongoDB中文社區創始人程顯峰、淘寶核心系統存儲系統研發專家楊志豐、新浪云計算高級技術經理叢磊、139說客架構師李祎、ymall.com技術總監巨建華就對如何理性考量NoSQL、NoSQL基準測試要點、NoSQL和云計算整合趨勢、NoSQL和分布式計算的結合等問題展開了熱烈討論。
以下為文字實錄
主持人:最后環節是我們圓桌討論,我們也請五位嘉賓上臺。首先邀請圓桌討論主持人MongoDB中文社區創始人程顯峰,楊志豐先生,叢磊,139的李祎,以及巨建華先生,我們交流主題大概是以圍繞NoSQL這一塊。
主持人程顯峰:我們討論了一天大數據的問題,到晚上我們專門拿NoSQL單獨作為一個話題進行討論,大家可以看到在座四位嘉賓,其中有三個人都有自己的NoSQL。我想第一個問題,因為有很多人都在做NoSQL的選型,如果不用你們的NoSQL,你們推薦大家用什么樣的NoSQL,怎么去選NoSQL,怎么根據自己的業務去選擇合適的NoSQL?當然不可以推薦自己的。
叢磊:我關注NoSQL還是比較多的,我覺得MongoDB,另外對于選型來講首先看需求,可靠性到底要求怎么樣,速度要求怎么樣,這個東西要求準確判斷然后再去進行選型。
李祎:我是來自139移動微博的李祎,現在是架構師。在我們系統里面用到關系型數據庫是我們自己搭建的,就是拿來做微博熟悉用戶推薦,以及和人有關人的計算。為什么我們選了自己一個東西,而沒有用其他人,我們也是基于自己業務需求來做的,現在市場上NoSQL很多,我們就基于自己推薦業務需求,要做自己的一個數據庫。市面現在圖形數據庫有一些,其實都開發的不是特別完善,基于我們現有的技術,和現有的一些開源軟件和一個大的數據庫。
楊志豐:我下午講的時候已經提到,要看每一個特性,需求把很多都已經排除掉了。除此之外,大公司和小公司還不是很一樣,很大公司在選的時候,除了你看到他的東西比別人多好之外,一旦出了問題有沒有人幫你解決問題,這就是為什么很多大公司經常自己去做事情,我們現在都在用NoSQL,但是肯定有研發人員在里面,沒有這方面的人才,可能你直接買一個,比如Oracle也有一個最新的解決方案,他給你更好的一個技術支持。
主持人程顯峰:也就是我們在考察NoSQL的時候也要考慮SQL是否強大,你自己是否能夠完全掌控這一部分,還是需要外面的支持?
楊志豐:這是一方面。
巨建華:我沒有自己數據庫,不像在座幾位。但是我有一個建議,如果我們采用NoSQL的數據庫,最好能夠特別在產品中,正式產品中使用,我建議大家能夠有機會都看看,如果不想做很深入研究,也得很清楚存儲結構,甚至各種數據文件處理方式,我建議最好能看看源代碼,跑不起來能夠有一定修復能力,特別NoSQL很重要,如果做不到會帶來很大風險,有可能某一天重要數據丟掉之后找不回來,如果沒有很好的備份方案。
現在比較好,我現在目前使用MongoDB本身比較完善,可以放心使用。
主持人程顯峰:今天數據主題也是大數據,數據也有幾個階段,采集,處理,存儲,呈現。我們發現之后存儲跟處理部分結合越來越緊密了,比如Hadoop有存儲專用的一塊東西,而像MapReduce傳統存儲也有一定框架,大家對存儲和處理結合越來越緊密,大家有自己的或者使用別人的,這個是不是方便,大家可以談一下。
叢磊:我覺得是這樣,首先這個數據處理可能有兩種需求,一種是用戶大規模海量數據綜合處理,還有用戶在對于他自己數據像一個存儲過程一樣,對于單條,或者幾條數據相對之間小規模處理,SAE這兩塊都有,其實NoSQL是具有天生親近感。還有用戶小規模數據,想插入數據的時候,取出數據的時候做什么計算,最好的載體就是GS,MongoDB是這么做的,GS是最好的一種通用語言,任何一個人寫起GS來不會有太多問題,將來SAE,肯定會支持用戶通過GS來實現存儲互通的功能。
李祎:其實我們這邊用自己圖形數據庫原先也考慮過用Hadoop的方式,但是發現兩個問題,一個是Hadoop數據結構和我們需要的關系型數據庫,和我們需要對應關系那種不是特別匹配,我們要通過好幾道手才能取出來進行計算,這樣不太合適。另外我們也接觸了,我們BI部門原來也用過Hadoop的方式,發現其實有一個問題,這個問題是一個故事,有一次他們機器宕機了Hadoop物理存儲恢復不了,搞了半天,發現后來我們面臨選型的問題,我就覺得我們無法真正去控制這個東西,就像剛才楊志豐所說的一樣,無法真正控制這個東西的時候,最好還是選擇一個最后能做最簡單的東西進行控制,這也是我們為什么自己做圖形數據庫的一個原因。
楊志豐:這個問題我剛才講的時候已經提到的,我們OceanBase里面已經有了,需要進行嵌入,我們是要把計算移到數據上去,因為今天主題就是大數據,數據他大了,移動一下,從這個集群移到那邊為了做計算再移過來,這個代價太大了,所以我們要把他和數據放到一起,這就是一致性的問題。另外我有一個趨勢。
巨建華:我選擇MongoDB受整個腳本限制,在整個單模式下跑,整個集群在同一時間只能跑一個,在這上面跑比較受到局限。我結合這種模式,運動量比較大,經過相互拆分進行并行,說比較弱,能夠滿足業務需求,所以在這個過程中暫時還是能夠通過自己寫的分布式集成框架來解決問題。我看這方面很多跟剛才淘寶他們講的是一樣,很多時候根據實時業務場景來采取利用什么樣的方法來解決問題。當然說如果真正,假設我們需要做索引,可能就需要結合形式來進行解決,而不是采用一種通用框架解決,很多時候通用框架必然比較低。
推薦閱讀
[ 針對新增資金如何投資的問題,中投公司副總經理汪建熙表示中投會根據既定的投資戰略和市場的變化進行投資;短期來看會有積極的偏離,但一定是做長期的配置,不會在短期內有大幅度的變化 ] 全國政協委員、中投公司副>>>詳細閱讀
本文標題:圓桌沙龍:NoSQL技術實戰
地址:http://m.sdlzkt.com/a/kandian/20120305/36928.html