數(shù)據(jù)倉庫中的OLTP與OLAP查詢是怎樣的

小編今天帶大家了解數(shù)據(jù)倉庫中的OLTP與OLAP查詢是怎樣的,文中知識點(diǎn)介紹的非常詳細(xì)。覺得有幫助的朋友可以跟著小編一起瀏覽文章的內(nèi)容,希望能夠幫助更多想解決這個問題的朋友找到問題的答案,下面跟著小編一起深入學(xué)習(xí)“數(shù)據(jù)倉庫中的OLTP與OLAP查詢是怎樣的”的知識吧。

肥東網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)!從網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、成都響應(yīng)式網(wǎng)站建設(shè)公司等網(wǎng)站項目制作,到程序開發(fā),運(yùn)營維護(hù)。創(chuàng)新互聯(lián)成立于2013年到現(xiàn)在10年的時間,我們擁有了豐富的建站經(jīng)驗和運(yùn)維經(jīng)驗,來保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選創(chuàng)新互聯(lián)。

在業(yè)務(wù)數(shù)據(jù)處理的早期,對數(shù)據(jù)庫的寫操作通常對應(yīng)于正在發(fā)生的商業(yè)交易-進(jìn)行銷售,與供應(yīng)商下訂單,支付員工的工資等。隨著數(shù)據(jù)庫擴(kuò)展到不涉及的領(lǐng)域  涉及貨幣易手,但是交易一詞仍然存在,是指構(gòu)成邏輯單元的一組讀寫操作。 這些類型的查詢稱為事務(wù)處理系統(tǒng)查詢(OLTP)。  為這些查詢設(shè)計的系統(tǒng)通常是面向用戶的,這意味著它們可能會看到大量的請求。 為了處理負(fù)載,應(yīng)用程序通常僅在每個查詢中觸摸少量記錄。  該應(yīng)用程序使用某種密鑰來請求記錄,而存儲引擎使用索引來查找所請求密鑰的數(shù)據(jù)。 磁盤查找時間通常是這里的瓶頸。

但是,數(shù)據(jù)庫也開始越來越多地用于數(shù)據(jù)分析,而這種數(shù)據(jù)分析具有非常不同的訪問模式。  通常,分析查詢需要掃描大量記錄,僅讀取每條記錄的幾列,并計算匯總統(tǒng)計信息(例如計數(shù),總和或平均值),而不是將原始數(shù)據(jù)返回給用戶。  例如,如果您的數(shù)據(jù)是銷售交易表,則分析查詢可能是:

  • 一月份,我們每家商店的總收入是多少?

  • 在最近的促銷活動中,我們售出的iPhone比平時多了多少?

  • 哪個品牌的牛奶最常與家樂氏的玉米片一起購買?

這些查詢通常由業(yè)務(wù)分析人員編寫,并饋入有助于公司管理層做出更好決策(業(yè)務(wù)智能)的報告。  為了將這種使用數(shù)據(jù)庫的模式與事務(wù)處理區(qū)分開來,它被稱為在線分析處理(OLAP)。 它們之所以鮮為人知,是因為它們是由業(yè)務(wù)分析師而不是最終用戶處理的。  與OLTP系統(tǒng)相比,它們處理的查詢量要少得多,但每個查詢的要求通常很高,需要在短時間內(nèi)掃描數(shù)百萬條記錄。  磁盤帶寬(不是尋道時間)通常是這里的瓶頸,而面向列的存儲是此類工作負(fù)載越來越流行的解決方案。

OLTP和OLAP之間的區(qū)別并不總是很明確,但是下面列出了一些典型特征。

數(shù)據(jù)倉庫中的OLTP與OLAP查詢是怎樣的

首先,將相同的數(shù)據(jù)庫用于事務(wù)處理和分析查詢。事實證明,SQL在這方面非常靈活:它對于OLTP類型查詢和OLAP類型查詢都適用。盡管如此,在1980年代末和1990年代初,公司有一種趨勢是停止使用OLTP系統(tǒng)進(jìn)行分析,而改為在單獨(dú)的數(shù)據(jù)庫上運(yùn)行分析。這個獨(dú)立的數(shù)據(jù)庫稱為數(shù)據(jù)倉庫。

企業(yè)可能具有數(shù)十種不同的交易處理系統(tǒng):為面向客戶的網(wǎng)站提供動力的系統(tǒng),實體商店中的銷售點(diǎn)(結(jié)帳)系統(tǒng),倉庫中的庫存跟蹤,車輛路線規(guī)劃,供應(yīng)商管理,員工管理等。這些系統(tǒng)中的一個很復(fù)雜,需要一個團(tuán)隊來維護(hù)它,因此這些系統(tǒng)最終只能彼此獨(dú)立地運(yùn)行。通常期望這些OLTP系統(tǒng)具有高可用性,并以低延遲處理事務(wù),因為它們通常對業(yè)務(wù)運(yùn)營至關(guān)重要。因此,數(shù)據(jù)庫管理員密切保護(hù)其OLTP數(shù)據(jù)庫。他們通常不愿讓業(yè)務(wù)分析人員在OLTP數(shù)據(jù)庫上運(yùn)行臨時分析查詢,因為這些查詢通常很昂貴,會掃描數(shù)據(jù)集的大部分,這可能會損害并發(fā)執(zhí)行事務(wù)的性能。

數(shù)據(jù)倉庫

數(shù)據(jù)倉庫中的OLTP與OLAP查詢是怎樣的

相比之下,數(shù)據(jù)倉庫是一個獨(dú)立的數(shù)據(jù)庫,分析人員可以查詢其內(nèi)心的內(nèi)容,而不會影響OLTP操作。數(shù)據(jù)倉庫包含公司所有各種OLTP系統(tǒng)中數(shù)據(jù)的只讀副本。從OLTP數(shù)據(jù)庫中提取數(shù)據(jù)(使用定期數(shù)據(jù)轉(zhuǎn)儲或連續(xù)的更新流),將其轉(zhuǎn)換為易于分析的模式,進(jìn)行清理,然后將其加載到數(shù)據(jù)倉庫中。將數(shù)據(jù)放入倉庫的過程稱為"提取-轉(zhuǎn)換-加載(ETL)"?,F(xiàn)在,幾乎所有大型企業(yè)都存在數(shù)據(jù)倉庫,但在小型企業(yè)中幾乎聞所未聞。這可能是因為大多數(shù)小型公司沒有太多不同的OLTP系統(tǒng);而且大多數(shù)小型公司的數(shù)據(jù)量都很小-足夠小,可以在常規(guī)SQL數(shù)據(jù)庫中查詢,甚至可以在電子表格中進(jìn)行分析。在大型公司中,要做一些在小型公司中簡單的事情需要很多繁重的工作。

使用單獨(dú)的數(shù)據(jù)倉庫而不是直接查詢OLTP系統(tǒng)進(jìn)行分析的一大優(yōu)勢是,可以針對分析訪問模式對數(shù)據(jù)倉庫進(jìn)行優(yōu)化。 某些數(shù)據(jù)庫(例如Microsoft SQL  Server和SAP HANA)在同一產(chǎn)品中支持事務(wù)處理和數(shù)據(jù)倉庫。 但是,它們越來越成為兩個獨(dú)立的存儲和查詢引擎,它們恰巧可以通過公共SQL接口進(jìn)行訪問。  數(shù)據(jù)倉庫供應(yīng)商(例如Teradata,Vertica,SAP HANA和ParAccel)通常在昂貴的商業(yè)許可下銷售其系統(tǒng)。 Amazon  RedShift是ParAccel的托管版本。 最近,出現(xiàn)了許多開源的SQL-onHadoop項目。 他們很年輕,但旨在與商業(yè)數(shù)據(jù)倉庫系統(tǒng)競爭。  這些包括Apache hive,Spark SQL,Cloudera Impala,F(xiàn)acebook Presto,Apache Tajo和Apache  Drill。 其中一些是基于Google Dremel的想法。

Analytics的存儲架構(gòu)

根據(jù)應(yīng)用程序的需求,在事務(wù)處理領(lǐng)域中會使用各種不同的數(shù)據(jù)模型。 另一方面,在分析中,數(shù)據(jù)模型的多樣性要少得多。  許多數(shù)據(jù)倉庫都以相當(dāng)公式化的方式使用,稱為星型模式(也稱為維建模)。 通常,將事實捕獲為單個事件,因為這樣可以在以后最大程度地進(jìn)行分析。  但是,這意味著事實表可能會變得非常大。

星星和雪花:

數(shù)據(jù)倉庫中的OLTP與OLAP查詢是怎樣的

"星型模式"的名稱來自以下事實:當(dāng)可視化表關(guān)系時,事實表位于中間,并被其維度表包圍; 這些桌子的連接就像星星的光芒。  此模板的一種變體稱為雪花模式,其中尺寸進(jìn)一步細(xì)分為多個子維度。  像Apple,Walmart或eBay這樣的大企業(yè),其數(shù)據(jù)倉庫中可能有數(shù)十PB的事務(wù)歷史記錄,其中大多數(shù)實際上是表。

列式存儲:

數(shù)據(jù)倉庫中的OLTP與OLAP查詢是怎樣的

盡管事實表通常超過100列,但是典型的數(shù)據(jù)倉庫查詢一次只能訪問其中的4或5。  在大多數(shù)OLTP數(shù)據(jù)庫中,存儲以面向行的方式進(jìn)行布局:表的一行中的所有值都彼此相鄰存儲。  為了處理諸如"查找某項X在12月的平均銷售額"之類的分析查詢,面向行的存儲引擎仍然需要將所有這些行(每個行包含100多個屬性)從磁盤加載到內(nèi)存中  ,解析它們并過濾掉不符合要求的條件,這可能會花費(fèi)很長時間。 面向列的存儲背后的想法很簡單:不要將一行中的所有值都存儲在一起,而是將每一列中的所有值存儲在一起。  如果每列存儲在單獨(dú)的文件中,則查詢僅需要讀取和解析該查詢中使用的那些列,這可以節(jié)省大量工作。

列壓縮:

數(shù)據(jù)倉庫中的OLTP與OLAP查詢是怎樣的

通常,一列中不同值的數(shù)量與行數(shù)相比很小(例如,零售商可能進(jìn)行數(shù)十億次銷售交易,但只有100,000種不同產(chǎn)品)。  根據(jù)列中的數(shù)據(jù),可以使用不同的壓縮技術(shù)-在數(shù)據(jù)倉庫中特別有效的一種技術(shù)是位圖編碼。

現(xiàn)在,我們可以將一列包含n個不同的值,并將其轉(zhuǎn)換為n個單獨(dú)的位圖-每個不同的值一個位圖,每行一個位。 如果行具有該值,則該位為1,否則為0。  如果n很小(例如,一個國家/地區(qū)列可能具有大約200個不同的值),則這些位圖可以每行一位存儲。

感謝大家的閱讀,以上就是“數(shù)據(jù)倉庫中的OLTP與OLAP查詢是怎樣的”的全部內(nèi)容了,學(xué)會的朋友趕緊操作起來吧。相信創(chuàng)新互聯(lián)小編一定會給大家?guī)砀鼉?yōu)質(zhì)的文章。謝謝大家對創(chuàng)新互聯(lián)網(wǎng)站的支持!

當(dāng)前名稱:數(shù)據(jù)倉庫中的OLTP與OLAP查詢是怎樣的
URL地址:http://bm7419.com/article32/pcdosc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供虛擬主機(jī)、微信公眾號、網(wǎng)頁設(shè)計公司、服務(wù)器托管、企業(yè)網(wǎng)站制作、域名注冊

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)