vertica 資料庫
Vertica是一款基於列儲存的 (massively parallel processing)架構的資料庫。它可以支援存放多至PB(Petabyte)級別的 。Vertica是由關聯式資料庫大師Michael Stonebraker(2014 年 獲得者)所建立,於2011年被 收購併成為其核心大資料平臺軟體。
列式儲存體系架構是 的核心,實際上Vertica是 世界上第一個列式儲存資料庫,它是在2005年發表的 學術論文C-Store的基礎上推出的適用於大規模並行處理場景的真正意義上的分散式資料庫。
投影實際上是一組經過排序和壓縮的儲存在磁碟上的一個檔案集合,這個投影類似於 聚集列索引(它和表的儲存有很大的不同),您可以 認為它是隻儲存了 索引結構。投影的定義類似於帶有一個 AS SELECT子句的 物化檢視,正如您在上面的圖中所看到的三個投影, “CREATE PROJECTION AS SELECT A, B, C FROM sales ORDER BY A;”, “ CREATE PROJECTION AS SELECT B, A, C FROM sales ORDER BY B, A;” , “CREATE PROJECTION AS SELECT C, A FROM sales ORDER BY C;” 。
在大多數情況下,最佳壓縮排序和分散式投影的規則很簡單,它可以直接從查詢中匯出。所以我們為什麼要花費時間手動處理它呢?透過一種稱為 資料庫設計器 的特殊工具能夠自動建立投影,這種工具根據您的工作負載自動為您建議行儲存中的索引。
我們有一個基於磁碟的 列式讀取最佳化儲存 ,我們有一個 記憶體寫入最佳化儲存 ,這是任何插入和更新的預設選項。這讓Vertica能夠支援實時查詢這個核心功能,因為它的唯一缺點是能夠接受幾行資料的插入或更新,並在事務完成以後,記憶體中的資料只需幾毫秒即可用於讀取到磁碟,然後在查詢時進行合併,通常在幾分鐘後的某個時間點它透過後臺程式重新整理到磁碟,形成一個新的排序和壓縮的儲存容器,然後在透過後臺程式再次合併儲存容器。如果您批次載入並且不想浪費記憶體,則可以將資料直接寫入磁碟。因為在這種規模上進行實時分析的任何其他選擇將涉及多種產品的臨時混合架構。
多表聯接 是一個效能殺手,請確保您有 合併連線 和 列式儲存 之類的功能,讓事情變得更好。但是在白天的工作時間之內到了快要下班的時候,你仍然在獲取來自多個不同地方的資料,並且很好地將它們連線在一起,這顯然需要時間,而且每個查詢都需要這樣做。這就是為什麼 資料集市 長期以來一直是轉到“需要頻繁查詢資料的選項”以檢視資料。當資料發生變化時,需要重新整理到資料集市,這可能會造成大量耗時的計算,除非您只重新整理 已經被更改 的那一部分,但是也存在其他問題。
當我們在上一個特性中討論 資料集市的主題時,請考慮一下,您正在獲取的資料容量每天都在TB級以上。您會怎麼做?
- 從磁碟讀取千兆位元組的資料併為每個查詢冗餘聚合?
- 您是否使用聚合資料建立單獨的表並使用複雜的邏輯對其進行更新?
- 您是否在資料庫前放置了一個OLAP引擎來聚合您的資料從而增加了硬體的成本和複雜性?
不,您可以向表中新增 投影(PROJECTION)功能。它按您需要的所有產品分組並彙總您需要的所有指標,這就是所謂的實時聚合投影,然後與所有其他投影一起重新整理,每次提交。
現在您不需要增加邏輯的複雜性或硬體成本和附加軟體,將為您進行 記憶體聚合,現在一切都來了! 開箱即用,更重要的是開箱即用!!!
推薦閱讀:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69949806/viewspace-2909732/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 為Vertica資料庫增加自定義函式to_base64和from_base64資料庫函式
- vertica解鎖table
- vertica審計日誌
- 資料庫PostrageSQL-管理資料庫資料庫SQL
- vertica查詢最佳化
- vertica ROS和WOS錯誤ROS
- 重磅!Vertica整合Apache Hudi指南Apache
- 【資料庫資料恢復】SAP資料庫資料恢復案例資料庫資料恢復
- 【資料庫資料恢復】MS SQL資料庫附加資料庫出錯怎麼恢復資料?資料庫資料恢復SQL
- 資料庫介紹--初識資料庫資料庫
- 資料庫 資料庫的完整性資料庫
- 資料湖 vs 倉庫 vs 資料庫資料庫
- 資料庫概論 (一)資料庫概念資料庫
- 【Falsk 使用資料庫】---- 資料庫基本操作資料庫
- 【資料庫資料恢復】Sql Server資料庫資料恢復案例資料庫資料恢復SQLServer
- DataX將MySql資料庫資料同步到Oracle資料庫MySql資料庫Oracle
- 織夢資料庫_織夢還原資料庫_織夢資料庫很卡資料庫
- 生產資料庫、開發資料庫、測試資料庫中的資料的區分資料庫
- 資料庫資料庫
- vertica單節點安裝教程
- vertica 設定最大會話數會話
- Laravel 通過 ODBC 連線 VerticaLaravel
- L10資料庫——資料庫介紹資料庫
- Oracle資料庫-----資料庫的基本概念Oracle資料庫
- 【資料庫設計】資料庫的設計資料庫
- oracle 備份資料庫,匯出資料庫Oracle資料庫
- 【資料庫】資料庫儲存過程(一)資料庫儲存過程
- 國產資料庫源流史:AntDB資料庫資料庫
- 資料庫與資料庫管理系統概述資料庫
- 實時資料庫與時序資料庫資料庫
- NoSQL資料庫概念與NoSQL資料庫家族SQL資料庫
- DataX將Oracle資料庫資料同步到達夢資料庫Oracle資料庫
- Mysql資料庫-資料模型MySql資料庫模型
- MySQL資料庫資料管理MySql資料庫
- IndexedDB 資料庫新增資料Index資料庫
- 【資料庫資料恢復】windows server下SqlServer資料庫的資料恢復資料庫資料恢復WindowsServerSQL
- 【資料庫資料恢復】如何恢復Oracle資料庫truncate表的資料資料庫資料恢復Oracle
- Python3爬蟲資料入資料庫---把爬取到的資料存到資料庫,帶資料庫去重功能Python爬蟲資料庫