同盾科技是中國領先的人工智能科技企業(yè),專注決策智能領域,致力于幫助政企客戶防范風險、提升決策效率。同盾科技堅持自主科技創(chuàng)新,多項算法和軟件系統(tǒng)已達全球領先水平,并形成了“基于隱私計算的共享智能平臺-智邦”和“基于人工智能的決策智能平臺-智策”兩大平臺,聚焦于金融風險、安全風險、政府治理風險三大場景,業(yè)務覆蓋全球數(shù)十個國家,為 22 大行業(yè)、118 個細分場景的上萬家客戶提供了領先且獨具特色的決策智能解決方案。
風控業(yè)務場景對數(shù)據(jù)庫的需求與挑戰(zhàn)
作為一家第三方風控公司,客戶經(jīng)常需要調用同盾的智能決策服務去做業(yè)務決策,如電商大促期間防范黑產(chǎn)薅羊毛,個人信貸杜絕多頭借貸老賴行為等。因此,同盾服務調用常常呈現(xiàn)出非常大的 TPS 請求。同時,為了不影響客戶調用服務的質量與體驗,同盾對低延遲和高可用有著硬性要求。
(資料圖)
基于這樣的特征,同盾日均過億的決策服務調用,會產(chǎn)生包括非結構化/結構化多種數(shù)據(jù)結構類型在內的海量數(shù)據(jù)入庫。豐富的數(shù)據(jù)類型與多樣的細分場景,使得同盾科技必須使用多種數(shù)據(jù)庫去滿足不同的業(yè)務場景需求,在同盾的數(shù)據(jù)架構中包含了 Cassandra、MySQL、HBase、Redis、Mongo 等數(shù)據(jù)庫。
在同盾的數(shù)據(jù)架構中,大多數(shù)初始落庫的數(shù)據(jù)還比較原始,為了提供優(yōu)質的數(shù)據(jù)服務用于智能決策,技術團隊構建了成熟的大數(shù)據(jù)平臺,用 T+1 離線數(shù)據(jù)分析的方式去進行日常的離線數(shù)據(jù)分析作業(yè),利用數(shù)據(jù)二次加工賦能上層的風控智能決策。
但面對復雜的數(shù)據(jù)基礎架構,同盾在業(yè)務增長中也遭遇了如下挑戰(zhàn):
·?同盾擁有在線數(shù)千個大大小小的 MySQL 工作實例,數(shù)據(jù)十分分散,有一些是核心的風控業(yè)務系統(tǒng)數(shù)據(jù),有一些是后臺基礎架構平臺的數(shù)據(jù),還有一些是集團 IT 系統(tǒng)數(shù)據(jù),同盾希望通過集中化的方式對這些數(shù)據(jù)進行分析管理;
·?最開始同盾將上游 MySQL 數(shù)據(jù)同步到下游進行分析,但整個過程中數(shù)據(jù)交換工作效率非常低,整體作業(yè)分析的 SLA 無法得到保證;
·?由于上下游數(shù)據(jù)同步的阻塞問題,導致了離線數(shù)據(jù)同步實時性很差,上下游數(shù)據(jù)經(jīng)常出現(xiàn)數(shù)據(jù)不一致的情況,非常影響提供給作業(yè)的數(shù)據(jù)質量。
其實同盾科技的業(yè)務場景并不復雜,只需要同步生產(chǎn)環(huán)境中數(shù)千個 MySQL 實例至下游的離線系統(tǒng),提供給作業(yè)開發(fā)人員通過大數(shù)據(jù)平臺進行離線分析加工。項目的核心目標是在海量數(shù)據(jù)落庫下,保障在線到離線數(shù)據(jù)的數(shù)據(jù)庫的準實時性和一致性,并提供優(yōu)質的數(shù)據(jù)服務給內部的風控系統(tǒng)開發(fā)人員、算法模型工程師和運營人員加工數(shù)據(jù)。
為什么選擇 TiDB?
經(jīng)過長時間調研,同盾科技的技術團隊最后選擇了新一代分布式數(shù)據(jù)庫 TiDB 作為離線層的核心數(shù)據(jù)庫。同盾科技數(shù)據(jù)庫運維梁高升表示,主要有以下幾點原因最終促成同盾選擇 TiDB:
首先,TiDB 高度兼容MySQL協(xié)議,在 TiDB 的使用和運維過程中大大減輕了運維和開發(fā)人員的使用成本;
第二,TiDB 作為分布式數(shù)據(jù)庫,同盾可以把它看成一個大的數(shù)據(jù)庫實例,可以匯聚上游所有的MySQL實例數(shù)據(jù);
第三,TiDB 具備存算分離的架構,可以讓同盾非常靈活地控制硬件成本,而不用一味堆砌服務器;
最后,TiDB 擁有非?;钴S的社區(qū)。即使在使用 TiDB 的過程中遇到一些問題也馬上能在社區(qū)得到解決。
解決方案
最終,同盾科技數(shù)據(jù)庫團隊構建了一整套基于 TiDB 的數(shù)據(jù)流轉架構,該架構共分為三層:
實時數(shù)據(jù)層
同盾內部有 3000+ MySQL實例,在實時數(shù)據(jù)庫層通過 MySQL cloud 管控上游數(shù)千個 MySQL。
傳輸層
在傳輸層,從 MySQL Cloud 對接實時數(shù)據(jù)同步任務到內部 Otter ,Otter 可以實現(xiàn)準實時同步 MySQL 數(shù)據(jù),然后再由 OTTER 實時同步數(shù)據(jù)到 TiDB。
上下游同步組件決定了數(shù)據(jù)在下游離線場景的整體數(shù)據(jù)質量,同盾對數(shù)千個 MySQL 實例同步數(shù)據(jù)的同時,需要保證其穩(wěn)定性、低延遲及整體可控的管理成本。雖然 PingCAP 數(shù)據(jù)遷移工具 DM 支持全量/增量靈活的數(shù)據(jù)導入場景,并具有較快的導入速率,但目前單個 DM worker 只支持綁定一個數(shù)據(jù)源,這限制了管理大量 MySQL 同步任務的需求。同盾最后選擇使用 OTTER 作為常態(tài)化的數(shù)據(jù)增量同步平臺,但 OTTER 只支持增量數(shù)據(jù)同步,且單任務吞吐有上限,同盾通過使用其支持 spark streaming 來進一步保障同步得吞吐和準實時性。未來在 TiDB 推出一個 DM worker 支持多個數(shù)據(jù)源的特性后,同盾會再考慮進行替換。
離線數(shù)據(jù)層
離線數(shù)據(jù)層中的大數(shù)據(jù)平臺主要管控 TiDB 的元數(shù)據(jù)和實際到下游的同步情況。 在 Spark 運行作業(yè)的過程中通過 TiSpark 去訪問 TiDB,最后接入 Hadoop 進行分析作業(yè)。
業(yè)務收益
通過打造 TiDB 數(shù)據(jù)產(chǎn)品鏈,同盾科技實現(xiàn)了數(shù)千個 MySQL 數(shù)據(jù)的離線匯聚管理。TIDB 有著便捷易操作的 Dashboard 管理界面,運維無心智負擔,大大提升了數(shù)據(jù)庫運維團隊的管理運維和使用數(shù)據(jù)的便捷性與效率。同時,TiDB 的高性能保障提供高質量的數(shù)據(jù)服務,實現(xiàn)了準實時同步數(shù)據(jù)。
同盾科技數(shù)據(jù)庫運維梁高升介紹,同盾剛開始上線的是 TiDB 2.0 早期版本,在上下游數(shù)據(jù)同步過程中遇到了一些 TiDB 和 MySQL 不那么兼容的情況,如果在上游有大量數(shù)據(jù)更新的情況下,會出現(xiàn)同步阻塞的情況,導致同步的實時性、一致性出現(xiàn)問題。但 TiDB 版本迭代速度非常快,每個版本都會對性能及穩(wěn)定性做出大量改進和優(yōu)化,在升級到 5.4 版本后,同盾就已經(jīng)解決了大部分的兼容問題。而且在基準測試中,TiDB 的性能也得到了質的飛躍。
未來規(guī)劃
同盾科技是 TiDB 非常早期的用戶,多年的使用讓同盾確信 TiDB 是一款非常好的產(chǎn)品,未來也會繼續(xù)致力于在更多的場景依靠 TiDB 生態(tài)落地賦能一些業(yè)務場景。例如,雖然同盾的大部分作業(yè)是 T+1,但內部也有很多實實在在的實時分析場景,比如實時展示的 BI 系統(tǒng),通過TiFlash 實時分析查詢引擎可以進一步提升分析效率,更及時地滿足實時分析需求;同盾國內在線業(yè)務針對海量關系型數(shù)據(jù)庫初始使用的是 MYCAT,但是 MYCAT 的運維非常困難,對開發(fā)也不是很友好,更像是上一代的分布式數(shù)據(jù)庫產(chǎn)品。后續(xù),類似 MYCAT 這樣的場景也很有必要使用 TiDB 進行替換。
近幾年,隨著出海趨勢愈發(fā)火熱,同盾科技在出海業(yè)務勢頭也非常迅猛,業(yè)務涉及東南亞、北美、歐洲等多個區(qū)域,這就需要在谷歌云、AWS、阿里云等通用公有云上,有一款標準的分布式數(shù)據(jù)庫服務,幫助其在全球快速布局業(yè)務。而 TiDB Cloud 已經(jīng)在各大主流公有云上提供服務,這也給同盾科技構建堅實的技術底座提供了更好的選擇。
Copyright 2015-2022 太平洋禮儀網(wǎng) 版權所有 備案號:豫ICP備2022016495號-17 聯(lián)系郵箱:93 96 74 66 9@qq.com