CN107515882A - 数据查询方法及装置 - Google Patents

数据查询方法及装置 Download PDF

Info

Publication number
CN107515882A
CN107515882A CN201610439601.1A CN201610439601A CN107515882A CN 107515882 A CN107515882 A CN 107515882A CN 201610439601 A CN201610439601 A CN 201610439601A CN 107515882 A CN107515882 A CN 107515882A
Authority
CN
China
Prior art keywords
major key
index major
data
attribute
concordance list
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.)
Granted
Application number
CN201610439601.1A
Other languages
English (en)
Other versions
CN107515882B (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.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding 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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201610439601.1A priority Critical patent/CN107515882B/zh
Publication of CN107515882A publication Critical patent/CN107515882A/zh
Application granted granted Critical
Publication of CN107515882B publication Critical patent/CN107515882B/zh
Active 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/80Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
    • G06F16/83Querying
    • G06F16/835Query processing
    • G06F16/8365Query optimisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/80Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
    • G06F16/83Querying
    • G06F16/835Query processing
    • G06F16/8373Query execution

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (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

本申请提供了一种数据查询方法,接收到包含待查询对象的属性条件的数据查询请求后,在预先设置的索引表中,查找符合属性条件的目标索引主键,再根据该目标索引主键,在原始数据表中查找待查询对象的属性数据。原始数据表是保存待查询对象属性数据的数据表,本方法并非直接在原始数据表中查询,而是在索引表中查询到目标索引主键,由于索引表是原始数据表的简化版,索引表的查询效率较高,查询到目标索引主键后,直接在原始数据表中提取目标索引主键对应的属性数据即可,此种数据查询方法查询效率较高。本申请还提供了一种数据查询装置,用以保证上述方法在实际中的应用及实现。

Description

数据查询方法及装置
技术领域
本申请涉及数据查询技术领域,更具体地,涉及数据查询方法及装置。
背景技术
在数据库应用中,半结构化的数据表中可以存储大量的行记录,行记录可以是待显示在网页上的产品信息。例如,产品信息可以包含风格、产品价格、生产商等。
用户可以请求浏览网页的某种类型的产品,例如,用户请求浏览风格为A的产品。根据用户的浏览请求,需要从数据表中查询该种类型产品的相关信息。
发明内容
有鉴于此,本申请提供了一种数据查询方法,用于在数据表中查询符合属性要求的对象数据。另外,本申请还提供了一种数据查询装置,用以保证所述方法在实际中的应用及实现。
为实现所述目的,本申请提供的技术方案如下:
本申请的第一方面提供了一种数据查询方法,该方法包括:
接收数据查询请求;其中,所述数据查询请求中包含待查询对象的属性条件;
在预设的索引表的索引主键中,查询符合所述属性条件的目标索引主键;其中,所述索引表是原始数据表的简化版;
在所述原始数据表中,查询所述目标索引主键所对应的字段数据,所述字段数据为所述待查询对象的属性数据。
本申请的第二方面提供了一种数据查询装置,该装置包括:
查询请求接收单元,用于接收数据查询请求;其中,所述数据查询请求中包含待查询对象的属性条件;
索引主键查询单元,用于在预设的索引表的索引主键中,查询符合所述属性条件的目标索引主键;其中,所述索引表是原始数据表的简化版;
属性数据查询单元,用于在所述原始数据表中,查询所述目标索引主键所对应的字段数据,所述字段数据为所述待查询对象的属性数据。
由以上技术方案可知,本申请提供了一种数据查询方法,接收到包含待查询对象的属性条件的数据查询请求后,在预先设置的索引表中,查找符合属性条件的目标索引主键,再根据该目标索引主键,在原始数据表中查找待查询对象的属性数据。原始数据表是保存待查询对象属性数据的数据表,本方法并非直接在原始数据表中查询,而是在索引表中查询到目标索引主键,由于索引表是原始数据表的简化版,索引表的查询效率较高,查询到目标索引主键后,直接在原始数据表中提取目标索引主键对应的属性数据即可,此种数据查询方法查询效率较高。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请提供的数据查询方法的一个具体应用场景示意图;
图2为本申请提供的一种数据查询方法的流程图;
图3为本申请提供的另一种数据查询方法的流程图;
图4为本申请提供的一种数据查询装置的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
为了方便理解,首先结合一应用场景从整体上对本申请进行介绍。
用户可以使用终端,向网站服务器请求查询某种类型的产品,产品的相关信息保存在数据表中,为了与其他数据表区分,可以将该数据表称为原始数据表。网站服务器接收到用户终端的查询请求后,从原始数据表中查询符合查询请求的产品,并将产品的相关信息返回给终端显示。
然而,如图1所示,本申请提供的数据查询方法并非在原始数据表中查询,而是在预先设置的索引表中查询,需要说明的是,在索引表中查询出的数据并非产品的相关信息,而是符合查询请求的索引主键。然后,直接使用该索引主键,从原始数据表中,提取待查询产品的相关信息。
原始数据表通常为半结构化数据表,在半结构化数据表中查询需要遍历每一条记录,查询效率较低。索引表为原始数据表的简化版,为结构化的数据表,且索引表中的索引主键是根据历史数据查询请求,从原始数据表中提炼出来的。因此,在索引表中查询产品的效率较高。
以一个具体示例来说明原始数据表与索引表之间的关系。
如表1所示,原始数据表为保存女装信息的半结构化数据表。其中,RowKey(对象标识Uuid)字段,为每条女装记录在原始数据表中的唯一性标识,属性字段Value保存的是女装的相关信息(属性数据)。
表1-原始数据表
RowKey Value
0001 Product:衬衫,Style:正式,Price:98,Colour:白色
0002 Product:衬衫,Style:休闲,Price:198,Colour:白色
0003 Product:外套,Style:正式,Price:200,Colour:白色
0004 Product:外套,Style:休闲,Price:399,Colour:白色
0005 Product:围巾,Colour:花色
属性字段可以包括多个字段,如表1所示,Value字段包括:产品名称Product、风格Style、价格Price、颜色Colour中的某些字段。每个字段的字段值可以表示待查询对象的某属性的属性值。
根据大量用户的历史查询请求发现,对象查询请求中的属性条件通常是多个属性特征的组合。例如,用户经常使用Product-Colour-Style这个属性条件、或者Product-Colour-Price这个属性条件查询女装。
因此,可以根据经常用于查询的属性条件,将原始数据表中包含属性条件的记录提取出来,并存储在另一数据表中,该数据表即索引表。
索引表的一种具体形式是,索引表包括索引主键,索引主键是属性条件在原始数据表中的属性值的组合。
如表2所示的索引表,其是依据上述Product-Colour-Style以及Product-Colour-Price这两个属性条件,从表1中提炼属性值后生成的,索引主键为RowKey。
生成表2的具体方式可以是,从表1中查找包含Product-Colour-Style这个属性条件的记录,并将属性值组合后生成表2中的1-5条记录,从表1中查找包含Product-Colour-Price这个属性条件的记录,并将属性值组合后生成表2中的6-10条记录。
表2-索引表
RowKey Value
衬衫_白色_正式 0001
衬衫_白色_休闲 0002
外套_白色_正式 0003
外套_白色_休闲 0004
围巾_花色_NULL 0005
衬衫_白色_98 0001
衬衫_白色_198 0002
外套_白色_200 0003
外套_白色_399 0004
围巾_花色_NULL 0005
需要说明的是,索引表中的RowKey可以是按照属性条件依次排列的。属性条件为多个的情况下,可以首先按照属性条件依次排序,在同一属性条件内,再按照原始数据表中的RowKey排序。不同的属性条件对应不同的区间。
以表1及表2为例说明。假设属性条件为两个,分别为Product-Colour-Style及Product-Colour-Price,则可以首先针对属性条件Product-Colour-Style生成表2中1~5行的RowKey,再针对属性条件Product-Colour-Price生成表2中6~10行的RowKey。表2中每个区间的RowKey,按照表1中的RowKey的次序排列,即依次为0001、0002、……0005。
这样,按照某个属性条件在索引表中查询时,只需要在该属性条件对应的区间内查询即可。当发现下一区间对应另一属性条件时,则停止查询。此种方式不必查询每条记录,查询效率较高。
由以上可以看出,索引表是根据历史数据查询请求中属性条件的使用次数或者频率预先生成的数据表,使用索引表可以实现快速查询。
具体地,如图2所示,本申请提供的一种数据查询方法包括以下步骤S201~步骤S203。
步骤S201:接收包含待查询对象的属性条件的数据查询请求。
用户终端可以向本实施例的执行装置如网站服务器发送数据查询请求。当然,数据查询请求并非局限是用户终端发送的,可以是其他任何需要使用对象属性数据的设备。
接收到数据查询请求后,从数据查询请求中提取属性条件。属性条件用于查询具有何种属性特征的对象,具体可以包括属性及属性值。
例如,用户想要查询价格在50-200之间的白色衬衫,则该数据查询请求中,属性条件包括三个属性即Product-Colour-Price,具体地,属性条件为:Product=衬衫、Colour=白色、且Price在[50,200]区间内。
步骤S202:从索引表中,查询符合属性条件的目标索引主键,索引表是原始数据表的简化版。
从索引表的索引主键中,查询符合属性条件的索引主键,为了便于描述,可以将查询到的索引主键称为目标索引主键。其中,索引主键符合属性条件指的是,索引主键中的属性值符合属性条件中的属性值的要求。
例如,若接收到的数据查询请求中的属性条件为:Product=衬衫、Colour=白色、且Price在[50,200]区间内,则在表2所示的索引表中查询时,按照Product-Colour-Price在后5条记录中查询,查询到符合要求的目标索引主键为两条,分别为“衬衫_白色_98”、“衬衫_白色_198”。
索引表中,索引主键表示的是查询常用的属性条件,在索引表中查找符合属性条件的索引主键,相比现有技术而言,不必扫描原始数据表中每条记录的每个字段,查询效率较高。
需要说明的是,索引表中的索引主键可以包含空值。属性条件包含多个属性,若原始数据表中某个属性的属性值为空,则索引主键中该属性的属性值为空值(NULL)。例如,历史数据查询请求中经常使用的一个属性条件为Product-Colour-Style,在表1中,0005的Style的值为空,因此,生成的索引表表2中,0005的RowKey“围巾_花色_NULL”中,Style的属性值为空值。
后续在索引表中查询符合属性条件的目标索引主键时,可以根据实际需求,对包含空值的索引主键进行不同的处理。
一种处理方式可以是,在索引主键包含的所有属性值均符合属性条件的要求时,才确定该索引主键符合属性条件,而NULL为空值,因此,包含NULL的索引主键并不符合属性要求。
另一种处理方式可以是,默认NULL是符合属性条件中的属性值的,因此,只要索引主键中的其他属性值符合属性条件,就确定该索引主键符合属性条件。
步骤S203:从原始数据表中,查询目标索引主键对应的属性数据。
索引表中,可以记录索引主键与对象标识之间的对应关系,对象标识为对象在原始数据表中的唯一性标识,因此,查询到目标索引主键后,可以在索引表中,进一步查询该目标索引主键所对应的对象标识,进而,使用该对象标识,直接在原始数据表中,提取该对象标识所对应的属性数据。
例如,从表2中查询到的目标索引主键分别为:“衬衫_白色_98”、“衬衫_白色_198”,其各自所对应的对象标识分别为0001及0002,进而从表1中,查询0001及0002对应的字段Value的数据,该数据即待查询对象的属性数据。
需要说明的是,以上结合具体应用场景对本申请进行了说明,是为了便于理解本申请的技术方案,而非用于限定本申请的实施场景及保护范围。在实际应用中,原始数据表可以是半结构化数据表,也可以是结构化数据表。索引表可以但不限定于存储在非易失性存储介质如磁盘中。
实施中,用户可能想要在网页上浏览某个分页上的、某种类型的对象,因此,数据查询请求中,不仅包含有选取何种类型对象的条件(属性条件),还包含有在显示在怎样的分页上的条件(分页条件)。
对此,本申请提供了另一种数据查询方法,可以根据上述类型的数据查询请求,在原始数据表中查询某种类型且显示在某分页上的待查询对象的属性数据。
对此,本申请提供了另一种数据查询方法,具体可以包括步骤A1~A3。
步骤A1:接收数据查询请求,数据查询请求中包含待查询对象的属性条件及分页条件。
有关属性条件的说明可以参见上文,此处仅对分页条件进行说明。分页条件用于限定待查询对象所在的分页情况,具体可以包括分页包含的对象个数以及分页的页码。
例如,显示女装的分页最多包含2个女装的信息,用户想要浏览第1分页的女装,则分页条件中包含2及1,其中,2表示分页中可以包含的对象的个数(number),1表示分页页码(page)。
步骤A2:在索引表中,查询符合属性条件及分页条件的目标索引主键。
具体地,可以首先在索引表的索引主键中,查询符合属性条件的备选索引主键;再根据查询到备选索引主键的先后顺序,在备选索引主键中,确定符合分页条件的目标索引主键。
以表2所示的索引表为例进行说明。接收到数据查询请求后,从数据查询请求中确定的属性条件为:Product=衬衫、Colour=白色、且Price在[50,200]区间内,分页条件为:number=2及page=1。
在表2中,首先按照属性条件查找,查找到的备选索引主键包括两个,分别为“衬衫_白色_98”及“衬衫_白色_198”。该两个备选索引主键被查找到的先后顺序分别为1和2,按照分页条件可知,该两个备选索引主键对应的产品会显示在第1分页上,因此,该两个备选索引主键均可以作为目标索引主键。
步骤A3:从原始数据表中,查询目标索引主键对应的属性数据。
需要说明的是,与上述图2所示的数据查询方法相比,此数据查询方法中,数据查询请求中不仅包含属性条件,还包括分页条件,此数据查询方法仅说明了与图2的不同之处,相同之处请参见图2的说明,此处并不赘述。
由上述另一种数据查询方法的步骤A2的说明可知,按照属性条件查询到备选索引主键后,每个备选索引主键均具有被查询到的先后顺序。
因此,可以根据备选索引主键被查询的先后顺序,为备选索引主键设置相应的顺序编号,将所述备选索引主键及其对应的顺序编号保存在缓存表中,从而可以生成缓存表。
以表2为例进行说明。若从表2中,查询到的备选索引主键包括两个,分别为“衬衫_白色_98”及“衬衫_白色_198”,且该两个备选索引主键被查找到的先后顺序分别为1和2,因此,可以将每个备选索引主键及各自的先后顺序保存在缓存表中,缓存表如下表3。在表3中,Key表示备选索引主键的顺序编号,Value表示备选索引主键。
表3-缓存表
Key Value
1 衬衫_白色_98
2 衬衫_白色_198
这样,在备选索引主键中,查找符合分页条件的目标索引主键时,便可以直接在该缓存表中进行查询。例如,分页条件为number=2、page=1,则根据分页条件及缓存表中的Key值,可以确定出缓存表中Key=1及Key=2的两条记录为目标索引主键。
缓存表可以存储在内存等读写速度较快的存储介质中,从缓存表中进行检索的效率相对较高。在接收到数据查询请求后,可以直接在缓存表中,查询符合属性条件及分页条件的索引主键。相比在索引表中进行查找的方式,查询效率进一步得到了提高。
若后续接收到的数据查询请求与生成该缓存表的数据查询请求相同,便可以直接在该缓存表,查询到既符合属性条件也符合分页条件的目标索引主键。进而,再使用该目标索引主键,在原始数据表中,查询属性数据。
当然,后续数据查询请求可能与生成该缓存表的数据查询请求不同,则可能出现以下两种情况。
第一种情况是,在缓存表中,未查询到符合属性条件的索引主键。例如,缓存表中仅保存有“衬衫_白色_98”及“衬衫_白色_198”两条记录,但后续数据查询请求中的属性条件为“Product=外套、Colour=白色、且Price在[50,200]区间内”。可见,缓存表中的索引主键并不符合属性条件。
第二种情况是,在缓存表中,查询到符合属性条件的索引主键,但并未查询到符合分页条件的索引主键。同样例如,缓存表中仅保存有“衬衫_白色_98”及“衬衫_白色_198”两条记录,后续数据查询请求中属性条件为“Product=外套、Colour=白色、且Price在[50,200]区间内”,分页条件为“number=2、page=5”。可见,虽然缓存表中的索引主键符合属性条件,但是,缓存表中仅有两条记录,并不符合分页条件。
第一种情况表示,用户先前并未查询过该属性条件的对象。第二种情况表示,用户虽然先前查询过具有该属性条件的对象,但是该些对象并未包含在该分页条件所限定的分页内。
对于上述两种情况,则仍需要在索引表中进行查询,即查询符合属性条件及分页条件的目标索引主键。
需要说明的是,由于索引表中的索引主键具有排列顺序,因此,在索引表中查询前,可以首先在缓存表中确定出最接近分页条件的分页页码的索引主键,在索引表中直接定位到该索引主键,并在该索引主键以下或者以上查找目标索引主键。
仍以表3所示的缓存表为例进行说明。若后续数据查询请求中属性条件为“Product=外套、Colour=白色、且Price在[50,200]区间内”,分页条件为“number=2、page=5”。表3中的索引主键为2个,并未包含第5分页的备选索引主键。但是,根据分页条件可以确定出,表3中的“衬衫_白色_198”为最接近分页页码5的索引主键,因此,在缓存表中,确定出的索引主键为“衬衫_白色_198”。
根据分页条件可以确定,在查询索引表时,需要在索引主键“衬衫_白色_198”之后,再过滤6个符合属性条件的备选索引主键后,便可以查询到目标索引主键。因此,在索引表中,定位到“衬衫_白色_198”后,在其之后过滤6个符合属性条件的索引主键后,便可以定位到目标索引主键。该种查询方式的查询效率也较高。
为了方便理解,可以参见图3所示的数据查询方法,该数据查询方法即上述数据查询方法的流程示意,具体可以包括步骤S301~S304。
步骤S301:接收数据查询请求,数据查询请求中包含待查询对象的属性条件及分页条件。
步骤S302:从缓存表中,查询符合属性条件及分页条件的目标索引主键。若查询到,则执行步骤S303,若未查询到符合所述属性条件或未查询到符合分页条件的目标索引主键,则执行步骤S304。
步骤S303:从原始数据表中,查询目标索引主键所对应的属性数据。
步骤S304:在索引表中,查询符合属性条件及分页条件的目标索引主键,并执行步骤S303。
由以上技术方案可知,本实施例提供的数据查询方法,在接收到对象数据查询请求后,首先在缓存表中,查询目标索引主键,若未查询到,再在索引表中进行查询,该种实现方式中包含在缓存表中直接定位到目标索引主键的方案,查询效率较高。
与上述数据查询方法相对应,本申请提供了数据查询装置。以下对各个数据查询装置进行说明。
参见图4,其示出了本申请提供的一种数据查询装置的结构。如图4所示,本数据查询装置可以包括:查询请求接收单元401、索引主键查询单元402及属性数据查询单元403。
查询请求接收单元401,用于接收数据查询请求;其中,所述数据查询请求中包含待查询对象的属性条件;
索引主键查询单元402,用于在预设的索引表的索引主键中,查询符合所述属性条件的目标索引主键;其中,所述索引表是原始数据表的简化版;
属性数据查询单元403,用于在所述原始数据表中,查询所述目标索引主键所对应的字段数据,所述字段数据为所述待查询对象的属性数据。
其中,索引主键查询单元402使用的索引表的索引主键可以是原始数据表中的属性值的组合。
在实施中,查询请求接收单元接收到的数据查询请求中还包含分页条件。相对应地,索引主键查询单元402执行在预设的索引表的索引主键中,查询符合所述属性条件的目标索引主键的步骤时,具体用于:
在所述索引表的索引主键中,查询符合所述属性条件的备选索引主键;
根据查询到所述备选索引主键的先后顺序,在所述备选索引主键中,确定符合所述分页条件的目标索引主键。
另外,上述数据查询装置还可以包括:顺序编号设置单元及缓存表生成单元。其中:
顺序编号设置单元,用于根据查询到所述备选索引主键的先后顺序,为所述备选索引主键设置相应的顺序编号;
缓存表生成单元,用于将所述备选索引主键及其对应的顺序编号保存在缓存表中。
索引主键查询单元402执行在所述索引表的索引主键中,查询符合所述属性条件的备选索引主键,根据查询到所述备选索引主键的先后顺序,在所述备选索引主键中,确定符合所述分页条件的目标索引主键的步骤时,具体用于:
在所述缓存表中,查询符合所述属性条件及所述分页条件的索引主键;
若未查询到符合所述属性条件或未查询到符合所述分页条件的索引主键,则在所述索引表中,查询符合所述属性条件及所述分页条件的目标索引主键。
在实施中,索引主键查询单元402使用的索引表中记录有索引主键与对象标识之间的对应关系,对象标识为所述待查询对象在原始数据表中的唯一性标识。
相应地,属性数据查询单元403执行在所述原始数据表中,查询所述目标索引主键所对应的属性数据的步骤时,具体用于:
在所述索引表中,确定所述目标索引主键所对应的对象标识;
在所述原始数据表中,查询所述对象标识所对应的属性数据。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括上述要素的过程、方法、物品或者设备中还存在另外的相同要素。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (12)

1.一种数据查询方法,其特征在于,包括:
接收数据查询请求;其中,所述数据查询请求中包含待查询对象的属性条件;
在预设的索引表的索引主键中,查询符合所述属性条件的目标索引主键;其中,所述索引表是原始数据表的简化版;
在所述原始数据表中,查询所述目标索引主键所对应的字段数据,所述字段数据为所述待查询对象的属性数据。
2.根据权利要求1所述的数据查询方法,其特征在于,所述索引表的索引主键是所述原始数据表中的属性值的组合。
3.根据权利要求1所述的数据查询方法,其特征在于,所述数据查询请求中还包含分页条件;
相应地,所述在预设的索引表的索引主键中,查询符合所述属性条件的目标索引主键,包括:
在所述索引表的索引主键中,查询符合所述属性条件的备选索引主键;
根据查询到所述备选索引主键的先后顺序,在所述备选索引主键中,确定符合所述分页条件的目标索引主键。
4.根据权利要求3所述的数据查询方法,其特征在于,还包括:
根据查询到所述备选索引主键的先后顺序,为所述备选索引主键设置相应的顺序编号;
将所述备选索引主键及其对应的顺序编号保存在缓存表中。
5.根据权利要求4所述的数据查询方法,其特征在于,在所述索引表的索引主键中,查询符合所述属性条件的备选索引主键,根据查询到所述备选索引主键的先后顺序,在所述备选索引主键中,确定符合所述分页条件的目标索引主键,包括:
在所述缓存表中,查询符合所述属性条件及所述分页条件的目标索引主键;
若未查询到符合所述属性条件或未查询到符合所述分页条件的目标索引主键,则在所述索引表中,查询符合所述属性条件及所述分页条件的目标索引主键。
6.根据权利要求1所述的数据查询方法,其特征在于,所述索引表中记录有索引主键与对象标识之间的对应关系,所述对象标识为所述待查询对象在所述原始数据表中的唯一性标识;
相应地,所述在所述原始数据表中,查询所述目标索引主键所对应的属性数据,包括:
在所述索引表中,确定所述目标索引主键所对应的对象标识;
在所述原始数据表中,查询所述对象标识所对应的属性数据。
7.一种数据查询装置,其特征在于,包括:
查询请求接收单元,用于接收数据查询请求;其中,所述数据查询请求中包含待查询对象的属性条件;
索引主键查询单元,用于在预设的索引表的索引主键中,查询符合所述属性条件的目标索引主键;其中,所述索引表是原始数据表的简化版;
属性数据查询单元,用于在所述原始数据表中,查询所述目标索引主键所对应的字段数据,所述字段数据为所述待查询对象的属性数据。
8.根据权利要求7所述的数据查询装置,其特征在于,所述索引主键查询单元使用的索引表的索引主键是所述原始数据表中的属性值的组合。
9.根据权利要求7所述的数据查询装置,其特征在于,所述查询请求接收单元接收到的数据查询请求中还包含分页条件;
相应地,在预设的索引表的索引主键中,查询符合所述属性条件的目标索引主键的方面,所述索引主键查询单元用于:
在所述索引表的索引主键中,查询符合所述属性条件的备选索引主键;
根据查询到所述备选索引主键的先后顺序,在所述备选索引主键中,确定符合所述分页条件的目标索引主键。
10.根据权利要求9所述的数据查询装置,其特征在于,还包括:
顺序编号设置单元,用于根据查询到所述备选索引主键的先后顺序,为所述备选索引主键设置相应的顺序编号;
缓存表生成单元,用于将所述备选索引主键及其对应的顺序编号保存在缓存表中。
11.根据权利要求10所述的数据查询装置,其特征在于,在所述索引表的索引主键中,查询符合所述属性条件的备选索引主键,根据查询到所述备选索引主键的先后顺序,在所述备选索引主键中,确定符合所述分页条件的目标索引主键的方面,所述索引主键查询单元用于:
在所述缓存表中,查询符合所述属性条件及所述分页条件的索引主键;
若未查询到符合所述属性条件或未查询到符合所述分页条件的索引主键,则在所述索引表中,查询符合所述属性条件及所述分页条件的目标索引主键。
12.根据权利要求7所述的数据查询装置,其特征在于,所述索引主键查询单元使用的索引表中记录有索引主键与对象标识之间的对应关系,所述对象标识为所述待查询对象在所述原始数据表中的唯一性标识;
相应地,在所述原始数据表中,查询所述目标索引主键所对应的属性数据的方面,所述属性数据查询单元用于:
在所述索引表中,确定所述目标索引主键所对应的对象标识;
在所述原始数据表中,查询所述对象标识所对应的属性数据。
CN201610439601.1A 2016-06-17 2016-06-17 数据查询方法及装置 Active CN107515882B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610439601.1A CN107515882B (zh) 2016-06-17 2016-06-17 数据查询方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610439601.1A CN107515882B (zh) 2016-06-17 2016-06-17 数据查询方法及装置

Publications (2)

Publication Number Publication Date
CN107515882A true CN107515882A (zh) 2017-12-26
CN107515882B CN107515882B (zh) 2020-12-25

Family

ID=60721481

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610439601.1A Active CN107515882B (zh) 2016-06-17 2016-06-17 数据查询方法及装置

Country Status (1)

Country Link
CN (1) CN107515882B (zh)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109271413A (zh) * 2018-10-11 2019-01-25 江苏易润信息技术有限公司 一种数据查询的方法、装置及计算机存储介质
CN109284351A (zh) * 2018-08-14 2019-01-29 青海大学 一种基于HBase数据库的数据查询方法
CN109299110A (zh) * 2018-11-09 2019-02-01 东软集团股份有限公司 数据查询方法、装置、存储介质和电子设备
CN110175176A (zh) * 2019-05-31 2019-08-27 杭州复杂美科技有限公司 一种kv数据库配置方法、查询方法、设备和存储介质
CN110297832A (zh) * 2019-07-01 2019-10-01 联想(北京)有限公司 一种时序数据存储方法及装置、时序数据查询方法及装置
CN110781215A (zh) * 2019-10-21 2020-02-11 爱钱进(北京)信息科技有限公司 数据的查询方法、装置以及存储介质
CN110781194A (zh) * 2019-11-05 2020-02-11 网易(杭州)网络有限公司 应用程序的表数据处理方法、装置、电子设备及存储介质
CN111090649A (zh) * 2019-12-10 2020-05-01 深圳前海环融联易信息科技服务有限公司 数据信息分页查询方法、装置、计算机设备及存储介质
CN111538747A (zh) * 2020-05-27 2020-08-14 支付宝(杭州)信息技术有限公司 数据查询、辅助数据查询的方法、装置和设备
CN111897837A (zh) * 2019-05-06 2020-11-06 百度在线网络技术(北京)有限公司 数据查询方法、装置、设备和介质
CN111930823A (zh) * 2020-09-27 2020-11-13 武汉中科通达高新技术股份有限公司 一种数据查询方法、装置、数据中台和存储介质
CN112639761A (zh) * 2019-07-24 2021-04-09 华为技术有限公司 一种为数据建立索引的方法以及装置
CN113760965A (zh) * 2020-06-17 2021-12-07 北京沃东天骏信息技术有限公司 数据查询的方法和装置
CN115809248A (zh) * 2022-12-30 2023-03-17 联通智网科技股份有限公司 数据查询方法和装置以及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101727502A (zh) * 2010-01-25 2010-06-09 中兴通讯股份有限公司 一种数据查询方法及装置、系统
CN103514201A (zh) * 2012-06-27 2014-01-15 阿里巴巴集团控股有限公司 一种非关系型数据库的数据查询方法和装置
CN104111955A (zh) * 2013-04-22 2014-10-22 中国银联股份有限公司 一种面向Hbase数据库的复合查询方法
US20160004752A1 (en) * 2014-07-03 2016-01-07 DocConnects, LLC Single table index relational database
US9330130B1 (en) * 2013-02-28 2016-05-03 Ca, Inc. Get row index of record in dynamic data table

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101727502A (zh) * 2010-01-25 2010-06-09 中兴通讯股份有限公司 一种数据查询方法及装置、系统
CN103514201A (zh) * 2012-06-27 2014-01-15 阿里巴巴集团控股有限公司 一种非关系型数据库的数据查询方法和装置
US9330130B1 (en) * 2013-02-28 2016-05-03 Ca, Inc. Get row index of record in dynamic data table
CN104111955A (zh) * 2013-04-22 2014-10-22 中国银联股份有限公司 一种面向Hbase数据库的复合查询方法
US20160004752A1 (en) * 2014-07-03 2016-01-07 DocConnects, LLC Single table index relational database

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109284351A (zh) * 2018-08-14 2019-01-29 青海大学 一种基于HBase数据库的数据查询方法
CN109271413A (zh) * 2018-10-11 2019-01-25 江苏易润信息技术有限公司 一种数据查询的方法、装置及计算机存储介质
CN109299110A (zh) * 2018-11-09 2019-02-01 东软集团股份有限公司 数据查询方法、装置、存储介质和电子设备
CN111897837A (zh) * 2019-05-06 2020-11-06 百度在线网络技术(北京)有限公司 数据查询方法、装置、设备和介质
CN111897837B (zh) * 2019-05-06 2023-08-15 百度在线网络技术(北京)有限公司 数据查询方法、装置、设备和介质
CN110175176A (zh) * 2019-05-31 2019-08-27 杭州复杂美科技有限公司 一种kv数据库配置方法、查询方法、设备和存储介质
CN110297832A (zh) * 2019-07-01 2019-10-01 联想(北京)有限公司 一种时序数据存储方法及装置、时序数据查询方法及装置
CN110297832B (zh) * 2019-07-01 2021-12-24 联想(北京)有限公司 一种时序数据存储方法及装置、时序数据查询方法及装置
US11868332B2 (en) 2019-07-24 2024-01-09 Huawei Cloud Computing Technologies Co., Ltd. Data index establishment method, and apparatus
CN112639761A (zh) * 2019-07-24 2021-04-09 华为技术有限公司 一种为数据建立索引的方法以及装置
CN112639761B (zh) * 2019-07-24 2024-04-26 华为云计算技术有限公司 一种为数据建立索引的方法以及装置
CN110781215A (zh) * 2019-10-21 2020-02-11 爱钱进(北京)信息科技有限公司 数据的查询方法、装置以及存储介质
CN110781194A (zh) * 2019-11-05 2020-02-11 网易(杭州)网络有限公司 应用程序的表数据处理方法、装置、电子设备及存储介质
CN110781194B (zh) * 2019-11-05 2022-06-14 网易(杭州)网络有限公司 应用程序的表数据处理方法、装置、电子设备及存储介质
CN111090649A (zh) * 2019-12-10 2020-05-01 深圳前海环融联易信息科技服务有限公司 数据信息分页查询方法、装置、计算机设备及存储介质
CN111538747A (zh) * 2020-05-27 2020-08-14 支付宝(杭州)信息技术有限公司 数据查询、辅助数据查询的方法、装置和设备
CN111538747B (zh) * 2020-05-27 2023-04-14 支付宝(杭州)信息技术有限公司 数据查询、辅助数据查询的方法、装置和设备
CN113760965A (zh) * 2020-06-17 2021-12-07 北京沃东天骏信息技术有限公司 数据查询的方法和装置
CN111930823A (zh) * 2020-09-27 2020-11-13 武汉中科通达高新技术股份有限公司 一种数据查询方法、装置、数据中台和存储介质
CN115809248B (zh) * 2022-12-30 2024-03-22 联通智网科技股份有限公司 数据查询方法和装置以及存储介质
CN115809248A (zh) * 2022-12-30 2023-03-17 联通智网科技股份有限公司 数据查询方法和装置以及存储介质

Also Published As

Publication number Publication date
CN107515882B (zh) 2020-12-25

Similar Documents

Publication Publication Date Title
CN107515882A (zh) 数据查询方法及装置
KR101720602B1 (ko) 데이터를 저장하기 위한 방법 및 장치
US9009164B2 (en) Techniques for including collection items in search results
CN102999526B (zh) 一种数据库关系表的拆分、查询方法及系统
CN110019540B (zh) 企业图谱的实现方法、展示方法及装置、设备
CN103942205B (zh) 存储、读取目录索引的方法、装置及系统
CN105404627B (zh) 一种用于确定搜索结果的方法与设备
CN111026874A (zh) 知识图谱的数据处理方法及服务器
CN102509012A (zh) 将电子病历的内容映射电子病历标准数据库的方法
CN105224532A (zh) 数据处理方法及装置
CN112434027A (zh) 多维度数据的索引方法、装置、计算机设备和存储介质
CN105760387B (zh) 提供业务对象库存信息的方法及装置
CN105335386A (zh) 一种提供导航标签的方法及装置
CN104636368A (zh) 数据检索方法、装置及服务器
CN102193988A (zh) 一种图形数据库节点数据的检索方法及系统
CN105989007B (zh) 一种文件路径处理方法及装置
CN107291951B (zh) 数据处理方法、装置、存储介质和处理器
CN105354149B (zh) 一种内存数据查找方法和装置
CN102129454A (zh) 一种基于云存储的百科数据处理方法及系统
Chung et al. Content-based retrieval and data mining of a skin cancer image database
CN114741570A (zh) 图数据库的查询方法、索引创建方法及相关设备
CN114860806A (zh) 区块链的数据查询方法、装置、计算机设备和存储介质
CN111949665B (zh) 用于数据处理的方法和装置
CN115168409B (zh) 数据库分表的数据查询方法、装置和计算机设备
CN116095137B (zh) 基于供应链管理的数据智能采集推送方法及系统

Legal Events

Date Code Title Description
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant