CN110309144A - 一种运用redis构建树形数据结构的方法及装置 - Google Patents

一种运用redis构建树形数据结构的方法及装置 Download PDF

Info

Publication number
CN110309144A
CN110309144A CN201810239348.4A CN201810239348A CN110309144A CN 110309144 A CN110309144 A CN 110309144A CN 201810239348 A CN201810239348 A CN 201810239348A CN 110309144 A CN110309144 A CN 110309144A
Authority
CN
China
Prior art keywords
redis
commodity classification
type
classification data
data
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
Application number
CN201810239348.4A
Other languages
English (en)
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.)
Beijing Feinno Communication Technology Co Ltd
Original Assignee
Beijing Feinno Communication Technology Co Ltd
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 Beijing Feinno Communication Technology Co Ltd filed Critical Beijing Feinno Communication Technology Co Ltd
Priority to CN201810239348.4A priority Critical patent/CN110309144A/zh
Publication of CN110309144A publication Critical patent/CN110309144A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2246Trees, e.g. B+trees

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请公开了一种运用redis构建树形数据结构的方法及装置,利用redis进行批量存储的操作,并且在redis的字符串类型和集合类型中存储数据库中的商品类目数据,这种方法仅仅需要在批量存储时进行一次遍历操作,即可将数据库中的所有单条商品类目数据存入redis中,根据redis本身的结构特点,构建成一个低维度,少层级的树形数据结构,数据间耦合度低,结构清晰,易读性高,可以方便地查看某类目下的子类目列表或者某类目的同级类目,也可以方便地修改单个类目的内容。并且,本申请提供的这一种构建数据结构的方法不用像构建高维度树一样,需要遍历整个树去查询,通过redis的快速查询能力,能够瞬间获取任一节点下的子节点,快速省时。

Description

一种运用redis构建树形数据结构的方法及装置
技术领域
本申请涉及数据处理技术领域,尤其涉及一种运用redis构建树形数据结构的方法及装置。
背景技术
电商类网站为了方便用户快速查找购买商品的信息,通常包含大量类目信息。类目信息包括商品的种类、功能、适用对象或者品牌等等,比如用户想买一套西装,那么他可以通过类目服装->男装->西装,找到西装类目下的所有商品,再通过自己的品味筛选出想要购买的西装。类似这种搜索的路径,在内存中一般保存为树形结构,以简单的类目为例,具体如图1所示。
通过图1可以看出,在电商平台上,实际类目每个分支下的内容非常多,例如,总类目下就分为3个分支,每个分子下又包含若干小分支,由此构成多层级的庞大的“树形”结构,在这种“树形”结构中,商品的类目层次分明,用户可以逐级查找,直至找到符合自己需求的商品。
然而,以上这种“树形”结构虽然满足了用户的需求,但是对于“树形”结构本身的构建与维护来说,还存在很多问题。首先,结构构建困难,上述数据一般存储在数据库中,而数据库中的数据是单条独立的结构化数据,这样构建“树形”结构比较繁琐;其次,在上述结构中,从某一节点向下搜索比较困难,比如目前客户端请求女装下的分类,在“树形”结构中,首先要通过遍历的方式找到女装的位置,然后才能返回到女装下属的类目中;最后,对于上述“树形”结构的修改与添加比较困难,在需要修改和添加内容时,也是同样需要采用遍历的方式找到相应的位置才能进行操作。所以,如何构建一种简单的数据结构,既满足用户的需求又简化构建过程,成为一个亟待解决的问题。
发明内容
本申请提供了一种运用redis构建树形数据结构的方法及装置,以解决目前数据库中建立数据结构复杂的情况,减少遍历次数,简化构建过程。
一方面,本申请提供了一种运用redis构建树形数据结构的方法,包括:
获取构建操作指令,所述构建操作指令用于对数据库中商品类目数据进行处理;
根据所述构建操作指令,设置redis的操作参数及操作类型,所述操作参数包括redis内字符串类型存储格式和redis内集合类型存储格式,所述操作类型为批量处理,每一条商品类目数据的内容以所述字符串类型存储,每一条商品类目数据的子节点id以所述集合类型存储;
根据所述操作参数及所述操作类型,将数据库中商品类目数据存入所述redis中。
可选的,所述根据构建操作指令,设置redis的操作参数及操作类型的步骤包括:
根据所述构建操作指令,获取操作redis的句柄;
根据所述操作redis的句柄,设置redis的操作参数及操作类型。
可选的,所述根据操作参数及操作类型,将数据库中商品类目数据存入所述redis中的步骤包括:
根据所述操作类型,遍历整个数据库中的商品类目数据;
根据所述操作参数,将每一条所述商品类目数据存入所述redis中。
可选的,所述根据操作参数,将每一条所述商品类目数据存入所述redis中的步骤包括:
根据所述操作参数,将每一条所述商品类目数据以字符串类型存储;
获取每一条所述商品类目数据的所有子节点id;
将每一条所述商品类目数据的所有子节点id以集合类型存储。
可选的,在所述根据操作参数及操作类型,将数据库中商品类目数据存入所述redis中之前,还包括:
转换存储格式,将数据库中商品类目数据的格式转化为符合所述redis存储的格式。
可选的,在所述根据操作参数及操作类型,将数据库中商品类目数据存入所述redis中之前,还包括:
获取操作所述字符串类型的redis句柄和操作所述集合类型的redis句柄。
另一方面,本申请提供了一种运用redis构建树形数据结构的装置,包括:
指令获取单元,用于获取构建操作指令,所述构建操作指令用于对数据库中商品类目数据进行处理;
设置单元,用于根据所述构建操作指令,设置redis的操作参数及操作类型,所述操作参数包括redis内字符串类型存储格式和redis内集合类型存储格式,所述操作类型为批量处理,每一条商品类目数据的内容以所述字符串类型存储,每一条商品类目数据的子节点id以所述集合类型存储;结构构建单元,用于根据所述操作参数及所述操作类型,将数据库中商品类目数据存入所述redis中。
可选的,所述设置单元包括:
第一句柄获取单元,用于根据所述构建操作指令,获取操作redis的句柄;
参数及类型设置单元,用于根据所述操作redis的句柄,设置redis的操作参数及操作类型。
可选的,所述结构构建单元包括:
遍历单元,用于根据所述操作类型,遍历整个数据库中的商品类目数据;
存储操作单元,用于根据所述操作参数,将每一条所述商品类目数据存入所述redis中。
可选的,所述存储操作单元包括:
第一操作单元,用于根据所述操作参数,将每一条所述商品类目数据以字符串类型存储;节点获取单元,用于获取每一条所述商品类目数据的所有子节点id;
第二操作单元,用于将每一条所述商品类目数据的所有子节点id以集合类型存储。
可选的,所述装置还包括:格式转换单元,用于转换存储格式,将数据库中商品类目数据的格式转化为符合所述redis存储的格式。
可选的,所述装置还包括:第二句柄获取单元,用于获取操作所述字符串类型的redis句柄和操作所述集合类型的redis句柄。
由以上技术方案可知,本申请提供一种运用redis构建树形数据结构的方法及装置,利用redis进行批量存储的操作,并且在redis的字符串类型和集合类型中存储数据库中的商品类目数据,这种方法仅仅需要在批量存储时进行一次遍历操作,即可将数据库中的所有单条商品类目数据存入redis中,根据redis本身的结构特点,构建成一个低维度,少层级的树形数据结构,数据间耦合度低,结构清晰,易读性高,可以方便地查看某类目下的子类目列表或者某类目的同级类目,也可以方便地修改单个类目的内容。并且,本申请提供的这一种构建数据结构的方法不用像构建高维度树一样,需要遍历整个树去查询,通过redis的快速查询能力,能够瞬间获取任一节点下的子节点,快速省时。
附图说明
为了更清楚地说明本申请的技术方案,下面将对实施案例中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请中提供的现有技术中电商类网站数据库中商品类目数据的存储结构;
图2为本申请实施例提供的第一种运用redis构建树形数据结构的方法流程图;
图3为本身请实施例提供的第二种运用redis构建树形数据结构的方法流程图;
图4为本申请实施例提供的redis中数据存储的示意图;
图5为本申请实施例提供的redis中数据结构的示意图;
图6为本申请实施例提供的一种运用redis构建树形数据结构的装置结构图;
图7为本申请实施例提供的设置单元的结构图;
图8为本申请实施例提供的结构构建单元的结构图;
图9为本申请实施例提供的存储操作单元的结构图。
具体实施方式
为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合附图,对本申请实施例中的技术方案进行清楚、完整地描述。
参见图2,本申请提供的第一种运用redis构建树形数据结构的方法,包括:
步骤101,获取构建操作指令,所述构建操作指令用于对数据库中商品类目数据进行处理;构建操作指令用于指示redis操作的进行。
现有的电商类网站数据库中通常是将商品类目数据单条保存,例如:
如上所示将数据存入数据库中,再利用具体的程序将所有单条数据构建成多层次的树形结构,构建的树形结构如图1所示,商品的类目层次分明,用户可以逐级查找,直至找到符合自己需求的商品,但是用户每一级的查找,在程序上都属于一次遍历操作,直至用户找到目标商品,在这一过程中,会发生很多次遍历操作,导致用户的整个查询过程非常复杂和费时。本申请的目的在于利用redis本身存储结构特征,构建结构简单和层级低的数据结构,减少遍历次数,使得数据结构的过程桁架简单快捷,用户查询的时间更短。
步骤102,根据构建操作指令,设置redis的操作参数及操作类型,所述操作参数包括redis内字符串类型存储格式和redis内集合类型存储格式,所述操作类型为批量处理,每一条商品类目数据的内容以字符串类型存储,每一条商品类目数据的子节点id以集合类型存储。
redis是一个key-value存储系统,它支持存储的value类型很多,包括:string(字符串类型)、list(链表类型)、set(集合类型)、zset(有序集合类型)和hash(哈希类型),本申请实施例中主要利用string(字符串类型)和set(集合类型)对电商类网站数据库中的数据进行存储,string是最简单的类型,一个key对应一个value;set和我们数学中的集合概念相似,对集合有添加或者删除元素的操作,也有对多个集合进行求交并差等操作,并且操作中key理解为集合的名字。
在本申请实施例中,为了保证存入redis中的数据能够清楚地显示出商品类目信息以及与此条数据有关的其他数据的信息,需要对字符串类型和集合类型的存储格式进行设置。例如,设置字符串类型的key值的头为“subject:info:”,当有数据存入redis时,以字符串类型存储的形式为key=“subject:info:1000”;再比如,设置集合类型的key值的头为“subject:tree:”,当有数据存入redis时,以集合类型存储的形式为key=“subject:tree:0”。
在本申请实施例中,为了避免商品类目数据单条存入redis中,造成的输入输出频繁的问题,还需要对redis的操作类型进行设置,将操作类型设置为批量处理,遍历所有数据的同时,将数据全部存入redis的相应类型中,此后不会再发生遍历操作,节省大量查询的时间。
步骤103,根据操作参数及操作类型,将数据库中商品类目数据存入redis中。根据redis中字符串类型和集合类型的存储格式,批量将商品类目数据对应存入字符串类型和集合类型中,由于redis本身具有快速查询的特点,在查询时可直接读取数据信息,不需要再发生遍历操作,所以,仅仅在数据存入时发生了一次遍历,不仅数据存入迅速,数据读取也方便快捷。
本申请实施例一提供一种运用redis构建树形数据结构的方法,利用redis进行批量存储的操作,并且在redis的字符串类型和集合类型中存储数据库中的商品类目数据,这种方法仅仅需要在批量存储时进行一次遍历操作,即可将数据库中的所有单条商品类目数据存入redis中,根据redis本身的结构特点,构建成一个低维度,少层级的树形数据结构,数据间耦合度低,结构清晰,易读性高,可以方便地查看某类目下的子类目列表或者某类目的同级类目,也可以方便地修改单个类目的内容。并且,本申请提供的这一种构建数据结构的方法不用像构建高维度树一样,需要遍历整个树去查询,通过redis的快速查询能力,能够瞬间获取任一节点下的子节点,快速省时。
参见图3,为本申请实施例提供的第二种运用redis构建树形数据结构的方法,包括:
步骤201,获取构建操作指令,所述构建操作指令用于对数据库中商品类目数据进行处理。
步骤202,根据构建操作指令,获取操作redis的句柄。句柄是一个标识符,用来标识对象或者项目,应用程序几乎总是通过调用一个WINDOWS函数来获得一个句柄,之后其他的WINDOWS函数就可以使用该句柄,以引用相应的对象。在本申请中,redis的句柄也相当于一个操作redis的权限,获取这个权限之后,可以对redis进行下一步的操作,比如设置操作参数或者操作类型等等,可以使操作更加安全。
步骤203,根据操作redis的句柄,设置redis的操作参数及操作类型,所述操作参数包括redis内字符串类型存储格式和redis内集合类型存储格式,所述操作类型为批量处理,每一条商品类目数据的内容以字符串类型存储,每一条商品类目数据的子节点id以集合类型存储。
步骤204,根据操作类型,遍历整个数据库中的商品类目数据。由于预先设置的操作类型为批量处理,顾名思义就是将所有对象一起进行处理,所以有遍历整个数据库的过程。
步骤205,根据操作参数,将每一条所述商品类目数据以字符串类型存储。通常,在数据库中保存的单条商品类目数据包括若干字段,具体包括标识、父节点标识、类目名字、类目说明和图片地址等,在进行本申请实施例中的操作时,将这些字段中的内容均以字符串类型进行存储,每一条商品类目数据存储为一条字符串类型数据,具体参见图4,图中subject文件夹中包括info文件夹和tree文件夹,info文件夹中又包含若干个以字符串类型存储的商品类目数据。
步骤206,获取每一条商品类目数据的所有子节点id。在上述步骤中已经介绍,每一条商品类目数据中包括父节点标识,父节点标识可以为父节点的id,用于标识父节点,通过步骤204中的遍历过程,已经能将所有商品类目数据的父节点id收集起来,反之,通过分析处理,可以获取到每一条商品类目数据包含的所有子节点的id。
步骤207,将每一条商品类目数据的所有子节点id以集合类型存储。再次参见图4,图中subject文件夹下的tree文件夹就是用来保存子节点id的,tree文件夹中数据的数量就是所有包含子节点的父节点的数量,每一条数据中保存的是该父节点下所有子节点的id。
经过上述步骤205-步骤207之后,数据库中单条的商品类目数据已经按照redis中相应的存储格式进行保存,此时查看单条info文件夹中的数据,如:subjcet:info:2001,则该条数据的value为:
其中,id表示标识、pid表示父节点标识、name表示类目名字、introduce表示类目说明,以及,pic表示图片地址;查看单条tree文件夹中的数据,如:subjcet:tree:1001,则该条数据的value为:
row value
1 2003
2 2004
表中是id为1001的父节点所包括的子节点的id,也可以称之为id为1001的数据类目下的子类目的id,从上表可知,该条数据的子类目包括2个,id分别是2003和2004。
当需要查看与“android”类目同级的商品类目时,只需要先通过info文件确定“android”类目的id为2004,pid为1001,然后查找tree文件中id为1001的商品类目数据,在该条数据下,包括id为2003和2004的子类目id,所以可以找到与“android”同级的商品类目数据的id为2003,再通过info文件找到id为2003的商品类目“ios”。
由此可知,tree文件夹中只记录该条数据子类目的id,而不记录其他内容,其他内容是通过info文件记录的。根据本申请实施例中的方法建立的数据结构只具有两个层级,具体在redis中的存储形式如图5所示,这样,当需要修改数据的内容时,仅仅修改info文件中的内容即可,不会出现数据关联或者数据同步导致修改过程复杂的问题。另外,建立如图5中这种的2层级、低维度的树形结构,当需要查看某一商品类目的同级商品类目时,可以先通过info文件找到单条商品类目的pid,然后根据pid就可以查询到该商品类目同级的其他商品类目数据,使得查询的过程更加方便。
值得说明的是,redis支持主从同步,数据可以从主服务器向任意数量的从服务器上同步,从服务器也可以是关联其他从服务器的主服务器。所以,本申请实施例中引入redis,既可以实现快速查询,也解决了分布式微服务的服务状态的问题,避免出现数据同步不一致的问题。
本申请实施例二中的其余内容与实施例一中的相同,参照实施例一中的内容,再此不再赘述。
本申请实施例二提供一种运用redis构建树形数据结构的方法,利用redis进行批量存储的操作,并且在redis的字符串类型和集合类型中存储数据库中的商品类目数据,这种方法仅仅需要在批量存储时进行一次遍历操作,即可将数据库中的所有单条商品类目数据存入redis中,根据redis本身的结构特点,构建成一个低维度,少层级的树形数据结构,数据间耦合度低,结构清晰,易读性高。并且,本申请提供的这一种构建数据结构的方法不用像构建高维度树一样,需要遍历整个树去查询,通过redis的快速查询能力,能够瞬间获取任一节点下的子节点,快速省时。
可选的,在本申请实施例一和实施例二中,在根据操作参数及操作类型,将数据库中商品类目数据存入所述redis中之前,还包括:转换存储格式,将数据库中商品类目数据的格式转化为符合所述redis存储的格式。由于目前电商类网站的数据库中存储的商品类目数据通常是以java格式保存的,但是redis中存储数据是以json格式进行的,所以,在将商品类目数据存入redis之前,还需要将数据库中以java格式保存的数据转为json格式,这种情况通常是建立json格式转换的类对数据进行格式转换,方便数据的快速存储。
可选的,在本申请实施例一和实施例二中,在根据操作参数及操作类型,将数据库中商品类目数据存入所述redis中之前,还包括:获取操作所述字符串类型的redis句柄和操作所述集合类型的redis句柄。根据上述内容可知,句柄是一个标识符,用来标识对象或者项目,应用程序几乎总是通过调用一个WINDOWS函数来获得一个句柄,之后其他的WINDOWS函数就可以使用该句柄,以引用相应的对象。在本申请中,操作字符串类型的redis的句柄和操作集合类型的redis句柄均相当于一个操作字符串和集合的权限,获取这个权限之后,可以对redis中字符串类型的存储和集合类型的存储进行下一步的操作,使得操作更加准确与安全。
参见图6,为本申请提供的一种运用redis构建树形数据结构的装置结构图,包括:
指令获取单元601,用于获取构建操作指令,所述构建操作指令用于对数据库中商品类目数据进行处理;
设置单元602,用于根据所述构建操作指令,设置redis的操作参数及操作类型,所述操作参数包括redis内字符串类型存储格式和redis内集合类型存储格式,所述操作类型为批量处理,每一条商品类目数据的内容以所述字符串类型存储,每一条商品类目数据的子节点id以所述集合类型存储;
结构构建单元603,用于根据所述操作参数及所述操作类型,将数据库中商品类目数据存入所述redis中。
可选的,如图7所示,所述设置单元602包括:
第一句柄获取单元701,用于根据所述构建操作指令,获取操作redis的句柄;
参数及类型设置单元702,用于根据所述操作redis的句柄,设置redis的操作参数及操作类型。
可选的,如图8所示,所述结构构建单元603包括:
遍历单元801,用于根据所述操作类型,遍历整个数据库中的商品类目数据;
存储操作单元802,用于根据所述操作参数,将每一条所述商品类目数据存入所述redis中。
可选的,如图9所示,所述存储操作单元802包括:
第一操作单元901,用于根据所述操作参数,将每一条所述商品类目数据以字符串类型存储;节点获取单元,用于获取每一条所述商品类目数据的所有子节点id;
第二操作单元902,用于将每一条所述商品类目数据的所有子节点id以集合类型存储。
可选的,所述装置还包括:格式转换单元604,用于转换存储格式,将数据库中商品类目数据的格式转化为符合所述redis存储的格式。
可选的,所述装置还包括:第二句柄获取单元605,用于获取操作所述字符串类型的redis句柄和操作所述集合类型的redis句柄。
由以上技术方案可知,本申请提供一种运用redis构建树形数据结构的方法及装置,利用redis进行批量存储的操作,并且在redis的字符串类型和集合类型中存储数据库中的商品类目数据,这种方法仅仅需要在批量存储时进行一次遍历操作,即可将数据库中的所有单条商品类目数据存入redis中,根据redis本身的结构特点,构建成一个低维度,少层级的树形数据结构,数据间耦合度低,结构清晰,易读性高,可以方便地查看某类目下的子类目列表或者某类目的同级类目,也可以方便地修改单个类目的内容。并且,本申请提供的这一种构建数据结构的方法不用像构建高维度树一样,需要遍历整个树去查询,通过redis的快速查询能力,能够瞬间获取任一节点下的子节点,快速省时。
本领域技术人员在考虑说明书及实践这里公开的申请后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围由权利要求指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。以上所述的本申请实施方式并不构成对本申请保护范围的限定。

Claims (10)

1.一种运用redis构建树形数据结构的方法,其特征在于,包括:
获取构建操作指令,所述构建操作指令用于对数据库中商品类目数据进行处理;
根据所述构建操作指令,设置redis的操作参数及操作类型,所述操作参数包括redis内字符串类型存储格式和redis内集合类型存储格式,所述操作类型为批量处理,每一条商品类目数据的内容以所述字符串类型存储,每一条商品类目数据的子节点id以所述集合类型存储;
根据所述操作参数及所述操作类型,将数据库中商品类目数据存入所述redis中。
2.根据权利要求1所述的方法,其特征在于,所述根据构建操作指令,设置redis的操作参数及操作类型的步骤包括:
根据所述构建操作指令,获取操作redis的句柄;
根据所述操作redis的句柄,设置redis的操作参数及操作类型。
3.根据权利要求1所述的方法,其特征在于,所述根据操作参数及操作类型,将数据库中商品类目数据存入所述redis中的步骤包括:
根据所述操作类型,遍历整个数据库中的商品类目数据;
根据所述操作参数,将每一条所述商品类目数据存入所述redis中。
4.根据权利要求3所述的方法,其特征在于,所述根据操作参数,将每一条所述商品类目数据存入所述redis中的步骤包括:
根据所述操作参数,将每一条所述商品类目数据以字符串类型存储;
获取每一条所述商品类目数据的所有子节点id;
将每一条所述商品类目数据的所有子节点id以集合类型存储。
5.根据权利要求1所述的方法,其特征在于,在所述根据操作参数及操作类型,将数据库中商品类目数据存入所述redis中之前,还包括:
转换存储格式,将数据库中商品类目数据的格式转化为符合所述redis存储的格式。
6.根据权利要求1所述的方法,其特征在于,在所述根据操作参数及操作类型,将数据库中商品类目数据存入所述redis中之前,还包括:
获取操作所述字符串类型的redis句柄和操作所述集合类型的redis句柄。
7.一种运用redis构建树形数据结构的装置,其特征在于,包括:
指令获取单元,用于获取构建操作指令,所述构建操作指令用于对数据库中商品类目数据进行处理;
设置单元,用于根据所述构建操作指令,设置redis的操作参数及操作类型,所述操作参数包括redis内字符串类型存储格式和redis内集合类型存储格式,所述操作类型为批量处理,每一条商品类目数据的内容以所述字符串类型存储,每一条商品类目数据的子节点id以所述集合类型存储;
结构构建单元,用于根据所述操作参数及所述操作类型,将数据库中商品类目数据存入所述redis中。
8.根据权利要求7所述的装置,其特征在于,所述设置单元包括:
第一句柄获取单元,用于根据所述构建操作指令,获取操作redis的句柄;
参数及类型设置单元,用于根据所述操作redis的句柄,设置redis的操作参数及操作类型。
9.根据权利要求7所述的装置,其特征在于,所述结构构建单元包括:
遍历单元,用于根据所述操作类型,遍历整个数据库中的商品类目数据;
存储操作单元,用于根据所述操作参数,将每一条所述商品类目数据存入所述redis中。
10.根据权利要求9所述的装置,其特征在于,所述存储操作单元包括:
第一操作单元,用于根据所述操作参数,将每一条所述商品类目数据以字符串类型存储;节点获取单元,用于获取每一条所述商品类目数据的所有子节点id;
第二操作单元,用于将每一条所述商品类目数据的所有子节点id以集合类型存储。
CN201810239348.4A 2018-03-22 2018-03-22 一种运用redis构建树形数据结构的方法及装置 Pending CN110309144A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810239348.4A CN110309144A (zh) 2018-03-22 2018-03-22 一种运用redis构建树形数据结构的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810239348.4A CN110309144A (zh) 2018-03-22 2018-03-22 一种运用redis构建树形数据结构的方法及装置

Publications (1)

Publication Number Publication Date
CN110309144A true CN110309144A (zh) 2019-10-08

Family

ID=68073957

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810239348.4A Pending CN110309144A (zh) 2018-03-22 2018-03-22 一种运用redis构建树形数据结构的方法及装置

Country Status (1)

Country Link
CN (1) CN110309144A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111190933A (zh) * 2019-12-27 2020-05-22 江苏艾佳家居用品有限公司 基于区间数的电商类目深度查询方法
CN113780339A (zh) * 2021-08-03 2021-12-10 阿里巴巴(中国)有限公司 模型训练、预测及内容理解方法及电子设备

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102135972A (zh) * 2010-07-30 2011-07-27 华为软件技术有限公司 业务树数据处理方法、系统、客户端和服务器
CN102737057A (zh) * 2011-04-14 2012-10-17 阿里巴巴集团控股有限公司 一种商品类目信息的确定方法及装置
CN104268280A (zh) * 2014-10-17 2015-01-07 中国人民解放军国防科学技术大学 一种基于键值数据库的层次化存储与查询方法
CN105005917A (zh) * 2015-07-07 2015-10-28 上海晶赞科技发展有限公司 一种通用的关联不同电商网站单品的方法
CN106407303A (zh) * 2016-08-30 2017-02-15 北京深思数盾科技股份有限公司 数据存储、查询方法及装置
CN106897408A (zh) * 2017-02-16 2017-06-27 郑州云海信息技术有限公司 一种实现快速查询树形结构数据指定节点下级的方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102135972A (zh) * 2010-07-30 2011-07-27 华为软件技术有限公司 业务树数据处理方法、系统、客户端和服务器
CN102737057A (zh) * 2011-04-14 2012-10-17 阿里巴巴集团控股有限公司 一种商品类目信息的确定方法及装置
CN104268280A (zh) * 2014-10-17 2015-01-07 中国人民解放军国防科学技术大学 一种基于键值数据库的层次化存储与查询方法
CN105005917A (zh) * 2015-07-07 2015-10-28 上海晶赞科技发展有限公司 一种通用的关联不同电商网站单品的方法
CN106407303A (zh) * 2016-08-30 2017-02-15 北京深思数盾科技股份有限公司 数据存储、查询方法及装置
CN106897408A (zh) * 2017-02-16 2017-06-27 郑州云海信息技术有限公司 一种实现快速查询树形结构数据指定节点下级的方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
DAVID ISEMINGER: "《Win32开发人员参考库 第一卷 Windows基本服务》", 31 May 2001, 机械工业出版社 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111190933A (zh) * 2019-12-27 2020-05-22 江苏艾佳家居用品有限公司 基于区间数的电商类目深度查询方法
CN111190933B (zh) * 2019-12-27 2022-08-12 江苏艾佳家居用品有限公司 基于区间数的电商类目深度查询方法
CN113780339A (zh) * 2021-08-03 2021-12-10 阿里巴巴(中国)有限公司 模型训练、预测及内容理解方法及电子设备

Similar Documents

Publication Publication Date Title
EP3513314B1 (en) System for analysing data relationships to support query execution
US10783213B2 (en) Flexible graph system for accessing organization information
US20150278268A1 (en) Data encoding and corresponding data structure
CN106209431B (zh) 一种告警关联方法及网管系统
TW201241773A (en) Method and apparatus of determining product category information
CN106802905B (zh) 一种同构plm系统的协同数据交换方法
CN106503214A (zh) 一种基于Redis内存数据库的复杂规则匹配方法
CN109299157A (zh) 一种分布式大单表的数据导出方法及装置
CN108228229A (zh) 一种Maven依赖的管理方法以及系统
CN115269515B (zh) 一种检索指定目标文档数据处理方法
CN109087121A (zh) 营销信息投放平台构建方法及装置
CN107870949A (zh) 数据分析作业依赖关系生成方法和系统
CN110928984A (zh) 一种知识图谱的构建方法、装置、终端及存储介质
CN110309144A (zh) 一种运用redis构建树形数据结构的方法及装置
CN115858513A (zh) 数据治理方法、装置、计算机设备和存储介质
CN113672692B (zh) 数据处理方法、装置、计算机设备和存储介质
CN108154024A (zh) 一种数据检索方法、装置及电子设备
CN106326280B (zh) 数据处理方法、装置及系统
CN114328566A (zh) 关系图谱的更新方法、装置、介质、设备及生成方法
CN110134698A (zh) 数据管理方法及相关产品
US11263264B2 (en) Management of graphs using secondary index vertices
US11531706B2 (en) Graph search using index vertices
CN105956127A (zh) 一种类目数据处理方法和装置
CN110008243A (zh) 一种数据表处理方法及装置
CN106202121B (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
CB02 Change of applicant information
CB02 Change of applicant information

Address after: Room 810, 8 / F, 34 Haidian Street, Haidian District, Beijing 100080

Applicant after: BEIJING D-MEDIA COMMUNICATION TECHNOLOGY Co.,Ltd.

Address before: 100089 Beijing city Haidian District wanquanzhuang Road No. 28 Wanliu new building block A room 602

Applicant before: BEIJING D-MEDIA COMMUNICATION TECHNOLOGY Co.,Ltd.

RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20191008