图计算的类别型变量存储方法、装置、设备及存储介质制造方法及图纸

技术编号:22688961 阅读:14 留言:0更新日期:2019-11-30 03:35
本发明专利技术涉及大数据技术领域,公开了图计算的类别型变量存储方法、装置、设备及存储介质。图计算的类别型变量存储方法包括:获取节点属性的多个预置的类别型变量,预置的类别型变量的取值为整数;对多个预置的类别型变量进行统计,得到类别型变量的总个数N,N为正整数;根据预置算法计算每个预置的类别型变量的存储比特数K

Storage method, device, equipment and storage medium of category variable in Figure calculation

The invention relates to the technical field of big data, and discloses a class variable storage method, device, device and storage medium of graph calculation. The storage methods of category variables in Figure calculation include: obtaining multiple preset category variables of node attributes, and the value of preset category variables is an integer; counting multiple preset category variables, and getting the total number of category variables n, n is a positive integer; calculating the storage bits K of each preset category variable according to the preset algorithm

【技术实现步骤摘要】
图计算的类别型变量存储方法、装置、设备及存储介质
本专利技术涉及节点存储领域,尤其涉及一种图计算的类别型变量存储方法、装置、设备及存储介质。
技术介绍
图数据挖掘是关系挖掘和群体画像中的重要方法。图数据由节点和边组成,图中的节点用于表示发生连接的主体,边用来表示主体之间的关联,边越密集,边权重越大,表示关联越强。图数据主要由节点属性和边属性构成,在图计算中涉及大量节点属性的数据存储。节点属性的数据存储包括大量类别型变量,例如,判定节点属于哪一种特定类别,其类别从1到n,n为大于1的正整数,类别型变量的取值一般以整数的形式来表示。在典型的图计算环境中,对于分布式图处理框架GraphX或者Giraph,通常以int32类型或者int64类型方式对节点属性的类别型变量进行存储,也就是单个类别型变量占用32比特或者64比特的内存空间。目前大规模图数据往往包含亿级节点,采用现有技术中存储节点属性的算法会耗费大量内存,因此,如何减少存储节点属性导致消耗大量存储资源,是大规模图计算需要解决的关键问题。
技术实现思路
本专利技术的主要目的在于解决了大规模图计算中采用整型存储节点属性的类别型变量导致消耗大量存储资源的技术问题。为实现上述目的,本专利技术第一方面提供了一种图计算的类别型变量存储方法,包括:获取节点属性的多个预置的类别型变量,所述预置的类别型变量的取值为整数;对多个预置的类别型变量进行统计,得到所述预置的类别型变量的总个数N,所述N为正整数;根据预置算法计算每个预置的类别型变量的存储比特数Ki,所述Ki为正整数,i的取值范围为小于等于所述N的正整数;根据每个预置的类别型变量的存储比特数Ki和预置顺序对每个预置的类别型变量的取值进行存储;当检测到读取所述节点属性的至少一个预置的类别型变量时,按照所述预置顺序读取至少一个预置的类别型变量的取值。可选的,在本专利技术第一方面的第一种实现方式中,所述根据预置算法计算每个预置的类别型变量的存储比特数Ki,所述Ki为正整数,i的取值范围为小于等于所述N的正整数包括:确定每个预置的类别型变量指示的预置类别总数量n,n为正整数,所述预置类别包括至少一个整数值;根据比特数计算公式对每个预置的类别型变量进行计算,得到每个预置的类别型变量的存储比特数Ki,所述Ki为正整数,i的取值范围为小于等于所述N的正整数,所述比特数计算公式如下:Ki=ceil(log2n),其中,log2n表示以2为底n的对数,ceil表示向上取整。可选的,在本专利技术第一方面的第二种实现方式中,所述根据每个预置的类别型变量的存储比特数Ki和预置顺序对每个预置的类别型变量的取值进行存储包括:读取节点标签数据存储空间,所述节点标签数据存储空间用于存储所述节点属性的多个预置类型变量的取值,所述预置类型变量包括类别型变量;根据每个预置的类别型变量的存储比特数Ki对所述节点标签数据存储空间按照预置顺序进行划分,得到划定的存储比特位区间;将多个预置的类别型变量的取值按照所述预置顺序写入到所述划定的存储比特位区间上。可选的,在本专利技术第一方面的第三种实现方式中,所述根据每个预置的类别型变量的存储比特数Ki对所述节点标签数据存储空间按照预置顺序进行划分,得到划定的存储比特位区间包括:从所述节点标签数据存储空间中确定初始比特位;根据所述初始比特位对每个预置的类别型变量的存储比特数Ki进行顺序加法运算,得到每个预置的类别型变量的起始比特位和结束比特位,并记录每个预置的类别型变量的起始比特位和结束比特位;根据每个预置的类别型变量的起始比特位和结束比特位进行统计,得到划定的存储比特位区间。可选的,在本专利技术第一方面的第四种实现方式中,所述将多个预置的类别型变量的取值按照所述预置顺序写入到所述划定的存储比特位区间上包括:读取N个预置的类别型变量各自对应的起始比特位和结束比特位;根据所述各自对应的起始比特位和结束比特位将N个预置的类别型变量按照所述预置顺序依次写入到所述划定的存储比特位区间上。可选的,在本专利技术第一方面的第五种实现方式中,所述对多个预置的类别型变量进行统计,得到所述预置的类别型变量的总个数N,所述N为正整数包括:将每个预置的类别型变量的数量设置为1;对多个预置的类别型变量的数量进行求和运算,得到所述预置的类别型变量的总个数N,其中,N正整数。可选的,在本专利技术第一方面的第六种实现方式中,所述当检测到读取所述节点属性的至少一个预置的类别型变量时,按照所述预置顺序读取多个预置的类别型变量的取值包括:接收读取所述节点属性的至少一个预置的类别型变量的请求;按照所述预置顺序依次读取至少一个预置的类别型变量各自对应的起始比特位和结束比特位;根据所述各自对应的起始比特位和结束比特位从所述划定的存储比特位区间中依次读取至少一个预置的类别型变量的取值,并将至少一个预置的类别型变量的取值依次赋值给对应的类别型变量。本专利技术第二方面提供了一种图计算的类别型变量存储装置,包括:获取单元,用于获取节点属性的多个预置的类别型变量,所述预置的类别型变量的取值为整数;统计单元,用于对多个预置的类别型变量进行统计,得到所述预置的类别型变量的总个数N,所述N为正整数;计算单元,用于根据预置算法计算每个预置的类别型变量的存储比特数Ki,所述Ki为正整数,i的取值范围为小于等于所述N的正整数;存储单元,用于根据每个预置的类别型变量的存储比特数Ki和预置顺序对每个预置的类别型变量的取值进行存储;读取单元,当检测到读取所述节点属性的至少一个预置的类别型变量时,用于按照所述预置顺序读取至少一个预置的类别型变量的取值。可选的,在本专利技术第二方面的第一种实现方式中,所述计算单元具体用于:确定每个预置的类别型变量指示的预置类别总数量n,n为正整数,所述预置类别包括至少一个整数值;根据比特数计算公式对每个预置的类别型变量进行计算,得到每个预置的类别型变量的存储比特数Ki,所述Ki为正整数,i的取值范围为小于等于所述N的正整数,所述比特数计算公式如下:Ki=ceil(log2n),其中,log2n表示以2为底n的对数,ceil表示向上取整。可选的,在本专利技术第二方面的第二种实现方式中,所述存储单元还包括:读取子单元,用于读取节点标签数据存储空间,所述节点标签数据存储空间用于存储所述节点属性的多个预置类型变量的取值,所述预置类型变量包括类别型变量;划分子单元,用于根据每个预置的类别型变量的存储比特数Ki对所述节点标签数据存储空间按照预置顺序进行划分,得到划定的存储比特位区间;写入子单元,用于将多个预置的类别型变量的取值按照所述预置顺序写入到所述划定的存储比特位区间上。可选的,在本专利技术第二方面的第三种实现方式中,所述划分子单元具体用于:从所述节点标签数据存储空间中确定初始比特位;根据所述初始比特位对每个预置的类别型变量的存储比特数Ki进行顺序加法运算,得到每个预置的类别型变量的起始比特位和结束比特位,并记录每个预置的类别型变量的起始比特位和结束比特位;根据每个预置的类别型变量的起始比特位和结束比特位进行统计,得到划定的存储比特位区间。本文档来自技高网...

【技术保护点】
1.一种图计算的类别型变量存储方法,其特征在于,包括:/n获取节点属性的多个预置的类别型变量,所述预置的类别型变量的取值为整数;/n对多个预置的类别型变量进行统计,得到所述预置的类别型变量的总个数N,所述N为正整数;/n根据预置算法计算每个预置的类别型变量的存储比特数K

【技术特征摘要】
1.一种图计算的类别型变量存储方法,其特征在于,包括:
获取节点属性的多个预置的类别型变量,所述预置的类别型变量的取值为整数;
对多个预置的类别型变量进行统计,得到所述预置的类别型变量的总个数N,所述N为正整数;
根据预置算法计算每个预置的类别型变量的存储比特数Ki,所述Ki为正整数,i的取值范围为小于等于所述N的正整数;
根据每个预置的类别型变量的存储比特数Ki和预置顺序对每个预置的类别型变量的取值进行存储;
当检测到读取所述节点属性的至少一个预置的类别型变量时,按照所述预置顺序读取至少一个预置的类别型变量的取值。


2.根据权利要求1所述的图计算的类别型变量存储方法,其特征在于,所述根据预置算法计算每个预置的类别型变量的存储比特数Ki,所述Ki为正整数,i的取值范围为小于等于所述N的正整数包括:
确定每个预置的类别型变量指示的预置类别总数量n,n为正整数,所述预置类别包括至少一个整数值;
根据比特数计算公式对每个预置的类别型变量进行计算,得到每个预置的类别型变量的存储比特数Ki,所述Ki为正整数,i的取值范围为小于等于所述N的正整数,所述比特数计算公式如下:
Ki=ceil(log2n),其中,log2n表示以2为底n的对数,ceil表示向上取整。


3.根据权利要求1所述的图计算的类别型变量存储方法,其特征在于,所述根据每个预置的类别型变量的存储比特数Ki和预置顺序对每个预置的类别型变量的取值进行存储包括:
读取节点标签数据存储空间,所述节点标签数据存储空间用于存储所述节点属性的多个预置类型变量的取值,所述预置类型变量包括类别型变量;
根据每个预置的类别型变量的存储比特数Ki对所述节点标签数据存储空间按照预置顺序进行划分,得到划定的存储比特位区间;
将多个预置的类别型变量的取值按照所述预置顺序写入到所述划定的存储比特位区间上。


4.根据权利要求3所述的图计算的类别型变量存储方法,其特征在于,所述根据每个预置的类别型变量的存储比特数Ki对所述节点标签数据存储空间按照预置顺序进行划分,得到划定的存储比特位区间包括:
从所述节点标签数据存储空间中确定初始比特位;
根据所述初始比特位对每个预置的类别型变量的存储比特数Ki进行顺序加法运算,得到每个预置的类别型变量对应的起始比特位和结束比特位,并记录每个预置的类别型变量对应的起始比特位和结束比特位;
根据每个预置的类别型变量对应的起始比特位和结束比特位进行统计,得到划定的存储比特位区间。


5.根据权利要求4所述的图计算的类别型变量存储方法,其特征在于,所述将多个...

【专利技术属性】
技术研发人员:邓强张娟屠宁赵之砚施奕明
申请(专利权)人:平安科技深圳有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1