[技術(shù)分享]【DLI跨源】當(dāng)DLI遇見MongoDB

      網(wǎng)友投稿 776 2025-04-03

      導(dǎo)語:

      [技術(shù)分享]【DLI跨源】當(dāng)DLI遇見MongoDB

      MongoDB作為靈活高效易擴(kuò)展的no-schema數(shù)據(jù)庫,越來越受到互聯(lián)網(wǎng)公司、游戲行業(yè)等開發(fā)者的青睞,但是MongoDB有著獨特的語言接口,并不能很好滿足數(shù)據(jù)分析師構(gòu)建數(shù)據(jù)治理應(yīng)用的需求,而數(shù)據(jù)湖探索DLI恰好解決了這一痛點。搭配華為云上DDS服務(wù)提供的MongoDB,DLI無需數(shù)據(jù)搬遷,便可以直接使用SQL分析,并且將分析后的數(shù)據(jù)導(dǎo)入OBS,RDS,DWS等更多的云上數(shù)據(jù)存儲。當(dāng)DLI遇見MongoDB,讓數(shù)據(jù)不再成為“孤島”。

      一、X游戲公司的數(shù)據(jù)分析場景

      X游戲公司最近新上了一款爆款手游A,日活突破百萬,每月都能為X公司貢獻(xiàn)數(shù)千萬的利潤。隨著游戲業(yè)務(wù)量的迅猛發(fā)展,游戲數(shù)據(jù)分析師小鑫遇到了前所未有的挑戰(zhàn)。

      當(dāng)時為了游戲快速上線,架構(gòu)師選用華為云DDS服務(wù)提供的MongoDB數(shù)據(jù)庫,用于用戶數(shù)據(jù)存儲。MongoDB高性能,易擴(kuò)展,no-shema等特性,很好的支撐了游戲爆發(fā)式數(shù)據(jù)增長以及游戲玩法的快速更新迭代。但是,現(xiàn)在存儲在MongoDB里的海量數(shù)據(jù),猶如隱藏在群山中的礦脈,如何才能挖掘其中更大價值?如何篩選出優(yōu)質(zhì)客戶從而提供更好地服務(wù)?如何分析用戶行為,為游戲開發(fā)提供切實可行的數(shù)據(jù)支持?。。。種種數(shù)據(jù)分析需求,讓小鑫抓狂了,他急需一種易用高效的分析工具,協(xié)助他完成數(shù)據(jù)挖掘任務(wù)。

      二、MongoDB的數(shù)據(jù)存儲

      在解決小鑫的問題之前,讓我們來了解一下MongoDB。它是面向文檔的數(shù)據(jù)庫,介于關(guān)系型數(shù)據(jù)庫和非關(guān)系型數(shù)據(jù)庫之間,具有非常強(qiáng)大的擴(kuò)展能力。其數(shù)據(jù)庫里的一條記錄就是一個文檔,它由域和值對組成。MongoDB的文檔是一個鍵值(key-value)對,類似于一個json對象。但MongoDB 的文檔不需要設(shè)置相同的字段,并且相同的字段不需要相同的數(shù)據(jù)類型,這也是MongoDB的突出特點。MongoDB的優(yōu)勢在于,其一:性能強(qiáng)。MongoDB擁有強(qiáng)大數(shù)據(jù)持久能力,減少對數(shù)據(jù)庫系統(tǒng)的輸入/輸出操作;通過構(gòu)建索引,支持更快的查詢速度,并可以支持從嵌入式文檔和數(shù)組中返回鍵值。其二:支持豐富的查詢語言。MongoDB具有良好的開放性和兼容性,支持多種語言進(jìn)行讀寫操作、文檔搜索、數(shù)據(jù)聚合等操作,當(dāng)然這些API是MongoDB特有的,存在一定學(xué)習(xí)成本。其三:便捷的復(fù)制能力。MongoDB提供一種叫副本集(replica set)的服務(wù),將數(shù)據(jù)分布在多臺機(jī)器上以實現(xiàn)數(shù)據(jù)冗余和自動故障轉(zhuǎn)移。其四:擴(kuò)展性強(qiáng)。MongoDB的核心功能之一就是良好的擴(kuò)展能力。通過分片的方式將數(shù)據(jù)分布在一組計算機(jī)中,讓每一個服務(wù)器里面存儲的數(shù)據(jù)都是一樣大小。

      三、DLI嶄露頭角

      小鑫找到了華為工程師Z,小Z向小鑫極力推薦華為云數(shù)據(jù)湖分析利器DLI,只要你會SQL,就能玩轉(zhuǎn)云上各種數(shù)據(jù)源,包括了DDS。DLI提供跨源融合分析功能,兼容SQL,SPARK,FLINK編程API,只需輕松幾步,便可分析DDS中的MongoDB數(shù)據(jù),無需數(shù)據(jù)搬遷。“這么神奇?”小鑫躍躍欲試。小Z立刻祭出了,DLI分析MongoDB三版斧:

      1.?????? 建立跨源連接

      DLI分析集群和用戶的DDS集群分屬不同的虛擬子網(wǎng),存在網(wǎng)絡(luò)隔離,而建立跨源連接,即可打通DLI集群與DDS集群的網(wǎng)絡(luò)。具體步驟是

      先查看DDS集群網(wǎng)絡(luò)信息,記錄下集群所屬VPC、子網(wǎng)、子網(wǎng)網(wǎng)段

      在DLI跨源連接管理界面,創(chuàng)建指向DDS的增強(qiáng)型跨源連接,在連接中指定DDS所屬的VPC和子網(wǎng)

      最后在新建的跨源連接中綁定用戶隊列,增強(qiáng)型跨源連接綁定的隊列需要是非按需隊列

      2.?????? 創(chuàng)建跨源表

      小鑫的樣例數(shù)據(jù)包括了一個用戶集合,一個裝備集合。用戶集合中存放著用戶信息,裝備集合中存放著用戶游戲裝備信息。

      在DLI SQL編輯器中,執(zhí)行創(chuàng)建MongoDB跨源表的SQL,創(chuàng)建關(guān)聯(lián)的用戶表和裝備表,如下所示

      CREATE?TABLE?user( ??account?string, ??phone?string, ??age?int, ??sex?string, ??credit?int, ??lastlogin?int )?USING?MONGO?OPTIONS?( ??'url'?=?'192.168.0.95:8635,192.168.0.98:8635/test?authSource=admin', ??'database'?=?'test', ??'collection'?=?'user', ??'user'?=?'rwuser', ??'password'?=?'***' ); ? ?CREATE?TABLE?equipment( ??account?string, ??eq_id?int, ??attack?int, ??defence?int, ??weight?int, ??name?string, ??value?int )?USING?MONGO?OPTIONS?( ??'url'?=?'192.168.0.95:8635,192.168.0.98:8635/test?authSource=admin', ??'database'?=?'test', ??'collection'?=?'equipment', ??'user'?=?'rwuser', ??'password'?=?'***' );

      建表成功將在界面中返回成功。

      3.?????? 查詢分析

      建表完成后,在華為工程師的指導(dǎo)下,小鑫開始了再DLI中的數(shù)據(jù)探索,他先執(zhí)行了一些簡單的查詢語句:

      /* ??查詢成年用戶 */ select?*?from?user?where?age?>=?18 /* ??查詢裝備id為666福星裝備的記錄 */ SELECT?*?FROM?equipment?where?eq_id?=?666

      之后,他又試了試兩張表關(guān)聯(lián)查詢語句:

      /* ??查詢擁有福星裝備的未成年用戶信息 */ select?*?from?user?as?a?join?equipment?as?b?where?a.account=b.account?and?a.age?

      結(jié)果如圖所示:

      看來這些基本的sql查詢根本不在話下,小鑫著手開發(fā)游戲數(shù)據(jù)ETL,并很快搞定了業(yè)務(wù)部門的需求,收獲了領(lǐng)導(dǎo)的認(rèn)可。但需求總在變化,還有更加緊急的需求在等著小鑫,而DLI可以應(yīng)付的了么?(待續(xù))

      云計算

      版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實后本網(wǎng)站將在24小時內(nèi)刪除侵權(quán)內(nèi)容。

      版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實后本網(wǎng)站將在24小時內(nèi)刪除侵權(quán)內(nèi)容。

      上一篇:譚浩強(qiáng)-習(xí)題5.8
      下一篇:excel怎么在表格中畫斜線
      相關(guān)文章
      无码专区一va亚洲v专区在线 | 亚洲精品和日本精品| 亚洲小说区图片区| 久久亚洲精品成人综合| 亚洲码国产精品高潮在线| 精品国产日韩亚洲一区| 亚洲精品国产自在久久| 亚洲精品国产va在线观看蜜芽| 国产亚洲精品2021自在线| 激情无码亚洲一区二区三区| 日韩色日韩视频亚洲网站 | 亚洲久本草在线中文字幕| 亚洲成在人线av| 亚洲国产成人精品无码区在线观看| 亚洲精品午夜国产VA久久成人| 国产亚洲真人做受在线观看| 久久久久久久综合日本亚洲| 亚洲乱码日产一区三区| 亚洲国产精品无码久久一区二区 | 日本亚洲免费无线码| 亚洲日韩一区二区三区| 亚洲AV无码一区二区三区网址| 久久久久久亚洲av无码蜜芽| 最新亚洲人成网站在线观看| 亚洲Av无码国产情品久久| 亚洲一区二区三区乱码A| 中文字幕一精品亚洲无线一区| 亚洲国产三级在线观看| 久久精品九九亚洲精品| 亚洲欧洲自拍拍偷午夜色| 亚洲黄色激情视频| 亚洲久热无码av中文字幕| 亚洲精品色在线网站| 亚洲片国产一区一级在线观看 | 亚洲成AV人片久久| 亚洲一卡2卡4卡5卡6卡在线99 | 国产亚洲精品国产| 亚洲黄色高清视频| 亚洲第一男人天堂| 国产天堂亚洲精品| 国产亚洲精久久久久久无码77777|