999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Kettle的鐵路客運營銷數據交換平臺的設計與實現

2019-11-29 01:37:02武晉飛
鐵路計算機應用 2019年11期
關鍵詞:界面數據庫作業

武晉飛

(中國鐵道科學研究院集團有限公司 電子計算技術研究所, 北京 100081)

隨著鐵路客票發售和預訂系統(簡稱:客票系統)的不斷發展,業務需求的不斷增加,數據節點、數據種類以及數據量呈不斷增加的趨勢。營銷系統是以客票系統業務數據為基礎,利用先進信息技術和決策分析方法構建的系統,具有歷史數據查詢和趨勢分析、實時預售分析預警、輔助決策等功能[1-2]。這些功能的實現依賴于歷史數據和實時數據的準確、及時傳輸。目前主要采用開發收數程序、工作流程序調用、dbcs 數據傳輸中間件的方式進行[3]。

目前市場用各種各樣的ETL[4]工具,Information Powercenter 可以訪問各種主流業務系統、主流數據格式,并可按任意速度交付數據,具有高可擴展性、高可用性、高性能的優點[5];文獻[6]以開源分布式軟件Kettle 為基礎,設計了具備可移植性的ETL 系統,通過開發插件實現了用戶交互和任務調度,進行自動化增量數據抽取;文獻[7]利用開源工具Kettle 建立模型,實現了高校多源異構數據集成,形成了可分析性數據;文獻[8]提出了基于Pentaho 的鐵路客運營銷輔助決策解決方案,解決了商用軟件不能完全自定義個性化需求的問題,但系統安全性和并發性需進一步優化;文獻[9]對數據交換過程中的一致性和完整性提出了應對方案,應對傳輸過程中的不穩定因素。

本文基于鐵路客票系統現有架構,結合當前營銷數據收集、交換中遇到的問題,以開源ETL 工具Kettle 為核心,提出了鐵路客運營銷數據交換平臺,確保各類營銷數據的及時收集與實時交換。通過平臺可以更好地打通信息壁壘、消除信息孤島,兼容多種數據庫產品和多種數據格式,通過靈活可配置的數據處理流程,對不同的運行環境和業務需求自動完成各種數據處理和傳輸工作,能夠有效地提高數據的及時性、準確性,提高工作效率。

1 ETL Kettle簡介

ETL(Extraction-Tansformation-Loading)即將數據從來源端經過抽取、轉換、加載到目的端的過程。在ETL 過程中,數據抽取即是從數據源中抽取數據的過程,也可從多個數據源中進行數據抽取;數據轉換即是對抽取數據進行清洗,通過清洗策略和合并、轉換以及數學運算等操作,去除數據中存在的錯誤和冗余,也可根據要求變換數據格式,保證數據質量; 數據裝載即是將轉換好的數據保存到數據庫或文件中。目前,越來越多的廠商致力于ETL 工具的研發,而較常用的開源工具有 Kettle、Talend、Octopus 等,其中以開源 Java 工具 Kettle 應用最廣,表現最為突出。Kettle 是一款用 Java 編寫的開源 ETL 工具,其主要由轉換(Transformation)和作業(Job)兩部分組成。其中,“轉換” 是由一系列步驟組成的,每一個步驟表示對一個或多個數據流進行特定的轉換操作。 “作業” 基于工作流模型,協調數據源、執行過程和相關依賴性的 ETL 活動,其將功能性和實體過程聚合起來,完成對整個工作流的控制。

2 需求分析

2.1 功能性需求

(1)數據傳輸功能。數據傳輸功能是數據交換平臺的核心功能,客運相關數據存放在不同的數據庫平臺、不同節點甚至是不同網絡中;數據交換平臺需要能夠支持多種網絡協議,支持多種數據庫,進而實現數據的傳輸,達到數據收集和交換功能;并且在數據傳輸過程中要確保數據的安全性和準確性。

(2)人機交互功能。用戶可以通過數據交換平臺管理、配置當前數據傳輸任務,隨著業務需求的擴展,用戶可以通過在平臺配置實現新數據任務的傳輸或交換,避免大量的代碼工作,同時,在傳輸任務過程中,用戶可以清晰掌握所關注任務的傳輸狀態。

(3)數據監控功能。數據的完整性和準確性是數據交換平臺的基本要求,通過數據監控功能,自動對比數據源和數據目標的一致性;通過分析任務執行日志,自動匯總任務執行狀態并展現給用戶,對異常情況,平臺給予多種形式的報警提醒,從而保證數據的完整性和一致性。

(4)定時任務功能。用戶可定義任務執行方式,平臺按照約定定規則自動啟動執行任務。

2.2 非功能性需求

(1)當前營銷數據主要為客票系統歷史生產數據和實時數據,數據的完整性和一致性是搭建數據交換平臺的基礎,也是鐵路客運營銷輔助決策系統的基本要求。在數據傳輸過程中必須實時監控數據狀態,保證數據的完整性和一致性,提供異常數據快速處理解決辦法。

(2)鐵路實行實名制購票之后,系統中包含了旅客的隱私信息,保護用戶隱私信息不被泄漏是數據交換平臺的另一個重要功能。對于分析不需要的隱私信息,在傳輸過程中進行脫敏處理;對于歷史生產數據的備份傳輸,則采用加密傳輸解密入庫,防止在數據傳輸過程中信息泄漏,保證數據安全性。

(3)當前售票系統生產環境主要采用Sybase數據庫,隨著業務不斷發展深入,增加了Mysql、Oracle、Gbase、PostGresSQL 等數據庫,對于營銷分析,還可能會用到文本數據,如Excel、txt 等文件,要求數據交換平臺有有良好的適應性,能夠適配多種數據庫和多種數據格式。

(4)鐵路售票數據具有數據量大、多源性等特點,精準營銷分析依賴于數據的實時性和準確性,對數據交換平臺的工作效率提出了更高的要求。

(5)隨著業務需求不斷發展,客票生產數據節點呈增加趨勢,客運營銷分析需求也呈不斷增加趨勢,要求數據交換平臺的數據庫、數據結構的適配和后端并發處理方便,都有良好的可擴展性。

3 平臺設計與實現

3.1 架構設計

數據傳輸平臺總體框架設計為3 層:Web 前端展示層,Web 后端處理層和執行層,如圖1 所示。

圖1 數據交換平臺總體架構

3.1.1 Web前端展示層

前端展示層為整個平臺的入口,為整個平臺提供顯示的界面,除此之外,前端展示層將用戶的配置進行收集和整理,將這些配置信息以rest 的形式傳遞給Web 后端。整個前端展示層需要實現4 個方面的界面。

(1)數據連接管理界面:包括單個數據連接的配置和修改界面,全部數據連接的顯示界面。

(2)轉換管理界面:包括轉換任務的配置和修改界面,轉換運行信息的顯示界面。

(3)作業管理界面:包括作業的配置和修改頁面,作業運行的運維信息展示界面。

(4)用戶管理界面:包括登陸界面,新增和修改用戶信息界面。

3.1.2 Web后端處理層

后端處理層是后臺的入口,與前臺進行交互,將前臺傳遞過來的配置存儲到數據庫中,并實現將數據庫中的轉換配置和作業配置下發給執行層,觸發執行層的執行。

后端處理層從數據流上主要實現4 個功能:

(1)為前端提供接口,實現將數據庫中的需要的信息傳遞給前端;

(2)接受前端傳入的信息,將其寫入數據庫;

(3)將數據庫中的信息傳遞給執行層,觸發執行層的執行;

(4)接收執行層的執行結果,更新數據庫中對應項。

3.1.3 執行層

執行層負責ETL 工作,接收Web 后端傳遞過來的執行信息進行執行。數據傳輸平臺的ETL 操作部分采用了Kettle 的內核,故而執行層主要進行以下工作:接收Web 后端發送過來的處理信息并進行分發和處理;將Kettle 內核按照功能需求進行修改和分布式部署;在分布式基礎上實現性能優化。

3.2 功能模塊設計

根據業務需求,平臺主要6 個功能模塊:用戶管理模塊、傳輸任務配置模塊、轉換管理模塊、作業調度管理模塊、傳輸監控模塊和日志報警模塊。各功能模塊間簡要數據流圖,如圖2 所示。

(1)用戶管理模塊主要實現用戶管理和訪問權限管理;

(2)傳輸任務配置模塊用于定義傳輸任務,包括傳輸任務的數據庫類型、數據表、數據庫連接信息、定時執行配置等信息;

(3)轉換管理模塊主要實現Kettle 轉換配置、轉換調用情況、轉換運行測試等功能;

圖2 功能模塊簡要流程圖

(4)調度管理模塊實現定時任務的自動執行和手工執行任務,包括數據傳輸前處理、后處理等流程;

(5)傳輸監控模塊實現整個數據傳輸平臺所有任務執行狀態監控,執行日志記錄、對比,錯誤信息顏色預警等功能;

(6)日志報警模塊主要功能為將任務執行情況發送給第三方接收平臺,如短信、微信和釘釘等,目前,平臺采用釘釘發送信息的方式實現報警。

3.3 接口設計

3.3.1 用戶管理相關接口

包含用戶管理類和用戶權限類。用戶管理類用于實現用戶創建、信息維護、獲取用戶信息等功能;用戶權限類用于管理用戶對不同功能模塊的訪問權限。

3.3.2 數據庫訪問信息配置接口

Kettle 支持多種數據庫的連接訪問,通過數據庫訪問信息配置接口管理不同任務的信息配置,并將信息存儲在數據庫中供Kettle 轉換和作業調用訪問。多個服務器與多個數據庫的組合配置轉化,如圖3 所示。

圖3 Kettle 數據訪問配置示例

3.3.3 Kettle轉換接口

轉換接口主要包含轉換配置類和執行類。轉換配置類提供對轉換的新增、修改、刪除等操作;轉換執行類主要實現轉換提交、更新、移除和停止轉換關系。圖4 為包含數據導出和獲取過程日志的一個轉換流程。

圖4 Kettle 轉換流程示例

3.3.4 Kettle作業管理接口

作業管理模塊主要實現作業管理和作業運行,在整個數據傳輸平臺中作業是對轉換的一個調度,當需要不同的轉換相互協調來完成數據傳輸過程時就需要對作業進行配置。作業管理接口主要提供了兩個接口類,作業管理類和作業執行類。作業管理接口提供作業添加、修改、刪除、查詢功能。作業執行接口類則提供提交作業和停止作業兩個接口,一個Kettle 作業流程,如圖5 所示。

圖5 Kettle 作業流程示例

3.3.5 日志報警接口

日志報警接口主要提供日志查詢功能,包括歷史任務的執行日志和當前執行任務的實時日志信息,用于執行任務檢查和異常信息報警。

3.4 平臺實現

營銷數據交換平臺前端基于B/S 架構實現,采用Spring MVC 和JQuery 框架進行開發,平臺各應用間通信和方法調用通過高速服務框架實現,數據庫采用PostGresSQL數據庫,創建Kettle 資料庫和交換平臺數據庫用于數據管理。數據交換平臺主要功能可分為兩大類:

(1)以開源ETL 工具Kettle 為核心的數據層開發,結合Spring 和Quartz 任務調度框架,實現營銷數據的多數據源分布式采集,并提供簡潔高效的頁面供使用者進行操作管理;

(2)以Solr 搜索引擎為基礎的資源索引建立和平臺搜索功能,用戶可通過配置文件或API 接口進行索引配置和生成,還提供Web 管理頁面,方便用戶操作。

在任務執行過程中全程記錄執行狀態,執行完成后自動生成匯總信息,并對異常已經預警。

對于平臺報警顯示的異常數據,為用戶提供帶有參數的處理界面,方便用戶處理異常。

通過向第三方辦公軟件發送post 請求,實現辦公軟件實時報警。

3.5 平臺應用

執行層是數據交換平臺的核心層,運行初期執行層部署在由4 個節點組成的Kettle 集群上,集群主節點負責完成轉換運行和任務切分,為集群指定TCP 端口,把任務分發到指定的負載節點, 負載節點收到任務后打開TCP 端口,并連接主節點,處理集群任務。考慮到現有IT 基礎設施資源利用率低,應用在物理機或者虛擬機中部署周期長,系統擴容不便,因此采用容器技術部署平臺前端Web 應用,實現應用的可持續集成和可擴展部署。

當前數據交換平臺主要配置了存根、運能、運量和實名制等60 余項數據的作業任務。針對不同數據設定了相應的任務執行計劃以及預警規則,在與原系統平行運行期間,運行效率較之前系統有很大提升,完成所有數據交換任務總耗時減少2 h 左右。在整個數據作業過程中,系統自動完成完整性、一致性檢驗,數據準確性得到了很大保證,釘釘辦公軟件及時獲取信息并進行預警通知,極大地方便了數據維護工作。在發生異常時,維護人員可通過日志快速、準確地定位到異常環節,并通過界面操作進行處理,提高了工作效率。

4 結束語

本文基于KETTLE 構建了鐵路客運營銷數據交換平臺,用于鐵路客運營銷歷史數據收集和實時數據交換,有效保證了營銷系統的數據及時性、準確性和完整性,提高了營銷數據交換與傳輸的效率;良好的適配性和可擴展性有效減少了業務需求增加帶來的重復開發工作;嚴格的日志記錄與展現結合第三方辦公軟件及時報警,以及界面異常處理功能,提高了數據維護的效率。為提高鐵路客運營銷系統數據效率、實現精準營銷提供了數據支撐。

猜你喜歡
界面數據庫作業
國企黨委前置研究的“四個界面”
當代陜西(2020年13期)2020-08-24 08:22:02
快來寫作業
基于FANUC PICTURE的虛擬軸坐標顯示界面開發方法研究
數據庫
財經(2017年2期)2017-03-10 14:35:35
人機交互界面發展趨勢研究
作業
故事大王(2016年7期)2016-09-22 17:30:08
數據庫
財經(2016年15期)2016-06-03 07:38:02
數據庫
財經(2016年3期)2016-03-07 07:44:46
數據庫
財經(2016年6期)2016-02-24 07:41:51
手機界面中圖形符號的發展趨向
新聞傳播(2015年11期)2015-07-18 11:15:04
主站蜘蛛池模板: 亚洲黄网在线| 欧美成人看片一区二区三区 | 国产精选自拍| 成人免费黄色小视频| 免费播放毛片| 91国内在线视频| 亚洲系列无码专区偷窥无码| www亚洲天堂| 毛片三级在线观看| 国产成人a在线观看视频| 九九香蕉视频| 一级看片免费视频| 久久国产精品无码hdav| 久久久久夜色精品波多野结衣| 亚洲爱婷婷色69堂| 亚洲三级成人| 91在线精品麻豆欧美在线| 毛片在线区| 日韩在线1| 欧美一级夜夜爽www| 精品视频在线观看你懂的一区| 国产男女免费视频| 中国一级特黄视频| 亚洲va欧美va国产综合下载| 久青草免费在线视频| 国产成人av一区二区三区| 日本91在线| 在线视频精品一区| 色综合中文字幕| 性欧美久久| 亚洲高清国产拍精品26u| 欧美人人干| 99re视频在线| 国产亚洲精品yxsp| 国产精品黄色片| 天堂成人在线| 成人亚洲天堂| 色妞www精品视频一级下载| 欧美啪啪精品| 一区二区三区四区日韩| 最新加勒比隔壁人妻| 国产第一色| 久久99精品久久久久纯品| 国产精品午夜电影| 日韩精品久久无码中文字幕色欲| 欧美成人一级| 狠狠色丁香婷婷综合| 波多野结衣一区二区三区AV| 欧美 亚洲 日韩 国产| 免费国产福利| 国产精品久久自在自线观看| 亚洲日韩精品无码专区97| 日韩成人午夜| 色噜噜综合网| 国产在线97| 亚洲成人在线免费观看| 日韩A∨精品日韩精品无码| 欧美精品v日韩精品v国产精品| 萌白酱国产一区二区| 操国产美女| 国产本道久久一区二区三区| 免费在线国产一区二区三区精品| 色网站在线视频| 欧美精品v欧洲精品| 国产精品亚洲欧美日韩久久| 欧美日韩午夜| 久久这里只有精品66| 一级毛片免费不卡在线视频| 视频二区国产精品职场同事| 熟妇人妻无乱码中文字幕真矢织江| 国产综合亚洲欧洲区精品无码| 国产成人精品在线1区| 久操线在视频在线观看| 久久精品娱乐亚洲领先| 久久精品国产一区二区小说| 国产精品一区在线麻豆| 国产区人妖精品人妖精品视频| 亚洲激情区| 67194亚洲无码| 夜夜拍夜夜爽| 色偷偷男人的天堂亚洲av| 无码人中文字幕|