大屁股美女视频国产免费_日韩在线 欧美成人网站视频在线观看_亚洲国产欧洲在线播放_欧美老妇配种高清视频_午夜日逼福利视频_不卡av中文在线观看_国产无遮挡又黄又爽高潮_中文字幕有码在线日韩电影大全_2019午夜三级网站理论_污黄啪啪网18以下勿进

免費(fèi)注冊
大數(shù)據(jù)處理系統(tǒng)架構(gòu)簡介

大數(shù)據(jù)處理系統(tǒng)架構(gòu)簡介

作者: 網(wǎng)友投稿
閱讀數(shù):313
更新時間:2024-02-23 20:34:50
大數(shù)據(jù)處理系統(tǒng)架構(gòu)簡介
div class="richTextContainer">
大數(shù)據(jù)技術(shù)已經(jīng)逐步應(yīng)用到大小各類企業(yè)和組織,那么大數(shù)據(jù)處理系統(tǒng)架構(gòu)是怎樣的,大數(shù)據(jù)技術(shù)的完整系統(tǒng)架構(gòu)是怎么樣的?本篇文章,我們介紹下企業(yè)大數(shù)據(jù)處理平臺的架構(gòu)
 

一、整體框架

數(shù)據(jù)產(chǎn)生 ——> 數(shù)據(jù)傳輸 ——> 數(shù)據(jù)存儲,去到不同的場景(業(yè)務(wù)數(shù)據(jù)、實(shí)時數(shù)據(jù)、離線數(shù)據(jù)) ——> 進(jìn)行數(shù)據(jù)分析。
 

二、數(shù)據(jù)產(chǎn)生

通過數(shù)據(jù)埋點(diǎn)SDK(可以理解為一個能夠捕獲用戶數(shù)據(jù)的工具,可以是公司自研,也可以向?qū)iT的公司進(jìn)行購買),研發(fā)開發(fā)對應(yīng)程序,將用戶產(chǎn)生的各種行為記錄下來,并上報上來。這里可以研究的部分很多。比如上報邏輯,上傳是網(wǎng)絡(luò)環(huán)境是否會有問題。一些臟數(shù)據(jù)可能會在此產(chǎn)生。
 

三、數(shù)據(jù)傳輸 

http協(xié)議 到達(dá)服務(wù)器
 

四、數(shù)據(jù)存儲過程

tips:大部分你看到的大數(shù)據(jù)組件都是在這塊產(chǎn)生的。
數(shù)據(jù)通過網(wǎng)絡(luò)協(xié)議傳輸?shù)綄?yīng)的網(wǎng)關(guān),寫入對應(yīng)數(shù)據(jù)庫。
 

1. 什么是databus。

在大數(shù)據(jù)系統(tǒng)架構(gòu)中,數(shù)據(jù)系統(tǒng)通常分為兩種類型,一種是真實(shí)數(shù)據(jù)系統(tǒng),作為基礎(chǔ)數(shù)據(jù)庫,存儲用戶產(chǎn)生的寫操作;第二種是衍生數(shù)據(jù)庫或索引,提供讀取和其他復(fù)雜查詢操作。后者通常衍生自主數(shù)據(jù)存儲,會對其中的數(shù)據(jù)做轉(zhuǎn)換,有時還要包括復(fù)雜的業(yè)務(wù)邏輯處理(數(shù)據(jù)分析師用sql干這活,你懂的)。衍生數(shù)據(jù)庫(或緩存)也來自主數(shù)據(jù)存儲,當(dāng)主數(shù)據(jù)存儲發(fā)生變化,衍生數(shù)據(jù)庫(或緩存)中的數(shù)據(jù)就需要刷新,或是轉(zhuǎn)為無效。
這樣架構(gòu)自然而然的一個問題就是如何保障基礎(chǔ)數(shù)據(jù)庫和其它數(shù)據(jù)存儲方的數(shù)據(jù)一致性。一個想法是雙寫,在有數(shù)據(jù)進(jìn)來的時候就同時更新基礎(chǔ)數(shù)據(jù)庫和衍生數(shù)據(jù)庫(或緩存),但這種方式如果沒有很強(qiáng)的協(xié)議來保證,就還是會有一致性問題,比如說主數(shù)據(jù)庫寫入成功但是衍生數(shù)據(jù)庫(或緩存)寫入失敗。另外的一個方案就是只寫基礎(chǔ)數(shù)據(jù)庫,其它衍生數(shù)據(jù)庫(緩存)通過監(jiān)聽基礎(chǔ)數(shù)據(jù)庫的變化來進(jìn)行數(shù)據(jù)變更,這個方案要求能有一個工具能監(jiān)聽基礎(chǔ)數(shù)據(jù)庫的變更并且能夠及時的通知衍生數(shù)據(jù)庫(緩存)具體的變化,而Databus就是這樣的一個系統(tǒng)。
 
Databus是一個實(shí)時的低延時數(shù)據(jù)抓取系統(tǒng)。它將數(shù)據(jù)庫作為唯一真實(shí)數(shù)據(jù)來源,并將變更從事務(wù)或提交日志中提取出來,然后通知相關(guān)的衍生數(shù)據(jù)庫或緩存。
Databus傳輸層端到端的延遲是微秒級別的,這意味著每臺服務(wù)器每秒可以處理數(shù)千次數(shù)據(jù)吞吐變更事件,同時還支持無限回溯能力和豐富的變更訂閱功能,目前從實(shí)踐中來看,單個DB寫入QPS達(dá)到1.5k就要進(jìn)行拆庫,而到達(dá)2k就會出現(xiàn)比較明顯的主從延遲,而relay雖然要串行解析單個庫的binlog,但是也可以扛到2.2k。下面的圖是大概的結(jié)構(gòu):
 
 
 
上圖展示Search Index、Read Replicas系統(tǒng)是Databus的消費(fèi)者。當(dāng)Primary DB發(fā)生數(shù)據(jù)變更的時候,連接其上的中繼系統(tǒng)會將數(shù)據(jù)拉取到中繼上去。嵌入在Search Index或緩存中的Databus消費(fèi)者客戶端就會從中繼拉取數(shù)據(jù)并更新緩存或數(shù)據(jù)庫。
DataBus提供以下功能:
  • 來源獨(dú)立:Databus提供多種數(shù)據(jù)來源的變更抓取,包括mysql和oracle。oracle的適配器在開源版本中有提供,mysql的將在后面提供。

  • 可擴(kuò)展和高度可用:Databus能擴(kuò)展到支持?jǐn)?shù)千消費(fèi)者和事務(wù)數(shù)據(jù)來源,并保持高度可用性。

  • 事務(wù)按序提交:Databus能保持來源數(shù)據(jù)庫中的事務(wù)完整性,并按照事務(wù)分組和來源的提交順尋交付變更事件。

  • 低延遲、支持多種訂閱機(jī)制:數(shù)據(jù)源變更完成后,Databus能在微秒級內(nèi)將事務(wù)提交給消費(fèi)者。同時,消費(fèi)者使用Databus中的服務(wù)器端過濾功能,可以只獲取自己需要的特定數(shù)據(jù)。

  • 無限回溯:這是Databus最具創(chuàng)新性的組件之一,對消費(fèi)者支持無限回溯能力。當(dāng)消費(fèi)者需要產(chǎn)生數(shù)據(jù)的完整拷貝時(比如新的搜索索引),它不會對主OLTP數(shù)據(jù)庫產(chǎn)生任何額外負(fù)擔(dān),就可以達(dá)成目的。當(dāng)消費(fèi)者的數(shù)據(jù)大大落后于來源數(shù)據(jù)庫時,也可以使用該功能。

Databus系統(tǒng)可對接多種數(shù)據(jù)源和數(shù)據(jù)目的地,將數(shù)據(jù)源的日志同步到數(shù)據(jù)目的地。常用的數(shù)據(jù)源有:Kafka、本地文件、ScribeClient等,常用的數(shù)據(jù)目的地有:Kafka、HDFS等。
 

2.什么是kafka?

Kafka可以理解為一個消息隊(duì)列,用來緩存數(shù)據(jù),以供其他訂閱過數(shù)據(jù)的消費(fèi)者拿取數(shù)據(jù)。
在大數(shù)據(jù)體系中,數(shù)據(jù)最終會流向多個不同的地方,一般分為離線數(shù)據(jù)和實(shí)時數(shù)據(jù)兩種類型,可以是es、flink、hive等地方。(后面會一一介紹這些)
要了解kafka是如何將數(shù)據(jù)給到下游的消費(fèi)者,我們需要先了解四個概念。
Topic
Kafka將消息分門別類,每一類的消息稱之為一個主題(Topic)、通常會按照公司內(nèi)部的業(yè)務(wù)來分。
Producer
發(fā)布消息的對象稱之為主題生產(chǎn)者(Kafka topic producer),也就是上游數(shù)據(jù)的來源,例如databus、flume(日志采集組件)或者其他數(shù)據(jù)庫等等
Consumer
訂閱消息并處理發(fā)布的消息的對象稱之為主題消費(fèi)者(consumers),下游數(shù)據(jù)消費(fèi)者,可以是es、flink、hive等等。
Broker
已發(fā)布的消息保存在一組服務(wù)器中,稱之為Kafka集群。集群中的每一個服務(wù)器都是一個代理(Broker)。 消費(fèi)者可以訂閱一個或多個主題(topic),并從Broker拉數(shù)據(jù),從而消費(fèi)這些已發(fā)布的消息。
 
主題和日志 TopicLog
讓我們更深入的了解Kafka中的Topic。
Topic是發(fā)布的消息的類別名,一個topic可以有零個,一個或多個消費(fèi)者訂閱該主題的消息。
對于每個topic,Kafka集群都會維護(hù)一個分區(qū)log,就像下圖中所示:
 
每一個分區(qū)都是一個順序的、不可變的消息隊(duì)列, 并且可以持續(xù)的添加。分區(qū)中的消息都被分了一個序列號,稱之為偏移量(offset),在每個分區(qū)中此偏移量都是唯一的。
Kafka集群保持所有的消息,直到它們過期(無論消息是否被消費(fèi))。實(shí)際上消費(fèi)者所持有的僅有的元數(shù)據(jù)就是這個offset(偏移量),也就是說offset由消費(fèi)者來控制:正常情況當(dāng)消費(fèi)者消費(fèi)消息的時候,偏移量也線性的的增加。但是實(shí)際偏移量由消費(fèi)者控制,消費(fèi)者可以將偏移量重置為更早的位置,重新讀取消息。可以看到這種設(shè)計對消費(fèi)者來說操作自如,一個消費(fèi)者的操作不會影響其它消費(fèi)者對此log的處理。
 
再說說分區(qū)。Kafka中采用分區(qū)的設(shè)計有幾個目的。一是可以處理更多的消息,不受單臺服務(wù)器的限制。Topic擁有多個分區(qū)意味著它可以不受限的處理更多的數(shù)據(jù)。第二,分區(qū)可以作為并行處理的單元。
 

3.什么是hadoop,hadoop和常常聽說的hive和spark又有什么關(guān)系?

上面說到數(shù)據(jù)通過kafka分發(fā)到不同的消費(fèi)者,其中消費(fèi)者可以是hive,那hive是什么呢?理解hive前要知道hadoop是什么。
Hadoop是一個大數(shù)據(jù)框架系統(tǒng),hadoop的核心功能只有兩個,存儲數(shù)據(jù)和計算數(shù)據(jù)。
存儲數(shù)據(jù),采用HDFS系統(tǒng),即分布式文件系統(tǒng),簡單的理解成,在不同的機(jī)器上使用文件存儲數(shù)據(jù),能夠解決多臺機(jī)器上協(xié)調(diào)讀和寫的功能。
計算數(shù)據(jù),采用MapReduce,即分布式計算架構(gòu),簡單的理解成,解決當(dāng)數(shù)據(jù)存儲在不同機(jī)器上時,怎么能夠把復(fù)雜數(shù)據(jù)計算邏輯算出來。
Hadoop使用的是java語言,因此如果需要進(jìn)行數(shù)據(jù)計算,需要使用java來寫算子,但是這樣的門檻非常高,因此發(fā)明了新的方法,也就是hive,hive是基于Hadoop的一個數(shù)據(jù)倉庫工具,將結(jié)構(gòu)化的數(shù)據(jù)文件映射為一張表,并提供類SQL查詢功能。能夠讓大部分人使用sql來查詢數(shù)據(jù),降低了使用hadoop的門檻。也是數(shù)據(jù)倉庫的雛形。
 
Spark可以理解成MapReduce的2.0升級版,比MapReduce計算更快,因此很多公司也開始逐步使用spark來計算數(shù)據(jù)。
 
數(shù)據(jù)分析師,在hive上使用sql進(jìn)行清洗和取數(shù),并產(chǎn)生出報表,進(jìn)行數(shù)據(jù)分析。
 
最后,本文簡要介紹了大數(shù)據(jù)系統(tǒng)架構(gòu)。速優(yōu)云低代碼平臺提供原生數(shù)據(jù)治理、數(shù)據(jù)可視化分析、數(shù)據(jù)大屏創(chuàng)建等功能,并提供集成多云通用大數(shù)據(jù)架構(gòu)解決方案,如有需要,歡迎聯(lián)系。

發(fā)表評論

評論列表

暫時沒有評論,有什么想聊的?

低代碼數(shù)據(jù)平臺BI大屏定制

低代碼數(shù)據(jù)平臺BI大屏定制

釋放數(shù)據(jù)潛能,智慧展現(xiàn)新高度。定制低代碼數(shù)據(jù)平臺,打造個性化BI大屏,助您實(shí)現(xiàn)數(shù)據(jù)驅(qū)動決策。



熱推產(chǎn)品-全域低代碼平臺

會Excel就能開發(fā)軟件

全域低代碼平臺,可視化拖拉拽/導(dǎo)入Excel,就可以開發(fā)小程序、管理系統(tǒng)、物聯(lián)網(wǎng)、ERP、CRM等應(yīng)用

大數(shù)據(jù)處理系統(tǒng)架構(gòu)簡介最新資訊

分享關(guān)于大數(shù)據(jù)最新動態(tài),數(shù)據(jù)分析模板分享,如何使用低代碼構(gòu)建大數(shù)據(jù)管理平臺和低代碼平臺開發(fā)軟件

AI寫代碼:未來程序員的福音還是挑戰(zhàn)?

AI寫代碼:未來程序員的福音還是挑戰(zhàn)? 一、AI寫代碼技術(shù)的現(xiàn)狀與趨勢 1.1 當(dāng)前AI在編程領(lǐng)域的應(yīng)用實(shí)例 近年來,AI在編程領(lǐng)域的應(yīng)用日益廣泛,從簡單的代碼補(bǔ)全到復(fù)雜的算

...
2024-08-12 22:36:58
如何優(yōu)化OA審批系統(tǒng),提升企業(yè)辦公效率與流程管理?

一、概述如何優(yōu)化OA審批系統(tǒng),提升企業(yè)辦公效率與流程管理 在數(shù)字化轉(zhuǎn)型的浪潮中,OA(Office Automation)審批系統(tǒng)作為企業(yè)日常運(yùn)營的核心工具,其效能直接關(guān)系到企業(yè)的辦

...
2024-08-12 22:45:47
如何優(yōu)化OA審批流程,提升工作效率與滿意度?

一、引言:OA審批流程優(yōu)化的重要性 1.1 OA審批流程概述 1.1.1 OA系統(tǒng)基本概念與功能 OA(Office Automation)系統(tǒng),即辦公自動化系統(tǒng),是現(xiàn)代企業(yè)管理中不可或缺的一部分。

...
2024-08-12 22:45:47

大數(shù)據(jù)處理系統(tǒng)架構(gòu)簡介相關(guān)資訊

與大數(shù)據(jù)處理系統(tǒng)架構(gòu)簡介相關(guān)資訊,您可以對低代碼數(shù)據(jù)平臺BI大屏定制了解更多

速優(yōu)云

讓監(jiān)測“簡單一點(diǎn)”

×

?? 微信聊 -->

銷售溝通:17190186096(微信同號)

售前電話:15050465281

微信聊 -->

速優(yōu)物聯(lián)PerfCloud官方微信