CN103984707B - 基于双阈值的分布式Top‑|K|查询方法 - Google Patents

基于双阈值的分布式Top‑|K|查询方法 Download PDF

Info

Publication number
CN103984707B
CN103984707B CN201410175464.6A CN201410175464A CN103984707B CN 103984707 B CN103984707 B CN 103984707B CN 201410175464 A CN201410175464 A CN 201410175464A CN 103984707 B CN103984707 B CN 103984707B
Authority
CN
China
Prior art keywords
management node
node
value
elements
negative
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN201410175464.6A
Other languages
English (en)
Other versions
CN103984707A (zh
Inventor
李国瑞
王颖
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Northeastern University China
Original Assignee
Northeastern University China
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Northeastern University China filed Critical Northeastern University China
Priority to CN201410175464.6A priority Critical patent/CN103984707B/zh
Publication of CN103984707A publication Critical patent/CN103984707A/zh
Application granted granted Critical
Publication of CN103984707B publication Critical patent/CN103984707B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/90335Query processing

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明涉及基于双阈值的分布式Top‑|K|查询方法。整个方案包括了三个阶段:双阈值计算阶段、候选集计算阶段、Top‑|K|查询阶段。本发明涉及一种分布式网络环境中查询绝对值最大的前K项元素聚合值(聚合函数的计算结果,如所有元素值的和)的方法,具体是一种通过部分已知数据构建分布式系统中元素聚合值的正、负阈值,从而在有限次交互过程中实现对绝对值最大的前K项元素聚合值进行查询的方法,可以应用于互联网、物联网等分布式系统中元素聚合值的Top‑|K|项查询。本发明能够大大节省数据传输量,降低查询时延。

Description

基于双阈值的分布式Top-|K|查询方法
技术领域
本发明涉及一种分布式网络环境中查询绝对值最大的前K项元素聚合值(聚合函数的计算结果,如所有元素值的和)的方法,具体是一种通过部分已知数据构建分布式系统中元素聚合值的正、负阈值,从而在有限次交互过程中实现对绝对值最大的前K项元素聚合值进行查询的方法,可以应用于互联网、物联网等分布式系统中元素聚合值的Top-|K|项查询。
背景技术
随着信息技术的不断发展,人们获取和处理数据的规模越来越大。在众多分布式应用中,如何实现快速高效地查询大规模数据集中的前|K|项数据具有重要的作用。分布式系统中需要处理的数据集分散在多个节点内,如图1所示。因此,获取同一元素的聚合值需要在多个节点间传递相应元素的信息。进而,查询绝对值最大的前K项元素聚合值需要在分布式系统中频繁传递大量的交互信息,从而造成带宽的消耗和查询的延时。
目前,分布式系统中Top-|K|查询采用单阈值的方法,查询过程需要在管理节点和成员节点间进行多次信息交换,需要消耗大量的带宽并产生较长时间的延迟,同时无法提前确定需求交互的次数。其他的Top-K方法只适用于具有单调特性的聚合函数,无法实现对绝对值最大的前K项元素聚合值进行查询的需求。
发明内容
本发明的目的在于查询分布式系统中绝对值最大的前K项元素的聚合值,适用于具有两阶段单调特性的聚合函数。
为实现上述目的,本发明采取了以下技术方案。整个方案包括了三个阶段:双阈值计算阶段、候选集计算阶段、Top-|K|查询阶段。方案中管理节点与成员节点之间的交互过程如图2所示。
分布式系统由m个节点构成,其中包括一个管理节点和多个成员节点,每个节点中包含一个由若干对(索引,值)构成并按值降序排列的元素列表Lj={(i,vj(i)),i=1,…nj},其中nj为该节点中包含元素的个数。管理节点遵循与成员节点相同的元素选取规则。定义全部元素和部分元素和全部元素和上界全部元素和下界
其中:
上述公式中vj(i)已知表示第j个节点中索引为i的元素在当前元素选取范围内,对于成员节点来说,该元素的值已由成员节点发送至管理节点;对于管理节点来说,该元素的值符合当前元素选取规则(在双阈值计算阶段中元素属于前K个正元素与后K个负元素集合,在候选集计算阶段中元素值属于大于等于的正元素或小于等于的负元素集合,在Top-|K|查询阶段中元素索引属于候选集S)。因此,vj(i)可以直接用于计算元素i的部分元素和、全部元素和上界或全部元素和下界。与之相对应,vj(i)未知表示第j个节点中索引为i的元素不在当前元素选取范围内,对于成员节点来说,该元素的值没有从成员节点发送至管理节点;对于管理节点来说,该元素的值不符合当前元素选取规则。因此,vj(i)无法用于计算元素i的部分元素和、全部元素和上界或全部元素和下界,分别需要用0、正阈值或负阈值来代替。
双阈值计算阶段包括以下具体步骤:
1)成员节点向管理节点发送前K个正元素与后K个负元素集合;
2)管理节点计算所有接收元素的部分和;
3)管理节点计算前K个正元素和下界并赋值给
4)管理节点计算后K个负元素和上界并赋值给
5)管理节点计算正阈值与负阈值
6)管理节点向所有成员节点发送正阈值与负阈值
候选集计算阶段包括以下具体步骤:
7)成员节点向管理节点发送所有未发送过的大于等于的正元素或小于等于的负元素集合;
8)管理节点计算所有接收元素的部分和;
9)管理节点计算前K个正元素部分和的下界并赋值给
10)管理节点计算后K个负元素部分和的上界并赋值给
11)管理节点计算所有接收元素的全部和上界;
12)管理节点计算所有接收元素的全部和下界;
13)管理节点构建候选集S={全部和上界或全部和下界的元素索引};
14)管理节点向所有成员节点发送候选集S。
Top-|K|查询阶段包括以下具体步骤:
15)成员节点向管理节点发送候选集S中所有未发送过的元素集合;
16)管理节点计算候选集S中所有元素的全部和;
17)管理节点选取候选集S中绝对值最大的前K个元素。
附图说明
图1分布式系统Top-|K|查询实例
图2管理节点与成员节点交互过程
具体实施方式
本发明在实施时包括双阈值计算阶段、候选集计算阶段、Top-|K|查询阶段三个阶段。本实例中分布式系统由3个节点构成,即m=3,其中包括一个管理节点和两个成员节点,每个节点中包含的元素列表如图1所示。本实例中K取值2,即查询Top-|2|项元素。
首先,执行双阈值计算阶段,按照以下具体步骤实施:
1)成员节点1向管理节点发送前2个正元素集合{(3,10),(1,8)}与后2个负元素集合{(4,-5),(2,-10)},成员节点2向管理节点发送前2个正元素集合{(6,12),(1,8)}与后2个负元素集合{(2,-6),(3,-7)};
2)管理节点计算所有接收元素的部分和。当前元素选取规则为元素属于前2个正元素与后2个负元素集合。对于索引为1的元素,管理节点中的(1,10)、成员节点1中的(1,8)、成员节点2中的(1,8)都符合当前元素选取规则,因此元素1的部分和P(1)=10+8+8=26。对于索引为3的元素,管理节点中的(3,3)不符合当前元素选取规则,因此用0代替其值,成员节点1中的(3,10)与成员节点2中的(3,-7)符合当前元素选取规则,因此元素3的部分和P(3)=0+10-7=3。其余元素的部分和计算方式与此类似,可以计算得到P(6)=12,P(4)=4,P(8)=-6,P(2)=-25;
3)管理节点计算前2个正元素和P(1)=26与P(6)=12的下界,并令
4)管理节点计算后2个负元素和P(8)=-6与P(2)=-25的上界,并令
5)管理节点计算正阈值与负阈值
6)管理节点向成员节点1与2发送正阈值4与负阈值-2。
其次,执行候选集计算阶段,按照以下具体步骤实施:
7)成员节点1向管理节点发送所有未发送过的大于等于正阈值4的正元素或小于等于负阈值-2的负元素集合{(8,-3)},成员节点2向管理节点发送所有未发送过的大于等于正阈值4的正元素或小于等于负阈值-2的负元素集合{(5,7)};
8)管理节点计算所有接收元素的部分和。当前元素选取规则为元素值属于大于等于4的正元素或小于等于-2的负元素集合。对于索引为1的元素,管理节点中的(1,10)、成员节点1中的(1,8)、成员节点2中的(1,8)都符合当前元素选取规则,因此元素1的部分和P(1)=10+8+8=26。对于索引为6的元素,管理节点中的(6,-1)与成员节点1中的(6,-1)都不符合当前元素选取规则,因此用0代替其值,成员节点2中的(6,12)符合当前元素选取规则,因此元素6的部分和P(6)=0+0+12=12。其余元素的部分和计算方式与此类似,可以计算得到P(3)=3,P(4)=4,P(5)=7,P(9)=-2,P(8)=-9,P(2)=-25;
9)管理节点计算前2个正元素部分和P(1)=26与P(6)=12的下界,并令
10)管理节点计算后2个负元素部分和P(8)=-9与P(2)=-25的上界,并令
11)管理节点计算所有接收元素的全部和上界。当前元素选取规则为元素值属于大于等于4的正元素或小于等于-2的负元素集合。对于索引为1的元素,管理节点中的(1,10)、成员节点1中的(1,8)、成员节点2中的(1,8)都符合当前元素选取规则,因此元素1的全部和上界U(1)=10+8+8=26。对于索引为3的元素,管理节点中的(3,3)不符合当前元素选取规则,因此用正阈值4代替其值,成员节点1中的(3,10)与成员节点2中的(3,-7)符合当前元素选取规则,因此元素3的全部和上界U(3)=4+10-7=7。其余元素的全部和上界计算方式与此类似,可以计算得到U(6)=20,U(4)=8,U(5)=15,U(9)=6,U(8)=-5,U(2)=-25;
12)管理节点计算所有接收元素的全部和下界。当前元素选取规则为元素值属于大于等于4的正元素或小于等于-2的负元素集合。对于索引为1的元素,管理节点中的(1,10)、成员节点1中的(1,8)、成员节点2中的(1,8)都符合当前元素选取规则,因此元素1的全部和下界L(1)=10+8+8=26。对于索引为3的元素,管理节点中的(3,3)不符合当前元素选取规则,因此用负阈值-2代替其值,成员节点1中的(3,10)与成员节点2中的(3,-7)符合当前元素选取规则,因此元素3的全部和下界L(3)=-2+10-7=1。其余元素的全部和下界计算方式与此类似,可以计算得到L(6)=8,L(4)=2,L(5)=3,L(9)=-6,L(8)=-11,L(2)=-25;
13)管理节点构建候选集S={全部和上界≥12或全部和下界≤-9的元素索引}={1,6,5,8,2};
14)管理节点向成员节点1和成员节点2发送候选集S={1,6,5,8,2}。Top-|K|查询阶段包括以下具体步骤:
15)成员节点1向管理节点发送候选集S中所有未发送过的元素集合{(5,3),(6,-1)},成员节点2无需再向管理节点发送候选集S中所有未发送过的元素集合,因为候选集S中所有未发送过的元素集合为空;
16)管理节点计算候选集S中所有元素的全部和。当前元素选取规则为元素索引属于候选集S。对于索引为1的元素,管理节点中的(1,10)、成员节点1中的(1,8)、成员节点2中的(1,8)都符合当前元素选取规则,因此元素1的全部和V(1)=10+8+8=26。对于索引为6的元素,管理节点中的(6,-1)、成员节点1中的(6,-1)、成员节点2中的(6,12)都符合当前元素选取规则,因此元素6的全部和V(6)=-1-1+12=10。其余元素的全部和计算方式与此类似,可以计算得到V(5)=11,V(8)=-9,V(2)=-25;
17)管理节点选取候选集S中绝对值最大的前2项元素,得到{(1,26),(2,-25)}。
在本实例中,通过利用基于双阈值的分布式Top-|K|查询方法,两个成员节点总共只需传递75%的元素值,通过与管理节点的3次交互即可完成Top-|K|查询。而利用基于单阈值的分布式Top-|K|查询方法,两个成员节点总共需要传递93.75%的元素值,通过与管理节点的8次交互才可以完成Top-|K|查询。因此,在本实例中基于双阈值的分布式Top-|K|查询方法比基于单阈值的分布式Top-|K|查询方法能够节省20%的数据传输量,降低62.5%的查询时延。

Claims (1)

1.一种基于双阈值的分布式Top-|K|查询方法,其特征在于,整个方案包括了三个阶段:双阈值计算阶段、候选集计算阶段、Top-|K|查询阶段;
分布式系统由m个节点构成,其中包括一个管理节点和多个成员节点,每个节点中包含一个由若干对(索引,值)构成并按值降序排列的元素列表Lj={(i,vj(i)),i=1,…nj},其中nj为该节点中包含元素的个数;
管理节点遵循与成员节点相同的元素选取规则;定义全部元素和部分元素和全部元素和上界全部元素和下界其中:
上述公式中vj(i)已知表示第j个节点中索引为i的元素在当前元素选取范围内,对于成员节点来说,该元素的值已由成员节点发送至管理节点;对于管理节点来说,该元素的值符合当前元素选取规则即在双阈值计算阶段中元素属于前K个正元素与后K个负元素集合,在候选集计算阶段中元素值属于大于等于的正元素或小于等于T的负元素集合,在Top-|K|查询阶段中元素索引属于候选集S;因此,vj(i)直接用于计算元素i的部分元素和、全部元素和上界或全部元素和下界;
与之相对应,vj(i)未知表示第j个节点中索引为i的元素不在当前元素选取范围内,对于成员节点来说,该元素的值没有从成员节点发送至管理节点;对于管理节点来说,该元素的值不符合当前元素选取规则;因此,vj(i)无法用于计算元素i的部分元素和、全部元素和上界或全部元素和下界,分别需要用0、正阈值或负阈值T来代替;
双阈值计算阶段包括以下具体步骤:
1)成员节点向管理节点发送前K个正元素与后K个负元素集合;
2)管理节点计算所有接收元素的部分和;
3)管理节点计算前K个正元素和下界并赋值给
4)管理节点计算后K个负元素和上界并赋值给τ 1
5)管理节点计算正阈值与负阈值Tτ 1/m;
6)管理节点向所有成员节点发送正阈值与负阈值T
候选集计算阶段包括以下具体步骤:
7)成员节点向管理节点发送所有未发送过的大于等于的正元素或小于等于T的负元素集合;
8)管理节点计算所有接收元素的部分和;
9)管理节点计算前K个正元素部分和的下界并赋值给
10)管理节点计算后K个负元素部分和的上界并赋值给τ 2
11)管理节点计算所有接收元素的全部和上界;
12)管理节点计算所有接收元素的全部和下界;
13)管理节点构建候选集
14)管理节点向所有成员节点发送候选集S;
Top-|K|查询阶段包括以下具体步骤:
15)成员节点向管理节点发送候选集S中所有未发送过的元素集合;
16)管理节点计算候选集S中所有元素的全部和;
17)管理节点选取候选集S中绝对值最大的前K个元素。
CN201410175464.6A 2014-04-28 2014-04-28 基于双阈值的分布式Top‑|K|查询方法 Expired - Fee Related CN103984707B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410175464.6A CN103984707B (zh) 2014-04-28 2014-04-28 基于双阈值的分布式Top‑|K|查询方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410175464.6A CN103984707B (zh) 2014-04-28 2014-04-28 基于双阈值的分布式Top‑|K|查询方法

Publications (2)

Publication Number Publication Date
CN103984707A CN103984707A (zh) 2014-08-13
CN103984707B true CN103984707B (zh) 2017-04-05

Family

ID=51276680

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410175464.6A Expired - Fee Related CN103984707B (zh) 2014-04-28 2014-04-28 基于双阈值的分布式Top‑|K|查询方法

Country Status (1)

Country Link
CN (1) CN103984707B (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103678609A (zh) * 2013-12-16 2014-03-26 中国科学院计算机网络信息中心 一种基于分布式关系-对象映射处理的大数据查询的方法
CN103744934A (zh) * 2013-12-30 2014-04-23 南京大学 一种基于位置敏感哈希的分布式索引方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8880588B2 (en) * 2010-10-29 2014-11-04 Fujitsu Limited Technique for stateless distributed parallel crawling of interactive client-server applications

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103678609A (zh) * 2013-12-16 2014-03-26 中国科学院计算机网络信息中心 一种基于分布式关系-对象映射处理的大数据查询的方法
CN103744934A (zh) * 2013-12-30 2014-04-23 南京大学 一种基于位置敏感哈希的分布式索引方法

Also Published As

Publication number Publication date
CN103984707A (zh) 2014-08-13

Similar Documents

Publication Publication Date Title
CN103678431B (zh) 一种基于标准标签和项目评分的推荐方法
CN110969250B (zh) 一种神经网络训练方法及装置
CN105824911B (zh) 基于lda用户主题模型的视频推荐方法
TW201835789A (zh) 評分模型的建立、用戶信用的評估方法及裝置
CN111460384B (zh) 策略的评估方法、装置和设备
CN107545444B (zh) 一种业务广告数据推荐方法以及装置
CN104199836B (zh) 一种基于子兴趣划分的标注用户模型建构方法
CN109447110A (zh) 综合邻居标签相关性特征和样本特征的多标签分类的方法
CN111563198B (zh) 一种物料召回方法、装置、设备及存储介质
Ben-Shimon et al. An ensemble method for top-N recommendations from the SVD
CN105160097B (zh) 一种利用人口迁移算法的三值fprm电路面积优化方法
CN115049076A (zh) 基于原型网络的迭代聚类式联邦学习方法
CN112380104A (zh) 用户属性识别方法、装置、电子设备及存储介质
CN113837492B (zh) 物品供应量的预测方法、设备、存储介质及程序产品
CN105069003B (zh) 一种基于转发链相似度的用户关注对象推荐计算方法
CN103984707B (zh) 基于双阈值的分布式Top‑|K|查询方法
CN112819497B (zh) 转化率预测方法、装置、设备和存储介质
Xiao et al. Research and implementation of hybrid recommendation algorithm based on collaborative filtering and word2vec
CN116975018A (zh) 一种数据处理方法、装置、计算机设备以及可读存储介质
CN103942278B (zh) 通过分析用户主动交友意愿进行朋友推荐的方法
CN104298786B (zh) 一种图像检索方法及装置
Fu et al. CIC-FL: enabling class imbalance-aware clustered federated learning over shifted distributions
Zhao Research on e-commerce customer churning modeling and prediction
CN109325511A (zh) 一种改进特征选择的算法
CN109299365A (zh) 一种基于数据流的异常用户检索系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20170405