两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

一種面向海量數(shù)據(jù)高效取差集的方法

文檔序號(hào):9350016閱讀:578來(lái)源:國(guó)知局
一種面向海量數(shù)據(jù)高效取差集的方法
【專(zhuān)利說(shuō)明】一種面向海量數(shù)據(jù)高效取差集的方法技術(shù)背景
[0001]本發(fā)明涉及一種面向海量數(shù)據(jù)高效取差集的方法。
【背景技術(shù)】
[0002]
[0003]許多應(yīng)用場(chǎng)景需要對(duì)兩個(gè)數(shù)據(jù)集進(jìn)行對(duì)比,去除數(shù)據(jù)重合部分,取其差集。目前很多做法都是直接循環(huán)對(duì)比兩個(gè)數(shù)據(jù)集,判斷其差集是否存在。但在大數(shù)據(jù)應(yīng)用環(huán)境下,面對(duì)海量數(shù)據(jù),采用該傳統(tǒng)方法有可能出現(xiàn)內(nèi)存溢出、執(zhí)行時(shí)間長(zhǎng)、效率低等問(wèn)題,無(wú)法滿(mǎn)足業(yè)務(wù)需求。

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

[0004]本發(fā)明的目的在于提供一種面向海量數(shù)據(jù)高效取差集的方法,在海量數(shù)據(jù)環(huán)境下,能高效獲取差集結(jié)果,縮短執(zhí)行時(shí)間,及時(shí)響應(yīng)用戶(hù)操作。
[0005]本發(fā)明一種面向海量數(shù)據(jù)高效取差集實(shí)現(xiàn)方法,包括如下步驟:
[0006]步驟1、數(shù)據(jù)存儲(chǔ)及歷史數(shù)據(jù)形成階段
[0007]包括若干個(gè)數(shù)據(jù)存儲(chǔ)區(qū),每個(gè)數(shù)據(jù)存儲(chǔ)區(qū)下根據(jù)時(shí)間軸分類(lèi)或共性條件設(shè)置多個(gè)分核,每個(gè)分核下根據(jù)時(shí)間軸分類(lèi)或共性條件設(shè)置多個(gè)分片,分核數(shù)量及分片數(shù)量可根據(jù)數(shù)據(jù)量進(jìn)行水平擴(kuò)展,將海量數(shù)據(jù)根據(jù)時(shí)間軸分類(lèi)或共性條件進(jìn)行分核及分片存儲(chǔ)形成歷史數(shù)據(jù);
[0008]步驟2、形成源數(shù)據(jù)位數(shù)組集合與目標(biāo)數(shù)據(jù)位數(shù)組集合階段
[0009]根據(jù)源數(shù)據(jù)和目標(biāo)數(shù)據(jù)查詢(xún)條件分別到歷史數(shù)據(jù)相應(yīng)的分片獲取數(shù)據(jù)組成源數(shù)據(jù)集合和目標(biāo)數(shù)據(jù)集合;
[0010]對(duì)獲取的源數(shù)據(jù)集合與目標(biāo)數(shù)據(jù)集合分別進(jìn)行去重處理,去重后數(shù)據(jù)的匹配字段采用哈希函數(shù)映射到位陣列進(jìn)行存儲(chǔ),分別提取后續(xù)會(huì)用于匹配的關(guān)鍵字段進(jìn)行存儲(chǔ)形成位數(shù)組集合,其中,源數(shù)據(jù)位數(shù)組集合用來(lái)存儲(chǔ)源數(shù)據(jù)集合的關(guān)鍵字段元素,目標(biāo)數(shù)據(jù)位數(shù)組集合用來(lái)存儲(chǔ)目標(biāo)數(shù)據(jù)集合的關(guān)鍵字段;
[0011]步驟3、源數(shù)據(jù)位數(shù)組集合與目標(biāo)數(shù)據(jù)位數(shù)組集合進(jìn)行位索引匹配取差集階段
[0012]循環(huán)源數(shù)據(jù)位數(shù)組集合中的元素,通過(guò)L個(gè)哈希映射函數(shù)得到L個(gè)值,匹配到目標(biāo)數(shù)據(jù)位數(shù)組集合中,判斷目標(biāo)數(shù)據(jù)位數(shù)組是否都為1,若全為1,則說(shuō)明源數(shù)據(jù)位數(shù)組集合中的該元素在目標(biāo)數(shù)據(jù)位數(shù)組集合中,否則說(shuō)明源數(shù)據(jù)位數(shù)組集合中的該元素不在目標(biāo)數(shù)據(jù)位數(shù)組集合中,將目標(biāo)數(shù)據(jù)位數(shù)組集合中的該元素放到另外一個(gè)差集集合中,循環(huán)匹配源數(shù)據(jù)位數(shù)組集合所有元素后,得到的差集集合就是源數(shù)據(jù)集合與目標(biāo)數(shù)據(jù)集合的差集,從而實(shí)現(xiàn)數(shù)據(jù)快速匹配取差集。
[0013]本發(fā)明將存儲(chǔ)機(jī)制與索引機(jī)制相結(jié)合,實(shí)現(xiàn)高效取差集;在進(jìn)行數(shù)據(jù)存儲(chǔ)時(shí)就已經(jīng)對(duì)存儲(chǔ)位置進(jìn)行分核分片規(guī)范,減少了獲取的數(shù)據(jù)執(zhí)行時(shí)間,提高了執(zhí)行效率,同時(shí)在數(shù)據(jù)量不斷增大的情況下,可通過(guò)增加分核數(shù)與分片數(shù)進(jìn)行水平擴(kuò)展,不會(huì)因?yàn)閿?shù)據(jù)量增大而在取數(shù)據(jù)時(shí)耗費(fèi)太多查詢(xún)時(shí)間;而在取差集時(shí),源數(shù)據(jù)集合與目標(biāo)數(shù)據(jù)集合采用位數(shù)組的存儲(chǔ)模式,存儲(chǔ)的都是去重后數(shù)據(jù)的關(guān)鍵匹配元素,避免了全元素存儲(chǔ),減少了存儲(chǔ)空間,避免因數(shù)據(jù)量過(guò)大而導(dǎo)致內(nèi)存溢出,在取差集匹配時(shí),采用的是基于哈希表的位索引模式,提高了匹配效率,在取差集數(shù)據(jù)量越大情況下,越能體現(xiàn)性能方面的優(yōu)勢(shì)。
【附圖說(shuō)明】
[0014]圖1為本發(fā)明中歷史數(shù)據(jù)存儲(chǔ)的流程圖;
[0015]圖2為本發(fā)明中取差集的流程圖。
[0016]以下結(jié)合附圖和具體實(shí)施例對(duì)本發(fā)明作進(jìn)一步詳述。
【具體實(shí)施方式】
[0017]本發(fā)明一種面向海量數(shù)據(jù)高效取差集實(shí)現(xiàn)方法,包括如下步驟:
[0018]步驟1、數(shù)據(jù)存儲(chǔ)及歷史數(shù)據(jù)形成階段
[0019]如圖1所示,本發(fā)明包括若干個(gè)數(shù)據(jù)存儲(chǔ)區(qū),每個(gè)數(shù)據(jù)存儲(chǔ)區(qū)下根據(jù)時(shí)間軸分類(lèi)或共性條件設(shè)置多個(gè)分核,每個(gè)分核下根據(jù)時(shí)間軸分類(lèi)或共性條件設(shè)置多個(gè)分片,分核數(shù)量及分片數(shù)量可根據(jù)數(shù)據(jù)量進(jìn)行水平擴(kuò)展,將海量數(shù)據(jù)根據(jù)時(shí)間軸分類(lèi)或共性條件進(jìn)行分核及分片存儲(chǔ)形成歷史數(shù)據(jù),能減少每個(gè)數(shù)據(jù)存儲(chǔ)區(qū)的數(shù)據(jù)量,方便快速獲取相應(yīng)的數(shù)據(jù),避免獲取大量數(shù)據(jù)時(shí)出現(xiàn)查詢(xún)瓶頸;
[0020]步驟2、形成源數(shù)據(jù)位數(shù)組集合與目標(biāo)數(shù)據(jù)位數(shù)組集合階段
[0021]如圖2所示,根據(jù)源數(shù)據(jù)查詢(xún)條件到歷史數(shù)據(jù)相應(yīng)的分片獲取數(shù)據(jù)組成源數(shù)據(jù)集合,根據(jù)目標(biāo)數(shù)據(jù)查詢(xún)條件到歷史數(shù)據(jù)相應(yīng)的分片獲取數(shù)據(jù)組成目標(biāo)數(shù)據(jù)集合;
[0022]獲取源數(shù)據(jù)集合與目標(biāo)數(shù)據(jù)集合后,對(duì)獲取的數(shù)據(jù)進(jìn)行去重處理,分別提取關(guān)鍵字段進(jìn)行存儲(chǔ),采用位數(shù)組存儲(chǔ)的方式形成兩個(gè)位數(shù)組集合,一個(gè)用來(lái)存儲(chǔ)源數(shù)據(jù)集合的關(guān)鍵字段元素,另外一個(gè)用來(lái)存儲(chǔ)目標(biāo)數(shù)據(jù)集合的關(guān)鍵字段;所述去重后數(shù)據(jù)的匹配字段采用哈希函數(shù)映射到位陣列進(jìn)行存儲(chǔ),形成位數(shù)組集合,在初始狀態(tài)下,數(shù)組中所有位都被置為O,在載入元素時(shí),將對(duì)應(yīng)位置為I,例如,數(shù)據(jù)的元素集合為N = In1, n2,…,!!丄則通過(guò)L個(gè)哈希映射函數(shù){f\,f2,…,f J,將數(shù)據(jù)的元素集合N中的每個(gè)元素Iij (I ^ j ^ η)映射為L(zhǎng)個(gè)值fe, g2,…,gj,然后再將位數(shù)組array中相對(duì)應(yīng)的arrayligj, array [g2],…,array [gL]置為I ;在組裝位數(shù)組集合時(shí),采用哈希表數(shù)據(jù)結(jié)構(gòu)存儲(chǔ)方式,只存儲(chǔ)后續(xù)會(huì)用于匹配的元素字段,源數(shù)據(jù)的組裝方式與目標(biāo)數(shù)據(jù)一致;
[0023]步驟3、源數(shù)據(jù)位數(shù)組集合與目標(biāo)數(shù)據(jù)位數(shù)組集合進(jìn)行位索引匹配取差集階段
[0024]源數(shù)據(jù)位數(shù)組集合中的元素,通過(guò)L個(gè)哈希映射函數(shù)R1, f2,…,fj得到L個(gè)值{gl,g2,一,gJ,匹配到目標(biāo)數(shù)據(jù)位數(shù)組集合中,判斷目標(biāo)數(shù)據(jù)位數(shù)組array [gj, array [g2],..., array [gL]是否都為1,若全為1,則說(shuō)明源數(shù)據(jù)位數(shù)組集合中的該元素在目標(biāo)數(shù)據(jù)位數(shù)組集合中,否則說(shuō)明源數(shù)據(jù)位數(shù)組集合中的該元素不在目標(biāo)數(shù)據(jù)位數(shù)組集合中,將目標(biāo)數(shù)據(jù)位數(shù)組集合中的該元素放到另外一個(gè)差集集合中,循環(huán)匹配源數(shù)據(jù)位數(shù)組集合所有元素后,得到的差集集合就是源數(shù)據(jù)集合與目標(biāo)數(shù)據(jù)集合的差集,從而實(shí)現(xiàn)數(shù)據(jù)快速匹配取差集。
[0025]本發(fā)明的重點(diǎn)在于:將存儲(chǔ)機(jī)制與索引機(jī)制相結(jié)合,實(shí)現(xiàn)高效取差集;在進(jìn)行數(shù)據(jù)存儲(chǔ)時(shí)就已經(jīng)對(duì)存儲(chǔ)位置進(jìn)行分核分片規(guī)范,減少了獲取的數(shù)據(jù)執(zhí)行時(shí)間,提高了執(zhí)行效率;而在取差集時(shí),源數(shù)據(jù)集合與目標(biāo)數(shù)據(jù)集合采用位數(shù)組的存儲(chǔ)模式,存儲(chǔ)的都是去重后數(shù)據(jù)的關(guān)鍵匹配元素,避免了全元素存儲(chǔ),減少了存儲(chǔ)空間,避免因數(shù)據(jù)量過(guò)大而導(dǎo)致內(nèi)存溢出,在取差集匹配時(shí),采用的是基于哈希表的位索引模式,提高了匹配效率。
[0026]以上所述,僅是本發(fā)明較佳實(shí)施例而已,并非對(duì)本發(fā)明的技術(shù)范圍作任何限制,故凡是依據(jù)本發(fā)明的技術(shù)實(shí)質(zhì)對(duì)以上實(shí)施例所作的任何細(xì)微修改、等同變化與修飾,均仍屬于本發(fā)明技術(shù)方案的范圍內(nèi)。
【主權(quán)項(xiàng)】
1.一種面向海量數(shù)據(jù)高效取差集實(shí)現(xiàn)方法,其特征在于包括如下步驟: 步驟1、數(shù)據(jù)存儲(chǔ)及歷史數(shù)據(jù)形成階段 包括若干個(gè)數(shù)據(jù)存儲(chǔ)區(qū),每個(gè)數(shù)據(jù)存儲(chǔ)區(qū)下根據(jù)時(shí)間軸分類(lèi)或共性條件設(shè)置多個(gè)分核,每個(gè)分核下根據(jù)時(shí)間軸分類(lèi)或共性條件設(shè)置多個(gè)分片,分核數(shù)量及分片數(shù)量可根據(jù)數(shù)據(jù)量進(jìn)行水平擴(kuò)展,將海量數(shù)據(jù)根據(jù)時(shí)間軸分類(lèi)或共性條件進(jìn)行分核及分片存儲(chǔ)形成歷史數(shù)據(jù); 步驟2、形成源數(shù)據(jù)位數(shù)組集合與目標(biāo)數(shù)據(jù)位數(shù)組集合階段 根據(jù)源數(shù)據(jù)和目標(biāo)數(shù)據(jù)查詢(xún)條件分別到歷史數(shù)據(jù)相應(yīng)的分片獲取數(shù)據(jù)組成源數(shù)據(jù)集合和目標(biāo)數(shù)據(jù)集合; 對(duì)獲取的源數(shù)據(jù)集合與目標(biāo)數(shù)據(jù)集合分別進(jìn)行去重處理,去重后數(shù)據(jù)的匹配字段采用哈希函數(shù)映射到位陣列進(jìn)行存儲(chǔ),分別提取后續(xù)會(huì)用于匹配的關(guān)鍵字段進(jìn)行存儲(chǔ)形成位數(shù)組集合,其中,源數(shù)據(jù)位數(shù)組集合用來(lái)存儲(chǔ)源數(shù)據(jù)集合的關(guān)鍵字段元素,目標(biāo)數(shù)據(jù)位數(shù)組集合用來(lái)存儲(chǔ)目標(biāo)數(shù)據(jù)集合的關(guān)鍵字段; 步驟3、源數(shù)據(jù)位數(shù)組集合與目標(biāo)數(shù)據(jù)位數(shù)組集合進(jìn)行位索引匹配取差集階段 循環(huán)源數(shù)據(jù)位數(shù)組集合中的元素,通過(guò)L個(gè)哈希映射函數(shù)得到L個(gè)值,匹配到目標(biāo)數(shù)據(jù)位數(shù)組集合中,判斷目標(biāo)數(shù)據(jù)位數(shù)組是否都為1,若全為1,則說(shuō)明源數(shù)據(jù)位數(shù)組集合中的該元素在目標(biāo)數(shù)據(jù)位數(shù)組集合中,否則說(shuō)明源數(shù)據(jù)位數(shù)組集合中的該元素不在目標(biāo)數(shù)據(jù)位數(shù)組集合中,將目標(biāo)數(shù)據(jù)位數(shù)組集合中的該元素放到另外一個(gè)差集集合中,循環(huán)匹配源數(shù)據(jù)位數(shù)組集合所有元素后,得到的差集集合就是源數(shù)據(jù)集合與目標(biāo)數(shù)據(jù)集合的差集,從而實(shí)現(xiàn)數(shù)據(jù)快速匹配取差集。
【專(zhuān)利摘要】本發(fā)明一種面向海量數(shù)據(jù)高效取差集實(shí)現(xiàn)方法,將存儲(chǔ)機(jī)制與索引機(jī)制相結(jié)合,實(shí)現(xiàn)高效取差集;在進(jìn)行數(shù)據(jù)存儲(chǔ)時(shí)就已經(jīng)對(duì)存儲(chǔ)位置進(jìn)行分核分片規(guī)范,減少了獲取的數(shù)據(jù)執(zhí)行時(shí)間,提高了執(zhí)行效率,同時(shí)在數(shù)據(jù)量不斷增大的情況下,可通過(guò)增加分核數(shù)與分片數(shù)進(jìn)行水平擴(kuò)展,不會(huì)因?yàn)閿?shù)據(jù)量增大而在取數(shù)據(jù)時(shí)耗費(fèi)太多查詢(xún)時(shí)間;而在取差集時(shí),源數(shù)據(jù)集合與目標(biāo)數(shù)據(jù)集合采用位數(shù)組的存儲(chǔ)模式,存儲(chǔ)的都是去重后數(shù)據(jù)的關(guān)鍵匹配元素,避免了全元素存儲(chǔ),減少了存儲(chǔ)空間,避免因數(shù)據(jù)量過(guò)大而導(dǎo)致內(nèi)存溢出,在取差集匹配時(shí),采用的是基于哈希表的位索引模式,提高了匹配效率,在取差集數(shù)據(jù)量越大情況下,越能體現(xiàn)性能方面的優(yōu)勢(shì)。
【IPC分類(lèi)】G06F17/30
【公開(kāi)號(hào)】CN105069084
【申請(qǐng)?zhí)枴緾N201510464150
【發(fā)明人】周華, 陳光淙, 許華堂
【申請(qǐng)人】南威軟件股份有限公司
【公開(kāi)日】2015年11月18日
【申請(qǐng)日】2015年7月31日
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
西丰县| 清新县| 伊宁市| 通化县| 武汉市| 雅江县| 勐海县| 沙田区| 阿鲁科尔沁旗| 双牌县| 分宜县| 阜康市| 台东市| 连南| 迁安市| 呼和浩特市| 唐河县| 汤阴县| 罗定市| 沙坪坝区| 忻城县| 固始县| 南开区| 桃园市| 杭锦后旗| 赤峰市| 曲周县| 尼玛县| 浦北县| 大冶市| 黎平县| 井冈山市| 东丰县| 东乡族自治县| 西畴县| 中方县| 海林市| 库车县| 潍坊市| 新疆| 泰顺县|