Cassandra曾被Facebook拋棄,現正幫蘋果壯大
據《連線》雜誌報導,開源分散式NoSQL資料庫系統Cassandra最初由Facebook開發,後又被其HBase資料庫取代而遭拋棄。可是現在,Cassandra已經成為諸多網路巨頭關鍵的網路基礎之一,正幫助蘋果等公司發展壯大。
順勢而起
馬特·法伊爾(Matt Pfeil)開車從奧斯汀前往聖安東尼奧的一路上,腦子裡只想著一件事:阻止喬納森·埃利斯(Jonathan Ellis)從雲端計算公司Rackspace辭職。此前,埃利斯曾給包括法伊爾在內的同事發郵件,宣稱他將離開Rackspace,建立一家以Cassandra為核心的新公司。
Cassandra是一套開源分散式NoSQL資料庫系統,最初由社交網站Facebook開發,幫助應付後者產生的大量數字資訊。法伊爾曾在Rackspace公司接觸過Cassandra,因此他知道這套系統的價值。但法伊爾不希望Rackspace失去埃利斯。在不寫程式碼時,法伊爾還幫助公司招募志同道合之人,因此他非常不想看到埃利斯離開。
法伊爾與埃利斯在聖安東尼奧的泰國小餐館見面吃午餐,他提出埃利斯不應該辭職的一大串理由。但很快,他此來的初衷就被改變。當法伊爾指出,埃利斯還沒有找到可以運營初創企業業務的人才時,埃利斯立刻邀請他加入新公司。法伊爾回憶說:“當埃利斯邀請我時,我開始思考自己想要什麼樣的生活。我才20多歲,還沒有組建家庭,這正是創業的最佳時機。儘管但是我沒有立即答應,但心中已埋下種子。”
不久後,甚至就連Rackspace也加入進來。這家公司不僅為法伊爾和埃利斯新的冒險發出祝福,甚至還為他們提供啟動資金。Rackspace已經初見Cassandra展示出的強大威力,因為至少其2名重要員工對其信心十足。Rackspace也知道,隨著網路資料數量的日益龐大,處理起來將越來越困難複雜,而Cassandra的作用將逐漸顯現出來。4年以後,埃利斯等人的冒險終於獲得豐厚回報。
回報豐厚
今天,埃利斯與法伊爾的初創企業DataStax已經成了眾多重塑數百萬資料庫市場的眾多公司之一,軟體業巨頭甲骨文也正逐漸放鬆對這個市場的控制。與甲骨文的傳統資料庫不同,Cassandra等資料庫系統專被設計用於在機器叢集中執行,可同時處理大量資料,而這正是現代世界所需要的。
儘管Facebook已經全部放棄Cassandra,但這種技術已經成為諸多網路巨頭最關鍵的網路基礎之一,比如Twitter、Netflix,甚至包括蘋果公司。DataStax也為其他各種行業建立了不同版本的Cassandra工具。DataStax已經籌資8400萬美元,目前有員工300多人,正準備IPO。埃利斯稱,他們已經有500多家客戶,包括“財富100強”中的25家大公司。
誕生之旅
Facebook工程師阿維納什·拉克希曼(Avinash Lakshman)與普拉杉特·馬利克(Prashant Malik)是Cassandra的最早建立者,其目的是幫助使用者在社交網路上搜尋你的收件箱。如同其他的NoSQL資料庫一樣,Cassandra廢除了傳統關係模型(即將資料在單臺機器上整齊地排成行與列),其主要特點就是它不再是一個資料庫,而是由一堆資料庫節點共同構成的一個分散式網路服務。對於日益擴大的Facebook來說,這種功能非常重要。
拉克斯曼曾為亞馬遜研究分散式資料儲存系統Dynamo,但是他與馬利克也從谷歌(微博)2006年出版的書中獲得靈感,這本書專門介紹谷歌的網路資料庫BigTable。Facebook及其創始人馬克·祖克伯(Mark Zuckerberg)決定於2008年夏為Cassandra開源,與CouchDB和MongoDB等其他資料庫一起,拉開了當前宏大的NoSQL運動序幕。
就在這一年,Rackspace僱傭了埃利斯,請其對下一代資料庫進行評估。當時,埃利斯幾乎測試了所有可以找到的NoSQL資料庫,他稱Cassandra表現最棒。埃利斯說:“Facebook為Cassandra開源,但沒有繼續推動它向前發展,可是其技術基礎依舊領先於任何人。”
Facebook沒有圍繞Cassandra建立一個使用者群體,Cassandra既代表著責任,也代表著機遇。埃利斯可以整合開源計劃以滿足Rackspace的需要,即建立和引導使用者群。但是直到2010年,埃利斯才有了建立自己的Cassandra公司的想法。Cassandra已經獲得Facebook和Rackspace之外的關注,當另一家公司的一名工程師告訴埃利斯,該公司已經決定利用NoSQL資料庫,因為一家初創企業將會提供軟體技術支援,埃利斯知道他必須行動起來。
堅持前進
即使Cassandra在默默成長,但最初的熱情也在消退。今天,已經有許多NoSQL資料庫與其競爭。當Facebook決定利用Hbase取代Cassandra時,後者的榮光再受重創。即使NoSQL的激情消退, 但Cassandra依然堅持前進,並繼續沿途尋找新的使用者。據奧地利諮詢公司Solid IT彙編的資料顯示, Cassandra是世界上第二受歡迎的NoSQL資料庫,僅次於MongoDB,也是世界上增長速度第三快的資料庫系統。
DataStax在此過程中貢獻良多,包括為Cassandra提供名為DataStax Enterprise的專有服務和支援。埃利斯說:“許多公司的時間比資金更充裕,因此它們可以利用開源Cassandra,並提供反饋。但是其他公司更希望選擇以金錢換時間,它們付錢購買企業版本的資料庫。就我個人而言,儘管銷售團隊會有歧義,但我很高興與來自其他陣營的人合作。”
隨著Cassandra使用者群的持續擴大,越來越多的公司開始支援其開發。蘋果現在已經是這一專案的第二大貢獻者,儘管其對於如何使用這種資料依然庫閉口不言。埃利斯沒有證實蘋果是否是DataStax的客戶,但3名蘋果工程師正準備參加9月份一年一度的Cassandra峰會。Cassandra甚至已經找到迴歸Facebook的路,這要感謝後者併購了Instagram,Instagram是Cassandra的忠實使用者。
角逐未來
科技界的發展已經達到了一個瓶頸,一家公司開發的資料庫產品將不可能再主導整個市場。現在,有許多儲存和處理資料的方法。但從2008年以來,大資料的前景始終在進化。谷歌公佈諸多新工具,比如Dremel(可以極速速度查詢資料)、Spanner(受Cassandra啟發開發的資料庫)。
開源客戶群體正試圖保持這些優勢。MapR2012年開始建造Dremel的複製版本Drill,名為Databricks的初創企業已開發一款分析系統Spark,雅虎正在使用。近來,一群前谷歌工程師開始建造Spanner的克隆版CockroachDB。
埃利斯說,對於Cassandra和DataStax來說,當前的戰略是確保其技術能與其他新技術相容。比如,DataStax近來為Spark推出一款聯結器,能讓軟體設計師更輕鬆地使用Spark去分析儲存在Cassandra資料庫中的資料。埃利斯說:“我們正嘗試打造可驅動應用程式進化的資料庫,而非沒有必要的分析性資料庫。”(風帆)
相關文章
- 更智慧——我們才被拋棄 (轉)
- 蘋果要狠心拋棄iPhone 7 外形感人!蘋果iPhone
- 現在的蘋果正一步步拋棄賈伯斯追求的極簡主義?蘋果
- Facebook 重構:拋棄 Sass / Less ,迎接原子化 CSS 時代CSS
- Android要拋棄Java了?谷歌看中蘋果SwiftAndroidJava谷歌蘋果Swift
- 超級英雄遊戲需要拋棄「現實主義」遊戲
- twitter為什麼放棄cassandra
- 效能優化之拋棄Calendar優化
- 拋棄硬體抽象層 (HAL)抽象
- 拋棄jQuery 深入原生的JavaScriptjQueryJavaScript
- 拋棄NVelocity,來玩玩Razor
- iOS 10拋棄蘋果手機經典的滑動來解鎖後...iOS蘋果
- 開發出貪吃蛇的諾基亞,為何會被手遊時代拋棄?
- 2018資料科學和機器學習調查:Hadoop被拋棄!資料科學機器學習Hadoop
- Android Studio拋棄滑鼠指南Android
- 蘋果iPhone XS正在拋棄不存錢的你 網友:我就看看,不買!蘋果iPhone
- 蘋果要“拋棄”英特爾5G晶片 聯發科或將從中受益!蘋果晶片
- 蘋果新一代Mac Pro長這樣?拋棄“垃圾桶”設計蘋果Mac
- 蘋果的大棋:現在說放棄Apple Watch太早了蘋果APP
- Localytics:近25%的應用在使用者使用一次後被拋棄
- iPhone解鎖糾紛:蘋果被指曾滿足中國類似要求iPhone蘋果
- 創業圈的錢都去哪兒了?AI演算法正幫Facebook成為大贏家創業AI演算法
- 又有三家遊戲公司拋棄大小周遊戲
- Debian GNU/Linux拋棄Firefox?(轉)LinuxFirefox
- 拋棄Excel後工資翻倍,阿里大廠的資料包表全靠它Excel阿里
- 無法理解那些標題黨,或者是我已經被同齡人給拋棄了!
- 阿里遊戲已逃離「被放棄的大文娛」阿里遊戲
- 拋棄UITableView,讓所有列表頁不再難構建UIView
- MacBook Pro可能會拋棄Touch Bar,重振MagSafeMac
- 微軟:Win10不會拋棄現有的7英寸Win8平板微軟Win10
- 捷信消費金融「大變局」:“拋棄”數萬銷售大軍,狂推一個新模式模式
- [譯] 我們如何拋棄了 Redux 而選用 MobXRedux
- Twitter 宣佈拋棄 Mesos,全面轉向Kubernetes
- Twitter 宣佈拋棄 Mesos,全面轉向 Kubernetes
- 拋棄mysql模糊查詢,使用sphinx做專業索引MySql索引
- 拋棄臃腫的 jQuery,用 NodeList.js 操作 DOMjQueryJS
- 專家:微軟拋棄XP 國內ATM不受影響微軟
- 慕尼黑政府拋棄Windows 09年前過渡到Linux(轉)WindowsLinux