CN116644091A - 数据查询方法、装置、计算设备及存储介质 - Google Patents
数据查询方法、装置、计算设备及存储介质 Download PDFInfo
- Publication number
- CN116644091A CN116644091A CN202310316970.1A CN202310316970A CN116644091A CN 116644091 A CN116644091 A CN 116644091A CN 202310316970 A CN202310316970 A CN 202310316970A CN 116644091 A CN116644091 A CN 116644091A
- Authority
- CN
- China
- Prior art keywords
- data
- query
- screening
- computing device
- result
- 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
- 238000000034 method Methods 0.000 title claims abstract description 75
- 238000003860 storage Methods 0.000 title claims abstract description 32
- 238000012216 screening Methods 0.000 claims abstract description 67
- 230000015654 memory Effects 0.000 claims abstract description 41
- 238000001914 filtration Methods 0.000 claims description 11
- 238000012986 modification Methods 0.000 claims description 4
- 230000004048 modification Effects 0.000 claims description 4
- 230000010354 integration Effects 0.000 claims description 2
- 238000012163 sequencing technique Methods 0.000 claims description 2
- 230000004044 response Effects 0.000 abstract description 15
- 238000004891 communication Methods 0.000 description 8
- 238000011161 development Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 238000012423 maintenance Methods 0.000 description 5
- 238000005457 optimization Methods 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000003068 static effect Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000013500 data storage Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000007723 transport mechanism Effects 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
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/24—Querying
- G06F16/245—Query processing
- G06F16/2453—Query optimisation
- G06F16/24534—Query rewriting; Transformation
- G06F16/24539—Query rewriting; Transformation using cached or materialised query results
-
- 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/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24552—Database cache management
-
- 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/24—Querying
- G06F16/245—Query processing
- G06F16/2457—Query processing with adaptation to user needs
- G06F16/24578—Query processing with adaptation to user needs using ranking
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
本发明公开了一种数据查询方法、装置、计算设备及存储介质,涉及互联网技术领域。方法在计算设备中执行,包括:响应于数据查询请求,从所述计算设备的内存中获取对应的业务筛选数据集合;根据所述业务筛选数据集合,进行查询、筛选和排序操作,以得到数据结果ID集合;根据所述数据结果ID集合,从缓存中获取对应的详情数据,并进行拼装生成数据查询结果。根据本发明的技术方案,能实现优化查询性能,缩短响应时长,提高响应速度和数据查询效率。
Description
技术领域
本发明涉及互联网技术领域,尤其涉及一种数据查询方法、装置、计算设备及存储介质。
背景技术
随着互联网的高速发展,互联网用户快速增长,随之产生的应用数据量也日趋增长。而随着数据量的快速增长以及高并发访问,会导致系统存储开销增大、系统查询性能的耗时增长、应用服务的稳定性和可靠性降低等问题。因此,性能优化已是应用服务设计中的重要环节。
现有技术中,常见的针对添加数据库索引进行优化的方案,主要是通过聚簇索引和非聚簇索引来减少数据库的扫描次数和回表次数,以达到优化查询的效果。而添加索引的列主要集中在查询条件中的筛选列、排序中常用的列等,从这些列中选择1个或者N个列添加索引。由于索引列不是固定的,随着产品需求的迭代,以及长时间的积累,索引的数量也随之增长,导致维护成本较高。具体而言,采用上述方案具有以下缺陷:创建数据库索引和维护索引会耗费大量时间,并且耗费的时间随着数据量的增加而增加;数据库索引需要占据物理空间,除了数据表占据数据空间之外,每一个索引还要占用一定的物理空间,如果要建立聚簇索引,占据的空间会更大;当对表中的数据进行增加、删除和修改时,索引数据也需要动态维护,导致数据的维护速度降低;随着数据量的增长,索引数据也随之增长,鉴于CPU、I/O、磁盘、内存等系统资源的瓶颈,导致数据库查询速度较慢。
现有技术中还有一种查询优化方案,是基于内存的缓存中间件(例如redis)替代持久化存储服务(如:mysql),以此实现优化数据存储和查询的相关性能。该方案主要采用redis中的哈希对象hash以及有序集合sortedset两种数据结构。根据主要的产品业务需求进行划分,例如可以包括落地页详情、列表入口feed流这两种业务场景。其中,针对落地页详情场景主要的策略为:先将数据库中详情数据(如文章)同步存储至redis缓存中(hash数据结构),包括全量、增量的数据同步,其中数据变化的通知,可以通过数据库的修改时间变化监听,也可通过后台数据变化发送的消息通知获取。针对列表入口feed流场景的主要的策略为:根据常用的数据列表入口组合条件,或者借助接口参数和es访问日志分析常用的查询组合条件,定义对应的redis有序集合sortedset的key,在获取数据变化的通知后,将数据value按照一定排序方式存入集合或者从集合移除,其中数据有序性可以通过score实现。上述方案中,由于有序集合的key是依据查询条件组合产生,当查询条件和排序条件过多,加上条件组合本身没有规律,会导致redis缓存中需要存储的有序集合sortedset增多,同时导致冗余数据过多,每新增一个key就意味着二次开发,这样一方面增加了缓存的空间成本,另一方面也增加了开发成本。另外,由于该方案中每新增一个有序集合sortedset,都需要将数据库中对应的符合查询组合条件的存量、增量数据同步至redis缓存中,需要借助定时服务等方式实现同步效果,增加了一定的开发维护成本。
为此,需要一种数据查询方法,以解决上述技术方案中存在的问题。
发明内容
为此,本发明提供一种数据查询方法和数据查询装置,以解决或至少缓解上面存在的问题。
根据本发明的一个方面,提供一种数据查询方法,在计算设备中执行,包括:响应于数据查询请求,从所述计算设备的内存中获取对应的业务筛选数据集合;根据所述业务筛选数据集合,进行查询、筛选和排序操作,以得到数据结果ID集合;根据所述数据结果ID集合,从缓存中获取对应的详情数据,并进行拼装生成数据查询结果。
可选地,在根据本发明的数据查询方法中,根据所述业务筛选数据集合,进行查询、筛选和排序操作,以得到数据结果ID集合,包括:利用语言集成查询方法,根据所述业务筛选数据集合,进行查询、筛选和排序操作,以得到数据结果ID集合。
可选地,在根据本发明的数据查询方法中,在响应于数据查询请求之前,包括:根据查询筛选条件,定义查询筛选对象结构,以便根据所述查询筛选对象结构生成业务筛选数据集合列表;定时将业务筛选数据集合列表,存储到所述计算设备的内存。
可选地,在根据本发明的数据查询方法中,所述查询筛选对象结构包括筛选过滤列、排序字段列。
可选地,在根据本发明的数据查询方法中,所述筛选过滤列包括来源类型、一级分类、二级分类、作者ID、发布时间、修改时间、文章类型、关联标签、关联品牌、关联车系、关联车型中的一项或多项;所述排序字段列包括发布时间排序列、评论量排序列、浏览量排序列中的一项或多项。
可选地,在根据本发明的数据查询方法中,在响应于数据查询请求之前,还包括:定时获取详情数据并存储到缓存。
可选地,在根据本发明的数据查询方法中,所述语言集成查询方法为Ling查询方法。
根据本发明的一个方面,提供一种数据查询装置,驻留在计算设备中,包括:获取模块,适于响应于数据查询请求,从所述计算设备的内存中获取对应的业务筛选数据集合;查询模块,适于根据所述业务筛选数据集合,进行查询、筛选和排序操作,以得到数据结果ID集合;生成模块,适于根据所述数据结果ID集合,从缓存中获取对应的详情数据,并进行拼装生成数据查询结果。
根据本发明的一个方面,提供一种计算设备,包括:至少一个处理器;存储器,存储有程序指令,其中,程序指令被配置为适于由上述至少一个处理器执行,所述程序指令包括用于执行如上所述的数据查询方法的指令。
根据本发明的一个方面,提供一种存储有程序指令的可读存储介质,当该程序指令被计算设备读取并执行时,使得该计算设备执行如上所述的数据查询方法。
根据本发明的技术方案,提供了一种数据查询方法,预先在应用服务器的本地内存存储业务筛选数据集合列表,在接收到数据查询请求时,首先从计算设备的内存中,获取与数据查询请求相对应的业务筛选数据集合,随后,结合Linq查询方法进行二次查询、筛选、排序操作,来实现对业务筛选数据集合的二次运算,得到数据结果ID集合。进而,根据数据结果ID集合从Redis分布式缓存获取详情数据,并进行拼装来得到最终的数据查询结果,返回数据查询结果。这样,本发明实现了一种灵活、高效的类sql数据查询方案。相比于数据库索引或者缓存Redis有序集合sortedset的数据查询优化方案,降低了物理空间成本和开发维护成本,同时优化查询性能,缩短了响应时长,提高了响应速度和数据查询效率。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
为了实现上述以及相关目的,本文结合下面的描述和附图来描述某些说明性方面,这些方面指示了可以实践本文所公开的原理的各种方式,并且所有方面及其等效方面旨在落入所要求保护的主题的范围内。通过结合附图阅读下面的详细描述,本公开的上述以及其它目的、特征和优势将变得更加明显。遍及本公开,相同的附图标记通常指代相同的部件或元素。
图1示出了根据本发明一个实施例的计算设备100的示意图;
图2示出了根据本发明一个实施例的数据查询方法200的流程示意图;
图3示出了根据本发明的一个实施例的数据查询装置300的示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
图1示出了根据本发明一个实施例的计算设备100的示意图。如图1所示,在基本配置中,计算设备100包括至少一个处理单元102和系统存储器104。根据一个方面,取决于计算设备的配置和类型,处理单元102可以实现为处理器。系统存储器104包括但不限于易失性存储(例如,随机存取存储器)、非易失性存储(例如,只读存储器)、闪速存储器、或者这样的存储器的任何组合。根据一个方面,系统存储器104中包括操作系统105。
根据一个方面,操作系统105例如适合于控制计算设备100的操作。此外,示例结合图形库、其他操作系统、或任何其他应用程序而被实践,并且不限于任何特定的应用或系统。在图1中通过在虚线内的那些组件示出了该基本配置。根据一个方面,计算设备100具有额外的特征或功能。例如,根据一个方面,计算设备100包括额外的数据存储设备(可移动的和/或不可移动的),例如磁盘、光盘、或者磁带。这样额外的存储在图1中是由可移动存储设备109和不可移动存储设备110示出的。
如在上文中所陈述的,根据一个方面,在系统存储器104中存储有程序模块103。根据一个方面,程序模块103可以包括一个或多个应用程序,本发明不限制应用程序的类型,例如应用程序可以包括:电子邮件和联系人应用程序、文字处理应用程序、电子表格应用程序、数据库应用程序、幻灯片展示应用程序、绘画或计算机辅助应用程序、网络浏览器应用程序等。
根据一个方面,程序模块103可以包括数据查询装置300,数据查询装置300中包括适于执行本发明的数据查询方法200的多条程序指令,以便通过执行本发明的数据查询方法200来实现优化数据查询性能,提高响应速度和数据查询效率。
根据一个方面,可以在包括分立电子元件的电路、包含逻辑门的封装或集成的电子芯片、利用微处理器的电路、或者在包含电子元件或微处理器的单个芯片上实践示例。例如,可以经由其中在图1中所示出的每个或许多组件可以集成在单个集成电路上的片上系统(SOC)来实践示例。根据一个方面,这样的SOC设备可以包括一个或多个处理单元、图形单元、通信单元、系统虚拟化单元、以及各种应用功能,其全部作为单个集成电路而被集成(或“烧”)到芯片基底上。当经由SOC进行操作时,可以经由在单个集成电路(芯片)上与计算设备100的其他组件集成的专用逻辑来对在本文中所描述的功能进行操作。还可以使用能够执行逻辑操作(例如AND、OR和NOT)的其他技术来实践本发明的实施例,所述其他技术包括但不限于机械、光学、流体、和量子技术。另外,可以在通用计算机内或在任何其他任何电路或系统中实践本发明的实施例。
根据一个方面,计算设备100还可以具有一个或多个输入设备112,例如键盘、鼠标、笔、语音输入设备、触摸输入设备等。还可以包括输出设备114,例如显示器、扬声器、打印机等。前述设备是示例并且也可以使用其他设备。计算设备100可以包括允许与其他计算设备118进行通信的一个或多个通信连接116。合适的通信连接116的示例包括但不限于:RF发射机、接收机和/或收发机电路;通用串行总线(USB)、并行和/或串行端口。
如在本文中所使用的术语计算机可读介质包括计算机存储介质。计算机存储介质可以包括以任何用于存储信息(例如,计算机可读指示、数据结构、或程序模块103)的方法或技术来实现的易失性的和非易失性的、可移动的和不可移动的介质。系统存储器104、可移动存储设备109、和不可移动存储设备110都是计算机存储介质的示例(即,存储器存储)。计算机存储介质可以包括随机存取存储器(RAM)、只读存储器(ROM)、电可擦只读存储器(EEPROM)、闪速存储器或其他存储器技术、CD-ROM、数字通用盘(DVD)或其他光存储、盒式磁带、磁带、磁盘存储器或其他磁存储设备、或者可用于存储信息并且可以由计算设备100访问的任何其他制品。根据一个方面,任何这样的计算机存储介质都可以是计算设备100的一部分。计算机存储介质不包括载波或其他经传播的数据信号。
根据一个方面,通信介质是由计算机可读指令、数据结构、程序模块103、或者经调制的数据信号(例如,载波或其他传输机制)中的其他数据实施的,并且包括任何信息传递介质。根据一个方面,术语“经调制的数据信号”描述了具有一个或多个特征集或者以将信息编码在信号中的方式改变的信号。作为示例而非限制,通信介质包括诸如有线网络或直接有线连接之类的有线介质,以及诸如声学、射频(RF)、红外线的、以及其他无线介质之类的无线介质。
在根据本发明的实施例中,计算设备100被配置为执行根据本发明的数据查询方法200。计算设备100包括一个或多个处理器、以及存储有程序指令的一个或多个可读存储介质,当程序指令被配置为由一个或多个处理器执行时,使得计算设备执行本发明实施例中的数据查询方法200。通过执行本发明的数据查询方法200,来优化查询性能,提高响应速度和数据查询效率。
根据本发明的一个实施例,计算设备100中部署有数据查询装置300,数据查询装置300被配置为执行根据本发明的数据查询方法200。其中,数据查询装置300中包含用于执行本发明的数据查询方法200的多条程序指令,这些程序指令可以指示处理器执行根据本发明的数据查询方法200。
图2示出了根据本发明一个实施例的数据查询方法200的流程示意图。数据查询方法200适于在计算设备100中执行,具体可以在计算设备100的数据查询装置300中执行。
在一个实施例中,计算设备100具体可以实现为应用服务器。本发明的数据查询方法200可以在应用服务器中执行。
如图2所示,方法200始于步骤210。
根据本发明的方法200,在步骤210中,当计算设备100(应用服务器)接收到数据查询请求时,响应于数据查询请求,首先从计算设备的内存中,获取与数据查询请求相对应的业务筛选数据集合(静态对象)。
需要说明的是,在本发明的实施例中,计算设备(应用服务器)的内存中预先存储有符合条件的业务筛选数据集合列表,该业务筛选数据集合列表是根据预先定义的查询筛选对象结构来生成。查询筛选对象结构可以是根据查询筛选条件定义的一种数据结构。
随后,在步骤220中,根据业务筛选数据集合,进行查询、筛选和排序操作,以得到数据结果ID集合。
在一个实施例中,可以利用语言集成查询方法,根据业务筛选数据集合,进行查询(二次查询)、筛选和排序操作,以得到数据结果ID集合。这里,即是利用语言集成查询方法,来对业务筛选数据集合进行二次运算,以得到数据结果ID集合。
在一个实施例中,语言集成查询方法具体可以为Ling查询方法。需要说明的是,Ling查询方法用于以对象形式管理关系数据,并提供了丰富的查询功能,Linq中Where查询与SQL命令中的Where作用相似,都是起到范围限定作用,也即过滤作用,可以对数组、集合等数据结构进行查询、筛选、排序等操作。
最后,在步骤230中,根据数据结果ID集合,可以从缓存中获取对应(与数据结果ID集合相对应)的详情数据,并对数据结果ID集合对应的详情数据进行拼装,以生成数据查询结果。这样,可以返回数据查询结果。
这里,缓存具体可以为与计算设备(应用服务器)通信连接的Redis分布式缓存。在本发明的一个实施例中,Redis分布式缓存中预先存储有详情数据。
根据本发明的一个实施例,在执行步骤210之前,需要预先进行业务筛选数据的同步。具体地,可以根据查询筛选条件,定义查询筛选对象结构,随后可以根据查询筛选对象结构来生成业务筛选数据集合列表(即,静态对象)。接着,可以定时将业务筛选数据集合列表,存储到计算设备(应用服务器)的内存。这样,可以定时将业务筛选数据集合列表同步至内存的静态对象。
在一种实现方式中,可以通过创建定时任务(第一定时任务),通过执行定时任务(第一定时任务),来实现定时将业务筛选数据集合列表存储到计算设备的内存。这样,实现将符合条件的业务筛选数据集合列表从数据库服务器中同步至应用服务器的内存,并可以存储在应用服务器本地缓存或者内存的静态对象中。
需要说明的是,鉴于内存资源的稀缺宝贵性,以及查询性能的兼顾(如果数据量太大,即使是基于内存的查询操作,速度也不能得到保证),业务筛选数据集合列表的存储容量需要经过合理设计。
另外,在时间维度上,可以基于最近最多使用的数据原则,例如可以存储近1年的数据,或者,也可以自定义一个合理的时间范围来存储数据。在数据量方面,例如可以存储最近1-10万条数据,也可以由本领域技术人员自定义所要存储的数据条数。经过初步的测试,根据本发明的数据查询方法200,在10万条数据量级的内存中进行Ling查询,响应时长低于100ms。
可见,根据本发明的数据查询方法200的响应时长大大降低,响应速度更快,显然提高了数据查询效率。
在一个实施例中,计算设备(应用服务器)与数据库服务器通信连接。在执行步骤210之前,可以定时从数据库服务器获取详情数据,并将定时获取的详情数据存储到缓存(Redis分布式缓存)。具体地,可以通过创建第二定时任务,通过执行第二定时任务,来实现定时将详情数据存储到Redis分布式缓存。
根据本发明的一个实施例,查询筛选对象结构例如可以包括筛选过滤列、排序字段列。此外,查询筛选对象结构还可以包括数据值较小的列(特定场景下只需要基本字段,不需要另行读取数据库服务器或拼装数据)。
具体地,以文章为例,筛选过滤列例如可以包括来源类型、一级分类、二级分类、作者ID、发布时间、修改时间、文章类型、关联标签、关联品牌、关联车系、关联车型中的一项或多项。
排序字段列例如可以包括发布时间排序列、评论量排序列、浏览量排序列中的一项或多项。
根据本发明的数据查询方法200,预先在应用服务器的本地内存存储业务筛选数据集合列表,在接收到数据查询请求时,首先从计算设备的内存中,获取与数据查询请求相对应的业务筛选数据集合,随后,结合Linq查询方法进行二次查询、筛选、排序操作,来实现对业务筛选数据集合的二次运算,得到数据结果ID集合。进而,根据数据结果ID集合从Redis分布式缓存获取详情数据,并进行拼装来得到最终的数据查询结果,返回数据查询结果。这样,本发明实现了一种灵活、高效的类sql数据查询方案。相比于数据库服务器索引或者缓存Redis有序集合sortedset的数据查询优化方案,降低了物理空间成本和开发维护成本,同时优化查询性能,缩短了响应时长,提高了响应速度和数据查询效率。
图3示出了根据本发明的一个实施例的数据查询装置300的示意图。数据查询装置300驻留在计算设备100(具体可以为应用服务器)中。数据查询装置300可以被配置为执行本发明的数据查询方法200,以便优化查询性能,缩短响应时长,提高响应速度和数据查询效率。
如图3所示,数据查询装置300包括依次通信相连的获取模块310、查询模块320以及生成模块330。
其中,获取模块310可以响应于数据查询请求,从计算设备的内存中获取对应的业务筛选数据集合。查询模块320可以根据业务筛选数据集合,进行查询、筛选和排序操作,以得到数据结果ID集合。生成模块330可以根据数据结果ID集合,从缓存中获取对应的详情数据,并进行拼装生成数据查询结果。
应当指出,获取模块310用于执行前述步骤210,查询模块320用于执行前述步骤220,生成模块330用于执行前述步骤230。这里,获取模块310、查询模块320以及生成模块330的具体执行逻辑可参见前文方法200中对步骤210~230的描述,此处不再赘述。
这里描述的各种技术可结合硬件或软件,或者它们的组合一起实现。从而,本发明的方法和设备,或者本发明的方法和设备的某些方面或部分可采取嵌入有形媒介,例如可移动硬盘、U盘、软盘、CD-ROM或者其它任意机器可读的存储介质中的程序代码(即指令)的形式,其中当程序被载入诸如计算机之类的机器,并被所述机器执行时,所述机器变成实践本发明的设备。
在程序代码在可编程计算机上执行的情况下,移动终端一般包括处理器、处理器可读的存储介质(包括易失性和非易失性存储器和/或存储元件),至少一个输入装置,和至少一个输出装置。其中,存储器被配置用于存储程序代码;处理器被配置用于根据该存储器中存储的所述程序代码中的指令,执行本发明的数据查询方法。
以示例而非限制的方式,可读介质包括可读存储介质和通信介质。可读存储介质存储诸如计算机可读指令、数据结构、程序模块或其它数据等信息。通信介质一般以诸如载波或其它传输机制等已调制数据信号来体现计算机可读指令、数据结构、程序模块或其它数据,并且包括任何信息传递介质。以上的任一种的组合也包括在可读介质的范围之内。
在此处所提供的说明书中,算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与本发明的示例一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下被实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。
本领域那些技术人员应当理解在本文所公开的示例中的设备的模块或单元或组件可以布置在如该实施例中所描述的设备中,或者可替换地可以定位在与该示例中的设备不同的一个或多个设备中。前述示例中的模块可以组合为一个模块或者此外可以分成多个子模块。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。
此外,所述实施例中的一些在此被描述成可以由计算机系统的处理器或者由执行所述功能的其它装置实施的方法或方法元素的组合。因此,具有用于实施所述方法或方法元素的必要指令的处理器形成用于实施该方法或方法元素的装置。此外,装置实施例的在此所述的元素是如下装置的例子:该装置用于实施由为了实施该发明的目的元素所执行的功能。
如在此所使用的那样,除非另行规定,使用序数词“第一”、“第二”、“第三”等等来描述普通对象仅仅表示涉及类似对象的不同实例,并且并不意图暗示这样被描述的对象必须具有时间上、空间上、排序方面或者以任意其它方式的给定顺序。
尽管根据有限数量的实施例描述了本发明,但是受益于上面的描述,本技术领域内的技术人员明白,在由此描述的本发明的范围内,可以设想其它实施例。此外,应当注意,本说明书中使用的语言主要是为了可读性和教导的目的而选择的,而不是为了解释或者限定本发明的主题而选择的。
Claims (10)
1.一种数据查询方法,在计算设备中执行,包括:
响应于数据查询请求,从所述计算设备的内存中获取对应的业务筛选数据集合;
根据所述业务筛选数据集合,进行查询、筛选和排序操作,以得到数据结果ID集合;
根据所述数据结果ID集合,从缓存中获取对应的详情数据,并进行拼装生成数据查询结果。
2.如权利要求1所述的方法,其中,根据所述业务筛选数据集合,进行查询、筛选和排序操作,以得到数据结果ID集合,包括:
利用语言集成查询方法,根据所述业务筛选数据集合,进行查询、筛选和排序操作,以得到数据结果ID集合。
3.如权利要求1或2所述的方法,其中,在响应于数据查询请求之前,包括:
根据查询筛选条件,定义查询筛选对象结构,以便根据所述查询筛选对象结构生成业务筛选数据集合列表;
定时将业务筛选数据集合列表,存储到所述计算设备的内存。
4.如权利要求3所述的方法,其中,所述查询筛选对象结构包括筛选过滤列、排序字段列。
5.如权利要求4所述的方法,其中,所述筛选过滤列包括来源类型、一级分类、二级分类、作者ID、发布时间、修改时间、文章类型、关联标签、关联品牌、关联车系、关联车型中的一项或多项;
所述排序字段列包括发布时间排序列、评论量排序列、浏览量排序列中的一项或多项。
6.如权利要求1-5中任一项所述的方法,其中,在响应于数据查询请求之前,还包括:
定时获取详情数据并存储到缓存。
7.如权利要求2所述的方法,其中,所述语言集成查询方法为Ling查询方法。
8.一种数据查询装置,驻留在计算设备中,包括:
获取模块,适于响应于数据查询请求,从所述计算设备的内存中获取对应的业务筛选数据集合;
查询模块,适于根据所述业务筛选数据集合,进行查询、筛选和排序操作,以得到数据结果ID集合;
生成模块,适于根据所述数据结果ID集合,从缓存中获取对应的详情数据,并进行拼装生成数据查询结果。
9.一种计算设备,包括:
至少一个处理器;以及
存储器,存储有程序指令,其中,所述程序指令被配置为适于由所述至少一个处理器执行,所述程序指令包括用于执行如权利要求1-7中任一项所述的方法的指令。
10.一种存储有程序指令的可读存储介质,当所述程序指令被计算设备读取并执行时,使得所述计算设备执行如权利要求1-7中任一项所述方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310316970.1A CN116644091A (zh) | 2023-03-28 | 2023-03-28 | 数据查询方法、装置、计算设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310316970.1A CN116644091A (zh) | 2023-03-28 | 2023-03-28 | 数据查询方法、装置、计算设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116644091A true CN116644091A (zh) | 2023-08-25 |
Family
ID=87617663
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310316970.1A Pending CN116644091A (zh) | 2023-03-28 | 2023-03-28 | 数据查询方法、装置、计算设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116644091A (zh) |
-
2023
- 2023-03-28 CN CN202310316970.1A patent/CN116644091A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9460188B2 (en) | Data warehouse compatibility | |
US8150723B2 (en) | Large-scale behavioral targeting for advertising over a network | |
CN107818115B (zh) | 一种处理数据表的方法及装置 | |
US20170083573A1 (en) | Multi-query optimization | |
US8924373B2 (en) | Query plans with parameter markers in place of object identifiers | |
CN102129425B (zh) | 数据仓库中大对象集合表的访问方法及装置 | |
US20070124277A1 (en) | Index and Method for Extending and Querying Index | |
US8812489B2 (en) | Swapping expected and candidate affinities in a query plan cache | |
US20090327220A1 (en) | Automated client/server operation partitioning | |
US10296497B2 (en) | Storing a key value to a deleted row based on key range density | |
CN104063376A (zh) | 多维度分组运算方法及系统 | |
US10579616B2 (en) | Data search system, data search method, and program product | |
CN102955792A (zh) | 一种实时全文搜索引擎事务处理的实现方法 | |
CN110134681B (zh) | 数据存储与查询方法、装置、计算机设备及存储介质 | |
US7440956B2 (en) | Enforcing constraints from a parent table to a child table | |
CN111651453A (zh) | 用户历史行为查询方法、装置、电子设备及存储介质 | |
US8396858B2 (en) | Adding entries to an index based on use of the index | |
CN101963993B (zh) | 一种数据库单表记录快速查找的方法 | |
WO2022251001A1 (en) | Query execution utilizing probabilistic indexing | |
CN110309184B (zh) | 一种航空运价数据的缓存方法及系统 | |
CN116644091A (zh) | 数据查询方法、装置、计算设备及存储介质 | |
CN112380256B (zh) | 能源系统数据存取的方法、数据库、计算机可读存储介质 | |
CN115114297A (zh) | 数据轻量存储及查找方法、装置、电子设备及存储介质 | |
CN115328950A (zh) | 一种基于二级索引的hbase查询方法、终端设备及存储介质 | |
CN113722296A (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 |