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

面向金融場景的下一代數據庫測試基準研究

2022-09-01 06:01:48荊一楠張寒冰李智鑫王曉陽吳杰柴洪峰
中國工程科學 2022年4期
關鍵詞:數據庫金融

荊一楠,張寒冰,李智鑫,王曉陽,吳杰,柴洪峰

(1.復旦大學金融科技研究院,上海 200433;2.復旦大學計算機科學技術學院,上海 200433)

一、前言

改革開放以來,隨著經濟穩步增長和經濟、金融體制改革的深入,金融業在我國國民經濟中的地位愈加重要[1]。截至2021 年年底,我國金融業總資產達381.95萬億元,同比增長了8.1%。其中銀行業機構總資產為344.76 萬億元,同比增長7.8%,在各類金融機構(銀行、證券、保險)中占據主要地位[2]。隨著移動互聯網時代的到來,手機交易逐漸增多,銀行系統內部每時每刻都在產生著大量的數據信息,如何安全有效地管理好這些數據成為銀行對自身業務系統的重要訴求[3]。中國人民銀行發布的《金融科技發展規劃(2022—2025)》中也明確指出,金融科技整體水平與核心競爭力需要實現跨越式提升,全面加強數據能力建設,建設綠色、高可用的數據中心[4]。

數據庫系統及數據服務解決方案作為承載數據存儲和計算功能的基礎軟件,向下發揮硬件算力,向上支撐上層應用,是銀行業務系統中至關重要的一環。20 世紀90 年代,我國的銀行機構通過使用Oracle、DB2 等國外數據庫產品實現了跨網點的存取款業務功能(通存通兌)。近年來,受銀行業務需求和國際形勢影響,以銀行業為主的眾多金融機構逐漸從國外商用數據庫向國產分布式數據庫過渡[5],以在提高業務系統性能的同時避免使用國外商用數據庫產品所帶來的潛在供應鏈風險。隨著我國對金融數據安全的重視,金融業數據庫國產化替代已成為大勢所趨。

作為數據庫性能測試的依據,數據庫測試基準能夠在給定的場景下公平、客觀地對各類數據庫產品和數據服務解決方案進行統一的測試,對用戶選擇具有重大的參考價值。然而,現有數據庫測試基準在應對金融場景下的數據庫測試時面臨諸多挑戰。一方面,以銀行為代表的金融應用場景中的業務邏輯更復雜并且同時存在多種模式的數據,現有的測試基準缺乏在這種復雜的環境下對數據庫產品及數據服務解決方案進行全面、準確測試的能力,其模擬的應用場景(大多以商業銷售為主[6,7])與金融場景有著很大的區別。另一方面,金融業對數據安全的要求更高,金融數據的安全關系到國計民生,因此相比于現有測試基準,金融場景下的測試基準需要具備更強大、更全面的可靠性與安全性測試能力,以輔助實現金融數據的安全治理,為金融數字化轉型提供保障。此外,隨著金融業數據庫國產化替代步伐的不斷邁進,分布式改造如火如荼,金融場景下的測試基準需要能夠對數據庫產品及數據服務解決方案的可移植性、兼容性和分布式架構適配性等方面進行評測,而這正是現有測試基準所欠缺的。因此,亟需構建一個符合金融業務發展需求的數據庫測試基準以對數據庫產品及數據服務解決方案作出統一的評價和度量,助力金融從業者做出更準確的選擇,同時引導數據服務廠商的健康發展。

針對于此,本文首先對銀行業數據庫的應用發展現狀進行闡述,深入剖析新時期銀行數據庫的新要求與發展趨勢,介紹國產數據庫在各大銀行的替代情況與面臨的挑戰;其次調研分析國內外主要的數據庫測試基準,結合金融行業的數據應用發展需求,分析構建面向金融場景的下一代數據庫測試基準的必要性和重要性,以期為金融數據服務領域的從業者和研究者提供參考。

二、我國銀行業數據庫的應用現狀

(一)銀行業數據庫應用的發展與變遷

在信息時代,數據庫系統作為存儲和管理數據的基礎軟件,在銀行金融系統中具有重要的作用,直接關系到銀行金融系統的穩定。如圖1所示,從銀行信息化40多年的發展歷程來看,金融行業數據庫建設先后經歷了手工記賬的單機時代、各支行和網點業務數據互通的互聯互通時代、數據集中在總行的大集中時代、面向服務的架構(SOA)時代以及目前和未來將長期處于的分布式微服務時代。其中,從互聯互通時代開始(20世紀90年代),國外數據庫產品已逐漸在我國銀行內得到實際應用,打開了我國金融業數據庫建設的大門。之后,隨著我國數據庫行業的不斷發展,部分國產數據庫于2017年左右被投入到包括國有大型銀行、股份制銀行、城市商業銀行在內的眾多金融機構中使用并且表現出優異的性能[5]。目前,國產數據庫廠商大致可分為3類企業:一是以阿里巴巴集團控股有限公司為代表的互聯網企業;二是以北京人大金倉信息技術股份有限公司為代表的傳統數據庫公司;三是以華為技術有限公司、中興通訊股份有限公司等為代表的綜合型信息技術服務企業。截至2021 年6 月,我國數據庫產品共有135 款[8];但是,在2020 年我國高達200 億元的銀行數據庫軟件市場中,Oracle、DB2 等國外數據庫產品的市場占有率仍超過了80%[9],這也從側面表明我國國產數據庫擁有廣闊的發展空間。

圖1 銀行業數據庫應用的發展歷程

(二)新時期銀行數據庫的新要求

目前,金融行業在數據庫應用方面呈現出了4 個新需求[8]。一是隨著移動互聯網的快速發展,金融業務系統內產生的數據量在不斷增長,這對數據庫系統的數據存儲和管理能力提出了更高的要求;二是隨著普惠金融的落地,數據庫系統需要具有更強的容災能力,以保障業務連續性;三是隨著電子支付的普及,數據庫系統需要具有更強的性能,以應對高并發業務和高用戶量所帶來的系統壓力;四是防止潛在供應鏈風險,技術層面存在數據庫國產化需求,以避免金融數據安全受到威脅。

整體來看,為了適應銀行的數字化轉型升級,滿足業務發展需要,新時代的銀行數據庫除了滿足原子性、一致性、隔離性以及持久性(ACID)等數據庫的基本要素之外,還應有區別于傳統的特性才能跟上甚至引領時代。這些新要求包括:①可擴展性,數據庫系統需要具備擴展數據的存儲、訪問、計算等方面的能力,特別是橫向擴展的能力;②自主性,自主可控是信息安全的前提,是我國金融業務發展的需要,因此金融業特別是銀行業務系統中的數據庫系統應該是自主可控的;③海量性,隨著電子支付的普及,數據庫系統需要具備支撐海量數據存儲和計算的能力;④實時性,數據庫系統需要具備在高并發環境下實時處理用戶業務的能力;⑤高可用性,數據庫系統要具備足夠的容災能力,以提供全天候不間斷的服務,保障上層業務穩定運行;⑥安全性,數據庫系統需要具備足夠的安全性,為金融數據安全提供保障;⑦可遷移性,數據庫系統需要能夠將存儲在Oracle、DB2 等國外數據庫中的業務數據完美地遷移出來,并保證數據的完整性與可用性。

(三)新時期銀行數據庫發展的新趨勢

為了應對手機支付、貸款風險計算、銀行卡盜刷研判等需要進行海量數據存儲和計算的業務場景所帶來的性能壓力,保證我國金融信息系統的自主可控,防止其受到國際單邊主義和貿易保護主義所帶來的負面影響,金融行業特別是銀行在數據庫應用方面呈現出三大趨勢。

1.分布式數據庫改造趨勢

隨著業務不斷增長,金融業務系統中需要處理的數據量急劇增加,而現有的集中式數據庫面臨著一定的數據處理瓶頸,通過升級硬件來擴展能力成本高且有上限。因此,為了滿足金融業務系統中日益增加的性能需求,將現存的集中式數據庫改造為能夠通過增加存儲和計算節點來提升系統性能的分布式數據庫,勢在必行,也是未來的工作重點。中國人民銀行發布的《金融科技(FinTech)發展規劃(2019—2021 年)》 [10]中明確指出,要加強分布式數據庫的研發應用,確保分布式數據庫在金融領域的穩妥應用,并于2020年發布實施了《分布式數據庫技術金融應用規范技術架構》(JR/T 0203—2020)等3 項金融行業標準[11],對分布式數據庫在金融業內的應用給出了具體的規范標準。

2.數據庫國產化替代趨勢

隨著國家政策引導的信息技術應用創新、網絡強國、信息安全、大數據等國家戰略的推進,我國開發利用數據的需求逐漸增大并且也愈加重視數據的安全問題。數據庫作為承載數據存儲和計算功能的基礎軟件,為保障金融數據安全,在金融行業大規模使用國產數據庫產品是必然的。此外,受當前國際形勢影響,在金融系統中使用國外商業數據庫產品存在著諸多風險。同時,多項案例表明,國產數據庫在金融業務系統內已呈現出較好的性能水平,這也增強了金融機構選擇國產數據庫產品的信心。

3.非關系型數據庫及多模數據庫應用趨勢

隨著金融業務系統中存儲的數據量急劇增長,面對貸款風險計算、大額交易判斷、銀行卡盜刷預警等需要進行數據分析的業務場景,使用傳統的關系型數據庫來分析系統中所存儲的海量數據已難以滿足這些場景中對處理速度的要求,金融業務系統中需要使用一些非關系型數據庫及多模數據庫來分類存儲和管理金融數據,以提高數據分析效率,保障人民財產安全。例如,針對需要分析多層交易記錄路徑的貸款風險計算場景,將賬戶及交易記錄等數據轉換為圖數據并使用圖數據庫(如Neo4j)來對這些數據進行存儲和分析,能夠比關系型數據庫更加快速地獲得任務結果。此外,在一部分業務系統中,需要使用能夠同時支持對多種類型的數據進行集中存儲、查詢和處理的多模數據庫,以滿足系統對結構化、半結構化和非結構化數據的統一管理需求。因此,為了應對由海量數據所帶來的性能壓力,滿足各類業務場景對數據分析速度的要求,未來會有大量的非關系型數據庫及多模數據庫應用在金融業務系統中。

(四)銀行數據庫國產化替代現狀與面臨的挑戰

受銀行業務需求和國際形勢影響,銀行在廣泛使用Oracle、DB2 等國外數據庫產品時,存在諸多潛在風險。因此,包括國有大型銀行、股份制銀行、城市商業銀行在內的眾多金融機構,都在逐步從國外商用數據庫向國產數據庫過渡[5]。具體而言,各大國有商業銀行因尚不能在保證數據完整性和業務不間斷的前提下,將數據從正在使用的數據庫遷移到新的數據庫中,而沒有在主要核心業務系統中進行數據庫國產化替代,但是在一些需要進行海量數據處理的新興業務系統以及一些不涉及核心業務的業務系統中,已經逐步引入性能表現良好的國產數據庫,如北京平凱星辰科技發展有限公司的TiDB、天津南大通用數據技術股份有限公司的GBase、北京奧星貝斯科技有限公司的OceanBase等;股份制商業銀行不僅僅是在數據分析和模型開發等領域采納國產數據庫,同時對于傳統的事務型系統也有部分銀行采用國產數據庫,如中信銀行在事務型業務(OLTP)領域采用中興通訊股份有限公司開發的分布式數據庫GoldenDB [12],交通銀行基于OceanBase 數據庫自主研發了分布式數據庫CBase并將全行的借記卡數據從DB2數據庫下移至CBase 數據庫,使性能取得了顯著提升[13];城市商業銀行或者規模更小的銀行由于客戶量較少,涉及到的數據量遠遠小于大型銀行,因此除在外圍業務和新興業務上實現數據庫國產化替代外,在部分核心系統上的替換也屢見不鮮,如南京銀行使用北京奧星貝斯科技有限公司的Oceanbase 數據庫打造了完整的銀行業務核心系統。整體來看,國產數據庫具備自主可控、高可擴展、高性能、高可用等特性,可以很好地滿足線上化、高頻、多維度、高并發的場景需求,幫助金融機構解決技術瓶頸。分布式、云計算、混合部署等架構在國產數據庫中的廣泛應用還可以大幅提升成本控制和優化水平以達到“降本增效”的目的,有利于進一步實現金融數字化轉型。

目前,在銀行數據庫國產化替代的過程中,也面臨著一些挑戰。一是架構轉型挑戰。金融行業中大量使用集中式數據庫并具備了豐富的運維經驗,如何快速有效地實現從集中式數據庫到分布式數據庫的轉型,成為金融機構必須面對的挑戰。此外,金融行業特別是銀行對數據庫有著極為嚴苛的要求,需要分布式數據庫具備高度的穩定性和安全標準[14]。二是數據遷移挑戰。由于金融業長期使用Oracle、DB2 等國外數據庫產品,這些數據庫中存儲了大量的業務數據,如何高效率、低成本地將數據從正在使用的數據庫遷移到新的數據庫中,以保證數據完整性和業務系統不間斷,成為金融機構當前面對的一大挑戰。三是數據庫產品選擇挑戰。現有的數據庫產品及數據服務解決方案種類繁多,彼此之間在金融業務場景中的優劣程度并沒有標準的評價指標,如何選擇適合自身業務需求并具有高性價比的數據庫產品或數據服務解決方案,是金融機構當前面對的挑戰。現有典型的數據庫測試基準如TPC-C[14,15]、TPC-H[5]、TPC-DS[6]等針對不同的場景模式提供了相應的測試工具和說明文檔來對數據庫產品進行評測,但是由于金融應用場景中的業務邏輯與現有測試基準所模擬的商務應用場景有所不同,因此在金融場景下直接使用現有的測試基準對數據庫產品進行評測存在許多不足之處,亟需一個金融數據庫測試基準來統一地評價數據庫產品及數據服務解決方案在金融場景下的性能優劣。

三、數據庫測試基準的研究現狀

(一)數據庫測試基準的發展歷程

半個多世紀以來,數據庫技術經過不斷發展和完善,已經從最初簡單的層次模型、網絡模型發展為關系型數據庫、時間序列數據庫、圖數據庫等更加適合現有應用場景的技術方法[16],為數據庫領域注入了新的活力。然而,面對各種各樣的數據庫產品,如何選擇一個符合用戶需求的解決方案就變得困難起來。例如,針對社交網絡中的數據分析任務,使用以Neo4j 為代表的圖數據庫能夠比傳統關系型數據庫更好地表征數據關系;而針對海量數據分析需求,選用分布式數據庫更能有效應對大數據和高并發的請求處理。正是因為應用場景復雜、產品選擇多樣,設計一定的測試基準就變得非常必要。在數據庫領域,一個可靠的測試基準能夠公平、客觀地反映不同數據庫系統在同一測試標準下的性能水平,為用戶選擇數據庫產品及數據服務解決方案提供參考。

一個有效的數據庫測試基準需包括數據模式、工作負載和度量指標3個部分,共同構成數據庫測試基準。具體來看,數據模式在很大程度上決定了測試基準的應用場景,根據目標應用場景描述數據組成和結構。目前大多數測試基準都是通過設置與真實數據相似的數據規模、數據結構、數據分布和數據相關性等生成盡可能貼近真實數據的測試數據集[17]。工作負載用于評測數據庫系統在給定查詢場景中的具體性能,是測試基準的核心。根據應用領域、計算范式、密集類型和延遲要求的不同,不同測試基準中的工作負載需要具備不同的特性[18]。度量指標通常用于描述測評對象的性能。由于業務場景、目標需求不同,因此測試基準中度量指標的選取需要盡可能公平、客觀,常用的指標包括緩存命中率、吞吐率、查詢執行時間、資源利用率以及系統可擴展性等。

圖2 描述了數據庫測試基準的主要發展歷程。數據庫測試基準始于1983年,為解決當時大量數據庫系統孰優孰劣的爭執,研究者提出了威斯康星基準[19],由3張表和32個結構化查詢語言(SQL)語句組成,以總的運行時間為性能指標。雖然該基準較為簡單,但為各關系型數據庫管理系統廠家提供了很好的評測方式,也打開了測試基準的先河。威斯康星基準的發布也促進了事務處理委員會(TPC)的成立,目前應用較多的數據庫測試基準主要由TPC 發布,包括TPC-C、TPC-H、TPC-DS等。這些測試基準針對不同的場景模式提供了相應的測試工具和說明文檔,對不同的數據庫產品進行評測,具有較高的權威性,如近期關于Databricks和Snowflake 之間的性能優劣爭論,就是通過使用TPC-DS對其性能進行評測的[20~22]。此外,隨著數據量的不斷增長以及新型應用場景的不斷出現,產生了大量的新型測試基準,如面向大數據應用的測試基準TPCx-BB[23]面向時間序列數據庫的TSBenchmark[24]以及面向圖數據庫的Graph 500[25]等。綜上,數據庫技術的發展帶來了新的測試基準需求,數據庫測試基準促使數據庫廠商進一步完善已有問題,不斷提升系統的可用性,二者相互促進,共同發展。

圖2 數據庫測試基準的發展歷程

(二)面向關系型數據庫的測試基準

按照數據庫的作用進行劃分,關系型數據庫可以分為OLTP數據庫、分析型(OLAP)數據庫、混合負載(HTAP)數據庫。針對這3種類型的數據庫分別有相應的測試基準對其進行性能評估,具體如下。

1.面向事務型數據庫的測試基準

OLTP數據庫主要用于事務處理,具備ACID特性,能夠在寫入或更新數據的過程中保證事務是正確可靠的。其中,事務是指由一系列數據庫操作組成的一個完整的邏輯過程。

TPC-C:TPC-C 是TPC 組織提出的專門針對事務處理系統的測試基準,其模擬了倉庫訂單管理場景[15]。TPC-C中包含9張數據表和5種交易事務,比較全面地涵蓋了倉庫訂單管理業務;采用事務吞吐量作為度量指標來描述每分鐘處理的事務數量,使用性價比來衡量系統的能耗。

2.面向分析型數據庫的測試基準

為提高分析效率和決策效果,一般通過建立數據倉庫等方式來支持對大規模數據進行復雜的分析處理,因此OLAP數據庫更關注復雜查詢和聚集分析,側重決策支持。

TPC-H:TPC-H 主要針對數據分析系統設計,模擬了一個貼近實際的商務采購應用場景[6]。該測試基準基于第三范式(3NF)設計數據模式,包含8 個數據表(1 個事實表和7 個維度表),在每張數據表中的數據分布均為均勻分布。TPC-H的工作負載中總共含有22個即席查詢以及一些數據更新操作,這些查詢操作從各方面模擬了商務采購應用中的典型業務邏輯。TPC-H主要以每小時執行的查詢數和性價比為度量指標對數據庫系統進行評測。但是,由于TPC-H 測試基準生成的數據為均勻分布,數據分布過于理想,研究表明TPC-H并不適合用于進行基數估計相關的評測[26];此外,隨著數據和業務系統更加復雜,TPC-H中的數據模式與工作負載也顯得過于簡單。

TPC-DS:TPC-DS是TPC組織推出的用于替代TPC-H的決策支持系統測試基準[7]。TPC-DS采用雪花模型設計,包含7張事實表和17張維度表,工作負載中包括99個查詢語句和12個數據維護操作。與TPC-H 相比,TPC-DS 選用了更多的數據表,其中的數據分布也是模擬真實數據生成的,具有一定的偏斜性,與真實數據更為貼近;工作負載也更為復雜,其中包括即席查詢、報表查詢、迭代查詢、數據挖掘等多種查詢類型,從多個角度對真實的業務邏輯進行模擬,大部分的測試案例都有很高的輸入/輸出(I/O)負載和中央處理器(CPU)計算需求,能夠較為全面地對數據庫系統進行評測。由于TPC-DS適用范圍廣,更加符合現代商務應用場景,能夠比較客觀地反映系統的真實狀況,因此是目前認可度較高的測試基準。

Star Schema Benchmark (SSB):SSB 是由麻州大學波士頓分校的研究人員提出的,主要用于評測決策支持系統的性能[27]。SSB 將TPC-H 中的3NF 模型轉化為星型模型,包含1 張事實表和4 張維度表;SSB 的工作負載中包含13 條查詢測試語句,其將TPC-H的工作負載中的一部分復雜查詢用例改為結構更加固定的OLAP查詢,并根據查詢類型以及查詢選擇率將其分為4類查詢模式,以提供更適用的功能覆蓋和選擇率覆蓋測試。

TPCx-BB:TPCx-BB 的前身是 BigBench [28],后于2016 年被TPC 接受并命名為TPCx-BB [23]。TPCx-BB是一個端到端的大數據測試基準,提供了30 個模擬大數據處理、存儲、分析場景的測試用例,用以衡量大數據系統的軟硬件性能。TPCx-BB彌補了TPC-DS 的不足,它不僅包含了TPC-DS 中結構化的零售商數據,還添加了半結構化的網絡日志數據和非結構化的商品評論數據,更加貼近真實的應用場景。此外,TPCx-BB從1個商業維度和3個技術維度對工作負載進行設計,不僅能夠度量大數據引擎的性能,還符合大數據領域中的商務應用特征。

IDEBench:隨著數據量的快速增長,在大型數據集中進行交互式數據探索已經成為一個典型的分析應用和研究熱點。研究工作者們提出了許多相關的查詢處理技術以提高查詢處理效率,如基于采樣原理的近似查詢處理技術。然而,當前流行的測試基準(如TPC-DS、SSB)的工作負載和度量指標都是針對傳統商業應用場景進行設計的,并沒有捕捉到交互式數據探索中的獨特性質,因此,針對交互式數據探索的測試基準IDEBench被提出來[29]。IDEBench 基于真實數據集來生成測試數據,可將用戶自定義的數據集縮放到任意大小并保持其原始特性;IDEBench 將交互式數據探索中的用戶查詢分為多種類型,通過定義查詢之間的鏈接關系來模擬用戶探索行為之間的依賴關系,生成的工作負載是有時間順序的聚合查詢序列。

3.面向混合負載數據庫的測試基準

HTAP數據庫是能同時提供OLTP和OLAP的混合關系型數據庫[16]。其中,一部分HTAP 數據庫通過使用行列混存或者行列轉化技術來支持OLTP和OLAP查詢。

CH-benCHmark:CH-benCHmark 融合了 TPC-C和TPC-H 兩種測試基準 [30]。CH-benCHmark 選用了TPC-H中的3個數據表對TPC-C中的數據模式進行擴充,共包含12個數據表。此外,針對改動后的數據模式,CH-benCHmark 以TPC-C 的工作負載為基礎,結合重寫后的TPC-H的工作負載,構建了一個同時包含OLAP、OLTP查詢的混合工作負載。同時,為了評測數據庫產品在混合工作負載下的性能,CH-benCHmark 使用事務吞吐量和每小時執行的查詢數之間的比率作為度量指標。

(三)面向非關系型數據庫(NoSQL)的測試基準

除關系型數據庫外,隨著近年來NoSQL 數據庫的大量涌現,新的數據庫測試基準也在不斷發展。本文選取了4類較為典型的NoSQL數據庫測試基準進行分析介紹。

1.面向鍵值數據與列簇式存儲的測試基準

鍵值數據庫與列簇式數據庫是NoSQL 數據庫中較為常見的兩類數據庫,主要用于加速系統中數據查找效率。具體而言,鍵值數據庫是對鍵值集合進行存儲、檢索和管理的一類NoSQL 數據庫,其中鍵值對集合類似于映射或字典,每個鍵在集合中具有唯一性,鍵對應的值可以包含各種字段或數據;列簇式數據庫則是一類使用表、行和列進行數據存儲的NoSQL 數據庫,其針對快速檢索數據列進行了優化,通常用于聯機分析處理。

YCSB:YCSB 的全稱是Yahoo! Cloud Serving Benchmark,是一個用于比較NoSQL數據庫性能的開源測試基準,目標是促進新一代云數據服務系統的性能比較[31]。目前,YCSB 已為廣泛使用的4 個系統(Cassandra、HBase、PNUTS 和 MySQL)定義了一組核心基準并報告了測試結果。此外,YCSB是可擴展的,支持定義新的工作負載。

YCSB++:研究人員對YCSB 進行擴展后提出了YCSB++[32],其包括并行性測試、弱一致性測試、塊上傳測試等方面。YCSB++為多個測試客戶機之間提供分布式同步,并能夠測量最終的一致性、批量加載以及批量寫入的優化效果。此外,YCSB++還可以測量數據庫中額外功能(如訪問控制)的性能開銷,并收集每個集群節點上的資源監控信息。

2.面向時間序列數據(時序數據)與流數據的測試基準

TS-Benchmark:時序數據在物聯網、數字金融、天氣預報等領域都有廣泛應用。隨著InfluxDB、IoTDB 等時序數據庫的出現,面向時序數據庫的測試基準TS-Benchmark [24]應運而生。基于真實的物聯網應用場景,TS-Benchmark通過模擬風力渦輪機設備中不同傳感器之間的物理模型來設計時序數據之間的相關性,能夠在數據加載、數據注入和數據獲取這3類工作負載模式下系統測試時序數據庫的性能。

Yahoo Streaming Benchmark:隨著大數據和云計算的不斷發展,基于流數據的應用產品數量激增,這同時也產生了一大批新的流計算引擎(如Storm、Flink、Spark Streaming)。為了便于用戶對不同的流計算引擎進行對比評測、選擇合適的產品,研究人員提出了Yahoo Streaming Benchmark 這一流計算引擎測試基準并得到業界廣泛認可[33]。Yahoo Streaming Benchmark 構建了一個完整的測試流程,使用Kafka、Redis進行數據獲取和存儲,模擬真實的廣告分析流程并設計實現了一個貼近實際生產環境的流處理工作負載。

3.面向圖數據的測試基準

Graph 500:Graph 500 主要針對高性能計算中圖算法部分進行評測,用以度量超級計算機的計算性能[25]。Graph 500 側重并發搜索、單源最短路徑和最大獨立集3個問題,涉及網絡安全、醫療信息學、社交媒體等與圖相關的業務領域,可充分評測超級計算機的數據處理能力。

LDBC-SNB:LDBC-SNB 是一個針對社交網絡場景進行模擬的測試基準[34],根據社交網絡中的特征設計生成數據模式并通過兩種典型的工作負載對圖數據庫進行評測,能夠較好地覆蓋當前社交網中的一般業務,具備一定的普適性和代表性。其中,該測試基準有兩種典型的工作負載,一種是交互式工作負載,包括給定節點下的鄰居查詢、數據插入等任務;另一種是商業智能工作負載,包括聚合函數與多圖連接等復雜查詢,相關查詢會涉及到圖中的大部分節點。

4.面向多模數據庫的測試基準

UniBench:不同于圍繞單一數據模型構建的數據庫,多模數據庫能夠同時支持多種不同數據模型。為全面評估多模數據庫產品,多模數據庫測試基準UniBench 應運而生[35]。UniBench 是一個旨在針對多模數據庫進行評測的測試基準,由一組模擬社交商務應用程序的混合數據模型組成,其中的數據生成器提供包括可擴展標記語言(XML)、鍵值、文本、圖等在內的多種數據格式;工作負載由一組多模型只讀查詢和讀寫事務組成,這些事務至少涉及兩個數據模型,涵蓋多模型數據管理的基本方面。

(四)現有測試基準在金融場景中面臨的新問題

數據庫產品在金融業務場景中應用廣泛,在銀行及其他金融機構中的對公、對私業務線中廣泛應用,是關系國計民生的重要領域,更是各大數據庫廠商競爭的熱點。目前,已有的數據庫產品種類繁多、解決方案層出不窮,所提供的業務覆蓋范圍與服務性能都各有不同,致使銀行用戶難以做出最適合的選擇。雖然日趨豐富的數據庫測試基準已經顯著推動了數據庫技術的進步和研發(如TPC-C 和TPC-H),但是針對金融數據庫產品及數據服務解決方案的評測卻仍有較大空白。進一步,隨著金融業數據應用服務不斷發展,所涉及的數據類型、業務場景更加多樣化,現有測試基準在金融數據服務中面臨諸多問題,面向金融場景的數據庫測試基準亟待發展和完善,以推動金融數據庫技術的蓬勃發展。

1.業務場景適配問題

從業務場景方面來看,由于金融應用場景中的業務邏輯(工作負載)與現有測試基準所模擬的商務應用場景有所不同,因此直接使用現有的測試基準在金融場景下對數據庫產品及數據服務解決方案進行評測存在著許多的不足之處。例如,通過總結轉賬、存款、取款、賬戶查詢、代發工資和資產盤點等6 種金融場景中常見的業務邏輯[36],研究者們發現在這些業務中需要對數據進行多次訪問操作以及安全驗證,而現有的測試基準如TPC-H、TPCx-BB等都與之相差甚遠,不能有效地評價出數據庫產品及數據服務解決方案在金融場景下的可用性。

2.數據模式多樣化問題

從測試基準所支持的數據模式來講,為了滿足互聯網金融業務的需求,數據服務平臺需要對多種不同模式的數據同時進行處理(如關系型數據、圖數據、流數據等),而現有的測試基準通常僅針對單一數據模式,是一種單模的、孤立的、封閉的測試基準,不能很好地反映出金融業務的真實應用場景。如圖3所示,針對貸款風險計算場景,銀行需要查詢貸款發放以后2個月期間,是否存在客戶N人(N>3)將資金轉至同一賬號(交易最大層數3層)。此類多層復雜路徑查詢問題使用圖數據庫進行處理將比使用關系型數據庫更為高效。隨著非關系型數據及其查詢分析在金融業務中的需求不斷上升,金融場景下的數據庫產品及數據服務解決方案需要覆蓋的數據模式也應當更加全面,而現有的測試基準在這一方面存在一定的不足。

圖3 貸款風險計算示意圖

3.測試數據生成問題

現有的測試基準一般通過模擬真實數據中的數據結構、數據規模、數據分布、數據相關性等因素來生成測試數據,為數據庫產品的性能測試提供數據支撐。然而,這種基于規則的數據生成方法難以發現真實數據中潛在的特征信息,不能生成與真實數據高度相似的測試數據;金融行業高度重視數據安全,生成的測試數據在模擬真實數據相關特征的同時,需要對一些涉及國家安全與用戶隱私的數據特征進行遮掩,而通過人為地去總結數據特征來設計數據生成規則需要耗費大量的人力物力,并且不可避免的會出現錯漏,難以在保證金融數據安全的同時生成符合金融數據特征的測試數據。

4.兼容性和可移植性的測試問題

現有的測試基準主要是對各類數據庫產品在一個給定應用場景下的性能指標進行測試,不能準確地對兩個數據庫產品之間的兼容性和可移植性進行度量,但這正是金融業目前迫切需要的一個度量指標。隨著金融業內數據庫國產化替代的不斷推進,金融從業者亟需一個度量指標來對數據庫產品之間的兼容性和可移植性進行客觀準確的評測,以幫助其從種類繁多的數據庫產品及數據服務解決方案中選擇出能夠在保證業務連續性、數據完整性的同時具備高性價比的產品,最小化數據庫替換對自身業務所帶來的不利影響。

四、面向金融場景的下一代數據庫測試基準研究初探

金融業對測試基準提出了新的需求。面向金融數據服務領域的特征,金融從業者需要一套能夠全面覆蓋多樣化金融業務場景的測試基準。通過使用這一測試基準對各家廠商所提供的數據庫產品及數據服務解決方案進行統一、標準的評測,來幫助金融從業者選擇出最適合自己實際業務需求的數據庫解決方案。作為第一批對金融場景下數據庫性能進行評測的測試基準,中國信息通信研究院發布了面向OLTP 數據庫的性能測試工具DataBench-T[37]、面向OLAP 數據庫的性能測試工具DataBench-A,根據金融行業內的特殊要求,制定并設計了一系列符合金融業務需求的數據模式、工作負載與度量指標。但這些測試基準仍然存在著一定的問題,如DataBench-T和DataBench-A缺乏對混合負載的評測能力,支持的數據模式較為單一,目前僅支持關系型數據庫測試。因此,新一代金融數據庫測試基準需要從數據模式、工作負載、度量指標以及技術架構等方面,全方位適配金融業務場景,全面評估各類數據庫產品及數據服務解決方案在金融場景中的性能指標。具體而言,未來需要在以下7個方面進一步對金融場景下的測試基準進行研究。

(一)支持混合工作負載的測試能力

金融業務領域混雜著大量的OLTP 工作負載和OLAP 工作負載,一方面是由于金融業務的特殊性,需要考慮使用各種資源隔離手段來隔離不同業務負載;另一方面,又要考慮同時支持這兩種業務負載所帶來的數據新鮮度等指標。因此,在設計新一代金融數據庫測試基準中的工作負載時,需要同時考慮這兩種負載的特征并選取適當的度量指標,以在模擬真實業務場景的同時對不同類型的工作負載進行統一評測。

(二)支持多模數據庫的測試能力

隨著金融業務的不斷創新,除關系型數據以外,還存在著大量的非關系型數據。因此,在設計新一代金融數據庫測試基準中的數據模式時,需要同時考慮關系型數據與非關系型數據,即需要對多模數據庫具備一定的測試能力,并且考慮到金融業務未來的發展情況,在測試基準中留下充足的擴充空間,以便根據需要進行擴展。

(三)支持分布式架構適配性測試的能力

金融行業特別是銀行業的數據庫分布式改造正在如火如荼地進行。分布式系統區別于一般的單機系統和集中式系統,系統構造更復雜,影響因素更多。所以,在設計新一代金融數據庫測試基準時,需要重點考慮如何評測數據庫產品以及數據服務解決方案對分布式架構的適配能力。

(四)支持金融仿真測試數據生成的能力

高保真的測試數據是模擬真實應用場景、實現更準確測試的保證。但由于合規約束嚴、隱私保護難、泄漏風險高等因素,致使利用真實業務數據進行測試是不可行的。目前在測試中大多采用模擬生成的測試數據進行仿真測試。傳統的測試數據生成方法基本采用基于規則的方式(如TPC-H),缺點在于規則需要人工定義、復雜規則定義困難、生成的數據容易丟失關鍵特征、數據仿真度不高,從而導致測試結果不夠準確、無法真正模擬真實業務場景等。而現有研究表明,通過使用深度學習方法從真實數據中自動學習數據特征來生成仿真數據,能夠較好地模擬真實數據特征,同時可以有選擇性地在一些數據特征中添加噪聲信息以保證最終生成的數據不會造成隱私泄露[38]。因此,新一代金融數據庫測試基準需要大力發展基于人工智能的金融仿真測試數據生成的能力,以生成具有安全性保障的高仿真金融數據。

(五)提供更全面的可靠性和安全性測試能力

金融業對數據庫產品有更高的可靠性和安全性要求。金融數據需要提供嚴格的安全保障;數據存儲系統應當具備高可靠性、提供備份和恢復的能力;基于業務特點,金融數據庫需要具備更強的容災能力。然而,現有的測試基準在這方面的測試能力有所欠缺,難以評價一個數據庫產品是否符合金融業務中的可靠性與安全性要求。因此,新一代金融數據庫測試基準需要有針對性地提高對數據庫可靠性和安全性進行測試的能力。

(六)加強對數據庫讀寫性能的測試能力

金融業對數據庫產品有更高的性能需求,互聯網金融數據服務平臺需要具備更強的讀寫能力以應對高并發業務的壓力。這些壓力中的一部分來自于龐大的用戶量,與電商類應用類似;另外一部分是因為金融數據服務需要在一次業務邏輯中進行多次數據一致性驗證,以保障人民群眾的財產安全,這與現有測試基準所模擬的應用場景有很大的不同。所以,新一代金融數據庫測試基準需要有針對性地加強對讀寫能力方面的測試。

(七)增加對兼容性和可移植性的測試能力

在數據庫國產化替代過程中,為了實現業務的平穩過渡,必須要考慮到新數據庫對既有數據庫的兼容性和可移植性,以保證數據庫替代的過程中業務不間斷及數據庫替代后系統內數據的完整性,而這正是現有的測試基準所無法做到的。因此,兼容性和可移植性測試也是新一代金融數據庫測試基準必須要考慮的方面。

五、結語

隨著金融業務的快速擴展和我國對數據安全的更加重視,以銀行為代表的金融業逐漸開始進行數據庫國產化替代以應對更加復雜的業務需求,保證業務系統自主可控。然而,面對種類繁多的數據庫產品,現有的數據庫測試基準無法滿足金融業對數據庫產品及數據服務解決方案的測試需求,因此亟需一個能夠適應金融業務場景的測試基準來助力金融從業者做出更準確的選擇,同時引導數據服務廠商的健康發展?;诖耍疚慕涍^系統調研總結了銀行業數據庫國產化替代過程中所面臨的三大挑戰,分析了國內外主要的數據庫測試基準在金融場景下所面臨的四大問題,論述了構建面向金融場景的下一代數據庫測試基準的意義與價值,并展望了該領域未來的研究方向。

在未來的研究工作中,需要進一步深入分析金融場景下數據庫產品及數據服務解決方案的測試需求,從工作負載、數據模型定義、度量指標、仿真數據生成、測試平臺架構等方面研究具體的實現方案,構建能滿足金融場景測試需求的下一代數據庫測試基準,以更全面、更準確地評測金融數據庫產品及數據服務解決方案,為國家相關管理部門、金融從業者數據庫選擇提供參考,助力我國金融科技水平提升。

猜你喜歡
數據庫金融
何方平:我與金融相伴25年
金橋(2018年12期)2019-01-29 02:47:36
君唯康的金融夢
數據庫
財經(2017年15期)2017-07-03 22:40:49
數據庫
財經(2017年2期)2017-03-10 14:35:35
數據庫
財經(2016年15期)2016-06-03 07:38:02
數據庫
財經(2016年3期)2016-03-07 07:44:46
數據庫
財經(2016年6期)2016-02-24 07:41:51
P2P金融解讀
支持“小金融”
金融法苑(2014年2期)2014-10-17 02:53:24
金融扶貧實踐與探索
主站蜘蛛池模板: 亚洲福利一区二区三区| 一边摸一边做爽的视频17国产 | 中文字幕调教一区二区视频| 免费jjzz在在线播放国产| 久久99精品久久久大学生| 国产亚洲现在一区二区中文| 欧美成人午夜在线全部免费| 26uuu国产精品视频| 狠狠亚洲五月天| 日本午夜视频在线观看| 五月天福利视频| 国产精品太粉嫩高中在线观看 | 国产成人精品18| 精品欧美日韩国产日漫一区不卡| 成人福利在线观看| 精品福利网| 狠狠干欧美| 欧美在线视频不卡第一页| 伊人久久影视| 国产精品福利导航| www.91在线播放| 免费va国产在线观看| 国产一级二级在线观看| 三上悠亚在线精品二区| 国产毛片片精品天天看视频| 久久无码免费束人妻| 亚洲最新在线| 国产a v无码专区亚洲av| 区国产精品搜索视频| 伊在人亚洲香蕉精品播放| 久久久久久久久18禁秘| 国产成人高清精品免费5388| 欧美日韩国产综合视频在线观看| 69免费在线视频| 欧美日本在线| 亚洲国产中文欧美在线人成大黄瓜| 99视频在线精品免费观看6| 国内嫩模私拍精品视频| 99热这里只有精品5| 尤物国产在线| 日本精品αv中文字幕| 欧美一区国产| 中文字幕欧美日韩| 99在线观看免费视频| 人妻免费无码不卡视频| 欧美一级夜夜爽www| 亚洲一区二区三区麻豆| 国产成人凹凸视频在线| 国产欧美日韩va另类在线播放| 国产视频自拍一区| 夜夜拍夜夜爽| 福利视频99| 伊人久久大香线蕉影院| 日韩天堂视频| 国产伦精品一区二区三区视频优播 | 中文字幕无码制服中字| 国产成人1024精品下载| 久久婷婷色综合老司机| 亚洲成AV人手机在线观看网站| 夜夜操狠狠操| 国产91成人| 亚洲高清在线天堂精品| 亚洲一道AV无码午夜福利| 久久亚洲国产最新网站| 欧美午夜在线播放| 久久亚洲国产最新网站| 免费观看亚洲人成网站| 在线国产你懂的| 国产门事件在线| 亚洲三级a| 夜夜操国产| 久久一级电影| 欧洲免费精品视频在线| 乱人伦99久久| 国产午夜福利在线小视频| 欧美性色综合网| 国产白丝av| 亚洲欧洲一区二区三区| 亚洲一区二区视频在线观看| 玖玖精品视频在线观看| 中文字幕精品一区二区三区视频 | 国产乱人视频免费观看|