本發(fā)明屬于Spark技術(shù)領(lǐng)域,是一種移動(dòng)互聯(lián)網(wǎng)和云計(jì)算環(huán)境下子空間Skyline查詢的智能商店選址通信系統(tǒng),其中涉及到網(wǎng)格剪枝策略、α-filtering過(guò)濾方法、β-filtering、γ-filtering過(guò)濾方法,以及智能移動(dòng)終端應(yīng)用的開(kāi)發(fā)。
背景技術(shù):
隨著現(xiàn)代科學(xué)技術(shù)特別是信息技術(shù)的不斷發(fā)展,智能技術(shù)在各行各業(yè)得到了越來(lái)越多的應(yīng)用。從智能商店選址通信系統(tǒng)、智能家居、智能交通、智能電網(wǎng)等到2009年由IBM提出“智慧地球”的概念,智能技術(shù)正在改變的生活。智能商店選址通信系統(tǒng)通過(guò)對(duì)商店內(nèi)設(shè)備、環(huán)境和使用者信息的采集、監(jiān)測(cè)、管理和控制,實(shí)現(xiàn)商店環(huán)境的組合優(yōu)化,從而為使用者提供滿足商店物設(shè)計(jì)功能需求和現(xiàn)代信息技術(shù)應(yīng)用需求。例如上海新國(guó)際博覽中心采用國(guó)際先進(jìn)的CERBERCED的CS11消防智能報(bào)警系統(tǒng),各火災(zāi)報(bào)警控制盤(pán)之間通過(guò)網(wǎng)絡(luò)可以交換命令和信息,做到信息共享,工作人員只需在消防中心設(shè)置一臺(tái)CS11主機(jī),而在其它展廳的設(shè)備間里各設(shè)置一臺(tái)多功能分機(jī)(UT),日常則無(wú)需人管理。
然而,爆炸式增長(zhǎng)的商店數(shù)據(jù)已遠(yuǎn)遠(yuǎn)超出人們所能承受的程度,對(duì)于海量的商店數(shù)據(jù),如何能夠快速有效地進(jìn)行管理與檢索,繼而從中獲取潛在的有價(jià)值的信息成為人們關(guān)注的問(wèn)題。海量數(shù)據(jù)的增長(zhǎng),使得傳統(tǒng)的數(shù)據(jù)分析處理技術(shù)已經(jīng)越來(lái)越不適應(yīng)當(dāng)前密集型數(shù)據(jù)分析和處理的需求。為了節(jié)約成本,為大規(guī)模數(shù)據(jù)的存儲(chǔ)和計(jì)算提供分布式處理框架,云計(jì)算、大數(shù)據(jù)、云存儲(chǔ)、Spark、BigTable等相關(guān)技術(shù)被提出。云計(jì)算作為新興的分布式共享計(jì)算平臺(tái),它可以建立在大規(guī)模廉價(jià)PC機(jī)的基礎(chǔ)上,利用網(wǎng)絡(luò)中的資源進(jìn)行海量數(shù)據(jù)的存儲(chǔ)和計(jì)算。由于云計(jì)算技術(shù)非常適合處理海量數(shù)據(jù),許多公司研究并開(kāi)發(fā)了云計(jì)算處理平臺(tái),其中包括Google的搜索引擎云平臺(tái)、IBM的“藍(lán)云”平臺(tái)、Amazon的彈性計(jì)算云和Hadoop開(kāi)源云平臺(tái)等。Hadoop作為一種大規(guī)模數(shù)據(jù)分布式處理的軟件框架,它的核心技術(shù)包含分布式文件系統(tǒng)HDFS和并行編程模型。思科公司預(yù)測(cè),2016年全球?qū)⒂?9%的數(shù)據(jù)中心托管著云計(jì)算平臺(tái)。海量數(shù)據(jù)存儲(chǔ)在這些云計(jì)算平臺(tái)中,由于數(shù)據(jù)量過(guò)大,使得這些海量數(shù)據(jù)處理技術(shù)對(duì)軟硬件要求非常高、系統(tǒng)資源占用非常多,帶來(lái)了算法效率低下的問(wèn)題。海量數(shù)據(jù)處理是一個(gè)熱點(diǎn)的研究方向,眾多學(xué)者們依托云計(jì)算平臺(tái)提出很多新的高效的海量數(shù)據(jù)處理算法,Skyline算法是其中的一種高效的數(shù)據(jù)查詢和提取方法,可以快速地從海量數(shù)據(jù)中抽取出關(guān)鍵的信息,大大減少數(shù)據(jù)量,降低海量數(shù)據(jù)處理中對(duì)軟硬件的要求,提高數(shù)據(jù)處理的效率。Skyline算法作為一種有效的數(shù)據(jù)提取與處理方法,主要考慮的是如何從龐大的數(shù)據(jù)集中找出人們最感興趣或最關(guān)心的信息,在海量數(shù)據(jù)分析處理方面具有廣泛的應(yīng)用,如多目標(biāo)決策、商店尋址、環(huán)境監(jiān)控、圖像檢索、個(gè)性化推薦、數(shù)據(jù)挖掘等。Skyline查詢可以為用戶在決策過(guò)程中提供多屬性的評(píng)判原則,評(píng)價(jià)函數(shù)也可以根據(jù)不同的應(yīng)用采用不同的測(cè)量方法(例如歐幾里德距離、空間距離等)以提升用戶的體驗(yàn)質(zhì)量;對(duì)海量商務(wù)交易數(shù)據(jù)記錄,Skyline計(jì)算能幫助市場(chǎng)分析人員進(jìn)行價(jià)格及市場(chǎng)策略的定位;在環(huán)境監(jiān)控中,通過(guò)分析傳感器網(wǎng)絡(luò)積累起來(lái)的海量數(shù)據(jù),可以分析評(píng)價(jià)出潛在的自然災(zāi)害與風(fēng)險(xiǎn)。此外,Skyline查詢也被應(yīng)用到圖像檢索,商店尋址等領(lǐng)域。傳統(tǒng)的數(shù)據(jù)提取和分析方法已不能適用于如今爆炸性增長(zhǎng)的數(shù)據(jù)。
技術(shù)實(shí)現(xiàn)要素:
根據(jù)上述背景技術(shù)中存在的缺陷和不足,本發(fā)明提供了移動(dòng)互聯(lián)網(wǎng)和云計(jì)算環(huán)境下的子空間Skyline查詢的智能商店選址通信系統(tǒng),以改進(jìn)現(xiàn)有的對(duì)大量商店數(shù)據(jù)提取和分析方法,大大減少數(shù)據(jù)量,降低海量數(shù)據(jù)處理中對(duì)軟硬件的要求,提高數(shù)據(jù)處理的效率。
為了實(shí)現(xiàn)上述目的,本發(fā)明所采用的技術(shù)方案是:
一種移動(dòng)互聯(lián)網(wǎng)和云計(jì)算環(huán)境下子空間Skyline查詢的智能商店選址系統(tǒng),包括云中心服務(wù)系統(tǒng)和移動(dòng)終端,云中心服務(wù)系統(tǒng)主要是由多個(gè)計(jì)算節(jié)點(diǎn)組成的Spark云平臺(tái);云中心服務(wù)系統(tǒng)接收移動(dòng)終端發(fā)送的商店選址查詢請(qǐng)求,該查詢請(qǐng)求包括對(duì)屬性的偏好及各屬性的閾值,且云中心服務(wù)系統(tǒng)執(zhí)行網(wǎng)格剪枝策略及分布式映射過(guò)濾方法,承擔(dān)空間Skyline查詢流的主要計(jì)算,并向移動(dòng)終端返回查詢得到的商店選址。
進(jìn)一步的,云中心服務(wù)系統(tǒng)接收移動(dòng)終端發(fā)送的商店選址查詢請(qǐng)求,從其存儲(chǔ)的已有的商店信息中提取用戶感興趣數(shù)據(jù),并且按照用戶偏好對(duì)其進(jìn)行排序得到一個(gè)有序的數(shù)據(jù)集,然后掃描比較數(shù)據(jù)點(diǎn)的支配關(guān)系得到子空間Skyline結(jié)果,云中心服務(wù)系統(tǒng)基于分布式映射過(guò)濾方法,利用用戶提供的屬性的閾值進(jìn)行過(guò)濾,返回給移動(dòng)終端以商店選址的候選結(jié)果集。
進(jìn)一步的,網(wǎng)格剪枝策略的處理步驟具體為:一個(gè)d維的商店數(shù)據(jù)空間S,其包括商店物的結(jié)構(gòu)數(shù)據(jù)、商店物內(nèi)部設(shè)備數(shù)據(jù)、商店物的環(huán)境數(shù)據(jù),P是商店數(shù)據(jù)空間S上的數(shù)據(jù)集,每個(gè)商店數(shù)據(jù)點(diǎn)p∈P被表示為{x1,x2,...,xd},每一維網(wǎng)格的寬度表示為λi,數(shù)據(jù)集中任意數(shù)據(jù)點(diǎn)p的網(wǎng)格坐標(biāo)通過(guò)計(jì)算得到,即任意網(wǎng)格的標(biāo)識(shí)表示為Intkeyj,它在網(wǎng)格空間中的坐標(biāo)表示為(Intkeyj.x1,Intkeyj.x2,...,Intkeyj.xd),數(shù)據(jù)集P中的每個(gè)數(shù)據(jù)點(diǎn)都會(huì)被映射到相應(yīng)的網(wǎng)格中,對(duì)應(yīng)一個(gè)網(wǎng)格單元橋;假定存在一個(gè)二元偏序關(guān)系>是在子空間F上的,偏序關(guān)系>表示在F中屬性重要性的大于關(guān)系,f1,f2是F上的兩個(gè)屬性,f1,f2∈F,如果f1的重要性大于f2,那么它們的偏序關(guān)系可以表示為f1>f2,得到一個(gè)有序的k維子空間{f1,f2,...,fk}。
進(jìn)一步的,α-filtering過(guò)濾方法的處理步驟具體為:假定屬性取值越小越好,多目標(biāo)決策的優(yōu)化函數(shù)可被定義為min(f1(x),f2(x),...,fk(x)),其中x∈P,fi(x)是數(shù)據(jù)對(duì)象x在第i維屬性上的取值。
上述公式用來(lái)計(jì)算第一維屬性上取值最偏離用戶偏好的商店數(shù)據(jù)對(duì)象集合R1,R0表示初始化商店數(shù)據(jù)集P,由此獲得第一維屬性上取值相對(duì)優(yōu)的商店數(shù)據(jù)集合接下來(lái)在第一維已經(jīng)相對(duì)優(yōu)的商店數(shù)據(jù)集合中,利用公式(4.2)獲得第二維屬性取值最差的商店數(shù)據(jù)對(duì)象集合,然后從商店數(shù)據(jù)集合中剔除掉,以此類(lèi)推,最后得到k維屬性取值都相對(duì)優(yōu)的商店數(shù)據(jù)對(duì)象集合
進(jìn)一步的,β-filtering過(guò)濾方法處理步驟具體為:假定商店子空間F中的屬性按用戶偏好排序的結(jié)果為{Mileage,Price,OccupancyRate},β1(β2,β3)是每個(gè)屬性對(duì)應(yīng)的閾值,當(dāng)β1=1時(shí),計(jì)算得到R1={p5,p6},而當(dāng)β1=7/9時(shí),R1={p5,p6,p1,p9},其中:P是在商店數(shù)據(jù)空間上的數(shù)據(jù)集。
進(jìn)一步的,所述分布式映射過(guò)濾的方法,其特征在于,在Spark的Map過(guò)程中,利用α-filtering、β-filtering過(guò)濾方法進(jìn)行過(guò)濾,在過(guò)濾后對(duì)不符合用戶偏好的數(shù)據(jù)進(jìn)行預(yù)處理;在Map階段的最后,根據(jù)關(guān)鍵詞key進(jìn)行value值的哈希匹配的過(guò)程為γ-filtering過(guò)濾方法,如果該所述哈希匹配不成功則通過(guò)洗牌過(guò)程送到Reduce端匯總處理,如圖5。
進(jìn)一步的,子空間Skyline查詢(如圖2)的定義為:假定一個(gè)d維的商店數(shù)據(jù)空間S={s1,s2,...,sd},P={p1,p2,...,pn}是用戶申請(qǐng)查詢的商店信息,每個(gè)用戶申請(qǐng)查詢的商店數(shù)據(jù)點(diǎn)pi∈P都是空間S上的d維商店數(shù)據(jù)點(diǎn);
F是商店數(shù)據(jù)空間S上的子空間,云中心服務(wù)系統(tǒng)利用網(wǎng)格剪枝策略將數(shù)據(jù)空間S分成一個(gè)個(gè)子空間,|F|=k且k≤d,d是全空間數(shù)據(jù)維數(shù)k子空間數(shù)據(jù)維數(shù),全空間F中提取用戶感興趣的字段是k,在商店數(shù)據(jù)空間S上的用戶申請(qǐng)查詢數(shù)據(jù)對(duì)象pi,pi在子空間F上的投影即為用戶申請(qǐng)查詢的商店數(shù)據(jù)與剪枝后的數(shù)據(jù)子空間重合,也便是云服務(wù)中心系統(tǒng)篩選的商店數(shù)據(jù)是用戶所需要的,也被表示為p′i是k元組,當(dāng)且僅當(dāng)子空間F上不存在用戶不需要的商店數(shù)據(jù)點(diǎn)p′j支配用戶需要的商店數(shù)據(jù)p′i,p′i是云中心服務(wù)系統(tǒng)通過(guò)子空間Skyline得到的結(jié)果。
進(jìn)一步的,云中心服務(wù)系統(tǒng)執(zhí)行網(wǎng)格剪枝策略及分布式映射過(guò)濾方法,承擔(dān)空間Skyline查詢流的主要計(jì)算的方法是:利用Spark作業(yè)將輸入的數(shù)據(jù)以<key,value>對(duì)的形式生成索引文件,然后啟動(dòng)Spark作業(yè)掃描整個(gè)索引文件,讀索引文件到Hashmap中,它是一種hash結(jié)構(gòu),包含兩部分內(nèi)容:key和value,數(shù)據(jù)結(jié)構(gòu)中的key部分用來(lái)緩存每維屬性的值,value部分用來(lái)緩存具有相同值的數(shù)據(jù)對(duì)象編號(hào)的列表,所有取該值的數(shù)據(jù)對(duì)象被包含在列表里。
有益效果:上述以改進(jìn)現(xiàn)有的對(duì)大量商店數(shù)據(jù)提取和分析方法,大大減少數(shù)據(jù)量,降低海量數(shù)據(jù)處理中對(duì)軟硬件的要求,提高數(shù)據(jù)處理的效率。
附圖說(shuō)明
圖1為移動(dòng)互聯(lián)網(wǎng)和云計(jì)算環(huán)境下子空間Skyline查詢的智能商店選址通信系統(tǒng)示意圖;
圖2為子空間Skyline查詢的系統(tǒng)模型示意圖;
圖3為基于網(wǎng)格的剪枝策略示意圖;
圖4為α-filtering過(guò)濾公式示意圖;
圖5為Spark構(gòu)建索引文件示意圖;
圖6為子空間Skyline查詢過(guò)程具體實(shí)施過(guò)程示意圖。
實(shí)施例1:移動(dòng)互聯(lián)網(wǎng)和云計(jì)算環(huán)境下子空間Skyline查詢系統(tǒng),包括云中心服務(wù)系統(tǒng)和智能移動(dòng)客戶端系統(tǒng),其中的云中心服務(wù)系統(tǒng)提供網(wǎng)格剪枝策略及α-filtering、β-filtering和γ-filtering過(guò)濾,來(lái)執(zhí)行Skyline算法,智能移動(dòng)客戶端便對(duì)屬性的偏好程度并輸入各屬性的閾值并且發(fā)送查詢結(jié)果,來(lái)完善商店的屬性。即該系統(tǒng)執(zhí)行步驟如下:
S1.云中心服務(wù)系統(tǒng)以Skyline算法提供網(wǎng)格剪枝策略,對(duì)大規(guī)模數(shù)據(jù)進(jìn)行篩選。
S2.智能移動(dòng)客戶端在終端設(shè)備上運(yùn)行程序,通過(guò)服務(wù)器進(jìn)行通信,發(fā)送請(qǐng)求,并與云中心服務(wù)系統(tǒng)進(jìn)行信息交互。
在一個(gè)實(shí)施例中,利用其中的算法,將商店內(nèi)設(shè)備、環(huán)境和使用者信息的采集、監(jiān)測(cè)、管理和控制集為一體,有效地實(shí)現(xiàn)組合一體化。在商店中,將商店一系列的龐大的數(shù)據(jù)庫(kù)都交付于skyline算法,并通過(guò)這種算法進(jìn)行檢測(cè)商店的相關(guān)參數(shù),可以得到更快的定址選擇,從而讓商店定址這個(gè)龐大的整體歸結(jié)為一個(gè)小的分支任務(wù),在通過(guò)移動(dòng)客戶端的操控,一套完整高效商店定址方法便脫穎而出。
在另一實(shí)施例中,面對(duì)高密度的居住地,保障人民生活安全的問(wèn)題便顯得尤為重要,正是基于這一點(diǎn),通過(guò)前線設(shè)備連接后臺(tái)服務(wù)中心,以商店為平臺(tái),強(qiáng)調(diào)智能化系統(tǒng)設(shè)計(jì)與商店定址方法的配合和協(xié)調(diào),如各類(lèi)智能參數(shù)如:綜合布線系統(tǒng)(GCS,PDS)、火災(zāi)報(bào)警系統(tǒng)(SAS)、商店設(shè)備管理系統(tǒng)(BAS)、火災(zāi)報(bào)警系統(tǒng)(FAS)等,將商店本身的情況如實(shí)的匯報(bào),集多層技術(shù)于一身,通過(guò)用戶的喜好來(lái)進(jìn)行Skyline決策,從而更好的進(jìn)行定址選擇。當(dāng)一個(gè)商家在選擇最佳商店定址時(shí),可以根據(jù)多重因素,在大規(guī)模數(shù)據(jù)的基礎(chǔ)上,在觸控屏上,以交互的方式根據(jù)喜好進(jìn)行三種skyline數(shù)據(jù)過(guò)濾方法的因素定義,從而在大量影響因素中,快速找到滿足自已要求的商店地址。
在一個(gè)實(shí)施例中,智能商店選址通信系統(tǒng)具備智能控制效果,大大加強(qiáng)于普通的控制方式,與傳統(tǒng)自動(dòng)控制系統(tǒng)相比,基于Skyline的多目標(biāo)智能決策系統(tǒng)具有快速空間大數(shù)據(jù)結(jié)構(gòu)分析的特點(diǎn),能總體自尋優(yōu),具有自適應(yīng)、自組織、自學(xué)習(xí)和自協(xié)調(diào)能力,其可以利用多過(guò)濾算法自動(dòng)地完成其目標(biāo)的控制過(guò)程,其智能機(jī)可以在熟悉或不熟悉的環(huán)境中自動(dòng)地或人機(jī)交互地完成擬人任務(wù),進(jìn)一步的減少人類(lèi)主觀選擇的誤差與決策隨機(jī)不準(zhǔn)確性。可以在此算法的基礎(chǔ)上,利用分布式計(jì)算與大數(shù)據(jù)存儲(chǔ)與智能處理,從分析對(duì)象出發(fā),構(gòu)建模擬邏輯和神經(jīng)網(wǎng)絡(luò),在此基礎(chǔ)上,將好的優(yōu)勢(shì)傳承給下一代,是為智能算法,一步步地完善商店網(wǎng)絡(luò)智能定址系統(tǒng),以高速度計(jì)算并處理龐大而復(fù)雜的商務(wù)數(shù)據(jù)。
在一個(gè)實(shí)施例中,基于云計(jì)算分布式處理系統(tǒng),采取了分布式映射過(guò)濾的方法,在Spark的Map過(guò)程中,利用α-filtering、β-filtering進(jìn)行過(guò)濾,在過(guò)濾后對(duì)不符合用戶喜好的商店定址數(shù)據(jù)進(jìn)行了預(yù)處理,在此過(guò)程中如果同時(shí)滿足了α-filtering、β-filtering過(guò)程的結(jié)果,有部分結(jié)果因?yàn)閟kyline的過(guò)度過(guò)濾會(huì)也key值不符,所以在Map階段的最后根據(jù)關(guān)鍵詞key進(jìn)行value值的哈希匹配,稱(chēng)為γ-filtering,如果匹配不成功則進(jìn)一步進(jìn)行過(guò)濾,然后通過(guò)洗牌過(guò)程送到Reduce端進(jìn)行進(jìn)一步匯總處理。這種過(guò)濾方法利用了Spark的分布處理機(jī)制。因?yàn)檫^(guò)濾掉了大的輸入,同時(shí)對(duì)分布式系統(tǒng)的處理性能也有了提高,同時(shí)減少了用戶等待時(shí)間,加強(qiáng)了用戶的體驗(yàn)效果。
實(shí)施例2:一種移動(dòng)互聯(lián)網(wǎng)和云計(jì)算環(huán)境下子空間Skyline查詢的智能商店選址系統(tǒng),云中心服務(wù)系統(tǒng)主要是由多個(gè)計(jì)算節(jié)點(diǎn)組成的Spark云平臺(tái);云中心服務(wù)系統(tǒng)接收移動(dòng)終端發(fā)送的商店選址查詢請(qǐng)求,該查詢請(qǐng)求包括對(duì)屬性的偏好及各屬性的閾值,且云中心服務(wù)系統(tǒng)執(zhí)行網(wǎng)格剪枝策略及分布式映射過(guò)濾方法,承擔(dān)子空間Skyline查詢流的主要計(jì)算,并向移動(dòng)終端返回查詢得到的商店選址。云中心服務(wù)系統(tǒng)接收移動(dòng)終端發(fā)送的商店選址查詢請(qǐng)求,從其存儲(chǔ)的已有的商店信息中提取用戶感興趣數(shù)據(jù),并且按照用戶偏好對(duì)其進(jìn)行排序得到一個(gè)有序的數(shù)據(jù)集,然后掃描比較數(shù)據(jù)點(diǎn)的支配關(guān)系得到子空間Skyline結(jié)果,云中心服務(wù)系統(tǒng)基于分布式映射過(guò)濾方法,利用用戶提供的屬性的閾值進(jìn)行過(guò)濾,返回給移動(dòng)終端以商店選址的候選結(jié)果集。
在一個(gè)實(shí)施例中,網(wǎng)格剪枝策略的處理步驟具體為:一個(gè)d維的商店數(shù)據(jù)空間S,其包括商店物的結(jié)構(gòu)數(shù)據(jù)、商店物內(nèi)部設(shè)備數(shù)據(jù)、商店物的環(huán)境數(shù)據(jù),P是商店數(shù)據(jù)空間S上的數(shù)據(jù)集,每個(gè)商店數(shù)據(jù)點(diǎn)p∈P被表示為{x1,x2,...,xd},每一維網(wǎng)格的寬度表示為λi,數(shù)據(jù)集中任意數(shù)據(jù)點(diǎn)p的網(wǎng)格坐標(biāo)通過(guò)計(jì)算得到,即任意網(wǎng)格的標(biāo)識(shí)表示為Intkeyj,它在網(wǎng)格空間中的坐標(biāo)表示為(Intkeyj.x1,Intkeyj.x2,...,Intkeyj.xd),數(shù)據(jù)集P中的每個(gè)數(shù)據(jù)點(diǎn)都會(huì)被映射到相應(yīng)的網(wǎng)格中,對(duì)應(yīng)一個(gè)網(wǎng)格單元橋;
假定存在一個(gè)二元偏序關(guān)系>是在子空間F上的,偏序關(guān)系>表示在F中屬性重要性的大于關(guān)系,f1,f2是F上的兩個(gè)屬性,f1,f2∈F,如果f1的重要性大于f2,那么它們的偏序關(guān)系可以表示為f1>f2,得到一個(gè)有序的k維子空間{f1,f2,...,fk}。
在另一個(gè)實(shí)施例中,α-filtering過(guò)濾方法的處理步驟具體為:假定屬性取值越小越好,多目標(biāo)決策的優(yōu)化函數(shù)可被定義為min(f1(x),f2(x),...,fk(x)),其中x∈P,fi(x)是數(shù)據(jù)對(duì)象x在第i維屬性上的取值。
上述公式用來(lái)計(jì)算第一維屬性上取值最偏離用戶偏好的商店數(shù)據(jù)對(duì)象集合R1(商店物的結(jié)構(gòu)數(shù)據(jù)),R0表示初始化商店數(shù)據(jù)集P,由此獲得第一維屬性上取值相對(duì)優(yōu)的商店數(shù)據(jù)集合(即在這一維屬性中相對(duì)符合用戶預(yù)期的回復(fù)數(shù)據(jù)集)接下來(lái)在第一維已經(jīng)相對(duì)優(yōu)的商店數(shù)據(jù)集合中,利用公式(4.2)獲得第二維屬性取值最差的商店數(shù)據(jù)對(duì)象集合(即在這二維屬性中最不符合用戶想要的數(shù)據(jù)集),然后從商店數(shù)據(jù)集合中剔除掉,以此類(lèi)推,最后得到k維屬性取值都相對(duì)優(yōu)的商店數(shù)據(jù)對(duì)象集合
在一個(gè)實(shí)施例中,β-filtering過(guò)濾方法處理步驟具體為:假定商店子空間F中的屬性按用戶偏好排序的結(jié)果為{Mileage,Price,OccupancyRate},β1(β2,β3)是每個(gè)屬性對(duì)應(yīng)的閾值,當(dāng)β1=1時(shí),計(jì)算得到R1={p5,p6},而當(dāng)β1=7/9時(shí),R1={p5,p6,p1,p9},其中:P是在商店數(shù)據(jù)空間上的數(shù)據(jù)集。
在一個(gè)實(shí)施例中,所述分布式映射過(guò)濾的方法,在Spark的Map過(guò)程中,利用α-filtering、β-filtering過(guò)濾方法進(jìn)行過(guò)濾,在過(guò)濾后對(duì)不符合用戶偏好的數(shù)據(jù)進(jìn)行預(yù)處理;在Map階段的最后,根據(jù)關(guān)鍵詞key進(jìn)行value值的哈希匹配的過(guò)程為γ-filtering過(guò)濾方法,如果該所述哈希匹配不成功則通過(guò)洗牌過(guò)程送到Reduce端匯總處理。
在一個(gè)實(shí)施例中,子空間Skyline查詢的定義為:假定一個(gè)d維的商店數(shù)據(jù)空間S={s1,s2,...,sd},P={p1,p2,...,pn}是用戶申請(qǐng)查詢的商店信息,每個(gè)用戶申請(qǐng)查詢的商店數(shù)據(jù)點(diǎn)pi∈P都是空間S上的d維商店數(shù)據(jù)點(diǎn);
F是商店數(shù)據(jù)空間S上的子空間,云中心服務(wù)系統(tǒng)利用網(wǎng)格剪枝策略將數(shù)據(jù)空間S分成一個(gè)個(gè)子空間,|F|=k且k≤d,在商店數(shù)據(jù)空間S上的用戶申請(qǐng)查詢數(shù)據(jù)對(duì)象pi,pi在子空間F上的投影即為用戶申請(qǐng)查詢的商店數(shù)據(jù)與剪枝后的數(shù)據(jù)子空間重合,也便是云服務(wù)中心系統(tǒng)篩選的商店數(shù)據(jù)是用戶所需要的,也被表示為p′i是k元組,當(dāng)且僅當(dāng)子空間F上不存在用戶不需要的商店數(shù)據(jù)點(diǎn)p′j支配用戶需要的商店數(shù)據(jù)p′i,p′i是云中心服務(wù)系統(tǒng)通過(guò)子空間Skyline得到的結(jié)果,如圖6。
在一個(gè)實(shí)施例中,云中心服務(wù)系統(tǒng)執(zhí)行網(wǎng)格剪枝策略及分布式映射過(guò)濾方法,承擔(dān)子空間Skyline查詢流的主要計(jì)算的方法是:利用Spark作業(yè)將輸入的數(shù)據(jù)以<key,value>對(duì)的形式生成索引文件,然后啟動(dòng)Spark作業(yè)掃描整個(gè)索引文件,讀索引文件到Hashmap中,它是一種hash結(jié)構(gòu),包含兩部分內(nèi)容:key和value,數(shù)據(jù)結(jié)構(gòu)中的key部分用來(lái)緩存每維屬性的值,value部分用來(lái)緩存具有相同值的數(shù)據(jù)對(duì)象編號(hào)的列表,所有取該值的數(shù)據(jù)對(duì)象被包含在列表里。
實(shí)施例3:一種移動(dòng)互聯(lián)網(wǎng)和云計(jì)算環(huán)境下子空間Skyline查詢的智能商店選址系統(tǒng),涉及一種移動(dòng)互聯(lián)網(wǎng)和云計(jì)算環(huán)境下的子子空間Skyline查詢的智能商店選址通信系統(tǒng),該系統(tǒng)由云中心服務(wù)系統(tǒng)和智能移動(dòng)客戶端組成,執(zhí)行步驟如下:
S1.云中心服務(wù)系統(tǒng)提供網(wǎng)格剪枝策略及α-filtering過(guò)濾方法、β-filtering、γ-filtering過(guò)濾方法,并進(jìn)行基于Spark的子空間Skyline算法;
S2.客戶端是運(yùn)行在手機(jī)、個(gè)人數(shù)字助理等終端設(shè)備上的應(yīng)用程序(包括北斗定位裝置與陀螺儀等應(yīng)用),這些終端使用互聯(lián)網(wǎng)或者移動(dòng)網(wǎng)絡(luò)與服務(wù)器進(jìn)行通信,發(fā)送查詢請(qǐng)求并接收查詢結(jié)果。用戶可以在終端選擇對(duì)屬性的偏好程度并輸入各屬性的閾值,最后將查詢請(qǐng)求發(fā)送給服務(wù)器端。服務(wù)器是由多個(gè)節(jié)點(diǎn)組成的Spark云平臺(tái),具有強(qiáng)大的計(jì)算能力,承擔(dān)著子子空間Skyline查詢的主要計(jì)算工作。
作為技術(shù)方案的補(bǔ)充,該移動(dòng)互聯(lián)網(wǎng)和云計(jì)算環(huán)境下的子空間Skyline查詢的智能商店選址通信系統(tǒng)所使用的云中心端服務(wù)系統(tǒng)由不少于一個(gè)云數(shù)據(jù)中心的網(wǎng)絡(luò)服務(wù)器或虛擬主機(jī)所構(gòu)成的,采用云計(jì)算這種并行化計(jì)算來(lái)處理大規(guī)模數(shù)據(jù)應(yīng)對(duì)于大量的需要查找商店數(shù)據(jù)的用戶,并以分布式網(wǎng)格剪枝策略和三種用戶喜歡的過(guò)濾方法進(jìn)行提取和分析已有的商店數(shù)據(jù),通過(guò)移動(dòng)互聯(lián)網(wǎng)將選好的數(shù)據(jù)結(jié)果返回客戶端,是用戶自己進(jìn)行手動(dòng)選擇。
由云中心服務(wù)系統(tǒng)使用網(wǎng)格剪枝和三種過(guò)濾方法進(jìn)行子空間Skyline查詢,并將最優(yōu)結(jié)果返回用戶。
網(wǎng)格剪枝策略的處理步驟具體為:一個(gè)d維的商店數(shù)據(jù)空間S為云中心服務(wù)系統(tǒng)所有的商店數(shù)據(jù),P是云中心服務(wù)系統(tǒng)將商店數(shù)據(jù)空間S分成的數(shù)據(jù)集,每個(gè)商店數(shù)據(jù)點(diǎn)p∈P被表示為{x1,x2,...,xd}。每一維網(wǎng)格的寬度表示為λi。數(shù)據(jù)集中任意數(shù)據(jù)點(diǎn)p的網(wǎng)格坐標(biāo)可通過(guò)計(jì)算得到,即任意網(wǎng)格的標(biāo)識(shí)表示為Intkeyj,它在網(wǎng)格空間中的坐標(biāo)表示為(Intkeyj.x1,Intkeyj.x2,...,Intkeyj.xd),數(shù)據(jù)集P中的每個(gè)數(shù)據(jù)點(diǎn)都會(huì)被映射到相應(yīng)的網(wǎng)格中,對(duì)應(yīng)一個(gè)網(wǎng)格單元橋;α-filtering過(guò)濾方法的處理步驟具體為:用來(lái)計(jì)算第一維屬性上取值最偏離用戶喜好的商店數(shù)據(jù)對(duì)象集合R1,R0表示初始化商店數(shù)據(jù)集P,通過(guò)云中心服務(wù)系統(tǒng)將商店數(shù)據(jù)集合R1剔除,由此可以獲得第一維屬性上取值相對(duì)優(yōu)的商店數(shù)據(jù)集合即接下來(lái)在第一維已經(jīng)相對(duì)優(yōu)的商店數(shù)據(jù)集合中,利用公式獲得第二維屬性取值最差的商店數(shù)據(jù)對(duì)象集合,然后從商店數(shù)據(jù)集合中剔除掉。以此類(lèi)推,最后得到k維屬性取值都相對(duì)優(yōu)的商店數(shù)據(jù)對(duì)象集合ε-filtering過(guò)濾方法處理步驟具體為:在SQM-filtering過(guò)濾方法的基礎(chǔ)上,提供容忍度范圍的過(guò)濾方法β-filtering。在公式3.4中,εi(0≤εi≤1)就是為第i個(gè)屬性提供的容忍度限制閾值,εi的取值根據(jù)用戶喜好設(shè)定,它通常會(huì)提前由用戶通過(guò)查詢請(qǐng)求一起發(fā)送給服務(wù)器,執(zhí)行查詢。這樣每次過(guò)濾掉屬性取值偏離用戶喜好的數(shù)據(jù)對(duì)象多一些,獲取最終的結(jié)果集會(huì)相對(duì)小一些。這就是本文提出的另一種過(guò)濾方法,即βfiltering過(guò)濾方法。顯然當(dāng)εi≡1,(i=1,...,k)時(shí),過(guò)濾方法βfiltering將退化為α-filtering的過(guò)濾方法。
基于網(wǎng)格剪枝策略及α-filtering和β-filtering過(guò)濾的子子空間Skyline查詢的方法為:一個(gè)d維的數(shù)據(jù)空間S={s1,s2,...,sd},P={p1,p2,...,pn}是在數(shù)據(jù)空間S上的數(shù)據(jù)集,即每個(gè)數(shù)據(jù)點(diǎn)pi∈P都是空間S上的d維數(shù)據(jù)點(diǎn)。F是數(shù)據(jù)空間S上的子空間即|F|=k且k≤d。在數(shù)據(jù)空間S上的數(shù)據(jù)對(duì)象pi,pi在子空間F上的投影被表示為p′i是k元組。如果p′i是子空間Skyline結(jié)果,當(dāng)且僅當(dāng)子空間F上不存在點(diǎn)p′j支配p′i。
作為技術(shù)方案的補(bǔ)充,子空間Skyline查詢的定義為:例如酒店數(shù)據(jù),首先利用圖6中的Spark作業(yè)將輸入的酒店數(shù)據(jù)以<key,value>對(duì)的形式生成索引文件,然后啟動(dòng)Spark作業(yè)掃描整個(gè)索引文件,讀索引文件到Hashmap中,它是一種hash結(jié)構(gòu),包含兩部分內(nèi)容:key和value。數(shù)據(jù)結(jié)構(gòu)中的key部分用來(lái)緩存每維屬性的值,而value部分用來(lái)緩存具有相同值的數(shù)據(jù)對(duì)象編號(hào)的列表,所有取該值的數(shù)據(jù)對(duì)象被包含在列表里如圖6(a)所示。
以上所述,僅為本發(fā)明較佳的具體實(shí)施方式,但本發(fā)明的保護(hù)范圍并不局限于此,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明披露的技術(shù)范圍內(nèi),根據(jù)本發(fā)明的技術(shù)方案及其發(fā)明構(gòu)思加以等同替換或改變,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。