日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

数据开放平台的配置管理

發(fā)布時(shí)間:2024/7/5 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 数据开放平台的配置管理 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

背景

美團(tuán)是數(shù)據(jù)驅(qū)動的技術(shù)公司, 非常重視使用數(shù)據(jù)的效率。為了達(dá)到這個(gè)目標(biāo),我們將數(shù)據(jù)以開放平臺的形式開放給需求方。例如,幫助需求方開發(fā)報(bào)表的報(bào)表開放平臺,幫助需求方獲取數(shù)據(jù)的自助查詢平臺,讓需求方參與數(shù)據(jù)建設(shè)的ETL開放平臺和調(diào)度管理服務(wù)。在這些開放平臺上,需求方填寫必要的配置,平臺負(fù)責(zé)根據(jù)這些配置產(chǎn)生需要的報(bào)表,導(dǎo)出數(shù)據(jù),或者產(chǎn)生ETL流程并通過調(diào)度有序執(zhí)行。通過這種方式,簡化用戶使用數(shù)據(jù)的流程,提高用戶使用數(shù)據(jù)的效率。

開放平臺的使用導(dǎo)致產(chǎn)生了大量的,不同類型的配置。起初,每個(gè)服務(wù)獨(dú)立保存和管理自己的配置。隨著開放平臺的發(fā)展,與開放力度的增加,開放平臺對配置的管理遇到了各種各樣的問題。主要體現(xiàn)在

  • 可能由于用戶誤修改或者誤刪除了配置,導(dǎo)致了運(yùn)行問題。希望能夠追溯配置的變更歷史,更好的找到,提醒,并修復(fù)類似的問題。
  • 在開放平臺上,用戶可以自行測試不同的配置。但是用戶如果需要將自己的配置上線成為在線報(bào)表,或者添加到調(diào)度參與數(shù)據(jù)倉庫數(shù)據(jù)清洗,就需要確保用戶的配置的質(zhì)量。必須經(jīng)過數(shù)據(jù)組的審核,以保證系統(tǒng)的健壯性與邏輯的準(zhǔn)確性。
  • 每個(gè)開放服務(wù)的業(yè)務(wù)都與開放配置有關(guān)。這些配置的管理需求十分相似。每個(gè)服務(wù)都自行維護(hù)配置會增加開發(fā)成本和維護(hù)成本。
  • 針對遇到的問題,我們首先詳細(xì)的分析了需求:

  • 統(tǒng)一管理和存儲配置。支持不同服務(wù)器上的不同語言編寫的服務(wù)將配置統(tǒng)一存儲和管理,并可以按照需求調(diào)用。從而避免不同服務(wù)重復(fù)開發(fā),增加開發(fā)成本和維護(hù)成本。
  • 配置隔離。不同的開放平臺的配置互相之間是獨(dú)立的,統(tǒng)一管理和存儲,但是互相之間需要互不干擾。
  • 版本控制。記錄配置的歷史變更。通過對比不同版本,可以追查修改人,修改原因,修改時(shí)間等。在用戶出現(xiàn)誤操作時(shí),也可以有效的回滾,盡量的降低修復(fù)成本,從而降低出錯(cuò)的成本,提高對用戶錯(cuò)誤修改的容忍度。
  • 審核功能。通過審核,對可能影響到系統(tǒng)正常運(yùn)行的主要配置進(jìn)行變更管理。每次變更,都必須經(jīng)過審核。審核通過的變更才會被提交到系統(tǒng)中,參與系統(tǒng)的正常運(yùn)行。
  • 可視化頁面。為了方便測試,管理和運(yùn)維,需要有方便的頁面支持瀏覽配置列表,查看和修改系統(tǒng)中已經(jīng)存在的配置等。
  • 以上需求為必須滿足的需求。為了能夠更方便的使用,還希望該解決方案能夠在配置審核通過時(shí),通知使用該配置的服務(wù),使其知曉該變更。

    為了滿足上述需求,我們決定開發(fā)定制的統(tǒng)一集中管理配置的配置管理服務(wù),命名為ConfHub,意為“配置的中心樞紐”。

    配置規(guī)劃

    集中管理配置時(shí),不同應(yīng)用之間的隔離就顯得非常重要。同時(shí),應(yīng)用對配置也有分類需求。所以,需要對配置進(jìn)行規(guī)劃。

    規(guī)劃的基本思路是,首先,把配置按照應(yīng)用進(jìn)行分類。每個(gè)配置屬于一個(gè)應(yīng)用,每個(gè)應(yīng)用下,可以有很多配置。在應(yīng)用下設(shè)置命名空間,用來滿足應(yīng)用內(nèi)的配置分類需求。規(guī)劃方案如下圖:

    這種配置規(guī)劃的方式避免了配置沖突。

    版本管理

    版本管理可以帶來很多好處,比如

  • 錯(cuò)誤修改時(shí),進(jìn)行回滾。
  • 在有用戶惡意修改時(shí),可以迅速修復(fù)。
  • 執(zhí)行異常時(shí),根據(jù)最近版本修改的內(nèi)容,定位系統(tǒng)錯(cuò)誤的原因。
  • 最基本的版本管理如下圖

    這種基本的版本管理方案可以存儲配置的歷史變更。但實(shí)際使用中,并不能滿足需求。

    在實(shí)際的配置使用時(shí),配置需要最終進(jìn)入生產(chǎn)環(huán)境,如報(bào)表開發(fā)平臺的配置產(chǎn)生報(bào)表供分析人員使用,ETL開放平臺的配置加入調(diào)度定時(shí)處理數(shù)據(jù)等。這些生產(chǎn)環(huán)境的配置的改動需要經(jīng)過數(shù)據(jù)組審核。但在開發(fā)過程中,配置需要不停的變更。所以希望版本管理能支持在既不影響線上實(shí)際使用的配置的前提下,能夠隨意修改測試使用的配置。為了解決這種需求,我們對版本管理的邏輯進(jìn)行了修改。如下圖所示

    在用戶需要修改配置時(shí),在測試環(huán)境版本中增加新的版本。測試時(shí),使用最新的測試環(huán)境版本的配置進(jìn)行測試。當(dāng)用戶需要更新生產(chǎn)環(huán)境中使用的配置時(shí),向數(shù)據(jù)組提交上線申請,系統(tǒng)會自動的將最新的測試環(huán)境版本和最新的生產(chǎn)環(huán)境版本的配置進(jìn)行對比,并將對比結(jié)果發(fā)給相應(yīng)負(fù)責(zé)人審核。審核通過的配置會被添加到生產(chǎn)環(huán)境版本中。

    通過這種版本管理方法,既保證了生產(chǎn)環(huán)境版本是嚴(yán)格受控的,又能保證用戶可以自由的測試。

    審核

    為了保證生產(chǎn)環(huán)境運(yùn)行的配置的質(zhì)量,生產(chǎn)環(huán)境的配置的變更都必須進(jìn)行審核。在這一點(diǎn)上,我們使用“人工審核,系統(tǒng)輔助”的方案。人工審核,確保配置質(zhì)量,系統(tǒng)輔助,盡量減少審核人的工作量。

    審核過程流程圖如下:

    為了提高審核的效率,減少人工審核工作量,用戶在開放平臺,即配置的使用方,提交配置變更申請。配置使用方會首先對配置進(jìn)行基本校驗(yàn),校驗(yàn)通過的配置變更才會提交到配置管理系統(tǒng)。

    目前,ConfHub滿足了現(xiàn)有開放平臺的配置管理需求,有效的支持各個(gè)開放平臺的發(fā)展。

    后續(xù),ConfHub主要發(fā)展方向是

  • 部分開放平臺對配置管理有特殊的需求。在提供大體相同的配置管理方式后,ConfHub也需要提供一些更精細(xì),更定制的配置管理方式。
  • 開放的方式不止有開放平臺一種,而各種不同的開放方式,都有需要管理的配置。管理其他開放方式的配置,也是ConfHub的目標(biāo)。
  • 創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵(lì)來咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎

    總結(jié)

    以上是生活随笔為你收集整理的数据开放平台的配置管理的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。