如今的企業正在使用新技術來存儲和管理他們的數據。對于金融部門、電信、廣告和零售行業,以及政府機構來說,從各種來源收集信息并將其轉化為實際成果是最重要的。
可以在數據庫層面實施只是流程的一個要素,但其影響非常重要,因為組織可以存儲和管理數據的方式差別很大。
首先,區分不同類型的數據庫管理系統(DBMS)是很重要的。
NoSQL是未來
根據定義,誕生于20世紀70年代的結構化查詢語言(SQL)數據庫以標準化代碼進行查詢。大多數傳統的DBMS都基于SQL,并遵循關系模型,這意味著它們在查詢規范中的結構化非常高。
更重要的是,到目前為止,大多數數據庫都被集中、存儲和維護在一個單一的位置,通常是桌面服務器或大型機。
SQL數據庫最流行的例子之一是MySQL,這是一個開源的關系型數據庫管理系統實現,于1995年開發,并在互聯網巨頭中廣泛采用。
最近,人們已經看到了NoSQL模型的出現,這些數據庫是非關系數據庫,這意味著它們的結構可以支持數據集之間的多對多關系,并且可以在不需要硬件升級的情況下進行擴展。
與此同時,越來越多的企業轉向采用分布式方法,這使得他們可以在多個地理獨立的位置運行復制的數據庫。
現代數據庫必須是可擴展的、分散的,并且允許不同數據類型的聚合。因此,關系數據庫已經失去了一些吸引力,并且NoSQL數據庫已經從行業的邊緣涌現出來,在市場中占有重要的份額。
事實上,根據Allied Market Research公司的調查數據,到2020年,NoSQL市場預計價值為42億美元。在過去的十年里,這些數據庫的涌入已經取代了傳統的引擎,對新的運營模式做出了回應。其流行的例子包括MongoDB、Redis、HBase、MarkLogic和Cassandra。
如今,企業收集的數據比以往任何時候都要多,因此速度是數據庫管理系統提供商需要改進的另一個特點。出于這個原因,另一個背離傳統的情況是內存數據庫的使用迅速增加。
內存數據庫管理系統的出現
而在以前,磁盤基礎架構需要單獨的數據倉庫(Teradata、Informatica、Redshift)和運行數據庫(Hadoop、Cloudera)之間的交互以及內存,因此可以將分析、機器學習、人工智能和操作合并為一個地方。
通過完全依賴系統內存,可以消除對磁盤I/O查詢或更新數據的需求,并且不再需要額外的緩存副本。
內存數據庫的主要缺點是它們歷來受限于內存的高成本。隨著內存價格的下降,內存數據庫的普及度越來越高,實時分析的期望也越來越普遍。
內存系統的速度比基于磁盤的數據庫管理系統快10到100倍(相差幾毫秒),因此可以解決物聯網數據分析、自動駕駛汽車、現代零售平臺、交易處理和欺詐檢測等問題。
事實上,根據研究機構Markets and Markets公司的報告,2018年內存市場的市場規模可能達到132.3億美元。傳統上使用磁盤的大型公司已經開發了自己的內存系統,其中包括甲骨文、微軟和SAP公司。
一些數據庫管理系統(DBMS)都有不同的數據庫技術方法。Aerospike公司的閃存優化NoSQL數據庫成立于2009年,采用混合內存架構(結合內存和SSD硬盤)直接連接到應用程序數據庫,并承諾提供低延遲的應用程序規模。出于不同的原因,開源關鍵值存儲系統被設計成提供一種解決延遲關鍵應用的解決方案,無論是在實時事務處理和實時分析(通常依賴于不同的數據庫)。
Aerospike公司聯合創始人兼首席技術官Brian Bulkowski解釋說,兩者之間的主要區別之一是交易需要書寫和讀取的平衡,而分析往往是讀取密集型的。
Aerospike公司聯合創始人兼首席發展官Srini Srinivasan補充說,企業傾向于使用不同的技術來處理客戶數據、預訂和財務風險,其中一致性和準確性是關鍵,例如實時出價、網絡安全和欺詐檢測,其中性能和可用性是重中之重。
Aerospike公司表示,通過有效替換緩存層,并結合使用固態硬盤和內存,可確保低延遲和高吞吐量。更重要的是,其集群功能也可以滿足分布式應用的需求。
為了改善磁盤I/O,Aerospike公司將索引放置在內存中而不是SSD硬盤上。它通過在同一節點上同步用戶和索引數據來優化網絡,以避免它們之間的過度跳躍,自動執行客戶端請求的路由,并自動平衡工作負載。最后,它提供跨多個SSD硬盤的多線程和并行處理,以促進擴展。
對于Bulkowski而言,該公司的任務是將互聯網巨頭所使用的專有技術,他堅持認為與Aerospike公司的產品類似,用于實時大數據應用。
速度和規模是基于Foster-city公司的GridGain共享的兩個優先事項,其內存中軟件可以位于應用程序和數據庫(或數據湖)之間,也可以作為內存中的SQL數據庫部署。
GridGain是為支持事務和分析應用程序而構建的,它基于Foster-city公司創建的Apache Ignite開源項目(并且仍然是其主要貢獻者)。像Aerospike公司一樣,它消除了將操作與分析和機器學習功能分開的需求,彌補了數據倉庫和操作數據庫之間的差距。
因此,該公司總裁兼首席執行官Abe Kleinfeld解釋說,該系統沒有數據集成和反饋回路交互。所有功能都保存在統一的內存數據存儲中,并且該平臺具有統一的API,這意味著它可以匯集不同格式和結構的數據。
內存系統在金融服務領域非常流行,在過去一年Aerospike公司的收入翻了一番,擁有ING、SociétéGénérale、蘋果、華為、微軟等客戶。
GridGain最大的項目是俄羅斯聯邦儲蓄銀行委托開發的2150 Teraflop集群,總計采用56000個CPU和1536TB內存。
Aerospike和GridGain都專注于“擴展”方法,增加節點數量以提高數據庫性能。
GPU加速數據庫
MapD選擇改善每個單獨節點的性能,而采用開源內存數據庫,每個服務器上運行1到16個GPU。
這是一個希望實現可視化并與數據實時交互而產生的MapD的產品,它有兩個并行推出的產品:GPU加速的SQL數據庫MapD Core,以及基于Web的視覺分析平臺MapD Immerse,它位于SQL引擎之上,可以在單個壓縮映像中呈現數十億條數據記錄。該引擎不需要預先索引或預先聚合:所有事情都是實時完成的,而且可能超過數十億行數據記錄。
MapD公司首席執行官兼聯合創始人Todd Mostak表示,受限于結構化數據,MapD Core不像其他一些NoSQL產品具有那樣多的功能,它不能取代數據倉庫。
“我們就像存儲記錄中的熱門緩存。這可能會將數據從數據湖或Hadoop系統中提取出來,也會將數據從Teradata等傳統數據倉庫中提取出來。企業可以選擇第三方商業智能工具,我們推出了一個很好的符合DBI標準的Python連接器,當然,我們的許多客戶都使用MapD Immerse。盡管它不如Tableau功能完整,但它可以通過SQL和呈現功能非常靈活地探索非常大的數據集。”
該系統可用于模型生成中的欺詐、風險和異常檢測,地理分析和網絡安全,實時車隊管理和激勵型保險。
2014年,MapD公司獲得了芯片制造商Nvidia公司所頒發的10萬美元初期挑戰獎勵,該獎項每年頒發給利用GPU的最佳創業公司,Nvidia公司隨后參與了MapD公司的三輪融資。
MapD公司最近推出了一種軟件即服務(SaaS)產品,它在NVIDIA GPU上運行于行業領先的云計算基礎設施提供商的數據中心,并提供自動配置、優化、支持和升級等服務。
MapD最近與其合作伙伴Continuum Analytics和H2O.ai合作成立了GPU Open Analytics Initiative(GOAI),以將其平臺與其他基于GPU的項目相集成。
該聯盟的希望從GPU原生數據格式和API的框架開始,結合使用基于GPU的分析工具。
“這種工具組合的想法是都在GPU上運行,所以可以有一個零拷貝框架,這樣我們就可以無縫地通過這些不同的進程傳遞數據,而無需再次封送或采用CPU的資源。”Mostak解釋說。