柚子快報(bào)邀請碼778899分享:大數(shù)據(jù)基礎(chǔ)學(xué)習(xí)
柚子快報(bào)邀請碼778899分享:大數(shù)據(jù)基礎(chǔ)學(xué)習(xí)
目錄
一.什么是大數(shù)據(jù)二.數(shù)據(jù)處理技術(shù)分類(OLAP vs OLTP)OLAP(Online Analytical Processing)OLTP(Online Transaction Processing)區(qū)別聯(lián)系
三.儲存的方式(列式 vs 行式)行式存儲列式存儲總結(jié)
四.數(shù)倉集成數(shù)據(jù)主題導(dǎo)向非易失性時(shí)間變化數(shù)據(jù)倉庫架構(gòu)
五.數(shù)倉分層六.ETL過程提?。‥xtract)轉(zhuǎn)換(Transform)加載(Load)
七.ELTELT的優(yōu)勢:
八.流計(jì)算流計(jì)算的關(guān)鍵特征:流計(jì)算的組件:流計(jì)算的應(yīng)用場景:
一.什么是大數(shù)據(jù)
大數(shù)據(jù)(Big Data)是指無法在合理時(shí)間內(nèi)用傳統(tǒng)數(shù)據(jù)庫管理工具進(jìn)行捕捉、管理和處理的龐大、復(fù)雜的數(shù)據(jù)集合。(3V特點(diǎn))
體積(Volume):數(shù)據(jù)量巨大,從TB(太字節(jié))到PB(拍字節(jié))乃至更高。速度(Velocity):數(shù)據(jù)以高速率產(chǎn)生和收集,包括實(shí)時(shí)數(shù)據(jù)流。多樣性(Variety):數(shù)據(jù)來自多種來源,包括結(jié)構(gòu)化數(shù)據(jù)、非結(jié)構(gòu)化數(shù)據(jù)和半結(jié)構(gòu)化數(shù)據(jù),如文本、圖片、視頻等。
二.數(shù)據(jù)處理技術(shù)分類(OLAP vs OLTP)
OLAP(Online Analytical Processing)
定義:OLAP是一種用于快速分析多維信息的技術(shù)。它主要用于復(fù)雜查詢、分析和報(bào)告,而不是簡單的事務(wù)處理。OLAP數(shù)據(jù)庫設(shè)計(jì)為優(yōu)化數(shù)據(jù)倉庫中的數(shù)據(jù)讀取,支持復(fù)雜的分析操作和計(jì)算,如趨勢分析、數(shù)據(jù)挖掘和預(yù)測模型。 特點(diǎn):
處理大量數(shù)據(jù)。優(yōu)化用于查詢和報(bào)告的復(fù)雜運(yùn)算。數(shù)據(jù)結(jié)構(gòu)通常是多維的(例如,數(shù)據(jù)立方體)。用于業(yè)務(wù)智能(BI)、數(shù)據(jù)分析和決策支持系統(tǒng)(DSS)。
OLTP(Online Transaction Processing)
定義:OLTP是一種用于管理日常事務(wù)處理的技術(shù)。這類數(shù)據(jù)庫設(shè)計(jì)用于快速、高效地處理大量簡單的查詢和事務(wù),如插入、更新和刪除數(shù)據(jù)。OLTP系統(tǒng)通常用于管理關(guān)鍵的業(yè)務(wù)數(shù)據(jù),在零售、銀行和其他需要處理大量事務(wù)的領(lǐng)域尤為重要。 特點(diǎn):
面向事務(wù),處理大量簡短的讀寫操作。數(shù)據(jù)模型通常是標(biāo)準(zhǔn)的關(guān)系模型,便于實(shí)時(shí)數(shù)據(jù)訪問和修改。系統(tǒng)設(shè)計(jì)注重?cái)?shù)據(jù)的一致性和完整性。響應(yīng)時(shí)間短,支持多用戶并發(fā)訪問。
區(qū)別
用途:OLAP用于分析和決策支持,而OLTP用于日常事務(wù)處理。查詢類型:OLAP執(zhí)行復(fù)雜的查詢和分析,涉及大量數(shù)據(jù);OLTP處理快速的、小規(guī)模的事務(wù)。數(shù)據(jù)更新:OLAP數(shù)據(jù)更新不頻繁,主要用于讀??;OLTP數(shù)據(jù)頻繁更新。數(shù)據(jù)結(jié)構(gòu):OLAP傾向于使用多維數(shù)據(jù)結(jié)構(gòu);OLTP使用傳統(tǒng)的關(guān)系數(shù)據(jù)模型。性能考量:OLAP優(yōu)化了數(shù)據(jù)讀取性能;OLTP優(yōu)化了事務(wù)處理的速度和效率。
聯(lián)系
數(shù)據(jù)流動:數(shù)據(jù)通常從OLTP系統(tǒng)流向OLAP系統(tǒng)。即,OLTP系統(tǒng)收集和管理業(yè)務(wù)日常操作數(shù)據(jù),然后這些數(shù)據(jù)被轉(zhuǎn)移和轉(zhuǎn)換(通過ETL過程:提取、轉(zhuǎn)換、加載)到數(shù)據(jù)倉庫中,供OLAP系統(tǒng)使用?;パa(bǔ)關(guān)系:OLAP和OLTP通常在企業(yè)中共存,互相補(bǔ)充。OLTP系統(tǒng)支持日常業(yè)務(wù)操作,而OLAP系統(tǒng)支持基于這些操作數(shù)據(jù)的決策分析。
雖然它們服務(wù)于不同的需求,但在實(shí)際應(yīng)用中,OLAP和OLTP是相互關(guān)聯(lián)和依賴的。隨著技術(shù)的發(fā)展,一些現(xiàn)代數(shù)據(jù)庫系統(tǒng)和平臺開始提供所謂的HTAP(Hybrid Transaction/Analytical Processing)能力,旨在同時(shí)處理OLTP和OLAP工作負(fù)載,以滿足更復(fù)雜和動態(tài)的企業(yè)需求。
三.儲存的方式(列式 vs 行式)
選擇哪一種取決于應(yīng)用場景、性能要求和數(shù)據(jù)處理的特性
行式存儲
在行式存儲數(shù)據(jù)庫中,表中的一行數(shù)據(jù)被存儲為一個連續(xù)的單元。這意味著構(gòu)成記錄的所有字段都是連續(xù)存放的。當(dāng)數(shù)據(jù)庫處理事務(wù)時(shí),如插入、更新或刪除操作,它通常需要訪問表中的完整記錄。行式存儲優(yōu)化了這類操作,因?yàn)樗軌蚩焖僮x寫表中的單個記錄。
優(yōu)點(diǎn):
優(yōu)化了事務(wù)處理(如OLTP系統(tǒng)):因?yàn)樘幚硎聞?wù)時(shí)通常需要訪問完整的記錄。適合寫密集型應(yīng)用:由于數(shù)據(jù)是按行順序存儲的,插入和更新操作通常更高效。
缺點(diǎn):
對于需要訪問大量數(shù)據(jù)的復(fù)雜查詢和分析操作不夠高效,尤其是當(dāng)查詢只涉及表中少數(shù)幾列時(shí)。
列式存儲
列式存儲數(shù)據(jù)庫將表中的數(shù)據(jù)按列而非行來存儲。這意味著同一列中的數(shù)據(jù)是連續(xù)存儲的,而不是將整行數(shù)據(jù)存儲在一起。這種存儲方式特別適合于分析和報(bào)告應(yīng)用,因?yàn)樗试S數(shù)據(jù)庫快速讀取表中的特定列,而不是加載整個行。
優(yōu)點(diǎn):
優(yōu)化了分析查詢(如OLAP系統(tǒng)):因?yàn)榉治霾樵兺ǔV簧婕氨碇械膸琢?,列式存儲可以顯著提高這類查詢的效率。壓縮率高:由于同一列的數(shù)據(jù)類型相同,列式存儲可以采用更有效的壓縮技術(shù),減少存儲空間需求。高效的聚合操作:計(jì)算聚合函數(shù)(如SUM、AVG)時(shí),只需讀取相關(guān)列,不需要加載整行數(shù)據(jù)。
缺點(diǎn):
寫操作可能比行式存儲更慢:每次更新數(shù)據(jù)時(shí),可能需要重寫整個列,這在某些情況下會導(dǎo)致性能下降。不適合事務(wù)密集型應(yīng)用:如果應(yīng)用需要頻繁更新小規(guī)模的數(shù)據(jù),列式存儲可能不如行式存儲高效。
總結(jié)
行式存儲更適合事務(wù)處理和需要頻繁讀寫完整記錄的應(yīng)用場景(如OLTP系統(tǒng))。列式存儲更適合分析和報(bào)告,尤其是當(dāng)操作主要涉及讀取表的特定幾列而非整行數(shù)據(jù)時(shí)(如OLAP系統(tǒng))。
四.數(shù)倉
數(shù)據(jù)倉庫(Data Warehouse)是用于存儲、管理和分析大量數(shù)據(jù)的集中式系統(tǒng)。它從各種異構(gòu)數(shù)據(jù)源收集數(shù)據(jù),進(jìn)行清洗、轉(zhuǎn)換和集成,然后將其存儲在一個統(tǒng)一的平臺上,以支持復(fù)雜的查詢、分析、報(bào)告和決策制定。數(shù)據(jù)倉庫的設(shè)計(jì)旨在優(yōu)化查詢和分析操作的效率,而不是處理日常的事務(wù)性工作負(fù)載。
集成數(shù)據(jù)
數(shù)據(jù)倉庫集成了來自企業(yè)內(nèi)外的多個數(shù)據(jù)源,包括關(guān)系數(shù)據(jù)庫、文件系統(tǒng)、在線事務(wù)處理(OLTP)系統(tǒng)、CRM系統(tǒng)等。數(shù)據(jù)集成過程包括數(shù)據(jù)清洗、去重、轉(zhuǎn)換和標(biāo)準(zhǔn)化,確保存儲在數(shù)據(jù)倉庫中的數(shù)據(jù)質(zhì)量和一致性。
主題導(dǎo)向
數(shù)據(jù)倉庫的設(shè)計(jì)通常是主題導(dǎo)向的,意味著數(shù)據(jù)是圍繞企業(yè)的關(guān)鍵主題(如客戶、產(chǎn)品、銷售)組織的。這種方式有助于用戶根據(jù)業(yè)務(wù)需求更容易地理解和查詢數(shù)據(jù)。
非易失性
數(shù)據(jù)倉庫中的數(shù)據(jù)是非易失的,一旦數(shù)據(jù)被加載到數(shù)據(jù)倉庫中,就不會頻繁地改變。數(shù)據(jù)倉庫保留歷史數(shù)據(jù),使得用戶可以進(jìn)行時(shí)間序列分析和趨勢預(yù)測。
時(shí)間變化
數(shù)據(jù)倉庫中的數(shù)據(jù)通常包括時(shí)間維度,使得用戶可以執(zhí)行時(shí)間序列分析和查看數(shù)據(jù)隨時(shí)間的變化。時(shí)間維度是進(jìn)行歷史分析和趨勢預(yù)測的關(guān)鍵。
數(shù)據(jù)倉庫架構(gòu)
數(shù)據(jù)倉庫架構(gòu)一般包括以下幾個核心組成部分:
數(shù)據(jù)源:企業(yè)內(nèi)外的多種數(shù)據(jù)源。ETL過程(提取、轉(zhuǎn)換、加載):用于從數(shù)據(jù)源提取數(shù)據(jù),進(jìn)行必要的清洗和轉(zhuǎn)換,然后加載到數(shù)據(jù)倉庫中。數(shù)據(jù)倉庫數(shù)據(jù)庫:集中存儲經(jīng)過轉(zhuǎn)換和集成的數(shù)據(jù)。數(shù)據(jù)訪問工具:包括查詢工具、報(bào)告工具和分析工具,用于訪問、展示和分析數(shù)據(jù)倉庫中的數(shù)據(jù)。
五.數(shù)倉分層
(見博客)
六.ETL過程
提?。‥xtract)、轉(zhuǎn)換(Transform)、加載(Load) ETL過程是數(shù)據(jù)倉庫和大數(shù)據(jù)處理中的一個核心概念,它代表提?。‥xtract)、轉(zhuǎn)換(Transform)、加載(Load)三個步驟。ETL過程是將數(shù)據(jù)從源系統(tǒng)轉(zhuǎn)移到目標(biāo)系統(tǒng)(如數(shù)據(jù)倉庫、數(shù)據(jù)湖或其他數(shù)據(jù)存儲系統(tǒng))的過程,在此過程中對數(shù)據(jù)進(jìn)行清洗、標(biāo)準(zhǔn)化和聚合等處理,以便于后續(xù)的查詢和分析。下面詳細(xì)解釋ETL的每個步驟:
提?。‥xtract)
定義:提取是ETL過程的第一步,涉及從各種數(shù)據(jù)源收集數(shù)據(jù)。這些數(shù)據(jù)源可以是關(guān)系數(shù)據(jù)庫、文件、日志、API、在線服務(wù)等。目的:目的是高效且準(zhǔn)確地獲取數(shù)據(jù),為后續(xù)的轉(zhuǎn)換和加載步驟做準(zhǔn)備。挑戰(zhàn):挑戰(zhàn)包括處理不同數(shù)據(jù)源的連接問題、數(shù)據(jù)格式不一致性,以及大數(shù)據(jù)量導(dǎo)致的性能問題。
轉(zhuǎn)換(Transform)
定義:轉(zhuǎn)換是對提取出的數(shù)據(jù)進(jìn)行處理的步驟,包括清洗、標(biāo)準(zhǔn)化、去重、驗(yàn)證和聚合等操作。目的:目的是改善數(shù)據(jù)質(zhì)量,確保數(shù)據(jù)在目標(biāo)系統(tǒng)中的一致性和準(zhǔn)確性。操作示例:
清洗:移除不完整、不正確或無關(guān)緊要的數(shù)據(jù)。標(biāo)準(zhǔn)化:確保所有數(shù)據(jù)遵循相同的格式和度量單位。去重:消除重復(fù)記錄。數(shù)據(jù)類型轉(zhuǎn)換:將文本、日期等格式統(tǒng)一轉(zhuǎn)換為目標(biāo)系統(tǒng)所需的格式。聚合:對數(shù)據(jù)進(jìn)行匯總或計(jì)算摘要統(tǒng)計(jì)信息。
加載(Load)
定義:加載是ETL過程的最后一步,指的是將轉(zhuǎn)換后的數(shù)據(jù)導(dǎo)入目標(biāo)系統(tǒng)(如數(shù)據(jù)倉庫)。模式:
全量加載:每次ETL執(zhí)行時(shí),都將整個數(shù)據(jù)集導(dǎo)入目標(biāo)系統(tǒng)。增量加載:只將自上次ETL執(zhí)行以來發(fā)生變化的數(shù)據(jù)導(dǎo)入目標(biāo)系統(tǒng)。 挑戰(zhàn):挑戰(zhàn)包括維持目標(biāo)系統(tǒng)的性能和穩(wěn)定性,尤其是在處理大規(guī)模數(shù)據(jù)時(shí)。
七.ELT
ELT(Extract, Load, Transform)是與ETL(Extract, Transform, Load)相對的數(shù)據(jù)處理流程。在ELT流程中,數(shù)據(jù)首先被提?。‥xtract)出來,然后直接加載(Load)到目標(biāo)數(shù)據(jù)存儲系統(tǒng)(通常是數(shù)據(jù)湖或者現(xiàn)代化的數(shù)據(jù)倉庫),之后在目標(biāo)系統(tǒng)內(nèi)部進(jìn)行轉(zhuǎn)換(Transform)處理。
ELT的優(yōu)勢:
靈活性:由于原始數(shù)據(jù)被保留在目標(biāo)系統(tǒng)中,可以在之后根據(jù)需要進(jìn)行多次不同的轉(zhuǎn)換。 性能:特別是在云計(jì)算環(huán)境中,ELT可以充分利用云服務(wù)的可擴(kuò)展性和強(qiáng)大的處理能力,對大規(guī)模數(shù)據(jù)集進(jìn)行高效處理。 實(shí)時(shí)性:ELT流程可以更快地將數(shù)據(jù)移入目標(biāo)系統(tǒng),從而支持接近實(shí)時(shí)的數(shù)據(jù)分析需求。 成本效益:ELT減少了對專門ETL工具的依賴,以及相關(guān)的硬件和維護(hù)成本,尤其是當(dāng)使用云基礎(chǔ)設(shè)施時(shí)。
八.流計(jì)算
流計(jì)算(Stream Processing)是一種計(jì)算模型,旨在處理和分析實(shí)時(shí)數(shù)據(jù)流。與傳統(tǒng)的批處理不同,流計(jì)算不需要等待數(shù)據(jù)收集完整的數(shù)據(jù)集后再進(jìn)行處理,而是隨著數(shù)據(jù)的生成和傳入立即對其進(jìn)行處理。流計(jì)算架構(gòu)被設(shè)計(jì)為高吞吐量和低延遲,可以連續(xù)不斷地處理數(shù)據(jù)。
流計(jì)算的關(guān)鍵特征:
實(shí)時(shí)性:流計(jì)算系統(tǒng)通常需要在毫秒到秒級的時(shí)間內(nèi)處理數(shù)據(jù),并提供即時(shí)的處理結(jié)果。 持續(xù)性:流計(jì)算是一個持續(xù)的過程,數(shù)據(jù)源源不斷地流入系統(tǒng)。 可擴(kuò)展性:流計(jì)算平臺通常支持水平擴(kuò)展,可以通過增加更多的計(jì)算資源來處理更大的數(shù)據(jù)流。 容錯性:流計(jì)算系統(tǒng)能夠處理節(jié)點(diǎn)故障或數(shù)據(jù)丟失,能夠保證數(shù)據(jù)處理的正確性。
流計(jì)算的組件:
數(shù)據(jù)源:實(shí)時(shí)數(shù)據(jù)流的起點(diǎn),如傳感器數(shù)據(jù)、用戶活動日志、在線交易信息等。流處理引擎:核心組件,負(fù)責(zé)數(shù)據(jù)流的處理,包括過濾、聚合、連接、轉(zhuǎn)換等操作。數(shù)據(jù)存儲:處理后的數(shù)據(jù)可以被存儲在數(shù)據(jù)庫、數(shù)據(jù)湖、或其他存儲系統(tǒng)中供后續(xù)分析。查詢和可視化:實(shí)時(shí)查詢和數(shù)據(jù)可視化工具幫助用戶理解流數(shù)據(jù)。
流計(jì)算的應(yīng)用場景:
實(shí)時(shí)監(jiān)控:例如,監(jiān)控金融市場的交易活動或監(jiān)測IT基礎(chǔ)設(shè)施的健康狀況。實(shí)時(shí)分析:對社交媒體流量進(jìn)行情感分析或品牌監(jiān)測。物聯(lián)網(wǎng):處理從各種設(shè)備傳入的大量實(shí)時(shí)數(shù)據(jù),如溫度、濕度和位置數(shù)據(jù)。實(shí)時(shí)推薦:基于用戶的實(shí)時(shí)行為給出個性化推薦。
柚子快報(bào)邀請碼778899分享:大數(shù)據(jù)基礎(chǔ)學(xué)習(xí)
好文鏈接
本文內(nèi)容根據(jù)網(wǎng)絡(luò)資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點(diǎn)和立場。
轉(zhuǎn)載請注明,如有侵權(quán),聯(lián)系刪除。