CN114691694A - 一种树状数据存储和处理的方法及系统 - Google Patents
一种树状数据存储和处理的方法及系统 Download PDFInfo
- Publication number
- CN114691694A CN114691694A CN202210366097.2A CN202210366097A CN114691694A CN 114691694 A CN114691694 A CN 114691694A CN 202210366097 A CN202210366097 A CN 202210366097A CN 114691694 A CN114691694 A CN 114691694A
- Authority
- CN
- China
- Prior art keywords
- tree
- database
- tree data
- data
- processing
- 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.)
- Pending
Links
- 238000013500 data storage Methods 0.000 title claims abstract description 17
- 238000003672 processing method Methods 0.000 title description 2
- 230000015654 memory Effects 0.000 claims abstract description 46
- 238000012545 processing Methods 0.000 claims abstract description 40
- 238000000034 method Methods 0.000 claims abstract description 31
- 239000012634 fragment Substances 0.000 claims description 73
- 238000013507 mapping Methods 0.000 claims description 8
- 238000004422 calculation algorithm Methods 0.000 claims description 5
- 238000006243 chemical reaction Methods 0.000 claims description 3
- 230000006870 function Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 10
- 238000004590 computer program Methods 0.000 description 7
- 238000005192 partition Methods 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000013144 data compression Methods 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000001902 propagating effect Effects 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 229910052802 copper Inorganic materials 0.000 description 1
- 239000010949 copper Substances 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000002360 explosive Substances 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2246—Trees, e.g. B+trees
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2255—Hash tables
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2282—Tablespace storage structures; Management thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0201—Market modelling; Market analysis; Collecting market data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0631—Item recommendations
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Finance (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Accounting & Taxation (AREA)
- General Engineering & Computer Science (AREA)
- Development Economics (AREA)
- Strategic Management (AREA)
- Software Systems (AREA)
- Entrepreneurship & Innovation (AREA)
- Economics (AREA)
- Marketing (AREA)
- General Business, Economics & Management (AREA)
- Computing Systems (AREA)
- Game Theory and Decision Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种树状数据存储和处理的方法,包括以下步骤:建立数据库,所述数据库储存于控制服务器的存储器中;压缩推荐关系树状数据占用的存储空间;将处理后的推荐关系树状数据导入数据库中。通过把推荐关系树状数据进行压缩数据存储空间的处理后,再存储到数据库中,可以有效地减小占据的存储空间体积,进而提高查询效率,同时根据推荐关系树状数据的特点,有效地规划储存数据空间从而追踪多级推荐关系链中的推荐关系。解决了现有技术中树状数据存储和处理中无法追踪多级推荐关系链,而且数据杂乱,占据的存储空间大,查询效率低下的问题。
Description
技术领域
本发明涉及数据存储和处理的领域,具体涉及一种树状数据存储和处理的方法及系统。
背景技术
随着互联网的飞速发展,人与人之间的沟通,很大程度上都转移到社交平台上,因此在社交过程中会产生大量的供应与需求信息,但根据现有技术可知:供应与需求信息零散、零乱,需求方无法获得快速、精准的供应信息,供应商无法寻找合适的需求方,也无法预知有多少可用需求,从而无法安排采购、生产、供应计划,进而出现了市场上各种待售商品以及服务的滞销,也给需求方带来了生活上的不便。
基于此,针对大量的购物数据进行有针对性地共享成为了广大用户的一种选择行为,如何通过数据共享的方式可以减少其它用户寻找关键商品的时间,节省服务器的计算压力和推送压力,是亟待解决的技术问题。目前市面上存在的一些追踪用户多级推荐关系链的会员电商系统的推荐粒度是针对整个系统而不是针对系统内的不同商品,其推荐关系在用户注册时确定而不是在用户首次接触商品时确定。此模式缺陷在于,无法追踪多级推荐关系链,而且数据杂乱,占据的存储空间大,查询效率低下。
发明内容
为了克服上述现有技术中,树状数据存储和处理中无法追踪多级推荐关系链,而且数据杂乱,占据的存储空间大,查询效率低下的技术缺陷,本发明提供一种树状数据存储和处理的方法及系统。
为了解决上述问题,本发明按以下技术方案予以实现的:
第一方面,本发明公开一种树状数据存储和处理的方法,包括以下步骤:
步骤S1:建立数据库,所述数据库储存于控制服务器的存储器中;
步骤S2:压缩推荐关系树状数据占用的存储空间;
其中,所述推荐关系树状数据包括用户ID编号。
其中,采用64进制算法将推荐关系树状数据进行进制转换。
步骤S3:将处理后的推荐关系树状数据导入数据库中。
具体的,所述数据库呈多叉树结构,并确定多叉树结构数据库中一个树状分片最大存储长度L;将推荐关系树状数据导入数据库中;根据索引原理对树状分片构建索引。
具体的,若推荐关系树状数据的长度M超过单个树状分片的最大长度即M>L,则新增新的树状分片,将推荐关系树状数据存储到若干个树状分片中。
其中,根据索引原理对新增的树状分片构建索引。
其中,当树状分片的数量达到特定数量时,所述控制服务器采用一致性hash或分片固定取模的方式将数据库进行分布式存储。
其中,计算出数据库中树状分片所对应存储器的哈希值,并将其配置到0~232的圆上;
采用同样的方法求出数据库中树状分片的索引的哈希值,并映射到相同的圆上。
第二方面,本发明公开一种树状数据存储和处理的系统,包括:
控制服务器,包括若干个存储器,储存有一建立多叉树状结构的数据库,所述多叉树状结构数据库设有若干树状分片;
处理器,连接于所述控制服务器;
所述处理器将推荐关系树状数据进行压缩处理并将压缩处理后的推荐关系树状数据储存至所述控制服务器中的数据库。
具体的,所述处理器计算出数据库中树状分片对应存储器的哈希值,并将其配置到0~232的圆上;采用同样的方法求出数据库中树状分片的索引的哈希值,并映射到相同的圆上建立数据库,所述数据库储存于控制服务器的第一存储器中;
与现有技术相比,本发明的有益效果是:
本发明通过把推荐关系树状数据进行压缩数据存储空间的处理后,再存储到数据库中,可以有效地减小占据的存储空间体积,进而提高查询效率,同时根据推荐关系树状数据的特点,有效地规划储存数据空间从而追踪多级推荐关系链中的推荐关系。
附图说明
下面结合附图对本发明的具体实施方式作进一步详细的说明,其中:
图1是本发明的一种树状数据存储和处理的方法的流程示意图一。
具体实施方式
下面将参照附图更详细地描述本公开的优选实施例。虽然附图中显示了本公开的优选实施例,然而应所述理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
在本文中使用的术语“包括”及其变形表示开放性包括,即“包括但不限于”。除非特别申明,术语“或”表示“和/或”。术语“基于”表示“至少部分地基于”。术语“一个示例实施例”和“一个实施例”表示“至少一个示例实施例”。术语“另一实施例”表示“至少一个另外的实施例”。术语“第一”、“第二”等等可以指代不同的或相同的对象。下文还可能包括其他明确的和隐含的定义。
访问设备和服务器可以通过有线或无线通信方式进行直接或间接地连接。访问设备可以是终端,也可以是服务器。访问设备上运行了目标应用。目标应用是能够向服务器发起数据请求的应用程序,如社交应用、支付应用、游戏应用等。服务器可以是目标应用提供服务的应用服务器,也可以是区别与目标应用所对应应用服务器的代理服务器。服务器用于识别每个访问设备是否属于恶意设备,对来自恶意设备的数据报文进行拦截。当服务器为代理服务器时,代理服务器将不属于来自恶意设备的数据报文转发至应用服务器。终端具体可以是台式终端或移动终端,移动终端具体可以智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。服务器与服务器分别可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。
实施例1
第一方面,如图1所示,本发明实施例公开一种树状数据存储和处理的方法,包括以下步骤:
步骤S1:建立数据库,所述数据库储存于控制服务器的存储器中。
在一种实施方式中,数据库为N个层级结构;具体的,为150层级结构。
在一种实施方式中,所述控制服务器设有多个存储器,所述数据库为多叉树结构数据库,所述多叉树结构包括若干个树状分片,通过把不同的树状分片存储在不同的存储器中,从而实现数据分散存储的目的。
步骤S2:压缩推荐关系树状数据占用的存储空间。
其中,所述推荐关系树状数据包括用户ID编号。
其中,所述压缩存储空间处理包括霍夫曼编码、字典方法、哥伦布指数编码、算数编码和行程长度编码的一种或多种。通过压缩存储空间处理可以将推荐关系树状数据进行数据压缩,减少推荐关系树状数据所需的存储空间,进而便于数据的存储和处理。
具体的,采用64进制算法将推荐关系树状数据进行进制转换,从而压缩推荐关系树状数据的存储空间。
步骤S3:将处理后的推荐关系树状数据导入数据库中。
具体的,所述数据库呈多叉树结构,并确定多叉树结构数据库中所述树状分片最大存储长度L;将推荐关系树状数据导入数据库中;并根据索引原理对所述树状分片构建索引。
具体的,若推荐关系树状数据的长度M超过单个树状分片的最大长度即M>L,则新增新的树状分片,将推荐关系树状数据存储到若干个树状分片内。所述推荐关系树状数据对应的树状分片数量为M/L并向上取整。即当M/L为整数时,所述树状分片的数量为(M/L);当M/L有余数或为分数时,所述树状分片的数量为M/L的除法商加1。
假设M=3L+2,L>2,即推荐关系树状数据的存储空间包含4个树状分片,其中0~M1段的数据存储在第一树状分片,M1~M2段的数据存储在第二树状分片,M2~M3段的数据存储在第三树状分片,M3~M3+2段的数据存储在第四树状分片。其中,不同的树状分片可以根据存储器的大小或存储空间的饱满度进而选择是否储存到相同的存储器中,避免物化路径存储方案路径层级深度超过存储器存储字段的长度问题。
其中,根据索引原理对新增的树状分片构建索引。
步骤S4:应用服务器将响应于所述客户端发出的指令,并传送数据异动请求至所述控制服务器。
步骤S5:所述控制服务器读取所述推荐关系树状数据,并依据所述数据异动请求更新所述存储器中的所述推荐关系树状数据以及更新所述数据库。
具体的,当数据库需要更新时,所述控制服务器通过mysql索引查询数据库中的指定推荐关系树状数据,若推荐关系树状数据在存储过程中进行了树状分片处理,则去对应树状分片进行更新操作。所述树状分片处理具体为因推荐关系树状数据的长度M超过单个树状分片的最大长度即M>L,则新增新的树状分片分布式存储数据。
其中,所述构建索引为利用mysql数据库的索引机制对树状分片创建相应的索引键,通过索引键可以提高用户对数据库的查询速度。当关系树状数据太大而采用了多个树状分片进行存储时,用户可以根据索引键的指引快速地去到相应树状分片进行查询或更新操作。进一步的,所述树状分片中含有用户ID编号,所述mysql数据库的索引机制对用户ID编号创建相应的子索引键,利于用户可以快速对目标用户ID编号进行查询或更新操作。
其中,当树状分片的数量达到特定数量时,所述控制服务器采用一致性hash或分片固定取模的方式将数据库进行分布式存储。
Hash,一般翻译做散列、杂凑,或音译为哈希,是把任意长度的输入通过散列算法变换成固定长度的输出,该输出就是散列值。这种转换是一种压缩映射,也就是,散列值的空间通常远小于输入的空间,不同的输入可能会散列成相同的输出,所以不可能从散列值来确定唯一的输入值。简单的说就是一种将任意长度的消息压缩到某一固定长度的消息摘要的函数。
其中,计算出数据库中树状分片所对应存储器的哈希值,并将其配置到0~232的圆上;采用同样的方法求出数据库中树状分片的索引的哈希值,并映射到相同的圆上。通过在圆上设置存储器的哈希值和树状分片的索引的哈希值两者间的映射关系,进而可以由树状分片的索引确定其所存储的位置。
具体的,一致性Hash算法将整个Hash空间组织成一个虚拟的圆环,Hash函数的值空间为0~232-1(一个32位无符号整型);将各个存储器使用Hash进行一个哈希,具体可以选择存储器的IP或主机名作为关键字进行哈希,这样每台存储器就确定在了哈希环的一个位置上;将数据中的键使用相同的函数Hash计算出哈希值,并确定此数据在环上的位置,从此位置沿环顺时针查找,遇到的存储器就是其应该定位到的存储器。进而根据定位到的存储器对数据进行处理。
首先把推荐关系树状数据分片式存储到数据库中的不同树状分片,然后利用索引机制可以快速定位各树状分片在控制服务器中的位置,达到在保证查询速度的情况下,把推荐关系树状数据的不同树状分片存储到不同的存储器中的目的,即在分布式存储数据的情况下,数据查询或更新速度不会降低。解决了邻接表存储方案多级查询递归导致频繁IO问题;解决了物化路径存储方案路径层级深度超过数据库存储字段的长度问题;解决了左右值存储方案树状结构节点新增或迁移导致全表计算问题;解决了闭包表存储方案层级越深数据量爆炸式增长的问题。
下面结合具体实施方式说明本发明:
控制服务器对所要添加的关系链进行数据压缩处理。同时,当推荐关系树状数据的长度M超过单个树状分片的最大长度即M>L时,所述新增新的树状分片,继续对超过单个树状分片的最大长度的部分推荐关系树状数据进行存储。
假设M=3L+2,即数据库包含4个树状分片,其中0~M1段的数据存储在第一树状分片,M1~M2段的数据存储在第二树状分片,M2~M3段的数据存储在第三树状分片,M3~M3+2段的数据存储在第四树状分片。其中不同的树状分片储存在不同的存储器中,避免物化路径存储方案路径层级深度超过数据库存储字段的长度问题。通过将各个存储器使用Hash进行一个哈希,具体可以选择存储器的IP或主机名作为关键字进行哈希,这样每台存储器就确定在了哈希环的一个位置上;将数据库中树状分片的索引键或数据中用户ID编号使用相同的函数Hash计算出哈希值,并确定此数据在环上的位置,从此位置沿环顺时针查找,遇到的存储器就是其应该定位到的存储器。即通过一致性hash,可以通过数据库中树状分片的索引键或数据中用户ID编号定位到哪个存储器中,进而快速地查询或更新数据库中指定的树状分片或用户ID编号的相应数据。
综上所述,本发明实施例所述方法通过把推荐关系树状数据进行压缩数据存储空间的处理后,再存储到数据库中,可以有效地减小占据的存储空间体积,进而提高查询效率,同时根据推荐关系树状数据的特点,有效地规划储存数据空间从而追踪多级推荐关系链中的推荐关系。
本实施例所述的一种树状数据存储和处理的方法的其它步骤参见现有技术。
实施例2
第二方面,本发明实施例公开一种树状数据存储和处理的系统,其特征在于,包括:
控制服务器,包括若干个存储器,储存有一建立多叉树状结构的数据库,所述多叉树状结构数据库设有若干树状分片;
处理器,连接于所述控制服务器;
所述处理器将推荐关系树状数据进行压缩处理并将压缩处理后的推荐关系树状数据储存至所述控制服务器中的数据库。
其中,所述处理器计算出数据库中树状分片对应存储器的哈希值,并将其配置到0~232的圆上;采用同样的方法求出数据库中树状分片的索引的哈希值,并映射到相同的圆上。
综上所述,本发明实施例所述装置在运行时,可执行实施例1中所述的一种树状数据存储和处理的方法的全部步骤。
本实施例所述的一种树状数据存储和处理的系统的其它结构参见现有技术。
实施例3
本发明还公开一种电子设备,至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,所述至少一个处理器执行指令时,具体实现以下的步骤:
步骤S1:建立数据库,所述数据库储存于控制服务器的存储器中。
步骤S2:压缩推荐关系树状数据占用的存储空间。
步骤S3:将处理后的推荐关系树状数据导入数据库中。
实施例4
本发明还公开一种存储介质,存储有计算机程序,所述计算机程序被处理器执行时,具体实现以下步骤:
步骤S1:建立数据库,所述数据库储存于控制服务器的存储器中。
步骤S2:压缩推荐关系树状数据占用的存储空间。
步骤S3:将处理后的推荐关系树状数据导入数据库中。
本公开可以是方法、装置、系统和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于执行本公开的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发所述计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本公开操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,上述编程语言包括面向对象的编程语言—诸如Smalltalk、C++、Java等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),所述电子电路可以执行计算机可读程序指令,从而实现本公开的各个方面。
这里参照根据本公开实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本公开的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理单元,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理单元执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本公开的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,上述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本公开的各实施方式,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施方式。在不偏离所说明的各实施方式的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施方式的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其他普通技术人员能理解本文披露的各实施方式。
Claims (10)
1.一种树状数据存储和处理的方法,其特征在于,包括以下步骤:
建立数据库,所述数据库储存于控制服务器的存储器中;
压缩推荐关系树状数据占用的存储空间;
将处理后的推荐关系树状数据导入数据库中。
2.根据权利要求1所述的一种树状数据存储和处理的方法,其特征在于,压缩已有的推荐关系树状数据占用的存储空间,具体包括:
所述推荐关系树状数据包括用户ID编号。
3.根据权利要求1所述的一种树状数据存储和处理的方法,其特征在于,所述步骤中将压缩推荐关系树状数据占用的存储空间,具体包括:
采用64进制算法将推荐关系树状数据进行进制转换。
4.根据权利要求2所述的一种树状数据存储和处理的方法,其特征在于,所述步骤中将处理后的推荐关系树状数据导入数据库中,具体包括:
所述数据库呈多叉树结构,并确定多叉树结构数据库中一个树状分片最大存储长度L;
将推荐关系树状数据导入数据库中;
根据索引原理对树状分片构建索引。
5.根据权利要求4所述的一种树状数据存储和处理的方法,其特征在于,
若推荐关系树状数据的长度M超过单个树状分片的最大长度即M>L,
则新增新的树状分片,将推荐关系树状数据存储到若干个树状分片中。
6.根据权利要求5所述的一种树状数据存储和处理的方法,其特征在于,
根据索引原理对新增的树状分片构建索引。
7.根据权利要求5所述的一种树状数据存储和处理的方法,其特征在于,
当树状分片的数量达到特定数量时,所述控制服务器采用一致性hash或分片固定取模的方式将数据库进行分布式存储。
8.根据权利要求7所述的一种树状数据存储和处理的方法,其特征在于,所述控制服务器采用一致性hash的方式将数据库进行分布式存储时,具体包括:
计算出数据库中树状分片所对应存储器的哈希值,并将其配置到0~232的圆上;
采用同样的方法求出数据库中树状分片的索引的哈希值,并映射到相同的圆上。
9.一种树状数据存储和处理的系统,其特征在于,包括:
控制服务器,包括若干个存储器,储存有一建立多叉树状结构的数据库,所述多叉树状结构数据库设有若干树状分片;
处理器,连接于所述控制服务器;
所述处理器将推荐关系树状数据进行压缩处理并将压缩处理后的推荐关系树状数据储存至所述控制服务器中的数据库。
10.根据权利要求9所述的一种树状数据存储和处理的系统,其特征在于,
所述处理器计算出数据库中树状分片对应存储器的哈希值,并将其配置到0~232的圆上;
采用同样的方法求出数据库中树状分片的索引的哈希值,并映射到相同的圆上。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210366097.2A CN114691694A (zh) | 2022-04-08 | 2022-04-08 | 一种树状数据存储和处理的方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210366097.2A CN114691694A (zh) | 2022-04-08 | 2022-04-08 | 一种树状数据存储和处理的方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114691694A true CN114691694A (zh) | 2022-07-01 |
Family
ID=82142539
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210366097.2A Pending CN114691694A (zh) | 2022-04-08 | 2022-04-08 | 一种树状数据存储和处理的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114691694A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102402617A (zh) * | 2011-12-23 | 2012-04-04 | 天津神舟通用数据技术有限公司 | 一种利用分片及稀疏位图的易压缩数据库索引存储系统及其相应的构建、调度和查询处理方法 |
CN106802927A (zh) * | 2016-12-22 | 2017-06-06 | 上海大汉三通数据通信有限公司 | 一种数据存储方法及查询方法 |
CN110413845A (zh) * | 2019-07-29 | 2019-11-05 | 青岛海尔科技有限公司 | 基于物联网操作系统的资源存储方法及装置 |
CN111274310A (zh) * | 2018-12-05 | 2020-06-12 | 中国移动通信集团山东有限公司 | 一种分布式数据缓存方法及系统 |
CN114003202A (zh) * | 2021-05-28 | 2022-02-01 | 广东安证计算机司法鉴定所 | 会员层级构建方法、装置、计算机设备及存储介质 |
-
2022
- 2022-04-08 CN CN202210366097.2A patent/CN114691694A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102402617A (zh) * | 2011-12-23 | 2012-04-04 | 天津神舟通用数据技术有限公司 | 一种利用分片及稀疏位图的易压缩数据库索引存储系统及其相应的构建、调度和查询处理方法 |
CN106802927A (zh) * | 2016-12-22 | 2017-06-06 | 上海大汉三通数据通信有限公司 | 一种数据存储方法及查询方法 |
CN111274310A (zh) * | 2018-12-05 | 2020-06-12 | 中国移动通信集团山东有限公司 | 一种分布式数据缓存方法及系统 |
CN110413845A (zh) * | 2019-07-29 | 2019-11-05 | 青岛海尔科技有限公司 | 基于物联网操作系统的资源存储方法及装置 |
CN114003202A (zh) * | 2021-05-28 | 2022-02-01 | 广东安证计算机司法鉴定所 | 会员层级构建方法、装置、计算机设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102226257B1 (ko) | 서비스 데이터를 블록체인 시스템에 기입하기 위한 방법 및 디바이스 | |
CN111247518B (zh) | 用于数据库分片的方法和系统 | |
US10747737B2 (en) | Altering data type of a column in a database | |
CN107704202B (zh) | 一种数据快速读写的方法和装置 | |
CN110019080B (zh) | 数据访问方法和装置 | |
CN111966912B (zh) | 基于知识图谱的推荐方法、装置、计算机设备及存储介质 | |
US20160239549A1 (en) | Method for processing a database query | |
CN110737663B (zh) | 一种数据存储方法、装置、设备及存储介质 | |
US11249975B2 (en) | Data archiving method and system using hybrid storage of data | |
US11366821B2 (en) | Epsilon-closure for frequent pattern analysis | |
CN114817651B (zh) | 数据存储方法、数据查询方法、装置和设备 | |
JP2021500664A (ja) | 方法、システム、およびコンピュータ・プログラム(クエリ処理) | |
CN114579561A (zh) | 数据处理方法和装置、存储介质 | |
CN113434506A (zh) | 数据管理及检索方法、装置、计算机设备及可读存储介质 | |
CN112765169A (zh) | 数据处理方法、装置、设备及存储介质 | |
US9460137B2 (en) | Handling an increase in transactional data without requiring relocation of preexisting data between shards | |
CN114691694A (zh) | 一种树状数据存储和处理的方法及系统 | |
CN112148728A (zh) | 用于信息处理的方法、设备和计算机程序产品 | |
CN114048219A (zh) | 图数据库更新方法及装置 | |
CN112732790A (zh) | 基于区块链的加密搜索方法、电子设备和计算机存储介质 | |
CN112101390A (zh) | 属性信息确定方法、属性信息确定装置及电子设备 | |
CN113312331A (zh) | 数据迁移方法、装置、系统、电子设备及计算机可读介质 | |
CN113127416A (zh) | 数据查询方法和装置 | |
CN112580087A (zh) | 加密数据搜索方法及装置、存储介质、电子设备 | |
CN114579573B (zh) | 信息检索方法、装置、电子设备以及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |