盡管聽上去像是陳詞濫調,但不得不承認,在不斷變化的內外部環境中,業務的響應速度對于企業來說至關重要。想要加速業務運營效率,提升競爭力,就必須具備在更短的時間內處理更多數據的能力。而內存技術的興起使得企業找到了實現這一目標的方法。
追溯內存技術應用歷史,你會發現它并不是最近幾年才出現并流行起來的。在華爾街一些大型的金融機構中,基于內存的應用幾乎是“標配”,這些公司需要對大量的金融交易數據進行實時分析,并做出快速的決策反饋。隨著技術的不斷成熟以及硬件價格的持續走低,如今內存技術已經被應用到了更廣泛的場景當中。
對于技術提供商來說,內存數據庫也成為了“兵家必爭之地”,幾乎所有的主流數據庫廠商都在最新的產品中增加了內存能力。根據Gartner機構預測,內存數據庫技術普及率將在接下來的一年中大幅提升,它不僅用于支撐已有的業務應用,也將成為更多創新應用的基礎。
作為傳統關系型數據庫市場的老大,甲骨文也把內存化當做其產品未來最重要的一個發展戰略。在今年6月,甲骨文也正式發布了最新的Oracle數據庫內存選件(Oracle Database In-memory),將列存儲+內存計算等技術融入了Oracle數據庫12c當中。甲骨文負責數據庫產品研發的高級副總裁Andy Mendelsohn向TechTarget中國記者表示,無論從最早的C/S架構到Internet,再到如今云計算時代,甲骨文在關系型數據庫發展中的每一個階段都扮演了非常重要的角色,同時也誕生了像并行查詢、真正應用集群(Oracle RAC)、Data Guard等經典技術。而在內存數據庫時代,甲骨文對復制此前的成功也信心滿滿。
Oracle Database In-memory:不是簡單的列式+內存數據庫 Andy Mendelsohn介紹,用戶可以把OracleDatabase In-memory看作是傳統Oracle數據庫的一個插件,它不需要對之前的數據庫架構作出調整,也無需進行數據遷移。正是出于這一點原因,Oracle Database In-memory將不局限于特定的平臺,也可以運行在非Oracle的系統當中。更重要的是,對于已經使用Oracle數據庫的客戶,無需對應用進行任何修改就可以使用Oracle Database In-memory來同時加速分析與交易系統,這是其他產品所不具備的優勢。
據了解,Oracle Database In-memory提供了原生的列式數據存儲能力。而對于分析負載來說,列存儲由于其特殊的數據格式與高效壓縮比,已經被證明是最好的數據存儲方式。事實上,Oracle Database In-memory支持兩種數據存儲方式,即傳統行存儲與新增的列存儲。Andy Mendelsohn表示,行式數據庫更適合交易類操作,比如插入或查詢一條銷售訂單,而列式數據庫則更善于進行分析類操作,比如按地域生成銷售額報告。Oracle Database In-memory的同一張表可以同時支持行和列兩種格式,同時激活并保持事務一致性,并根據不同的負載自動選擇采用哪種格式進行存儲。
“以更細的粒度(分區)把不同格式的數據存儲在同一張表中,目前只有Oracle Database In-memory能夠做到。”Andy Mendelsohn說。
在內存技術方面,甲骨文并沒有采用SAP HANA的“全內存”架構,數據會根據不同的“溫度”來選擇不同的處理方式,包含傳統硬盤、閃存和內存三個層級,而不是把全部的數據都放到內存當中。Andy Mendelsohn介紹,在Oracle Database In-memory當中,最活躍或者說最熱的數據將放到內存中進行分析,活躍度相對較低的數據會采用閃存(事實上,Oracle數據庫是最早擁抱閃存的產品之一,在Exadata上已經大面積使用了閃存存儲),而溫度最低、最不活躍的數據還是會采用傳統磁盤來存儲。根據不同需求的數據采取不同的策略,這樣做的好處在于,客戶不必采購大量的內存設備就可以獲得最佳性能提升,降低了總體成本,提升了投資回報率。
作為選件(DB Option)產品,Oracle Database In-memory并不是一個獨立的數據庫。它與OracleRAC相類似,客戶可以選擇在部署Oracle數據庫12c之后激活該選項(需單獨付費,參考IMO的潛在成本)。而用Andy Mendelsohn的話來說,部署Oracle Database In-memory像是打開開關一樣簡單,只需要輸入簡單的一行命令,就可以獲得內存數據庫帶來的性能提升。與此同時,由于Oracle Database In-memory采用原生列式存儲而放棄了之前的分析索引,插入數據之后無需再對這些索引進行更新,也是的OLTP系統的性能得到了間接的提升。
集成系統讓Oracle Database In-memory如虎添翼 Andy Mendelsohn認為,企業想要得到真正極致的分析性能,就必須在軟件方面做一些調整,比如采用內存數據庫技術。然而,硬件同樣也是必不可少的。他表示,無論以集群的方式進行橫向擴展還是采用單機(SMP)縱向擴展方面,甲骨文都為Oracle Database In-memory提供了完美的支持,同時Oracle集成系統家族提供大容量存儲、極致的性能和高可用性,能夠讓內存數據庫選件發揮出最大的效能。
甲骨文在上個月剛剛發布了最新版的Exadata x4-8,它也被視為史上最強大的集成系統產品。Exadata X4-8專門為超大型的工作負載而設計,包括全球范圍的業務應用、跨數據中心的應用以及基于內存的應用。它包含240個處理器核心以及12 TB內存,最多支持18個機架并聯,這種規模將能夠支持將絕大多數企業的全部數據都放到內存中進行處理。此外,甲骨文針對內存數據庫還專門發布了大內存一體機(Big Memory Machine)Oracle M6-32,提供了多達32 TB DRAM內存和3TB/秒的內存帶寬,最大限度地提高了內存數據庫性能。
據了解,Oracle集成系統針對Oracle Database In-memory還進行了優化,其內存容錯功能可以跨多個節點選擇性地復制內存數據,如果一臺服務器發生故障,便可以立即使用內存數據副本來滿足查詢要求。最新Direct-to-Wire Infiniband提高了內存的橫向擴展速度。
Andy Mendelsohn表示,通過部署Oracle數據庫內存選件,企業的實時分析性能提升可高達100倍,交易處理性能也得到大幅改善。它極大程度地提升了讓企業管理者能夠制定數據驅動的實時業務決策,并獲得即時的深入洞察,應對外部變化也更為敏捷和有效。Oracle Database In-memory是甲骨文持續在數據庫領域創新和投入的結果,我們希望為所有客戶以最低的部署及運維成本,提供極致的可用性、可擴展性和安全性。