一文解讀《數(shù)據(jù)庫政府采購需求標(biāo)準(zhǔn)》
原創(chuàng)近日,財(cái)政部聯(lián)合工業(yè)和信息化部共同印發(fā)《數(shù)據(jù)庫政府采購需求標(biāo)準(zhǔn)(2023)》。這為很多政府機(jī)構(gòu)采購數(shù)據(jù)庫提供了統(tǒng)一標(biāo)準(zhǔn),也為其他行業(yè)采購起到了一定示范作用。對廣大數(shù)據(jù)庫廠商而言,無疑具備非常好的指導(dǎo)意義。下文將從政策本身及對應(yīng)技術(shù)能力角度,談?wù)剛€(gè)人對這一標(biāo)準(zhǔn)的解讀。
一、采購需求標(biāo)準(zhǔn):政策篇
關(guān)于此次下發(fā)的政府采購標(biāo)準(zhǔn),可參考下面的詳圖。這里僅談?wù)剰奈淖稚峡傻玫降闹庇^信息。
? 適用范圍:政府部門
此次下發(fā)標(biāo)準(zhǔn)的適用范圍為政府部門。采購人在采購數(shù)據(jù)庫是都應(yīng)遵循這一采購標(biāo)準(zhǔn)。
? 采購原則:分包采購
此次下發(fā)標(biāo)準(zhǔn)明確,無論是采購軟硬件產(chǎn)品、集成服務(wù)項(xiàng)目亦或是達(dá)到采購限額,都應(yīng)獨(dú)立分包采購。
? 采購標(biāo)準(zhǔn):采購指標(biāo)
此次下發(fā)的標(biāo)準(zhǔn)中,部分指標(biāo)標(biāo)記為"*",即作為強(qiáng)制采購標(biāo)準(zhǔn);非標(biāo)記指標(biāo),可根據(jù)需要選擇納入采購標(biāo)準(zhǔn)。標(biāo)準(zhǔn)也說明用戶可增加新的指標(biāo)或?qū)σ延兄笜?biāo)提出更高要求,但不應(yīng)超過實(shí)際需要。后面技術(shù)部分,將針對指標(biāo)做更詳細(xì)的分析說明。
? 回應(yīng)形式:承諾函
在招投標(biāo)環(huán)節(jié)中,供應(yīng)商通過提供的承諾函來回應(yīng)采購標(biāo)準(zhǔn),并被視為產(chǎn)品符合要求。采購商不的對數(shù)據(jù)庫進(jìn)行檢測、認(rèn)證或要求廠商提供檢測、認(rèn)證報(bào)告。這一要求無疑對數(shù)據(jù)庫廠商是利好的,減少大量重復(fù)的資源投入。
? 驗(yàn)收形式:用戶或三方
在驗(yàn)收環(huán)節(jié),用戶需嚴(yán)格履行驗(yàn)收職責(zé),自驗(yàn)或委托三方機(jī)構(gòu)進(jìn)行驗(yàn)收。
二、采購需求標(biāo)準(zhǔn):技術(shù)篇(總覽)
此次下發(fā)標(biāo)準(zhǔn)中,包含兩種標(biāo)準(zhǔn)、分為五大類、二十四小類標(biāo)準(zhǔn)。下面針對整體技術(shù)指標(biāo)進(jìn)行一些說明
1、兩類標(biāo)準(zhǔn):集中式、分布式
此次下發(fā)兩類標(biāo)準(zhǔn),分別是面向集中式數(shù)據(jù)庫和分布數(shù)據(jù)庫。在具體的采購需求標(biāo)準(zhǔn)(簡稱指標(biāo))中,絕大部分都是相同的,只稍有差異。其中,集中式是108條指標(biāo)、分布式113條指標(biāo),相同指標(biāo)有107條,差異部分主要體現(xiàn)在集群管理部分。集中式有基于共享存儲的管理標(biāo)準(zhǔn),分布式則增加了對數(shù)據(jù)分布、數(shù)據(jù)重分布、分布式計(jì)算、集群擴(kuò)展等指標(biāo),具體指標(biāo)解讀參見后文。
2、指標(biāo)分析:5大類,24小類
下發(fā)標(biāo)準(zhǔn)中共制定了114項(xiàng)指標(biāo),分為五大類,分別是功能要求、可靠性要求、安全要求、服務(wù)要求和兼容要求;在每個(gè)大類中又進(jìn)一步細(xì)分為若干小類,共計(jì)二十四小類。下圖根據(jù)指標(biāo)的大類小類分布情況做了個(gè)比例圖。
3、關(guān)鍵屬性:必選指標(biāo)集中
在下發(fā)標(biāo)準(zhǔn)中,通過指標(biāo)比較星號,區(qū)分是否為必選指標(biāo)。即標(biāo)記星號代表指標(biāo)必須納入采購需求指標(biāo);未標(biāo)記星號則代表指標(biāo)為非必含項(xiàng),由采購人根據(jù)實(shí)際需要自行確定是否包含在采購需求中。從必選指標(biāo)的范圍來看,主要針對服務(wù)能力、兼容要求以及穩(wěn)定運(yùn)行等限定嚴(yán)格,更為強(qiáng)調(diào)其必要性。下圖按照功能子類及子類內(nèi)必選與必選指標(biāo)的分布,加以圖示說明。
4、關(guān)鍵屬性:評分項(xiàng)少之又少
在下發(fā)標(biāo)準(zhǔn)中,還標(biāo)注了那些指標(biāo)是設(shè)置為評分項(xiàng)。標(biāo)記為是,則代表該指標(biāo)采購人可以根據(jù)實(shí)際需要在采購文件中設(shè)為評分項(xiàng);否則則代表該指標(biāo)不能設(shè)為評分項(xiàng)。從標(biāo)準(zhǔn)的114個(gè)指標(biāo)中,能作為評分項(xiàng)的少之又少,目前僅有硬件兼容、供應(yīng)鏈保障、容災(zāi)能力(同城和異地)以及安裝升級中的兼容性(多CPU架構(gòu))做出評分項(xiàng)選擇。可以看出官方盡量減少的評分范圍,僅選擇更為有利于國產(chǎn)化硬件、運(yùn)行安全及服務(wù)保障范疇的指標(biāo)作為評分項(xiàng)。
三、采購需求標(biāo)準(zhǔn):技術(shù)篇(詳解)
下面針對下發(fā)標(biāo)準(zhǔn)的114個(gè)指標(biāo)項(xiàng)加以簡單分析。
1、功能要求
? 安裝與升級
數(shù)據(jù)庫安裝與升級屬于常規(guī)要求,這部分指標(biāo)應(yīng)大體都無問題。需要注意的是升級能力,國產(chǎn)數(shù)據(jù)庫不可避免會面臨功能的修改,因此平滑兼容的升級能力很重要,此外也需要說明升級的功能變化。還有就是安裝升級中的硬件兼容性,即可以支持多種架構(gòu)CPU條件下的安裝,這對于當(dāng)前自主可控的大背景尤為重要。這點(diǎn)也作為的關(guān)鍵評分項(xiàng);但比較奇怪的是未作為必選指標(biāo)。
? 數(shù)據(jù)配置
這部分就是對數(shù)據(jù)庫的各類參數(shù)進(jìn)行配置,包括對常規(guī)參數(shù)以及針對存儲、內(nèi)存方面的特有配置。個(gè)人感覺,目前很多數(shù)據(jù)庫(特別是分布式數(shù)據(jù)庫),都支持不同角色(如存儲節(jié)點(diǎn)、計(jì)算節(jié)點(diǎn)等),因此參數(shù)配置應(yīng)區(qū)分并分列,這樣便于用戶理解和配置。
? SQL 功能
這部分包括數(shù)據(jù)類型、SQL 語句、字符集、操作符、執(zhí)行計(jì)劃等,就是數(shù)據(jù)庫基礎(chǔ)能力。這里面比較受關(guān)注的點(diǎn)一是針對擴(kuò)展數(shù)據(jù)類型的定義、存儲、檢索的支持,隨著用戶場景的復(fù)雜,擴(kuò)展數(shù)據(jù)類型成為一種必然;二是字符集支持,去年也有不少國內(nèi)廠商通過了中國強(qiáng)制字符集標(biāo)準(zhǔn)GB 18030-2022;三是針對 SQL 執(zhí)行計(jì)劃干預(yù)能力,這樣可以有效解決數(shù)據(jù)庫優(yōu)化器能力不足或Bug所導(dǎo)致的執(zhí)行路徑異常,可快速解決用戶問題。
? 數(shù)據(jù)對象
數(shù)據(jù)對象部分,則包括從表、分區(qū)、視圖、索引、序列、觸發(fā)器、存儲過程等。一方面是對這些對象的支持情況,一方面是對這些對象的變更、查看、完整性管理的能力。這其中有幾個(gè)難點(diǎn),一是分布式數(shù)據(jù)庫對于部分對象的不支持(如索引、視圖、庫內(nèi)計(jì)算),這也是很多從集中式數(shù)據(jù)庫遷移到分布式數(shù)據(jù)庫必須面臨的問題;二是對于在線重定義的支持,特別在分布式架構(gòu)、海量規(guī)模情況下尤為重要。
? 事務(wù)能力
標(biāo)準(zhǔn)的 ACID 能力,也是對數(shù)據(jù)庫的基本要求。前兩年在對國產(chǎn)數(shù)據(jù)庫評測時(shí),出現(xiàn)過部分問題,但隨著各廠商產(chǎn)品的完善一般都沒有太大問題。死鎖則是另一個(gè)痛點(diǎn),部分廠商產(chǎn)品還有明顯缺陷。
? 運(yùn)維
運(yùn)維方面包含的內(nèi)容很多,標(biāo)準(zhǔn)把運(yùn)維方面的重點(diǎn)放在信息的獲取、告警方面。強(qiáng)調(diào)了從主機(jī)、系統(tǒng)、實(shí)例、語句多維度獲取數(shù)據(jù)以便于運(yùn)維保障,比提供遠(yuǎn)程運(yùn)維能力以及針對語句的運(yùn)維能力。從現(xiàn)狀來看,分布式架構(gòu)產(chǎn)品存在一定短板,主要是因?yàn)槠浣M件多、受基礎(chǔ)環(huán)境影響大等原因,對信息輸出進(jìn)而診斷的能力顯得尤為重要。很多產(chǎn)品是將信息做了輸出,但如何快速識別、快速定位、快速診斷并進(jìn)而解決問題,還是困擾著很多用戶。這方面確實(shí)可以向如 Oracle 這些老牌數(shù)據(jù)庫產(chǎn)品學(xué)習(xí)。
? 遷移
遷移部分分為兩塊,一是邏輯的遷移(如應(yīng)用及SQL),一是數(shù)據(jù)的遷移。前者強(qiáng)調(diào)通過工具或其他手段降低遷移難度及工作量,加速遷移過程,保障遷移質(zhì)量;后者則是針對數(shù)據(jù)對象結(jié)構(gòu)遷移、數(shù)據(jù)本身遷移問題,需保證遷移前后的數(shù)據(jù)一致是問題關(guān)鍵。此外針對數(shù)據(jù)比對,標(biāo)準(zhǔn)還特意列出了兩條,足見其重要性。很多國內(nèi)產(chǎn)品都提供的生態(tài)工具來支持上述兩種訴求。
? 備份恢復(fù)
備份恢復(fù)領(lǐng)域,標(biāo)準(zhǔn)提出了對數(shù)據(jù)備份、備份集管理、細(xì)粒度、多介質(zhì)支持等能力要求。
? 集群管理
在集群管理方面,分布式與集中式數(shù)據(jù)差異明顯,因此在標(biāo)準(zhǔn)上也提出不同要求。除了支持常規(guī)的集群創(chuàng)建、管理及擴(kuò)展能力(讀寫分離)外,集中式重點(diǎn)強(qiáng)調(diào)了對共享存儲架構(gòu)的支持,這也是國內(nèi)產(chǎn)品之前的短板,通過類似 RAC 的架構(gòu),可以滿足大部分用戶的場景需求。分布式則是強(qiáng)調(diào)了“彈性”。即通過數(shù)據(jù)分布下,通過針對存儲、計(jì)算的擴(kuò)展能力來滿足用戶需求,且這一過程中應(yīng)做到用戶“無感”。
? 工具
好的數(shù)據(jù)庫產(chǎn)品,還需要上下游生態(tài)工具的配合,標(biāo)準(zhǔn)中針對用戶常用的生態(tài)場景提供了工具化的要求。這里覆蓋從數(shù)據(jù)庫開發(fā)、運(yùn)維、優(yōu)化等多種面對不同人群、不同場景的工具。在這方面國內(nèi)很多產(chǎn)品通過生態(tài)兼容方式做了支持,即通過兼容流行開源數(shù)據(jù)庫產(chǎn)品或主流商業(yè)數(shù)據(jù)庫產(chǎn)品的方式快速支持,這也是一條相對的捷徑。
? 圖形化管理
圖形化管理能力,是有效降低產(chǎn)品使用難度,提升易用性的手段。標(biāo)準(zhǔn)中也將常用的圖形化管理需求進(jìn)行了整體,這里重點(diǎn)強(qiáng)調(diào)對運(yùn)維和開發(fā)的支持。這方面國內(nèi)廠商產(chǎn)品也大多提供了此能力,也有部分三方數(shù)據(jù)庫管理廠商也提供了此能力。完善的圖形化管理,將有效降低用戶使用門檻。
2、可靠性要求
? 穩(wěn)定運(yùn)行
穩(wěn)定運(yùn)行是對數(shù)據(jù)庫的基本要求,標(biāo)準(zhǔn)中也提到了。但這部分在落地時(shí)比較難解讀,很難通過一個(gè)具體指標(biāo)來反映數(shù)據(jù)庫的穩(wěn)定運(yùn)行能力,更多是通過之前長期運(yùn)行的實(shí)踐案例加以說明。
? 故障切換
在故障切換角度,標(biāo)準(zhǔn)提出了對快速切換能力及切換時(shí)業(yè)務(wù)受損情況做出要求,但這里未明確具體的故障切換指標(biāo),如 RTO、RPO 的情況,下文在容災(zāi)部分進(jìn)行了詳細(xì)的說明。
? 容災(zāi)能力
在容災(zāi)方面,是標(biāo)準(zhǔn)提出較為嚴(yán)格的部分。針對分布式和集中式數(shù)據(jù)庫提出了基于副本復(fù)制、日志復(fù)制的具體要求,來保證容災(zāi)能力。對于實(shí)例級的容災(zāi)要求,明確提出了RPO=0、RTO<30秒的明確指標(biāo)。針對容災(zāi)方式,同城和異地都提出了明確要求,并作為評分項(xiàng)強(qiáng)調(diào)。這也是保證整體可用性的底線要求。
? 容錯(cuò)性
針對不同故障情況,標(biāo)準(zhǔn)提出了具體要求。例如針對處理邏輯異常、網(wǎng)絡(luò)異常、系統(tǒng)異常、存儲異常等都有一定要求。針對發(fā)生故障時(shí),還提出了檢測及恢復(fù)的要求。
3、兼容要求
? 軟件兼容
多種部署平臺,對用戶來說可以有更多的選擇,因此對未來用戶可能選擇的云化部署做了要求。
? 硬件兼容
在硬件兼容方面,重點(diǎn)提及了對CPU的支持,即支持多種不同框架的CPU。這對于國產(chǎn)化硬件適配具備重要意義,也作為評分項(xiàng)強(qiáng)調(diào)下。目前國內(nèi)很多產(chǎn)品都在做對國產(chǎn)硬件(特別是CPU)的適配兼容驗(yàn)證工作。
? 標(biāo)準(zhǔn)兼容
對開發(fā)者而言的數(shù)據(jù)庫連接標(biāo)準(zhǔn)。
4、服務(wù)要求
? 服務(wù)周期為了解決用戶擔(dān)心的服務(wù)時(shí)限問題,標(biāo)準(zhǔn)明確給出了產(chǎn)品維護(hù)、服務(wù)、延伸服務(wù)、安全服務(wù)及最小保障期要求。通過對服務(wù)周期的多方位要求,可保障產(chǎn)品在相當(dāng)長時(shí)間內(nèi)可以持續(xù)為用戶服務(wù),打消用戶的疑慮。但這里有個(gè)擔(dān)心,很多國內(nèi)產(chǎn)品是比較新的,尚沒有經(jīng)歷一個(gè)完整周期,如何保障這一點(diǎn)很多還是依靠用戶的聲明而已。
? 交付方式
提供離線介質(zhì)的交付形式。
? 供應(yīng)鏈與服務(wù)保障
在服務(wù)保障方面,特別提及了應(yīng)用鏈和服務(wù)保障安全,并作為評分項(xiàng)強(qiáng)調(diào)。標(biāo)準(zhǔn)中詳細(xì)說明了需要提供的服務(wù)支持方式、時(shí)效性、團(tuán)隊(duì)組織、開源商業(yè)問題等。這些核心都是支持“兜底”能力,只有這樣用戶才可放心使用。特別是針對開源部分,還提出了對安全性和知識產(chǎn)品的審核要求。此外,其他服務(wù)形式如定制、駐場等,也做了標(biāo)準(zhǔn)說明。
5、安全要求
? 基本要求
安全部分的基本要求,提到需滿足安全評測要求。
? 基礎(chǔ)安全
基礎(chǔ)安全部分,則提出了三權(quán)分離、漏洞管理機(jī)制及身份認(rèn)證等問題。
? 增強(qiáng)安全
增強(qiáng)安全部分,則相對要求寬泛,覆蓋了防篡改、全密態(tài)、加密、脫敏及數(shù)據(jù)可恢復(fù)能力-閃回的要求。很多數(shù)據(jù)庫產(chǎn)品的這部分能力是通過第三方平臺來完成,自己尚不具備這一能力。