CN114116691B 數(shù)據(jù)導入校驗方法、系統(tǒng)、裝置及計算機可讀介質(zhì) (浪潮軟件股份有限公司)_第1頁
CN114116691B 數(shù)據(jù)導入校驗方法、系統(tǒng)、裝置及計算機可讀介質(zhì) (浪潮軟件股份有限公司)_第2頁
CN114116691B 數(shù)據(jù)導入校驗方法、系統(tǒng)、裝置及計算機可讀介質(zhì) (浪潮軟件股份有限公司)_第3頁
CN114116691B 數(shù)據(jù)導入校驗方法、系統(tǒng)、裝置及計算機可讀介質(zhì) (浪潮軟件股份有限公司)_第4頁
CN114116691B 數(shù)據(jù)導入校驗方法、系統(tǒng)、裝置及計算機可讀介質(zhì) (浪潮軟件股份有限公司)_第5頁
已閱讀5頁,還剩20頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

(19)國家知識產(chǎn)權(quán)局(12)發(fā)明專利(65)同一申請的已公布的文獻號(73)專利權(quán)人浪潮軟件股份有限公司浪潮科技園(74)專利代理機構(gòu)濟南信達專利事務所有限公司37100專利代理師潘悅梅數(shù)據(jù)導入校驗方法、系統(tǒng)、裝置及計算機可讀介質(zhì)本發(fā)明公開了數(shù)據(jù)導入校驗方法、系統(tǒng)、裝置及計算機可讀介質(zhì),屬于數(shù)據(jù)入庫技術(shù)領(lǐng)域,要解決的技術(shù)問題為如何實現(xiàn)數(shù)據(jù)導入的完整性校驗,并提升數(shù)據(jù)的可靠性和系統(tǒng)可用性。約束和管理約束構(gòu)建數(shù)據(jù)校驗模型,在Es搜索引擎中建立與數(shù)據(jù)校驗模型對應的物理索引,并同步生成與對應的excel模板文件;S300、將符合約束的excel數(shù)據(jù)保存至Es搜索引擎,將不符合約束的excel數(shù)據(jù)作為失敗數(shù)據(jù)保存并提示檢測失據(jù)插入數(shù)據(jù)庫,將失敗數(shù)據(jù)進行excel導出并進行修正,對修正后識失敗數(shù)據(jù)執(zhí)行步驟輸出數(shù)據(jù)集1輸出數(shù)據(jù)集221.數(shù)據(jù)導入校驗方法,其特征在于包括如下步驟:S100、配置基本約束和關(guān)聯(lián)約束,所述基本約束用于對單表中字段進行約束,所述關(guān)聯(lián)約束與Es搜索引擎配合,用于基于關(guān)聯(lián)表之間的表結(jié)構(gòu)關(guān)系確定所述關(guān)聯(lián)表在Es搜索引擎中的索引關(guān)系,并根據(jù)索引關(guān)系將表數(shù)據(jù)依序?qū)隕s搜索引擎中;S200、基于基本約束和關(guān)聯(lián)約束構(gòu)建數(shù)據(jù)校驗模型,在Es搜索引擎中建立與所述數(shù)據(jù)校驗模型對應的物理索引,并同步生成與所述數(shù)據(jù)校驗模型對應的excel模板文件,所述數(shù)據(jù)校驗模型能夠?qū)С鰁xcel文件并能夠?qū)xcel文件保存導入使用,所述excel模板文件用于填寫數(shù)據(jù)并導入對應的數(shù)據(jù)校驗模型;S300、將數(shù)據(jù)填寫至excel模板文件,得到待檢驗excel文件,并將待檢驗excel文件導入對應的數(shù)據(jù)校驗模型進行基本約束和關(guān)聯(lián)約束校驗,將待檢驗excel文件中符合約束的excel數(shù)據(jù)保存至Es搜索引擎,將待檢驗excel文件中不符合約束的excel數(shù)據(jù)作為失敗數(shù)據(jù)保存并提示檢測失敗原因;S400、將保存于Es搜索引擎中的excle數(shù)據(jù)插入數(shù)據(jù)庫,將失敗數(shù)據(jù)進行excel導出并進行修正,對修正后識失敗數(shù)據(jù)執(zhí)行步驟S300-步驟S400。2.根據(jù)權(quán)利要求1所述的數(shù)據(jù)導入校驗方法,其特征在于所述基本約束包括:基礎(chǔ)約束,所述基礎(chǔ)約束用于對單表中單個字段進行約束,用于通過表結(jié)構(gòu)分析,對需內(nèi)容約束,所述內(nèi)容約束用于設(shè)置表中字段的內(nèi)容格式,包括時間格式、數(shù)字格式、和數(shù)據(jù)范圍。3.根據(jù)權(quán)利要求1所述的數(shù)據(jù)導入校驗方法,其特征在于基于POI程序通過如下步驟將待校驗數(shù)據(jù)導入所述數(shù)據(jù)校驗模型:通過excel模板文件與數(shù)據(jù)校驗模型之間的對應關(guān)系,為待檢驗excel文件匹配對應的數(shù)據(jù)校驗模型;對待校驗excel文件的sheet頁進行提取,以將待校驗excel文件每個表進行單獨分對excel數(shù)據(jù)進行分頁提取,以保證快速高效的將excel數(shù)據(jù)導入到對應的數(shù)據(jù)校驗模型中。4.根據(jù)權(quán)利要求1-3任一項所述的數(shù)據(jù)導入校驗方法,其特征在于所述數(shù)據(jù)校驗模型Excel模板文件通過文件名和與其對應的數(shù)據(jù)校驗模型的模型標識進行匹配。約束配置模塊,所述約束配置模塊用于配置基本約束和關(guān)聯(lián)約束,所述基本約束用于對單表中字段進行約束,所述關(guān)聯(lián)約束與Es搜索引擎配合,用于基于關(guān)聯(lián)表之間的表結(jié)構(gòu)關(guān)系確定所述關(guān)聯(lián)表在Es搜索引擎中的索引關(guān)系,并根據(jù)索引關(guān)系將表數(shù)據(jù)依序?qū)隕s搜索引擎中;模型構(gòu)建模塊,所述模型構(gòu)建模塊用于基于基本約束和關(guān)聯(lián)約束構(gòu)建數(shù)據(jù)校驗模型,在Es搜索引擎中建立與所述數(shù)據(jù)校驗模型對應的物理索引,并同步生成與所述數(shù)據(jù)校驗模型對應的excel模板文件,所述數(shù)據(jù)校驗模型能夠?qū)С鰁xcel文件并能夠?qū)xcel文件保存導入使用,所述excel模板文件用于填寫數(shù)據(jù)并導入對應的數(shù)據(jù)校驗模型;3數(shù)據(jù)校驗模塊,所述數(shù)據(jù)校驗模塊用于將數(shù)據(jù)填寫至excel模板文件,得到待檢驗excel文件,并將待檢驗excel文件導入對應的數(shù)據(jù)校驗模型進行基本約束和關(guān)聯(lián)約束校驗,將待檢驗excel文件中符合約束的excel數(shù)據(jù)保存至Es搜索引擎,將待檢驗excel文件中不符合約束的excel數(shù)據(jù)作為失敗數(shù)據(jù)保存并提示檢測失敗原因;數(shù)據(jù)入庫模塊,所述數(shù)據(jù)入庫模塊用于將保存于Es搜索引擎中的excle數(shù)據(jù)插入數(shù)據(jù)庫,將失敗數(shù)據(jù)進行excel導出并進行修正,并對修正后識失敗數(shù)據(jù)導入數(shù)據(jù)校驗模塊。6.根據(jù)權(quán)利要求5所述的數(shù)據(jù)導入校驗系統(tǒng),其特征在于所述基本約束包括:基礎(chǔ)約束,所述基礎(chǔ)約束用于對單表中單個字段進行約束,用于通過表結(jié)構(gòu)分析,對需要導入的數(shù)據(jù)表中的字段的基礎(chǔ)約束進行提取,包括非空約束、唯一約束、和主鍵約內(nèi)容約束,所述內(nèi)容約束用于設(shè)置表中字段的內(nèi)容格式,包括時間格式、數(shù)字格式、和數(shù)據(jù)范圍。7.根據(jù)權(quán)利要求5所述的數(shù)據(jù)導入校驗系統(tǒng),其特征在于所述數(shù)據(jù)校驗模塊用于基于POI程序通過如下步驟將待校驗excel文件導入對應的數(shù)據(jù)校驗模型:通過excel模板文件與數(shù)據(jù)校驗模型之間的對應關(guān)系,為待檢驗excel文件匹配對應的數(shù)據(jù)校驗模型;對待校驗excel文件的sheet頁進行提取,以將待校驗excel文件每個表進行單獨分對excel數(shù)據(jù)進行分頁提取,以保證快速高效的將excel數(shù)據(jù)導入到對應的數(shù)據(jù)校驗模型中。8.根據(jù)權(quán)利要求5-7任一項所述的數(shù)據(jù)導入校驗系統(tǒng),其特征在于所述數(shù)據(jù)校驗模型Excel模板文件通過文件名和與其對應的數(shù)據(jù)校驗模型的模型標識進行匹配。所述至少一個存儲器,用于存儲機器可讀程序;所述至少一個處理器,用于調(diào)用所述機器可讀程序,執(zhí)行權(quán)利要求1至4中任一所述的方法。10.計算機可讀介質(zhì),其特征在于,所述計算機可讀介質(zhì)上存儲有計算機指令,所述計算機指令在被處理器執(zhí)行時,使所述處理器執(zhí)行權(quán)利要求1至4任一所述的方法。4數(shù)據(jù)導入校驗方法、系統(tǒng)、裝置及計算機可讀介質(zhì)技術(shù)領(lǐng)域[0001]本發(fā)明涉及數(shù)據(jù)入庫技術(shù)領(lǐng)域,具體地說是數(shù)據(jù)導入校驗方法、系統(tǒng)、裝置及計算機可讀介質(zhì)。背景技術(shù)[0002]在政務服務產(chǎn)品領(lǐng)域,存在很多需要將歷史數(shù)據(jù)或者無法對接的系統(tǒng)數(shù)據(jù)進行數(shù)據(jù)導入的場景,但是每個業(yè)務系統(tǒng)都有自己的業(yè)務規(guī)則,這就導致導入的數(shù)據(jù)存在一定的約束要求,不然導入到數(shù)據(jù)庫也是存在數(shù)據(jù)不合格的情況。[0003]針對上述出現(xiàn)的情況,并考慮到業(yè)務場景的數(shù)據(jù)關(guān)聯(lián)性強,格式嚴格,數(shù)據(jù)量龐大等要求,在數(shù)據(jù)導入的時候采用合適的模型進行數(shù)據(jù)檢驗是必然的,并且針對導入數(shù)據(jù)量大的情況需要做到適配。[0004]數(shù)據(jù)庫的完整性是指數(shù)據(jù)的正確性和相容性,數(shù)據(jù)的完整性控制是為了防止數(shù)據(jù)庫中存在不符合語義的數(shù)據(jù),也就是防止出現(xiàn)不正確的數(shù)據(jù)。目前在數(shù)據(jù)庫進行數(shù)據(jù)檢驗時,解決數(shù)據(jù)完整性的約束機制主要有三種方法,前端應用控制、數(shù)據(jù)庫觸發(fā)器和聲明約[0005]應用控制指的是在開發(fā)者應用中對輸入的數(shù)據(jù)進行數(shù)據(jù)格式校驗,包括數(shù)據(jù)的類型和內(nèi)容,在插入時通過程序?qū)?shù)據(jù)的每個字段進行校驗避免臟數(shù)據(jù)的插入。數(shù)據(jù)庫觸發(fā)器指的是通過定義觸發(fā)條件和編寫觸發(fā)后執(zhí)行語句,來實現(xiàn)對數(shù)據(jù)表操作的各種約束,可以引用其它表的字段。觸發(fā)器可以引用其他表,可以包含復雜的SQL語句。當對一個表進行修改時,通過觸發(fā)器按照相關(guān)業(yè)務規(guī)則去修改其他的表,一旦發(fā)現(xiàn)修改過程中出現(xiàn)違背業(yè)務規(guī)則的情況,可以通過回滾語句,將數(shù)據(jù)恢復到修改前的狀態(tài)。聲明約束主要包含三個方面,實體完整性校驗即數(shù)據(jù)主鍵不為空且唯一,參照性完整性即表之間關(guān)聯(lián)主外鍵的校驗,用戶自定義完整性即聲明列數(shù)據(jù)需滿足語義要求(如數(shù)值滿足某范圍或者非空)。[0006]在數(shù)據(jù)庫中設(shè)置較多的約束會在一定程度上影響數(shù)據(jù)庫的性能,真實環(huán)境很少應用,更多是放到程序邏輯中去進行處理,有可能在面對業(yè)務變更或是系統(tǒng)擴展時,數(shù)據(jù)庫約束會使得處理不夠方便。[0007]基于上述分析,結(jié)合政務服務系統(tǒng)應用場景,如何實現(xiàn)數(shù)據(jù)導入的完整性校驗,并提升數(shù)據(jù)的可靠性和系統(tǒng)可用性,是需要解決的技術(shù)問題。發(fā)明內(nèi)容[0008]本發(fā)明的技術(shù)任務是針對以上不足,提供數(shù)據(jù)導入校驗方法、系統(tǒng)、裝置及計算機可讀介質(zhì),來解決如何實現(xiàn)數(shù)據(jù)導入的完整性校驗,并提升數(shù)據(jù)的可靠性和系統(tǒng)可用性的技術(shù)問題。[0010]S100、配置基本約束和關(guān)聯(lián)約束,所述基本約束用于對單表中字段進行約束,所述關(guān)聯(lián)約束與Es搜索引擎配合,用于基于關(guān)聯(lián)表之間的表結(jié)構(gòu)關(guān)系確定所述關(guān)聯(lián)表在Es搜索5引擎中的索引關(guān)系,并根據(jù)索引關(guān)系將表數(shù)據(jù)依序?qū)隕s搜索引擎中;[0011]S200、基于基本約束和管理約束構(gòu)建數(shù)據(jù)校驗模型,在Es搜索引擎中建立與所述數(shù)據(jù)校驗模型對應的物理索引,并同步生成與所述數(shù)據(jù)校驗模型對應的excel模板文件,所述數(shù)據(jù)校驗模型能夠?qū)С鰁xcel文件并能夠?qū)xcel文件保存導入使用,所述excel模板文件用于填寫數(shù)據(jù)并導入對應的數(shù)據(jù)校驗模型;[0012]S300、將數(shù)據(jù)填寫至excel模板文件,得到待檢驗excel文件,并將待檢驗excel文件導入對應的數(shù)據(jù)校驗模型進行基本約束和關(guān)聯(lián)約束,將待檢驗excel文件中符合約束的excel數(shù)據(jù)保存至Es搜索引擎,將待檢驗excel文件中不符合約束的excel數(shù)據(jù)作為失敗數(shù)據(jù)保存并提示檢測失敗原因;[0013]S400、將保存于Es搜索引擎中的excle數(shù)據(jù)插入數(shù)據(jù)庫,將失敗數(shù)據(jù)進行excel導出并進行修正,對修正后識失敗數(shù)據(jù)執(zhí)行步驟S300-步驟S400。[0015]基礎(chǔ)約束,所述基礎(chǔ)約束用于對單表中單個字段進行約束,用于通過表結(jié)構(gòu)分析,對需要導入的數(shù)據(jù)表中的字段的基礎(chǔ)約束進行提取,包括非空約束、唯一約束、和主鍵約[0016]內(nèi)容約束,所述內(nèi)容約束用于設(shè)置表中字段的內(nèi)容格式,包括時間格式、數(shù)字格[0017]作為優(yōu)選,基于POI程序通過如下步驟將待校驗數(shù)據(jù)導入所述數(shù)據(jù)校驗模型:[0018]通過excel模板文件與數(shù)據(jù)校驗模型之間的對應關(guān)系,為待檢驗excel文件匹配對應的數(shù)據(jù)校驗模型;[0019]對待校驗excel文件的sheet頁進行提取,以將待校驗excel文件每個表進行單獨[0020]對excel數(shù)據(jù)進行分頁提取,以保證快速高效的將excel數(shù)據(jù)導入到對應的數(shù)據(jù)校驗模型中。[0021]作為優(yōu)選,所述數(shù)據(jù)校驗模型的格式包括模型名稱、模型標識、模型創(chuàng)建時間、模[0022]Excel模板文件通過文件名和與其對應的數(shù)據(jù)校驗模型的模型標識進行匹配。[0024]約束配置模塊,所述約束配置模塊用于配置基本約束和關(guān)聯(lián)約束,所述基本約束用于對單表中字段進行約束,所述關(guān)聯(lián)約束與Es搜索引擎配合,用于基于關(guān)聯(lián)表之間的表結(jié)構(gòu)關(guān)系確定所述關(guān)聯(lián)表在Es搜索引擎中的索引關(guān)系,并根據(jù)索引關(guān)系將表數(shù)據(jù)依序?qū)隕s搜索引擎中;[0025]模型構(gòu)建模塊,所述模型構(gòu)建模塊用于基于基本約束和管理約束構(gòu)建數(shù)據(jù)校驗模型,在Es搜索引擎中建立與所述數(shù)據(jù)校驗模型對應的物理索引,并同步生成與所述數(shù)據(jù)校驗模型對應的excel模板文件,所述數(shù)據(jù)校驗模型能夠?qū)С鰁xcel文件并能夠?qū)xcel文件保存導入使用,所述excel模板文件用于填寫數(shù)據(jù)并導入對應的數(shù)據(jù)校驗模型;[0026]數(shù)據(jù)校驗模塊,所述數(shù)據(jù)校驗模塊用于將數(shù)據(jù)填寫至excel模板文件,得到待檢驗excel文件,并將待檢驗excel文件導入對應的數(shù)據(jù)校驗模型進行基本約束和關(guān)聯(lián)約束,將待檢驗excel文件中符合約束的excel數(shù)據(jù)保存至Es搜索引擎,將待檢驗excel文件中不符6合約束的excel數(shù)據(jù)作為失敗數(shù)據(jù)保存并提示檢測失敗原因;[0027]數(shù)據(jù)入庫模塊,所述數(shù)據(jù)入庫模塊用于將保存于Es搜索引擎中的excle數(shù)據(jù)插入數(shù)據(jù)庫,將失敗數(shù)據(jù)進行excel導出并進行修正,并對修正后識失敗數(shù)據(jù)導入數(shù)據(jù)校驗模[0029]基礎(chǔ)約束,所述基礎(chǔ)約束用于對單表中單個字段進行約束,用于通過表結(jié)構(gòu)分析,對需要導入的數(shù)據(jù)表中的字段的基礎(chǔ)約束進行提取,包括非空約束、唯一約束、和主鍵約[0030]內(nèi)容約束,所述內(nèi)容約束用于設(shè)置表中字段的內(nèi)容格式,包括時間格式、數(shù)字格[0031]作為優(yōu)選,所述數(shù)據(jù)校驗模塊用于基于POI程序通過如下步驟將待校驗excel文件導入對應的數(shù)據(jù)校驗模型:[0032]通過excel模板文件與數(shù)據(jù)校驗模型之間的對應關(guān)系,為待檢驗excel文件匹配對應的數(shù)據(jù)校驗模型;[0033]對待校驗excel文件的sheet頁進行提取,以將待校驗excel文件每個表進行單獨分sheet頁保存;[0034]對excel數(shù)據(jù)進行分頁提取,以保證快速高效的將excel數(shù)據(jù)導入到對應的數(shù)據(jù)校驗模型中。[0035]作為優(yōu)選,所述數(shù)據(jù)校驗模型的格式包括模型名稱、模型標識、模型創(chuàng)建時間、模[0036]Excel模板文件通過文件名和與其對應的數(shù)據(jù)校驗模型的模型標識進行匹配。[0038]所述至少一個存儲器,用于存儲機器可讀程序;[0039]所述至少一個處理器,用于調(diào)用所述機器可讀程序,執(zhí)行第一方面任一所述的方[0040]第四方面,本發(fā)明的計算機可讀介質(zhì),所述計算機可讀介質(zhì)上存儲有計算機指令,所述計算機指令在被處理器執(zhí)行時,使所述處理器執(zhí)行第一方面任一項任一所述的方法。[0042]1、在高并發(fā)環(huán)境下響應速度快,能快速的對數(shù)據(jù)進行數(shù)據(jù)完整性約束檢測,通過數(shù)據(jù)校驗模型和Es搜索引擎配合解耦了前端操作和部分業(yè)務邏輯的處理,簡化了請求的業(yè)務處理過程,在根本上提高了請求的響應速度;[0043]2、模型依托于elasticsearch搜索引擎對數(shù)據(jù)進行快速查詢校驗,提升模型可靠性和穩(wěn)定性,在數(shù)據(jù)的落地上考慮了數(shù)據(jù)的準確性以及數(shù)據(jù)庫的穩(wěn)定性,保證了系統(tǒng)使用以及服務提供的高可靠性及高可用性;[0044]3、數(shù)據(jù)通過集成的POI程序進行數(shù)據(jù)導入,適配wps,office等多個版本的文件格[0045]4、數(shù)據(jù)通過excel文件進行數(shù)據(jù)導入導出,提升可操作性及實現(xiàn)數(shù)據(jù)可視化處理。7附圖說明[0046]為了更清楚地說明本發(fā)明實施例中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域的普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。[0047]下面結(jié)合附圖對本發(fā)明進一步說明。[0048]圖1為實施例1數(shù)據(jù)導入校驗方法的流程框圖;[0049]圖2為實施例1數(shù)據(jù)導入校驗方法中Es搜索引擎的架構(gòu)框圖[0050]圖3為實施例1數(shù)據(jù)導入校驗方法中Excel模板文件的格式示意圖;[0051]圖4為實施例1數(shù)據(jù)導入校驗方法中約束檢測流程框圖;[0052]圖5為實施例1數(shù)據(jù)導入校驗方法中失敗數(shù)據(jù)的格式示意圖。具體實施方式[0053]下面結(jié)合附圖和具體實施例對本發(fā)明作進一步說明,以使本領(lǐng)域的技術(shù)人員可以更好地理解本發(fā)明并能予以實施,但所舉實施例不作為對本發(fā)明的限定,在不沖突的情況下,本發(fā)明實施例以及實施例中的技術(shù)特征可以相互結(jié)合。[0054]本發(fā)明實施例提供數(shù)據(jù)導入校驗方法、系統(tǒng)、裝置及計算機可讀介質(zhì),用于解決如何實現(xiàn)數(shù)據(jù)導入的完整性校驗,并提升數(shù)據(jù)的可靠性和系統(tǒng)可用性的技術(shù)問題。[0055]實施例1:[0057]S100、配置基本約束和關(guān)聯(lián)約束,基本約束用于對單表中字段進行約束,關(guān)聯(lián)約束與Es搜索引擎配合,用于基于關(guān)聯(lián)表之間的表結(jié)構(gòu)關(guān)系確定所述關(guān)聯(lián)表在Es搜索引擎中的索引關(guān)系,并根據(jù)索引關(guān)系將表數(shù)據(jù)依序?qū)隕s搜索引擎中;[0058]S200、基于基本約束和管理約束構(gòu)建數(shù)據(jù)校驗模型,在Es搜索引擎中建立與數(shù)據(jù)校驗模型對應的物理索引,并同步生成與數(shù)據(jù)校驗模型對應的excel模板文件,數(shù)據(jù)校驗模型能夠?qū)С鰁xcel文件并能夠?qū)xcel文件保存導入使用,excel模板文件用于填寫數(shù)據(jù)并導入對應的數(shù)據(jù)校驗模型;[0059]S300、將數(shù)據(jù)填寫至excel模板文件,得到待檢驗excel文件,并將待檢驗excel文件導入對應的數(shù)據(jù)校驗模型進行基本約束和關(guān)聯(lián)約束,將待檢驗excel文件中符合約束的excel數(shù)據(jù)保存至Es搜索引擎,將待檢驗excel文件中不符合約束的excel數(shù)據(jù)作為失敗數(shù)據(jù)保存并提示檢測失敗原因;[0060]S400、將保存于Es搜索引擎中的excle數(shù)據(jù)插入數(shù)據(jù)庫,將失敗數(shù)據(jù)進行excel導出并進行修正,對修正后識失敗數(shù)據(jù)執(zhí)行步驟S300-步驟S400。[0061]Es(英文全稱:Elasticsearch)搜索引擎(以下簡稱Es),是一個基于Lucene的搜索服務器。它提供了一個分布式多用戶能力的全文搜索引擎,基于RESTfulweb接口。Elasticsearch是用Java語言開發(fā)的,并作為Apache許可條款下的開放源碼發(fā)布,是一種流[0062]Gateway,代表ES索引的持久化存儲方式。在Gateway中,ES默認先把索引存儲8存中,然后當內(nèi)存滿的時候,再持久化到Gateway里。當ES集群關(guān)閉或重啟的時候,它就會從[0063]DistributedLuceneDirectory,它是Lucene里的一些列索引文件組成的目錄。它負責管理這些索引文件。包括數(shù)據(jù)的讀取、寫入,以及索引的添加和合并等。River,代表是數(shù)據(jù)源。是以插件的形式存在于ES中。[0064]Mapping,映射的意思,非常類似于靜態(tài)語言中的數(shù)據(jù)類型。比如我們聲明一個int類型的變量,那以后這個變量只能存儲int類型的數(shù)據(jù)。比如我們聲明一個double類型的mapping字段,則只能存儲double類型的數(shù)據(jù)。[0065]SearchMoudle,搜索模塊,支持搜索的一些常用操作,IndexMoudle,索引模塊,支持索引的一些常用操作Disvcovery,主要是負責集群的master節(jié)點發(fā)現(xiàn)。比如某個節(jié)點突然離開或進來的情況,進行一個分片重新分片等。這里有個發(fā)現(xiàn)機制。RESTfulStyleAPI,通過RESTful方式來實現(xiàn)API編程,3rdplugins,代表第三方插件。Java(Netty)是開發(fā)[0066]對于POI文檔導的OLE2復合文檔格式(OLE2)處理各種文件格式的開源項目。簡而言之,您可以使用Java讀寫MSExcel文件,可以使用Java讀寫MSWord和MSPowerPoint文件,分為一下幾個模塊。[0067]HSSF-提供讀寫MicrosoftExcelXLS格式(MicrosoftExcel97(-2003))檔案的功能。[0068]XSSF—提供讀寫MicrosoftExcel00XMLXLSX格式(MicrosoftExcelXML)檔案的功能。[0069]SXSSF—提供低內(nèi)存占用量讀寫MicrosoftExcel00XMLXLSX格式檔案的功能。的功能。的功能。[0072]HSLF/XSLF—提供讀寫MicrosoftPowerPoint格式檔案的功能。[0073]HDGF/XDGF—提供讀MicrosoftVisio格式檔案的功能。[0074]HPBF—提供讀MicrosoftPublisher格式檔案的功能。[0075]HSMF—提供讀MicrosoftOutlook格式檔案的功能。[0076]本實施例為建立數(shù)據(jù)校驗模型,需要配置建立基本約束和關(guān)聯(lián)約束,基本數(shù)據(jù)包括基礎(chǔ)約束和內(nèi)容約束。[0077]基礎(chǔ)約束主要是針對單表中單個字段的約束,通過表結(jié)構(gòu)分析,對需要導入的數(shù)據(jù)表中的字段的基礎(chǔ)約束進行提取,包括非空(NOTNULL)約束、唯一(UNIQUE)約束、主鍵(PRIMARYKEY)約束三大類,這些數(shù)據(jù)通過連接數(shù)據(jù)庫就可以獲取到,不需要人為控制。[0078]內(nèi)容約束主要是去設(shè)置表中字段的內(nèi)容格式(CHECK),包括時間格式,數(shù)字格式,數(shù)據(jù)范圍等。[0079]以上兩種約束都是簡單的單表約束,在模型中的保存格式為:9表名字段名約束類型約束內(nèi)容內(nèi)容內(nèi)容Check(男,女)內(nèi)容在Es中的索引,將表數(shù)據(jù)按照索引關(guān)系按照順序?qū)雃s,這樣可以實現(xiàn)數(shù)據(jù)的快速關(guān)聯(lián)查表名字段名關(guān)聯(lián)字段Tablel.idTablel.idTable2.id_model:test_moodel//模型名稱id:0a12dla212dfasfd//模型標識_user:admin_date:2021-09-01//時間_remark:test_moodel//描述f_name:id_type:base]_link:[//關(guān)聯(lián)約束{_table:table2_name:biz_id_link:tablel_check:id][0087]步驟S300中,通過poi程序處理對已經(jīng)填寫的excel數(shù)據(jù)進行導入,導入的過程分11為三個步驟,首先是確定該excel對應的模型,這個目前是通過文件名對應模型id進行匹配。保證導入的excel格式符合模板的要求并且該模型成立,其次是對excel的sheet頁進行提取,因為多表情況下需要將數(shù)據(jù)每個表進行單獨分sheet頁保存,最后是對數(shù)據(jù)進行分頁提取,保證快速高效的把數(shù)據(jù)導入到模型中去,Poi能夠支持10w+的數(shù)據(jù)一次性處理,避免數(shù)據(jù)包過大對模型造成壓力。Excel模板的格式如圖3所示。[0088]數(shù)據(jù)校驗模型對導入的數(shù)據(jù)首先進行基礎(chǔ)約束和內(nèi)容約束的檢測,檢測通過之后再通過es進行關(guān)聯(lián)比對查詢,通過關(guān)聯(lián)關(guān)系先后進行檢驗,如果符合要求的就直接進入es里面進行保存,對不符合要求的數(shù)據(jù)進行保存并提示檢測失敗的原因,在所有的數(shù)據(jù)都檢測完成之后,將es中檢測完整符合要求的進行數(shù)據(jù)庫的數(shù)據(jù)插入,不符合的數(shù)據(jù)進行excel導出讓操作人整改。具體檢測流程圖如圖4,導出的excel格式如圖5所示。[0089]本實施例的方法可應用于政務服務,在數(shù)據(jù)導入過程中對數(shù)據(jù)進行智能化檢測。[0091]本發(fā)明數(shù)據(jù)導入校驗系統(tǒng),包括約束配置模塊、模型構(gòu)建模塊、數(shù)據(jù)校驗模塊以及數(shù)據(jù)入庫模塊,約束配置模塊用于配置基本約束和關(guān)聯(lián)約束,所述基本約束用于對單表中字段進行約束,所述關(guān)聯(lián)約束與Es搜索引擎配合,用于基于關(guān)聯(lián)表之間的表結(jié)構(gòu)關(guān)系確定所述關(guān)聯(lián)表在Es搜索引擎中的索引關(guān)系,并根據(jù)索引關(guān)系將表數(shù)據(jù)依序?qū)隕s搜索引擎中;模型構(gòu)建模塊用于基于基本約束和管理約束構(gòu)建數(shù)據(jù)校驗模型,在Es搜索引擎中建立與所述數(shù)據(jù)校驗模型對應的物理索引,并同步生成與所述數(shù)據(jù)校驗模型對應的excel模板文件,所述數(shù)據(jù)校驗模型能夠?qū)С鰁xcel文件并能夠?qū)xcel文件保存導入使用,所述excel模板文件用于填寫數(shù)據(jù)并導入對應的數(shù)據(jù)校驗模型;數(shù)據(jù)校驗模塊用于將數(shù)據(jù)填寫至excel模板文件,得到待檢驗excel文件,并將待檢驗excel文件導入對應的數(shù)據(jù)校驗模型進行基本約束和關(guān)聯(lián)約束,將待檢驗excel文件中符合約束的excel數(shù)據(jù)保存至Es搜索引擎,將待檢驗excel文件中不符合約束的excel數(shù)據(jù)作為失敗數(shù)據(jù)保存并提示檢測失敗原因;數(shù)據(jù)入庫模塊用于將保存于Es搜索引擎中的excle數(shù)據(jù)插入數(shù)據(jù)庫,將失敗數(shù)據(jù)進行excel導出并進行修正,并對修正后識失敗數(shù)據(jù)導入數(shù)據(jù)校驗模塊。[0092]本實施例中基本約束包括基礎(chǔ)約束和內(nèi)容約束,基礎(chǔ)約束用于對單表中單個字段進行約束,用于通過表結(jié)構(gòu)分析,對需要導入的數(shù)據(jù)表中的字段的基礎(chǔ)約束進行提取,包括[0093]數(shù)據(jù)校驗模塊用于基于POI程序通過如下步驟將待校驗excel文件導入對應的數(shù)據(jù)校驗模型:首先是確定該excel對應的模型,這個目前是通過文件名對應模型id進行匹配。保證導入的excel格式符合模板的要求并且該模型成立,其次是對excel的sheet頁進行提取,因為多表情況下需要將數(shù)據(jù)每個表進行單獨分sheet頁保存,最后是對數(shù)據(jù)進行分頁提取,保證快速高效的把數(shù)據(jù)導入到模型中去,Poi能夠支持10w+的數(shù)據(jù)一次性處理,避免數(shù)據(jù)包過大對模型造成壓力。[0094]數(shù)據(jù)校驗模塊通過數(shù)據(jù)校驗模型對導入的數(shù)據(jù)首先進行基礎(chǔ)約束和內(nèi)容約束的檢測,檢測通過之后再通過es進行關(guān)聯(lián)比對查詢,通過關(guān)聯(lián)關(guān)系先后進行檢驗,如果符合要求的就直接進入es里面進行保存,對不符合要求的數(shù)據(jù)進行保存并提示檢測失敗的原因,在所有的數(shù)據(jù)都檢測完成之后,將es中檢測完整符合要求的進行數(shù)據(jù)庫的數(shù)據(jù)插入,不符合的數(shù)據(jù)進行excel導出讓操作人整改。[0095]本實施例的數(shù)據(jù)導入校驗系統(tǒng)可執(zhí)行實施例公開的方法,基于數(shù)據(jù)約束關(guān)系對導入數(shù)據(jù)庫的數(shù)據(jù)進行校驗。[0097]本發(fā)明的裝置,包括:至少一個存儲器和至少一個處理器;至少一個存儲器,用于存儲機器可讀程序;至少一個處理器,用于調(diào)用所述機器可讀程序,執(zhí)行實施例1公開的方[0099]本發(fā)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論