欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種異構(gòu)記錄集對比方法及裝置的制造方法

文檔序號:8395876閱讀:260來源:國知局
一種異構(gòu)記錄集對比方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及數(shù)據(jù)庫技術(shù)領(lǐng)域,具體地,涉及一種異構(gòu)記錄集對比方法及裝置。
【背景技術(shù)】
[0002] 隨著我國社會經(jīng)濟的快速發(fā)展,工業(yè)化程度也得到了快速推進(jìn),智能電網(wǎng)也成為 當(dāng)前國際電力工業(yè)關(guān)注的熱點,引領(lǐng)了電網(wǎng)的未來發(fā)展方向。智能電網(wǎng)中的信息采集系統(tǒng) 是我國各省電力公司的重要信息系統(tǒng),近兩年來,智能電表的用戶規(guī)模呈現(xiàn)爆發(fā)式的增長, 部分省電力公司的智能電表用戶規(guī)模已達(dá)到千萬級別。
[0003] 在電力行業(yè),數(shù)據(jù)采集頻率由原來的一天一次變?yōu)?5分鐘一次,每天產(chǎn)生10億 以上的數(shù)據(jù)記錄,這種用戶規(guī)模和采集頻率的增長給電力行業(yè)信息系統(tǒng)帶來巨大的沖擊, 原有系統(tǒng)在海量數(shù)據(jù)的采集、存儲、查詢、統(tǒng)計分析等方面的處理能力存在明顯不足,且不 能進(jìn)行快速有效的擴展,已經(jīng)難以滿足未來電力業(yè)務(wù)快速發(fā)展的需要,使得用電信息采集 系統(tǒng)原有的技術(shù)架構(gòu)面臨巨大的挑戰(zhàn)。目前用電信息采集系統(tǒng)普遍使用的是關(guān)系型數(shù)據(jù) 庫oracle,其擴展能力已經(jīng)達(dá)到極限,迫切需要一種支持海量數(shù)據(jù)且無限擴展的數(shù)據(jù)庫, Apache(也就是ApacheSoftwareFoundation,Apache軟件基金會,簡稱為ASF)組織開發(fā) 的Hive就是具有這種能力的數(shù)據(jù)庫產(chǎn)品。
[0004] 采用云計算技術(shù)的分布式數(shù)據(jù)庫Hive可以充分利用分布式的軟硬件資源,并行 存儲和計算所需要的數(shù)據(jù),分布式數(shù)據(jù)倉庫Hive已經(jīng)應(yīng)用于電力行業(yè)的許多統(tǒng)計業(yè)務(wù)當(dāng) 中,同時原有的關(guān)系型數(shù)據(jù)庫oracle由于性能穩(wěn)定,擅長處理中等數(shù)據(jù)量以下的復(fù)雜業(yè)務(wù) 過程,仍然在使用當(dāng)中,這樣形成了兩種結(jié)構(gòu)的數(shù)據(jù)庫在電力業(yè)務(wù)系統(tǒng)中并存的局面。
[0005] 在兩種數(shù)據(jù)庫并存的情況下,兩種數(shù)據(jù)庫對SQL(StructuredQueryLanguage, 結(jié)構(gòu)化查詢語言)的支持有些不一致的地方,業(yè)務(wù)系統(tǒng)原有的復(fù)雜統(tǒng)計SQL查詢,為了從 oracle遷移到Hive數(shù)據(jù)庫中,需要測試驗證在兩種數(shù)據(jù)庫下查詢結(jié)果是否一致,由于歷史 生產(chǎn)數(shù)據(jù)持續(xù)增加,記錄集數(shù)量在數(shù)萬級別情況下,人工無法直接對比,把查詢結(jié)果排序?qū)?出存儲為文本文件,而排序操作也是非常耗費時間的,對比方法用MD5(MessageDigest AlgorithmMD5,消息摘要算法第五版)校驗工具來比較兩者的校驗碼不可靠,可能由于多 一個空格MD5值就會不同;另外人工方式運行一個SQL查詢后,只能等待這個查詢完成才能 執(zhí)行下一個查詢,而大型數(shù)據(jù)記錄集每次查詢時間都較長,所以人仍然需要等待很長的時 間,對比效率非常低下。

【發(fā)明內(nèi)容】

[0006] 本發(fā)明是為了克服現(xiàn)有技術(shù)中記錄集對比效率低下的缺陷,根據(jù)本發(fā)明的一個方 面,提出一種異構(gòu)記錄集對比方法。
[0007] 根據(jù)本發(fā)明實施例的一種異構(gòu)記錄集對比方法,包括:
[0008] 根據(jù)第一SQL語句獲取第一記錄集,根據(jù)第二SQL語句獲取第二記錄集;分別確定 第一記錄集的第一特征值組和第二記錄集的第二特征值組,其中,第一特征值組包括第一 記錄集的行數(shù)、列數(shù)、數(shù)值列的最大/最小值,第二特征值組包括第二記錄集的行數(shù)、列數(shù)、 數(shù)值列的最大/最小值;當(dāng)?shù)谝惶卣髦到M和第二特征值組相同時,確定第一記錄集與第二 記錄集一致。
[0009] 優(yōu)選的,第一特征值組還包括第一記錄集中數(shù)值列的平均值和不同數(shù)值的個數(shù); 第二特征值組還包括第二記錄集中數(shù)值列的平均值和不同數(shù)值的個數(shù)。
[0010] 優(yōu)選的,第一特征值組還包括第一記錄集中字符列的字符總數(shù)和不同值的個數(shù); 第二特征值組還包括第二記錄集中字符列的字符總數(shù)和不同值的個數(shù)。
[0011] 優(yōu)選的,在根據(jù)第一SQL語句獲取第一記錄集,根據(jù)第二SQL語句獲取第二記錄集 之前,還包括:將第一SQL文件和第二SQL文件分別解析為獨立的SQL語句;第一SQL語句 為第一SQL文件中獨立的SQL語句,第二SQL語句為第二SQL文件中獨立的SQL語句。
[0012] 優(yōu)選的,將第一SQL文件和第二SQL文件分別解析為獨立的SQL語句,包括:分別 讀取第一SQL文件和第二SQL文件中的所有SQL語句;分別記錄不為空行或注釋行的SQL 語句;根據(jù)符號";"分別分割出第一SQL文件和第二SQL文件中的獨立的SQL語句。
[0013] 優(yōu)選的,分別確定第一記錄集的第一特征值組和第二記錄集的第二特征值組,包 括:獲取第一記錄集的第一元數(shù)據(jù),獲取第二記錄集的第二元數(shù)據(jù);根據(jù)第一元數(shù)據(jù),確定 第一記錄集的列數(shù),以及每列的數(shù)據(jù)類型;根據(jù)第二元數(shù)據(jù),確定第二記錄集的列數(shù),以及 每列的數(shù)據(jù)類型;分別遍歷第一記錄集和第二記錄集,確定第一記錄集的行數(shù)和數(shù)值列的 最大/最小值,確定第二記錄集的行數(shù)和數(shù)值列的最大/最小值。
[0014] 優(yōu)選的,當(dāng)?shù)谝惶卣髦到M還包括第一記錄集中字符列的字符總數(shù)和不同值的個 數(shù),第二特征值組還包括第二記錄集中字符列的字符總數(shù)和不同值的個數(shù)時,分別遍歷第 一記錄集和第二記錄集,還包括:確定第一記錄集中字符列的字符總數(shù)和不同值的個數(shù),確 定第二記錄集中字符列的字符總數(shù)和不同值的個數(shù)。
[0015] 優(yōu)選的,當(dāng)?shù)谝惶卣髦到M和第二特征值組相同時,確定第一記錄集與第二記錄集 一致,包括:判斷第一SQL語句和第二SQL語句的語句類型;當(dāng)為更新語句時,在第一記錄 集的行數(shù)和第二記錄集的行數(shù)一致時,確定第一記錄集與第二記錄集一致;當(dāng)為查詢語句 時,在第一特征值組和第二特征值組完全相同時,確定第一記錄集與第二記錄集一致。
[0016] 本發(fā)明的異構(gòu)記錄集對比方法,通過判斷記錄集的行數(shù)列數(shù)是否一致、數(shù)值列的 最大/最小值和平均值是否一致、字符列的字符總數(shù)是否一致等確定兩個記錄集是否一 致,能夠提高傳統(tǒng)關(guān)系型數(shù)據(jù)庫與分布式數(shù)據(jù)庫結(jié)果集對比的效率和準(zhǔn)確性;同時該方法 還可以大大減少人為對比兩個大型記錄集結(jié)果一致性的工作,不僅節(jié)省人力資源,還可以 提高對比效率。
[0017] 本發(fā)明是為了克服現(xiàn)有技術(shù)中記錄集對比效率低下的缺陷,根據(jù)本發(fā)明的一個方 面,提出一種異構(gòu)記錄集對比裝置。
[0018] 根據(jù)本發(fā)明實施例的一種異構(gòu)記錄集對比裝置,包括:
[0019] 記錄集獲取模塊,用于根據(jù)第一SQL語句獲取第一記錄集,根據(jù)第二SQL語句獲取 第二記錄集;
[0020] 特征值組確定模塊,用于分別確定第一記錄集的第一特征值組和第二記錄集的第 二特征值組,其中,第一特征值組包括第一記錄集的行數(shù)、列數(shù)、數(shù)值列的最大/最小值,第 二特征值組包括第二記錄集的行數(shù)、列數(shù)、數(shù)值列的最大/最小值;
[0021] 處理模塊,用于當(dāng)?shù)谝惶卣髦到M和第二特征值組相同時,確定第一記錄集與第二 記錄集一致。
[0022] 優(yōu)選的,特征值組確定模塊確定的第一特征值組還包括第一記錄集中數(shù)值列的平 均值和不同數(shù)值的個數(shù);特征值組確定模塊確定的第二特征值組還包括第二記錄集中數(shù)值 列的平均值和不同數(shù)值的個數(shù)。
[0023] 優(yōu)選的,特征值組確定模塊確定的第一特征值組還包括第一記錄集中字符列的字 符總數(shù)和不同值的個數(shù);特征值組確定模塊確定的第二特征值組還包括第二記錄集中字符 列的字符總數(shù)和不同值的個數(shù)。
[0024] 優(yōu)選的,該裝置還包括:
[0025] 解析模塊,用于將第一SQL文件和第二SQL文件分別解析為獨立的SQL語句;
[0026] 第一SQL語句為第一SQL文件中獨立的SQL語句,第二SQL語句為第二SQL文件 中獨立的SQL語句。
[0027] 優(yōu)選的,解析模塊包括:
[0028] 讀取單元,用于分別讀取第一SQL文件和第二SQL文件中的所有SQL語句;
[0029] 記錄單元,用于分別記錄不為空行或注釋行的SQL語句;
[0030] 分割單元,用于根據(jù)符號";"分別分割出第一SQL文件和第二SQL文件中的獨立 的SQL語句。
[0031] 優(yōu)選的,特征值組確定模塊包括:
[0032] 元數(shù)據(jù)獲取單元,用于獲取第一記錄集的第一元數(shù)據(jù),獲取第二記錄集的第二元 數(shù)據(jù);
[0033] 第一特征值確定單元,用于根據(jù)第一元數(shù)據(jù),確定第一記錄集的列數(shù),以及每列的 數(shù)據(jù)類型;根據(jù)第二元數(shù)據(jù),確定第二記錄集的列數(shù),以及每列的數(shù)據(jù)類型;
[0034] 第二特征值確定單元,用于分別遍歷第一記錄集和第二記錄集,確定第一記錄集 的行數(shù)和數(shù)值列的最大/最小值,確定第二記錄集的行數(shù)和數(shù)值列的最大/最小值。
[0035] 優(yōu)選的,當(dāng)特征值組確定模塊確定的第一特征值組還包括第一記錄集中字符列的 字符總數(shù)和不同值的個數(shù),特征值組確定模塊確定的第二特征值組還包括第二記錄集中字 符列的字符總數(shù)和不同值的個數(shù)時,
[0036] 第二特征值確定單元還用于:確定第一記錄集中字符列的字符總數(shù)和不同值的個 數(shù),確定第二記錄集中字符列的字符總數(shù)和不同值的個數(shù)。
[0037] 優(yōu)選的,處理模塊包括:
[0038] 判斷單元
當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
杂多县| 恩施市| 贵州省| 固原市| 互助| 闸北区| 绥德县| 沂源县| 和政县| 菏泽市| 旬阳县| 兴国县| 清涧县| 赤壁市| 南涧| 嵊泗县| 靖安县| 雷山县| 年辖:市辖区| 五莲县| 丰都县| 文昌市| 开封县| 萍乡市| 宁河县| 仙桃市| 武邑县| 绥江县| 寻乌县| 牟定县| 石林| 阿克苏市| 海城市| 浑源县| 临湘市| 汶上县| 建水县| 炎陵县| 合肥市| 彰武县| 竹溪县|