CN112613271A - 数据分页方法、装置、计算机设备及存储介质 - Google Patents
数据分页方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN112613271A CN112613271A CN202011584981.0A CN202011584981A CN112613271A CN 112613271 A CN112613271 A CN 112613271A CN 202011584981 A CN202011584981 A CN 202011584981A CN 112613271 A CN112613271 A CN 112613271A
- Authority
- CN
- China
- Prior art keywords
- data
- paging
- linked list
- target
- client
- 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 57
- 238000003860 storage Methods 0.000 title claims abstract description 30
- 238000004458 analytical method Methods 0.000 claims abstract description 79
- 238000012545 processing Methods 0.000 claims abstract description 33
- 238000007781 pre-processing Methods 0.000 claims description 22
- 230000002159 abnormal effect Effects 0.000 claims description 20
- 238000004590 computer program Methods 0.000 claims description 17
- 230000006870 function Effects 0.000 claims description 14
- 238000003825 pressing Methods 0.000 claims description 7
- 230000007246 mechanism Effects 0.000 claims description 5
- 238000004140 cleaning Methods 0.000 claims description 4
- 230000008569 process Effects 0.000 description 11
- 230000002085 persistent effect Effects 0.000 description 9
- 230000004044 response Effects 0.000 description 7
- 230000002776 aggregation Effects 0.000 description 5
- 238000004220 aggregation Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000007717 exclusion Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/103—Formatting, i.e. changing of presentation of documents
- G06F40/114—Pagination
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9024—Graphs; Linked lists
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/9038—Presentation of query results
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Computational Linguistics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及数据展示技术领域,公开了一种数据分页方法、装置、计算机设备及存储介质,包括根据客户端发送的文件数据,获取解析数据,解析数据包括应用场景;若应用场景为目标场景,则将解析数据存储在非关系型数据库中,依据解析数据生成目标数据链表,目标数据链表包括链表标识和与链表标识对应的数据容量;将链表标识和数据容量发送给客户端,接收客户端基于链表标识和数据容量发送的分页请求,分页请求包括分页参数;基于分页参数,确定分页数据链表、分页数据地址和展示数量;根据分页数据地址从分页数据链表中获取目标数据,依据展示数量对目标数据进行处理,获取分页结果,将分页结果发送给客户端,以实现对目标场景下的数据快速分页。
Description
技术领域
本发明涉及数据展示技术领域,尤其涉及一种数据分页方法、装置、计算机设备及存储介质。
背景技术
分页技术是一种将数据分段展示给用户的技术,是软件设计中非常常见的一种场景。
目前,分页技术通常是将数据存储在关系型数据库,这种关系型数据库中字段和表关系清晰,结构严谨,进行分页时,需要建立严谨的索引结构,编程复杂,响应速度慢,因此,关系型数据库不适用于无需持久化存储、数据量小且并发要求高的数据的分页要求。
发明内容
本发明实施例提供一种数据分页方法、装置、计算机设备及存储介质,以解决关系型数据库不适用于无需持久化存储、数据量小且并发要求高的数据的分页要求的问题。
一种数据分页方法,包括:
根据客户端发送的文件数据,获取解析数据,所述解析数据包括应用场景;
若所述应用场景为目标场景,则将所述解析数据存储在非关系型数据库中,依据所述解析数据生成目标数据链表,所述目标数据链表包括链表标识和与所述链表标识对应的数据容量;
将所述链表标识和所述数据容量发送给客户端,接收客户端基于所述链表标识和数据容量发送的分页请求,所述分页请求包括分页参数;
基于所述分页参数,确定分页数据链表、分页数据地址和展示数量;
根据所述分页数据地址从所述分页数据链表中获取目标数据,依据所述展示数量对所述目标数据进行处理,获取分页结果,将所述分页结果发送给所述客户端。
一种数据分页装置,包括:
解析数据获取模块,用于根据客户端发送的文件数据,获取解析数据,所述解析数据包括应用场景;
目标数据链表获取模块,用于若所述应用场景为目标场景,则将所述解析数据存储在非关系型数据库中,依据所述解析数据生成目标数据链表,所述目标数据链表包括链表标识和与所述链表标识对应的数据容量;
分页请求获取模块,用于将所述链表标识和所述数据容量发送给客户端,接收客户端基于所述链表标识和数据容量发送的分页请求,所述分页请求包括分页参数;
分页信息获取模块,用于基于所述分页参数,确定分页数据链表、分页数据地址和展示数量;
分页结果获取模块,用于根据所述分页数据地址从所述分页数据链表中获取目标数据,依据所述展示数量对所述目标数据进行处理,获取分页结果,将所述分页结果发送给所述客户端。
一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述数据分页方法的步骤。
一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述数据分页方法的步骤。
上述数据分页方法、装置、计算机设备及存储介质,根据客户端发送的文件数据,获取解析数据,所述解析数据包括应用场景;若所述应用场景为目标场景,则将所述解析数据存储在非关系型数据库中,依据所述解析数据生成目标数据链表,所述目标数据链表包括链表标识和与所述链表标识对应的数据容量,解析数据为无需持久化存储、关系简单且并发要求高的数据,为了确保后续分页的便捷性,存储在非关系型数据库的目标数据链表中,由于非关系型数据库是内存数据库,响应速度快,有利于后续快速生成目标数据。将所述链表标识和所述数据容量发送给客户端,将链表标识和数据容量发送给客户端,使得数据更加透明化,便于用户查看,并决策生成后续的分页请求。接收客户端基于链表标识和数据容量发送的分页请求,所述分页请求包括分页参数,以便数据调度,确保后续可快速展示目标数据。基于所述分页参数,确定分页数据链表、分页数据地址和展示数量,实现灵活调度数据。根据所述分页数据地址从所述分页数据链表中获取目标数据,依据所述展示数量对所述目标数据进行处理,获取分页结果,将所述分页结果发送给所述客户端,在非关系型数据库中进行分页,分页过程较为简单,有效提高响应速度。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例中数据分页方法的一应用环境示意图;
图2是本发明一实施例中数据分页方法的一流程图;
图3是本发明一实施例中数据分页方法的一另流程图;
图4是本发明一实施例中数据分页方法的一另流程图;
图5是本发明一实施例中数据分页方法的一另流程图;
图6是本发明一实施例中数据分页方法的一另流程图;
图7是本发明一实施例中分页装置的一示意图;
图8是本发明一实施例中计算机设备的一示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供的数据分页方法,可应用在如图1的应用环境中,其中,计算机设备/终端设备通过网络与服务器进行通信。本发明实施例所提供的数据分页方法对目标场景下的数据可以快速进行分页。本发明实施例提供的数据分页方法,可以应用在服务器端,也可以应用在终端设备。其中,计算机设备/终端设备可以包括但不限于各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备。服务器可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一实施例中,如图2所示,提供一种数据分页方法,以该方法应用在图1中的服务器为例进行说明,包括如下步骤:
S201:根据客户端发送的文件数据,获取解析数据,解析数据包括应用场景。
其中,文件数据是指客户端发送给服务器的文件,例如,该文件数据可以是Excel文件。
解析数据是对客户端发送的文件数据进行解析得到的数据。应用场景是形成文件数据的场景,例如,应用场景可以是形成需要持久化存储的文件数据对应的场景。形成无需持久化存储文件数据对应的场景。以及形成数据量小、数据间关系简单但是并发要求高文件数据对应的场景等。并发要求高的数据是指在同一个时间点,有多个用户同时的访问同一应用程序接口或者同一Url地址形成的数据。
作为一示例,应用场景可以是用户在购物车中添加商品时,基于购物车中的商品形成文件数据对应的场景。可以理解地,获取用户在购物车中添加商品通常是为了对用户进行分析,用户在购物车中添加商品具有实时性、数据量较小等特征,因此,应用场景则形成数据量小、数据间关系简单但是并发要求高文件数据对应的场景。例如,数据量可能为1千或者2千等。
作为一另示例,应用场景可以是统计公司员工信息,公司员工信息形成文件数据对应的场景。可以理解地,公司员工信息通常是较为重要的,具有稳定性的特征,因此,此时,应用场景需要持久化存储的文件数据对应的场景。
具体地,客户端获取携带有应用场景的文件数据,客户端上设置有"数据上传"接口,用户调用"数据上传"接口将文件数据依次发送给服务器,对文件数据进行解析,得到包括应用场景的解析数据。
S202:若应用场景为目标场景,则将解析数据存储在非关系型数据库中,依据解析数据生成目标数据链表,目标数据链表包括链表标识和与链表标识对应的数据容量。
其中,目标场景是指无需持久化存储、关系简单且并发要求高的解析数据对应的场景。
目标数据链表是用于存储解析数据进行处理后得到的数据(即入库数据)的链表。本实施例中,链表是建立在非关系型数据库上的一系列结点(链表中每一个数据称为结点)组成的存储结构,数据的逻辑顺序是通过链表中的指针链接次序实现的,结点可以在运行时动态生成。每个结点包括两个部分:一个是存储数据的数据域,另一个是存储下一个结点地址的指针域。相比于线性表顺序结构,链表便于查找数。目标数据链表是双向链表,后续进行数据处理时,可以双向遍历,缩短数据处理时间,提高处理效率,目标数据链表的数量至少为一个。链表标识是用于唯一识别目标数据链表的标识。例如,链表标识可以是list01或者list02等。
数据容量是每一目标数据链表中存储的数据的数量。例如,目标数据链表list01中包括数据a、b、c和d,也就是说该目标数据链表list01对应的数据容量为4。
非关系型数据库,是指Not Only SQL,意为:不仅仅是SQL(StructuredQueryLanguage,结构化查询语言),描述的是大量结构化数据存储方法的集合。非关系型数据库包括redis等。
目前分页时,通常是直接将数据存储在关系型数据库中,由于关系型数据库存储在硬盘上的,响应速度较慢。而硬盘的输入/输出速度慢,但并发要求高的解析数据要求输入/输出速度快,关系型数据库对并发要求高的解析数据无法有效处理。且数据存储在关系型数据库的过程中需要建立严谨的索引结构,以便后续进行索引,编码复杂。本实施例中,当应用场景为目标场景,则此时解析数据为无需持久化存储、关系简单且并发要求高的数据,为了确保后续分页的便捷性,则对解析数据进行处理,以排除解析数据中的异常数据,然后在将排除异常后的数据存储在非关系型数据库的目标数据链表中,由于非关系型数据库是内存数据库,响应速度快,有利于后续快速生成目标数据。
S203:将链表标识和数据容量发送给客户端,接收客户端基于链表标识和数据容量发送的分页请求,分页请求包括分页参数。
其中,分页请求是用于对目标数据链表中的部分或者全部进行分页,以显示在客户端的请求。
分页参数是用于分页的参数,以便服务器将需要进行分页的数据发送给客户端。分页是将存储在非关系型数据库的数据展示在客户端供用户查看的技术。本实施例中,将链表标识和数据容量发送给客户端,使得数据更加透明化,便于用户查看,并决策生成后续的分页请求。
具体地,为了便于用户确定存储在非关系型数据库的目标链表数据和每一目标链表数据的数据容量,则将链表标识和数据容量发送给客户端,以便用户根据链表标识和数据容量确定需要展示的数据,以便数据调度,确保后续可快速展示目标数据。
S204:基于分页参数,确定分页数据链表、分页数据地址和展示数量。
其中,分页数据链表是用户选择的需要进行分页的链表,实现灵活调度。
分页数据地址是表示从分页数据链表中获取的数据时,数据的起始位置和结束位置的地址。本实施例中,利用分页参数可以实现灵活调用数据。
展示数量返回给客户端时,每一页面所展示的数据数量,以便有序管理数据。
本实施例中,当服务器获取到分页参数时,则读取分页参数,以得到分页数据链表、分页数据地址和展示数量,实现灵活调度数据。
S205:根据分页数据地址从分页数据链表中获取目标数据,依据展示数量对目标数据进行处理,获取分页结果,将分页结果发送给客户端。
其中,目标数据是指用于展示在客户端的数据。
分页结果是对目标数据进行处理后得到的结果,该分页结果具体为依据展示数量得到每一页面中展示的数据数量的结果。例如,目标数据为200条数据,展示数量为100,则分页结果包括2个页面,则将第1条数据至第100条数据作为第一个页面的数据,将第101条数据至第200条数据作为第二个页面的数据,形成分页结果,确保数据有序展示。
具体地,根据分页数据地址从链表队列中获取待展示的目标数据,利用目标数据的总量除以展示数量,得到每一页面展示的数据,形成分页结果。本实施例在非关系型数据库中进行分页,分页过程较为简单,有效提高响应速度。其中,非基本类型数据是指除基本类型数据以外的数据。基本类型数据是指byte、short、int、long、float、double、boolean和char等数据类型对应的数据。
本实施例所提供的数据分页方法,根据客户端发送的文件数据,获取解析数据,所述解析数据包括应用场景;若所述应用场景为目标场景,则将所述解析数据存储在非关系型数据库中,依据所述解析数据生成目标数据链表,所述目标数据链表包括链表标识和与所述链表标识对应的数据容量,解析数据为无需持久化存储、关系简单且并发要求高的数据,为了确保后续分页的便捷性,存储在非关系型数据库的目标数据链表中,由于非关系型数据库是内存数据库,响应速度快,有利于后续快速生成目标数据。将所述链表标识和所述数据容量发送给客户端,将链表标识和数据容量发送给客户端,使得数据更加透明化,便于用户查看,并决策生成后续的分页请求。接收客户端基于链表标识和数据容量发送的分页请求,所述分页请求包括分页参数,以便数据调度,确保后续可快速展示目标数据。基于所述分页参数,确定分页数据链表、分页数据地址和展示数量,实现灵活调度数据。根据所述分页数据地址从所述分页数据链表中获取目标数据,依据所述展示数量对所述目标数据进行处理,获取分页结果,将所述分页结果发送给所述客户端,在非关系型数据库中进行分页,分页过程较为简单,有效提高响应速度。
在一实施例中,步骤S201,即根据客户端发送的文件数据,获取解析数据,包括:
获取客户端发送的文件数据,采用解析接口对文件数据进行处理,获取解析数据。
其中,解析接口是用于对文件数据进行解析的接口,以将文件数据解析为计算机可识别的解析数据,例如,解析接口可以为Apache POI提供的接口,如create接口等。
具体地,确定需要上传到服务器文件数据的数量,若文件数据的数量小于预设数量,则调用"数据上传"接口将文件数据发送给服务器。若文件数据的数量不小于预设数量,为了便于操作,当文件数据的数量较多时,则调用"批量上传"接口,同时选中所有文件数据,将所有文件数据发送给服务器,操作便捷和简单,服务器调用apache.poi提供的解析接口对文件数据进行解析,实现自动对文件数据进行处理,以得到计算机可识别的解析数据,确保后续分页可以进行,提高文件数据处理效率。
在一实施例中,如图3所示,步骤S202,即将解析数据存储在非关系型数据库中,依据解析数据生成目标数据链表,包括:
S301:对解析数据进行预处理,得到预处理数据。
其中,预处理是排除解析数据中存在的空值等异常数据的处理,以保证后续展示的数据的准确性。预处理数据是经过预处理后得到的数据。具体地,遍历解析数据,当解析数据中存在空值等异常数据时,则清洗数据,排除异常数据干扰。
S302:基于预处理数据,获取入库数据。
其中,入库数据是存储在目标数据链表中的数据。
具体地,当预处理数据存在非基本类型数据时,则对非基本类型数据进行序列化处理,得到标准格式,的入库数据,减少缓存压力,利于后续数据传输。
S303:将入库数据按照预设顺序压入空链表中,生成目标数据链表。
其中,预设顺序是指预先设置的顺序,该预设顺序为空链表左边或者空链表右边,可以根据用户的实际需要确定。本实施例中,按照预设顺序将入库数据压入空链表中,有利于保证入库数据的有序性。
作为一示例,入库数据从空链表左边依次压入空链表,则后续展示分页数据时,是按照先进先出的顺序展示在客户端中。
作为一另示例,若入库数据从空链表右边依次压入空链表,则后续展示分页数据时,是按照先进后出的顺序展示在客户端中。
本实施例所提供的数据分页方法,对解析数据进行预处理,得到预处理数据,排除异常数据干扰。基于预处理数据,获取入库数据。将入库数据按照预设顺序压入空链表中,生成目标数据链表,有利于保证入库数据的有序性。
在一实施例中,如图4所示,步骤S301,即对解析数据进行预处理,得到预处理数据,包括:
S401:若解析数据存在异常数据,则对解析数据进行清洗处理,获取预处理数据。
其中,异常数据是指空值等数据。本实施例中,对解析数据进行清洗,以便将异常数据清洗掉,有利于排除异常数据,减低缓存压力,保证解析数据的有效性。
S402:若解析数据不存在异常数据,则将解析数据确定为预处理数据。
本实施例中,对存在异常数据的解析数据进行清洗处理,得到待处理数据,以排除异常数据干扰,确保后续展示的数据的准确性。
本实施例所提供的数据分页方法,若解析数据存在异常数据,则对解析数据进行清洗处理,获取预处理数据,有利于排除异常数据,减低缓存压力,保证解析数据的有效性。若解析数据不存在异常数据,则将解析数据确定为预处理数据。
在一实施例中,如图5所示,步骤S302,即基于预处理数据,获取入库数据,包括:
S501:遍历预处理数据,判断预处理数据是否存在非基本类型数据。
S502:若预处理数据存在非基本类型数据,则对非基本类型数据进行序列化处理,获取入库数据。
其中,序列化处理是指将非基本类型数据转化为字节序列的处理,以便于计算机识别,且有效减少存储空间,保证快速响应。
具体地,构建Serializable接口,在Serializable接口中采用ObjectOutputStream将对非基本类型数据进行处理,以使非基本类型数据转化为字节序列的入库数据,以便对入库数据进行传输,进一步地,当预处理数据中存在表示时间等无关数据,这些无关数据并不需要存储在非关系型数据库中,仅需展示在客户端上,此时调用ObjectOutputStream对预处理数据中除无关数据以外的数据进行序列化处理,实现根据实际需要进行序列化处理,得到入库数据,减少入库数据占据的空间。
S503:若预处理数据不存在非基本类型数据,则将预处理数据确定为入库数据。
本实施例所提供的数据分页方法,当预处理数据存在非基本类型数据,则对非基本类型数据进行序列化处理,获取入库数据,以便于计算机识别,且有效减少存储空间,保证快速响应。若预处理数据不存在非基本类型数据,则预处理数据确定为入库数据。
在一实施例中,如图3所示,步骤S303,将入库数据按照预设顺序压入空链表中,生成目标数据链表,包括:
S601:将入库数据按照预设顺序压入空链表中,生成携带有来源标识的原始数据链表。
S602:若原始数据链表的数量不为1,则调用函数对来源标识相同的原始数据链表进行聚合处理,得到目标数据链表。
其中,来源标识是指示原始数据链表中的入库数据对应的文件数据的标识。当文件数据中的数据量大于预设数量时,需要分多次发送给服务器时,则存在多次从该文件数据中获取数据的过程,每一次从解析数据中获取数据时,使数据携带指示文件数据的来源标识,确保后续依次形成携带有来源标识的原始数据链表。本实施例中,原始数据链表的数量不为1时,原始数据链表可能是依据不同的文件数据得到的,也可能是依据同一个文件数据得到的,此时,调用函数对来源标识相同的原始数据链表进行聚合处理,以排除重复获取的数据。可以理解地,若存在来源标识不同的原始数据链表则直接聚合,以形成目标数据链表。本实施例中,调用函数对来源标识相同的原始数据链表进行聚合处理,以排除重复获取的数据具体为:遍历来源标识相同的原始数据链表中的一个原始数据链表,得到原始数据链表中的每一数据,将其中一个原始数据链表作为标定数据链表,判断来源标识相同的其他原始数据链表中的每一数据与标定数据链表中的数据是否相同,若来源标识相同的其他原始数据链表中的每一数据与标定数据链表中的数据不相同,则将数据压入标定数据链表。若来源标识相同的其他原始数据链表中的每一数据与标定数据链表中的数据相同,则删除该数据,形成目标数据链表,确保目标数据链表中的数据不重复。
本实施例所提供的数据分页方法,将入库数据按照预设顺序压入空链表中,生成携带有来源标识的原始数据链表。若原始数据链表的数量不为1,则调用函数对来源标识相同的原始数据链表进行聚合处理,得到目标数据链表,确保目标数据链表中的数据不重复。
在一实施例中,在步骤S205之后,即在将分页结果发送给客户端之后,数据分页方法还包括:
对入库数据设置过期时间,若当前时间到达过期时间,则启动过期自动删除机制,删除入库数据。
其中,当前时间是计算机显示的时间。过期时间是在当前时间后的时间,以实现入库数据的过期设置,灵活设置过期时间,以便减轻缓存,例如,过期时间可以是当前时间10秒后的时间。自动删除机制是指主动删除入库数据的机制。
具体地,本实施例中,入库数据是由无需持久化存储、关系简单且并发要求高的解析数据处理得到的,因此,入库数据无需持久化存储,因此,调用EXPIRE接口设置入库数据的过期时间,进行实现自动化管理,降低缓存。当前时间到达过期时间时,则调用函数将所有的入库数据进行中清除,保持系统的稳定性,健壮性。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
在一实施例中,提供一种数据分页装置,该数据分页装置与上述实施例中数据分页方法一一对应。如图7所示,该数据分页装置包括解析数据获取模块701、目标数据链表获取模块702、分页请求获取模块703、分页信息获取模块704和分页结果获取模块705。各功能模块详细说明如下:
解析数据获取模块701,用于根据客户端发送的文件数据,获取解析数据,解析数据包括应用场景。
目标数据链表获取模块702,用于若应用场景为目标场景,则将解析数据存储在非关系型数据库中,依据解析数据生成目标数据链表,目标数据链表包括链表标识和与链表标识对应的数据容量。
分页请求获取模块703,用于将链表标识和数据容量发送给客户端,接收客户端基于链表标识和数据容量发送的分页请求,分页请求包括分页参数。
分页信息获取模块704,用于基于分页参数,确定分页数据链表、分页数据地址和展示数量。
分页结果获取模块705,用于根据分页数据地址从分页数据链表中获取目标数据,依据展示数量对目标数据进行处理,获取分页结果,将分页结果发送给客户端。
优选地,解析数据获取模块701,包括:解析单元。
解析单元,用于获取客户端发送的文件数据,采用解析接口对文件数据进行处理,获取解析数据。
优选地,目标数据链表获取模块702,包括:预处理单元、入库数据获取单元和目标数据链表生成单元。
预处理单元,用于对解析数据进行预处理,得到预处理数据。
入库数据获取单元,用于基于预处理数据,获取入库数据。
目标数据链表生成单元,用于将入库数据按照预设顺序压入空链表中,生成目标数据链表。
优选地,预处理单元,包括:第一预处理子单元和第二预处理子单元。
第一预处理子单元,用于若解析数据存在异常数据,则对解析数据进行清洗处理,获取预处理数据。
第二预处理子单元,用于若解析数据不存在异常数据,则将解析数据确定为预处理数据。
优选地,入库数据获取单元,包括:遍历子单元、序列化处理子单元和非序列化处理子单元。
遍历子单元,用于遍历预处理数据,判断预处理数据是否存在非基本类型数据。
序列化处理子单元,用于若预处理数据存在非基本类型数据,则对非基本类型数据进行序列化处理,获取入库数据。
非序列化处理子单元,用于若预处理数据不存在非基本类型数据,则将预处理数据确定为入库数据。
优选地,目标数据链表生成单元,包括:原始数据链表生成子单元和聚合处理子单元。
原始数据链表生成子单元,用于将入库数据按照预设顺序压入空链表中,生成携带有来源标识的原始数据链表。
聚合处理子单元,用于若原始数据链表的数量不为1,则调用函数对来源标识相同的原始数据链表进行聚合处理,得到目标数据链表。
优选地,在分页结果获取模块705之后,数据分页方法还包括:过期时间设置单元。
过期时间设置单元,用于对入库数据设置过期时间,若当前时间到达过期时间,则启动过期自动删除机制,删除入库数据。
关于数据分页装置的具体限定可以参见上文中对于数据分页方法的限定,在此不再赘述。上述数据分页装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图8所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括存储介质、内存储器。该存储介质存储有操作系统、计算机程序和数据库。该内存储器为存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储目标数据链表。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种数据分页方法。
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述实施例中数据分页方法的步骤,例如图2所示的步骤S201-S205,或者图3至图6中所示的步骤,为避免重复,这里不再赘述。或者,处理器执行计算机程序时实现数据分页装置这一实施例中的各模块/单元的功能,例如图7所示的解析数据获取模块701、目标数据链表获取模块702、分页请求获取模块703、分页信息获取模块704和分页结果获取模块705的功能,为避免重复,这里不再赘述。
在一实施例中,提供一计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中数据分页方法的步骤,例如图2所示的步骤S201-S205,或者图3至图6中所示的步骤,为避免重复,这里不再赘述。或者,处理器执行计算机程序时实现数据分页装置这一实施例中的各模块/单元的功能,例如图7所示的解析数据获取模块701、目标数据链表获取模块702、分页请求获取模块703、分页信息获取模块704和分页结果获取模块705的功能,为避免重复,这里不再赘述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。
Claims (10)
1.一种数据分页方法,其特征在于,包括服务器执行的如下步骤:
根据客户端发送的文件数据,获取解析数据,所述解析数据包括应用场景;
若所述应用场景为目标场景,则将所述解析数据存储在非关系型数据库中,依据所述解析数据生成目标数据链表,所述目标数据链表包括链表标识和与所述链表标识对应的数据容量;
将所述链表标识和所述数据容量发送给客户端,接收客户端基于所述链表标识和数据容量发送的分页请求,所述分页请求包括分页参数;
基于所述分页参数,确定分页数据链表、分页数据地址和展示数量;
根据所述分页数据地址从所述分页数据链表中获取目标数据,依据所述展示数量对所述目标数据进行处理,获取分页结果,将所述分页结果发送给所述客户端。
2.如权利要求1所述的数据分页方法,其特征在于,所述根据客户端发送的文件数据,获取解析数据,包括:
获取客户端发送的文件数据,采用解析接口对所述文件数据进行处理,获取解析数据。
3.如权利要求1所述的数据分页方法,其特征在于,所述将所述解析数据存储在非关系型数据库中,依据所述解析数据生成目标数据链表,包括:
对所述解析数据进行预处理,得到预处理数据;
基于所述预处理数据,获取入库数据;
将所述入库数据按照预设顺序压入空链表中,生成目标数据链表。
4.如权利要求3所述的数据分页方法,其特征在于,所述对所述解析数据进行预处理,得到预处理数据,包括:
若所述解析数据存在异常数据,则对所述解析数据进行清洗处理,获取预处理数据;
若所述解析数据不存在异常数据,则将所述解析数据确定为所述预处理数据。
5.如权利要求3所述的数据分页方法,其特征在于,所述基于所述预处理数据,获取入库数据,包括:
遍历所述预处理数据,判断所述预处理数据是否存在非基本类型数据;
若所述所述预处理数据存在非基本类型数据,则对所述非基本类型数据进行序列化处理,获取入库数据;
若所述所述所述预处理数据不存在非基本类型数据,则将所述预处理数据确定为入库数据。
6.如权利要求3所述的数据分页方法,其特征在于,所述将所述入库数据按照预设顺序压入空链表中,生成目标数据链表,包括:
将所述入库数据按照预设顺序压入空链表中,生成携带有来源标识的原始数据链表;
若所述原始数据链表的数量不为1,则调用函数对来源标识相同的原始数据链表进行聚合处理,得到目标数据链表。
7.如权利要求3所述的数据分页方法,其特征在于,在将所述分页结果发送给所述客户端之后,所述数据分页方法还包括:
对入库数据设置过期时间,若当前时间到达过期时间,则启动过期自动删除机制,删除所述入库数据。
8.一种分页装置,其特征在于,包括:
解析数据获取模块,用于根据客户端发送的文件数据,获取解析数据,所述解析数据包括应用场景;
目标数据链表获取模块,用于若所述应用场景为目标场景,则将所述解析数据存储在非关系型数据库中,依据所述解析数据生成目标数据链表,所述目标数据链表包括链表标识和与所述链表标识对应的数据容量;
分页请求获取模块,用于将所述链表标识和所述数据容量发送给客户端,接收客户端基于所述链表标识和数据容量发送的分页请求,所述分页请求包括分页参数;
分页信息获取模块,用于基于所述分页参数,确定分页数据链表、分页数据地址和展示数量;
分页结果获取模块,用于根据所述分页数据地址从所述分页数据链表中获取目标数据,依据所述展示数量对所述目标数据进行处理,获取分页结果,将所述分页结果发送给所述客户端。
9.一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7任一项所述数据分页方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述数据分页方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011584981.0A CN112613271A (zh) | 2020-12-28 | 2020-12-28 | 数据分页方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011584981.0A CN112613271A (zh) | 2020-12-28 | 2020-12-28 | 数据分页方法、装置、计算机设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112613271A true CN112613271A (zh) | 2021-04-06 |
Family
ID=75249319
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011584981.0A Pending CN112613271A (zh) | 2020-12-28 | 2020-12-28 | 数据分页方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112613271A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113626665A (zh) * | 2021-08-26 | 2021-11-09 | 北京京东乾石科技有限公司 | 一种数据展示的方法和装置 |
CN113806438A (zh) * | 2021-11-19 | 2021-12-17 | 北京亿赛通网络安全技术有限公司 | 一种基于海量bcp数据文件的入库及预处理方法和系统 |
CN114741434A (zh) * | 2022-06-10 | 2022-07-12 | 北京亿赛通科技发展有限责任公司 | 一种海量es搜索数据的预统计方法及系统 |
CN114840765A (zh) * | 2022-05-24 | 2022-08-02 | 中国平安财产保险股份有限公司 | 分页处理方法、装置、电子设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107231398A (zh) * | 2016-03-25 | 2017-10-03 | 阿里巴巴集团控股有限公司 | 信息交互方法及装置 |
US20180129716A1 (en) * | 2016-11-04 | 2018-05-10 | Microsoft Technology Licensing, Llc. | Multi-Level Data Pagination |
CN109492148A (zh) * | 2018-11-22 | 2019-03-19 | 北京明朝万达科技股份有限公司 | 基于Redis的ElasticSearch分页查询方法和设备 |
-
2020
- 2020-12-28 CN CN202011584981.0A patent/CN112613271A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107231398A (zh) * | 2016-03-25 | 2017-10-03 | 阿里巴巴集团控股有限公司 | 信息交互方法及装置 |
US20180129716A1 (en) * | 2016-11-04 | 2018-05-10 | Microsoft Technology Licensing, Llc. | Multi-Level Data Pagination |
CN109492148A (zh) * | 2018-11-22 | 2019-03-19 | 北京明朝万达科技股份有限公司 | 基于Redis的ElasticSearch分页查询方法和设备 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113626665A (zh) * | 2021-08-26 | 2021-11-09 | 北京京东乾石科技有限公司 | 一种数据展示的方法和装置 |
CN113626665B (zh) * | 2021-08-26 | 2024-04-05 | 北京京东乾石科技有限公司 | 一种数据展示的方法和装置 |
CN113806438A (zh) * | 2021-11-19 | 2021-12-17 | 北京亿赛通网络安全技术有限公司 | 一种基于海量bcp数据文件的入库及预处理方法和系统 |
CN114840765A (zh) * | 2022-05-24 | 2022-08-02 | 中国平安财产保险股份有限公司 | 分页处理方法、装置、电子设备及存储介质 |
CN114741434A (zh) * | 2022-06-10 | 2022-07-12 | 北京亿赛通科技发展有限责任公司 | 一种海量es搜索数据的预统计方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112613271A (zh) | 数据分页方法、装置、计算机设备及存储介质 | |
CN111597257A (zh) | 数据库的同步方法、装置、存储介质及终端 | |
CN110990390B (zh) | 数据协同处理方法、装置、计算机设备和存储介质 | |
CN109918594B (zh) | 一种信息显示方法及装置 | |
CN113010542B (zh) | 业务数据处理方法、装置、计算机设备及存储介质 | |
CN111061758B (zh) | 数据存储方法、装置及存储介质 | |
CN112035531B (zh) | 敏感数据处理方法、装置、设备及介质 | |
CN110389967B (zh) | 数据存储方法、装置、服务器及存储介质 | |
WO2019041500A1 (zh) | 分页的实现方法、装置、计算机设备及存储介质 | |
CN111400578B (zh) | 货物数据查询方法、装置、计算机设备和存储介质 | |
CN108228432A (zh) | 一种分布式链路跟踪、分析方法及服务器、全局调度器 | |
CN110457401B (zh) | 数据存储方法、装置、计算机设备和存储介质 | |
CN111258819A (zh) | MySQL数据库备份文件的数据获取方法、装置和系统 | |
CN115544007A (zh) | 标签预处理方法、装置、计算机设备和存储介质 | |
CN110928900B (zh) | 多表数据的查询方法、装置、终端以及计算机存储介质 | |
CN114398520A (zh) | 数据检索方法、系统、装置、电子设备及存储介质 | |
CN114201511A (zh) | 一种项目管控的方法、装置、计算机设备和存储介质 | |
CN111625600B (zh) | 数据存储的处理方法、系统、计算机设备及存储介质 | |
CN113722296A (zh) | 一种农业信息处理方法、装置、电子设备及存储介质 | |
CN111046240B (zh) | 网关流量统计方法、装置、计算机设备和存储介质 | |
CN113377789A (zh) | 数据库变更数据的处理方法、装置、计算机设备和介质 | |
CN115454353B (zh) | 一种面向空间应用数据的高速写入及查询方法 | |
CN115827922B (zh) | 基于风电数据的可视化分析处理方法、系统和计算机设备 | |
CN113297245A (zh) | 获取执行信息的方法及装置 | |
CN117648086A (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 |