[發(fā)明專利]一種更新分析數(shù)據(jù)庫(kù)的方法及裝置在審
| 申請(qǐng)?zhí)枺?/td> | 202010694179.0 | 申請(qǐng)日: | 2020-07-17 |
| 公開(公告)號(hào): | CN111797108A | 公開(公告)日: | 2020-10-20 |
| 發(fā)明(設(shè)計(jì))人: | 馮智超 | 申請(qǐng)(專利權(quán))人: | 西安數(shù)據(jù)如金信息科技有限公司 |
| 主分類號(hào): | G06F16/23 | 分類號(hào): | G06F16/23;G06F16/22 |
| 代理公司: | 北京超成律師事務(wù)所 11646 | 代理人: | 裴素英 |
| 地址: | 710065 陜西省西安市*** | 國(guó)省代碼: | 陜西;61 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 更新 分析 數(shù)據(jù)庫(kù) 方法 裝置 | ||
本發(fā)明提供了一種更新分析數(shù)據(jù)庫(kù)的方法及裝置,其中,該更新分析數(shù)據(jù)庫(kù)的方法包括:獲取待更新數(shù)據(jù)集,依據(jù)所述分析數(shù)據(jù)庫(kù)的結(jié)構(gòu),構(gòu)建包含臨時(shí)標(biāo)識(shí)的批量更新數(shù)據(jù)表,所述更新包括修改;依據(jù)所述批量更新數(shù)據(jù)表,查詢所述分析數(shù)據(jù)庫(kù),獲取與所述批量更新數(shù)據(jù)表相匹配的目標(biāo)數(shù)據(jù)表;將所述目標(biāo)數(shù)據(jù)表的標(biāo)識(shí)設(shè)置為無效,在所述分析數(shù)據(jù)庫(kù)中插入所述批量更新數(shù)據(jù)表,修改插入的所述批量更新數(shù)據(jù)表的臨時(shí)標(biāo)識(shí)為有效。可以有效提高分析數(shù)據(jù)庫(kù)的更新效率。
技術(shù)領(lǐng)域
本發(fā)明涉及數(shù)據(jù)庫(kù)技術(shù)領(lǐng)域,具體而言,涉及一種更新分析數(shù)據(jù)庫(kù)的方法及裝置。
背景技術(shù)
基于分布式的列式數(shù)據(jù)庫(kù)可以存儲(chǔ)海量數(shù)據(jù),并將相同列的數(shù)據(jù)存儲(chǔ)在同一存儲(chǔ)區(qū)儲(chǔ),是適于面向分析和查詢功能的分析數(shù)據(jù)庫(kù),因而,廣泛應(yīng)用在實(shí)時(shí)在線分析業(yè)務(wù)場(chǎng)景中。但這些分析數(shù)據(jù)庫(kù)不支持比較頻繁的新增數(shù)據(jù)和更新數(shù)據(jù),例如clickhouse,亞馬遜(AWS,Amazon Web Services)的redshift等,導(dǎo)致很多業(yè)務(wù)更新的場(chǎng)景無法使用。在實(shí)際的應(yīng)用中,如果需要對(duì)列式數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)更新處理,例如,插入數(shù)據(jù)、修改數(shù)據(jù)或刪除數(shù)據(jù)等操作,需要對(duì)待操作的數(shù)據(jù)進(jìn)行逐條更新處理。而實(shí)際應(yīng)用中,對(duì)于實(shí)時(shí)在線分析業(yè)務(wù)場(chǎng)景,可能需要對(duì)分析數(shù)據(jù)庫(kù)中的上萬條甚至上億條數(shù)據(jù)進(jìn)行更新處理,使得逐條更新數(shù)據(jù)的更新效率低,在實(shí)際中成為不可能完成的任務(wù)。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明的目的在于提供更新分析數(shù)據(jù)庫(kù)的方法及裝置,以提高分析數(shù)據(jù)庫(kù)的更新效率。
第一方面,本發(fā)明實(shí)施例提供了更新分析數(shù)據(jù)庫(kù)的方法,包括:
獲取待更新數(shù)據(jù)集,依據(jù)所述分析數(shù)據(jù)庫(kù)的結(jié)構(gòu),構(gòu)建包含臨時(shí)標(biāo)識(shí)的批量更新數(shù)據(jù)表,所述更新包括修改;
依據(jù)所述批量更新數(shù)據(jù)表,查詢所述分析數(shù)據(jù)庫(kù),獲取與所述批量更新數(shù)據(jù)表相匹配的目標(biāo)數(shù)據(jù)表;
將所述目標(biāo)數(shù)據(jù)表的標(biāo)識(shí)設(shè)置為無效,在所述分析數(shù)據(jù)庫(kù)中插入所述批量更新數(shù)據(jù)表,修改插入的所述批量更新數(shù)據(jù)表的臨時(shí)標(biāo)識(shí)為有效。
結(jié)合第一方面,本發(fā)明實(shí)施例提供了第一方面的第一種可能的實(shí)施方式,其中,所述依據(jù)所述分析數(shù)據(jù)庫(kù)的結(jié)構(gòu),構(gòu)建包含臨時(shí)標(biāo)識(shí)的批量更新數(shù)據(jù)表,包括:
復(fù)制所述分析數(shù)據(jù)庫(kù)的結(jié)構(gòu),得到內(nèi)容為空的批量更新數(shù)據(jù)表;
針對(duì)所述待更新數(shù)據(jù)集中的每一條數(shù)據(jù),在所述內(nèi)容為空的批量更新數(shù)據(jù)表中新增一行;
依次提取每條數(shù)據(jù)中包含的第一字段名,與所述內(nèi)容為空的批量更新數(shù)據(jù)表中的各字段名列對(duì)應(yīng)的第二字段名進(jìn)行匹配,將所述第一字段名對(duì)應(yīng)的數(shù)據(jù)內(nèi)容填充至該數(shù)據(jù)所在的行中,與所述第一字段名相匹配的第二字段名對(duì)應(yīng)的列。
結(jié)合第一方面,本發(fā)明實(shí)施例提供了第一方面的第二種可能的實(shí)施方式,其中,所述依據(jù)所述批量更新數(shù)據(jù)表,查詢所述分析數(shù)據(jù)庫(kù),獲取與所述批量更新數(shù)據(jù)表相匹配的目標(biāo)數(shù)據(jù)表,包括:
依據(jù)所述批量更新數(shù)據(jù)表中各行數(shù)據(jù)對(duì)應(yīng)的數(shù)據(jù)入庫(kù)標(biāo)識(shí),查詢所述分析數(shù)據(jù)庫(kù),獲取與所述數(shù)據(jù)入庫(kù)標(biāo)識(shí)相匹配的各數(shù)據(jù),得到所述目標(biāo)數(shù)據(jù)表。
結(jié)合第一方面,本發(fā)明實(shí)施例提供了第一方面的第三種可能的實(shí)施方式,其中,所述將目標(biāo)數(shù)據(jù)表的標(biāo)識(shí)設(shè)置為無效,包括:
將所述目標(biāo)數(shù)據(jù)表中的各條數(shù)據(jù)的數(shù)據(jù)版本號(hào)對(duì)應(yīng)的值修改為無效對(duì)應(yīng)的值。
結(jié)合第一方面、第一方面的第一種至第三種中的任一可能的實(shí)施方式,本發(fā)明實(shí)施例提供了第一方面的第四種可能的實(shí)施方式,其中,所述更新還包括:插入,所述方法還包括:
復(fù)制所述分析數(shù)據(jù)庫(kù)的結(jié)構(gòu),得到內(nèi)容為空的批量插入數(shù)據(jù)表;
針對(duì)獲取的待插入數(shù)據(jù)集中的每一條待插入數(shù)據(jù),在所述內(nèi)容為空的批量更新數(shù)據(jù)表中新增一行;
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于西安數(shù)據(jù)如金信息科技有限公司,未經(jīng)西安數(shù)據(jù)如金信息科技有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010694179.0/2.html,轉(zhuǎn)載請(qǐng)聲明來源鉆瓜專利網(wǎng)。
- 數(shù)據(jù)庫(kù)
- 數(shù)據(jù)庫(kù)管理系統(tǒng)及數(shù)據(jù)庫(kù)
- 數(shù)據(jù)庫(kù)構(gòu)筑裝置、數(shù)據(jù)庫(kù)檢索裝置、數(shù)據(jù)庫(kù)裝置、數(shù)據(jù)庫(kù)構(gòu)筑方法、以及數(shù)據(jù)庫(kù)檢索方法
- 數(shù)據(jù)庫(kù)和數(shù)據(jù)庫(kù)處理方法
- 數(shù)據(jù)庫(kù)系統(tǒng)、數(shù)據(jù)庫(kù)更新方法、數(shù)據(jù)庫(kù)以及數(shù)據(jù)庫(kù)更新程序
- 容器數(shù)據(jù)庫(kù)
- 數(shù)據(jù)庫(kù)同步方法及數(shù)據(jù)庫(kù)
- 一種MongoDB數(shù)據(jù)庫(kù)對(duì)象復(fù)制延遲監(jiān)控方法和裝置
- 數(shù)據(jù)分布式存儲(chǔ)方法、裝置、電子設(shè)備及存儲(chǔ)介質(zhì)
- 數(shù)據(jù)庫(kù)語句執(zhí)行方法及裝置
- 一種數(shù)據(jù)庫(kù)讀寫分離的方法和裝置
- 一種手機(jī)動(dòng)漫人物及背景創(chuàng)作方法
- 一種通訊綜合測(cè)試終端的測(cè)試方法
- 一種服裝用人體測(cè)量基準(zhǔn)點(diǎn)的獲取方法
- 系統(tǒng)升級(jí)方法及裝置
- 用于虛擬和接口方法調(diào)用的裝置和方法
- 線程狀態(tài)監(jiān)控方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)
- 一種JAVA智能卡及其虛擬機(jī)組件優(yōu)化方法
- 檢測(cè)程序中方法耗時(shí)的方法、裝置及存儲(chǔ)介質(zhì)
- 函數(shù)的執(zhí)行方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)





