国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種基于DolphinScheduler的實(shí)時(shí)數(shù)據(jù)集成方法與流程

      文檔序號:40363258發(fā)布日期:2024-12-18 13:47閱讀:16來源:國知局
      一種基于DolphinScheduler的實(shí)時(shí)數(shù)據(jù)集成方法與流程

      本發(fā)明涉及數(shù)據(jù)處理領(lǐng)域,更具體地說,它涉及一種基于dolphinscheduler的實(shí)時(shí)數(shù)據(jù)集成方法。


      背景技術(shù):

      1、在實(shí)時(shí)數(shù)據(jù)集成、流式數(shù)據(jù)處理的領(lǐng)域內(nèi),apache?flink作為一個(gè)高性能、可擴(kuò)展的流處理框架,已經(jīng)被廣泛應(yīng)用于處理大規(guī)模數(shù)據(jù)流。flink?cdc(change?data?capture)作為flink的一個(gè)組件,可以實(shí)時(shí)同步并處理數(shù)據(jù)庫變更事件,使得數(shù)據(jù)變化可以即時(shí)反映到數(shù)據(jù)倉庫、指標(biāo)計(jì)算或其他系統(tǒng)中。然而,盡管flink?cdc在實(shí)時(shí)數(shù)據(jù)同步方面表現(xiàn)出色,其在用戶使用上需要專業(yè)的知識(shí)和技能,缺乏靈活性和易用性。apache?dolphinscheduler作為一個(gè)分布式工作流任務(wù)調(diào)度系統(tǒng),提供了豐富的調(diào)度策略,但其在實(shí)時(shí)任務(wù)方面支持程度有待提高,在用戶體驗(yàn)上、對于非技術(shù)用戶的兼容上還有待進(jìn)一步探索和優(yōu)化。


      技術(shù)實(shí)現(xiàn)思路

      1、本發(fā)明要解決的技術(shù)問題是針對現(xiàn)有技術(shù)的不足,提供一種基于dolphinscheduler的實(shí)時(shí)數(shù)據(jù)集成方法,解決flink?cdc上手難度高和apachedolphinscheduler數(shù)據(jù)處理方式處理延遲高和實(shí)時(shí)性不足的技術(shù)問題。

      2、本發(fā)明所述的一種基于dolphinscheduler的實(shí)時(shí)數(shù)據(jù)集成方法,該方法為,步驟一:新增實(shí)時(shí)集成任務(wù)界面,在所述實(shí)時(shí)集成任務(wù)界面中上設(shè)置頁面參數(shù),對所述頁面參數(shù)進(jìn)行校驗(yàn)同時(shí)創(chuàng)建實(shí)時(shí)數(shù)據(jù)集成任務(wù);

      3、步驟二:啟動(dòng)所述實(shí)時(shí)數(shù)據(jù)集成任務(wù);

      4、步驟三:若通過所述實(shí)時(shí)集成任務(wù)界面對實(shí)時(shí)數(shù)據(jù)集成任務(wù)進(jìn)行了停止操作,當(dāng)再次啟動(dòng)所述實(shí)時(shí)數(shù)據(jù)集成任務(wù)時(shí),將所述實(shí)時(shí)數(shù)據(jù)集成任務(wù)中的數(shù)據(jù)更新進(jìn)數(shù)據(jù)庫中。

      5、作進(jìn)一步的改進(jìn),在步驟一中,所述頁面參數(shù)包括源數(shù)據(jù)表、目標(biāo)數(shù)據(jù)表、源數(shù)據(jù)表與目標(biāo)數(shù)據(jù)表的字段映射關(guān)系、yarn隊(duì)列、flink任務(wù)相關(guān)啟動(dòng)參數(shù)。

      6、進(jìn)一步的,在步驟一中對所述頁面參數(shù)進(jìn)行校驗(yàn)的方法為,當(dāng)所述目標(biāo)數(shù)據(jù)表為hive型的數(shù)據(jù)表時(shí),則通過ranger?restful接口查詢用戶是否對所述目標(biāo)數(shù)據(jù)表的操作權(quán)限;

      7、當(dāng)所述目標(biāo)數(shù)據(jù)表不存在時(shí),則根據(jù)所述源數(shù)據(jù)表與目標(biāo)數(shù)據(jù)表的字段映射關(guān)系自動(dòng)建立目標(biāo)數(shù)據(jù)表;

      8、當(dāng)所述目標(biāo)數(shù)據(jù)表存在時(shí),則檢驗(yàn)所述源數(shù)據(jù)表與目標(biāo)數(shù)據(jù)表的字段映射關(guān)系是否符合目標(biāo)數(shù)據(jù)表的字段;

      9、將所述頁面參數(shù)轉(zhuǎn)換成后端實(shí)體類存入相關(guān)數(shù)據(jù)庫表中。

      10、更進(jìn)一步的,在所述步驟二中,啟動(dòng)所述實(shí)時(shí)數(shù)據(jù)集成任務(wù)的步驟為:

      11、第一步:在所述實(shí)時(shí)集成任務(wù)界面上設(shè)置包括savepoint位點(diǎn)、檢測點(diǎn)間隔數(shù)、失敗重試次數(shù)和延遲執(zhí)行時(shí)間參數(shù)的執(zhí)行參數(shù);

      12、第二步:將所述執(zhí)行參數(shù)封裝為任務(wù)啟動(dòng)command消息,將所述任務(wù)啟動(dòng)command消息通過netty通訊發(fā)送到dolphinscheduler?master組件;

      13、所述dolphinscheduler?master組件中的taskexecutestartprocessor實(shí)時(shí)任務(wù)處理器根據(jù)任務(wù)啟動(dòng)command消息創(chuàng)建streamtaskexecuterunnable流式任務(wù)執(zhí)行可運(yùn)行器,所述streamtaskexecuterunnable流式任務(wù)執(zhí)行可運(yùn)行器在streamtaskexecutethreadpool流式任務(wù)執(zhí)行線程池中運(yùn)行;

      14、將所述streamtaskexecuterunnable流式任務(wù)執(zhí)行可運(yùn)行器中的任務(wù)參數(shù)封裝成任務(wù)執(zhí)行command消息,將所述任務(wù)執(zhí)行command消息通過netty通訊發(fā)送到dolphinscheduler?worker組件中;

      15、第三步:所述dolphinscheduler?worker組件的taskexecuteprocessor任務(wù)執(zhí)行處理器根據(jù)任務(wù)執(zhí)行command消息創(chuàng)建taskexecutethread任務(wù)執(zhí)行線程,所述taskexecutethread任務(wù)執(zhí)行線程在workerexecservice任務(wù)執(zhí)行線程池中運(yùn)行,所述taskexecutethread任務(wù)執(zhí)行線程中設(shè)置有實(shí)時(shí)數(shù)據(jù)集成任務(wù)的執(zhí)行路徑和日志的存放路徑,根據(jù)所述實(shí)時(shí)數(shù)據(jù)集成任務(wù)的任務(wù)類型調(diào)用執(zhí)行路徑和日志的存放路徑構(gòu)建啟動(dòng)命令,執(zhí)行所述啟動(dòng)命令,所述實(shí)時(shí)數(shù)據(jù)集成任務(wù)在yarn中執(zhí)行;

      16、第四步:獲取所述實(shí)時(shí)數(shù)據(jù)集成任務(wù)的任務(wù)狀態(tài)和任務(wù)日志,所述dolphinscheduler?worker組件通過解析任務(wù)日志來獲取每個(gè)實(shí)時(shí)任務(wù)的jobmanager地址,并將所述jobmanager地址填充并生成響應(yīng),將所述響應(yīng)發(fā)送到dolphinschedulermaster組件中并存入數(shù)據(jù)庫中。

      17、更進(jìn)一步的,在所述第三步中,

      18、當(dāng)所述啟動(dòng)命令的啟動(dòng)模式為初次啟動(dòng)時(shí),則選擇run-application?yarn-application命令;

      19、當(dāng)所述第一步中設(shè)置有savepoint位點(diǎn)時(shí),則選擇run-applicationfromsavepoint命令。

      20、更進(jìn)一步的,當(dāng)選擇所述run-application?fromsavepoint命令后,根據(jù)預(yù)先上傳的jar包,將所述dolphinscheduler?master組件和dolphinscheduler?worker組件中的任務(wù)執(zhí)行上下文的參數(shù)按照jar包定義的參數(shù)轉(zhuǎn)換成json格式的字符串,再將所述字符串拼接到啟動(dòng)命令的后面更新啟動(dòng)命令。

      21、更進(jìn)一步的,所述jar包基于flinkcdc開發(fā),所述jar包通過接收預(yù)定義參數(shù)創(chuàng)建源數(shù)據(jù)表和目標(biāo)數(shù)據(jù)表的flinkcdc連接器來執(zhí)行數(shù)據(jù)同步。

      22、更進(jìn)一步的,所述預(yù)定義參數(shù)包括源數(shù)據(jù)表連接方式、目標(biāo)數(shù)據(jù)表連接方式、源數(shù)據(jù)表與目標(biāo)數(shù)據(jù)表的字段映射關(guān)系、flink任務(wù)相關(guān)啟動(dòng)參數(shù)。

      23、更進(jìn)一步的,在所述步驟三中,對所述實(shí)時(shí)數(shù)據(jù)集成任務(wù)進(jìn)行停止后,再次啟動(dòng)所述實(shí)時(shí)數(shù)據(jù)集成任務(wù)時(shí),所述數(shù)據(jù)庫對jobmanager地址進(jìn)行更新。

      24、有益效果

      25、本發(fā)明的優(yōu)點(diǎn)在于:

      26、1.本發(fā)明通過在實(shí)時(shí)數(shù)據(jù)集成任務(wù)進(jìn)行停止后,再次啟動(dòng)所述實(shí)時(shí)數(shù)據(jù)集成任務(wù)時(shí),數(shù)據(jù)庫對jobmanager地址進(jìn)行更新,實(shí)現(xiàn)將數(shù)據(jù)變化即時(shí)更新到數(shù)據(jù)庫,減少數(shù)據(jù)延遲,提高數(shù)據(jù)處理的效率。

      27、2.本發(fā)明通過新增實(shí)時(shí)集成任務(wù)界面來創(chuàng)建和操作實(shí)時(shí)數(shù)據(jù)集成任務(wù),簡化了用戶操作,提升了用戶體驗(yàn),提高了非技術(shù)用戶的操作友好性,降低了用戶上手難度。

      28、3.本發(fā)明通過結(jié)合dolphinscheduler和flinkcdc技術(shù),預(yù)先開發(fā)好的jar包中包含flink任務(wù)相關(guān)啟動(dòng)參數(shù),運(yùn)用dolphinscheduler?master組件和dolphinschedulerworker組件對實(shí)時(shí)數(shù)據(jù)集成任務(wù)進(jìn)行調(diào)度,解決了dolphinscheduler在實(shí)時(shí)任務(wù)提交后對于監(jiān)控、狀態(tài)追蹤以及日志查看方面的不足之處,加強(qiáng)了在實(shí)時(shí)任務(wù)處理方面的可視化監(jiān)控和管理能力。

      當(dāng)前第1頁1 2 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會(huì)獲得點(diǎn)贊!
      1