日日碰狠狠躁久久躁96avv-97久久超碰国产精品最新-婷婷丁香五月天在线播放,狠狠色噜噜色狠狠狠综合久久 ,爱做久久久久久,高h喷水荡肉爽文np肉色学校

睿治

智能數(shù)據(jù)治理平臺

睿治作為國內功能最全的數(shù)據(jù)治理產(chǎn)品之一,入選IDC企業(yè)數(shù)據(jù)治理實施部署指南。同時,在IDC發(fā)布的《中國數(shù)據(jù)治理市場份額》報告中,連續(xù)四年蟬聯(lián)數(shù)據(jù)治理解決方案市場份額第一。

應用系統(tǒng)的數(shù)據(jù)治理一些關注點

時間:2019-01-08來源:億信華辰瀏覽數(shù):905

?現(xiàn)在互聯(lián)網(wǎng)公司業(yè)務發(fā)展都是非常飛速,當業(yè)務發(fā)展到一定規(guī)模,就得考慮如何去做服務治理,大家的重心一般放在微服務的應用架構設計層面,往往比較容易忽略關系數(shù)據(jù)庫的設計規(guī)劃。無論上層服務治理的如何,其實關系數(shù)據(jù)庫還是各個系統(tǒng)的基礎和核心,系統(tǒng)的穩(wěn)定性,高可用性,高性能是和數(shù)據(jù)庫有最直接的關系,所以服務治理的同時也需要同時考慮數(shù)據(jù)方面的相關規(guī)劃和實現(xiàn),但是只有基礎扎實了,上層服務才能更加穩(wěn)固,也才能飛的更高更快。

?1.設計規(guī)范

?對于數(shù)據(jù)庫,表,字段,索引等的命名需要統(tǒng)一規(guī)范,方便dba的管理,提升開發(fā)團隊之間的溝通成本,最好是提供數(shù)據(jù)庫change log平臺來統(tǒng)一上線管理,這樣可以進行審核和規(guī)范落地數(shù)據(jù)庫索引設計,數(shù)據(jù)庫的穩(wěn)定性,高可用性,高性能都和索引息息相關,按照最左前綴原則來設計,沒有把握時,可以找dba進行求助

?一定要給每個表設計主鍵,創(chuàng)建時間,修改時間字段,可以對數(shù)據(jù)修改的紀錄進行跟蹤,也可以方便數(shù)據(jù)倉庫進行增量數(shù)據(jù)拉取,創(chuàng)建時間/修改時間可以通過封裝DAO組件默認設置值

?對于互聯(lián)網(wǎng)應用,盡量遵守范式設計規(guī)范,但是冗余字段的設計也應該適時考慮,如果兩個以上業(yè)務功能點需要同時join某3個表,建議設計冗余字段來解決

?數(shù)據(jù)庫設計的規(guī)范還有很多,就不一一例舉,最主要還是如何保證規(guī)范的施行。數(shù)據(jù)庫設計的規(guī)范很多公司都有,但是并沒有很好的實施,導致數(shù)據(jù)庫看起來還是非常混亂,很多情況是缺少流程的管理和工具的輔助,一些硬性的規(guī)范就可以通過工具來控制,對于線上應用的DDL發(fā)版都需要DBA進行審核才能進行。對于高頻或者數(shù)據(jù)量大的DML語句同樣需要DBA進行審核才能發(fā)布更新。

?2.數(shù)據(jù)分域

?當業(yè)務經(jīng)過野蠻增長,單一系統(tǒng)無法支撐業(yè)務時,就需要進行業(yè)務拆分,同樣也應該進行數(shù)據(jù)拆分,業(yè)務應用和schema需要做到一一對應,并且進行權限隔離,一個schema只能被一個應用所有,所有對這個schema的數(shù)據(jù)的查詢,新建,修改只能通過這個系統(tǒng)的接口來調用。公共數(shù)據(jù)服務統(tǒng)一管理,比如國家,城市,交易日歷,不能會產(chǎn)生有大量相同數(shù)據(jù)的表,造成數(shù)據(jù)重復隱患,這些數(shù)據(jù)保存時也盡量原子化,避免事后拆分

?數(shù)據(jù)指標也要做到統(tǒng)一來源,如投資量,投資收益率,AUM,累積收益等統(tǒng)計指標,其他應用應該根據(jù)同一來源數(shù)據(jù)進行業(yè)務邏輯處理,如果有不同來源或者每個系統(tǒng)自己計算的話,不但公司內部容易混淆,而且很容易被用戶投訴

?復雜計算的業(yè)務盡量不要根據(jù)用戶的請求來做實時計算,比如互聯(lián)網(wǎng)金融網(wǎng)站的資產(chǎn)類,收益類數(shù)據(jù),一般都需要跨越多個schema來獲取,金融產(chǎn)品形態(tài)越多,計算就越復雜。如果進行實時計算的話,會很耗費系統(tǒng)資源特別是數(shù)據(jù)庫資源,可以考慮由每個金融產(chǎn)品系統(tǒng)自身保存這個數(shù)據(jù),也就是每個用戶投資不同類型的產(chǎn)品,都需要為這個用戶建立虛擬帳戶,這個賬戶可以維護用戶的資產(chǎn),收益等情況。另外一個思路時定義一個標準的消息,當用戶的資產(chǎn),收益有變化時,發(fā)送消息,由資產(chǎn)服務來統(tǒng)一處理這些消息,不過需要考慮消息的丟失,延時等情況,難度比較大。如果對數(shù)據(jù)的實時性要求不高的話,能夠線下大數(shù)據(jù)等方式來計算這些數(shù)據(jù)的話更好。

? 3 .開發(fā)優(yōu)化

? 數(shù)據(jù)庫設計時不單要考慮業(yè)務的實現(xiàn),也要同時考慮代碼的性能,更勝者還需要考慮給其他的數(shù)據(jù)使用者(數(shù)據(jù)聚合/數(shù)據(jù)分析等)提供方便

?不要過度設計,每個系統(tǒng)都會有些表的字段從來沒有值,可能是當時預留字段,但是現(xiàn)在看來,很多預留字段都是浪費的,建議還是真正需要時再添加不遲

?無論是做數(shù)據(jù)結構設計還是sql的編寫,都應該控制復雜度,復雜的sql會導致數(shù)據(jù)庫load的沖高,當PV上來時,系統(tǒng)響應變慢,然后系統(tǒng)請求堆積,嚴重的最后會導致整個系統(tǒng)完全無法提供服務,所以每個開發(fā)童鞋寫sql時需要優(yōu)先考慮性能問題,讓每條sql盡量簡單,都能走到對的索引,通過應用程序去解決復雜的sql邏輯查詢

?不要把所有數(shù)據(jù)都丟到數(shù)據(jù)庫,特別是數(shù)據(jù)量大的日志型數(shù)據(jù)可以通過日志輸出,通過elk/flume+storm等方式拉取到es中進行查詢跟蹤,如果硬是要保存到數(shù)據(jù)庫,那只需要保存異常數(shù)據(jù)即可。用戶行為數(shù)據(jù)可以發(fā)送消息出去,由其他應用來監(jiān)聽消息并且保存到Redis/MongDB中,比如登陸相關數(shù)據(jù),投資行為等數(shù)據(jù),如果這些數(shù)據(jù)需要用來做業(yè)務流控,如現(xiàn)在登錄次數(shù)等業(yè)務場景,可以使用redis的數(shù)據(jù)過期機制來實現(xiàn)

?不要給用戶太大的空間進行數(shù)據(jù)的輸入,盡量提供選擇框讓用戶選擇,防止臟數(shù)據(jù)的產(chǎn)生,關鍵字段要設置為必填,否則會給數(shù)據(jù)分析時的數(shù)據(jù)清洗帶來麻煩

?設計好表的UK,可以避免數(shù)據(jù)的重復,也可以給接口的冪等性提供支持

?對于數(shù)據(jù)量大的業(yè)務處理建議使用異步化的方式來實現(xiàn),通過發(fā)送消息的方式進行數(shù)據(jù)分片,然后可以對數(shù)據(jù)進行分布式處理,提高數(shù)據(jù)處理速度

?對于大表,首先考慮數(shù)據(jù)庫的優(yōu)化,然后再考慮讀寫分離,是否可以做分區(qū)表,數(shù)據(jù)歸檔來提升性能,最后才去考慮進行分表分庫的設計,分表分庫無論對于系統(tǒng)本身的設計開發(fā)很難的把握,同時對于數(shù)據(jù)的使用者也是增加了復雜度

?對于緩存數(shù)據(jù)的使用,盡量不要緩存用戶唯度的數(shù)據(jù),這種類型的數(shù)據(jù)不但給緩存服務器帶來壓力,更主要是緩存的命中率低,所以對于緩存的使用也是設計的關注點,不要因為某個緩存數(shù)據(jù)的暴增而拖垮整個緩存服務器

?隨著數(shù)據(jù)量的積累,有些數(shù)據(jù)過了其的生命周期,也就是說這些數(shù)據(jù)變成了冷數(shù)據(jù),沒有系統(tǒng)需要再使用它了,那么我們就要定時的去做一些數(shù)據(jù)的歸檔,騰出數(shù)據(jù)庫資源給熱數(shù)據(jù)來使用

?涉及數(shù)據(jù)量大的更新,如某個表新增的非空字段等,建議分批進行更新。分批不但為了數(shù)據(jù)庫的穩(wěn)定,防止引起數(shù)據(jù)庫的死鎖,同時也防止ETL工具拉取大量的更新數(shù)據(jù),因為很多報表需要依賴ETL同步完成數(shù)據(jù),如果ETL同時超時的話,很多定時報表會運行失敗,有可能需要手工再次運行報表任務,所以進行大數(shù)據(jù)量更新時,一定要通知DBA和數(shù)據(jù)團隊進行跟蹤關注。

?4.數(shù)據(jù)監(jiān)控

?監(jiān)控是最后的守護者,可以及時的發(fā)現(xiàn)系統(tǒng)的性能問題,對于數(shù)據(jù)庫來說,

?DBA可以通過數(shù)據(jù)庫的監(jiān)控工具來實時的對數(shù)據(jù)庫進行監(jiān)控,對于核心表的數(shù)據(jù)量增長趨勢,核心表相關的sql查詢性能都需要進行跟蹤。但是提前發(fā)現(xiàn)sql的性能問題,進行合適的預防則是開發(fā)團隊需要關注的。這就需要監(jiān)控中心對sql的運行時間和次數(shù)等指標進行跟蹤和匯總,如果當前沒有監(jiān)控中心,也可以使用DruidDatasource的statFilter功能進行跟蹤,開發(fā)團隊需要定時的去關注sql運行時間,運行次數(shù)等指標,隨著業(yè)務量的增長,之前高性能的sql可能會變慢,高頻sql絕對不能出現(xiàn)在long sql的列表中,需要及時改造。還有就是緩存服務器的監(jiān)控也是需要關注的。


(部分內容來源網(wǎng)絡,如有侵權請聯(lián)系刪除)
立即申請數(shù)據(jù)分析/數(shù)據(jù)治理產(chǎn)品免費試用 我要試用
產(chǎn)品功能
平臺化

全面覆蓋數(shù)據(jù)治理9大領域,采用微服務架構,融合度高,延展性強

可視化

實現(xiàn)數(shù)據(jù)從創(chuàng)建到消亡全生命周期的可視化,也實現(xiàn)全角色的可視化

智能化

豐富的智能元素和功能,大大縮短數(shù)據(jù)管理周期、減少成本浪費

customer

在線咨詢

在線咨詢

點擊進入在線咨詢