A method and device for providing information
By analyzing and processing the conditional fields and relational fields in user query requests in network devices, and generating target case identification information, the problem of difficult optimization and debugging of complex queries in the prior art is solved, and an efficient and flexible query process is achieved.
Patent Information
- Application Number
- CN202011539794.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2020-12-23
- Publication Date
- 2025-03-04
- Estimated Expiration
- 2040-12-23
AI Technical Summary
In the prior art, when handling complex multi-condition combination queries, SQL statements become complicated and difficult to optimize directionally, debug and difficult to follow changes in user needs.
By receiving the data query request sent by the user equipment in the network device, the field information is parsed to obtain the condition field information and the relationship field information between conditions, the candidate target case identification information set is determined, and the collection operation is performed to generate the target case identification information, and finally the target information is returned based on the preset condition information.
It achieves higher query accuracy, reduces the pressure on the database to execute "large-condition" queries, makes the query method more flexible, and improves query efficiency and data concurrency.
Smart Images

Figure CN113268502B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of communications, and in particular to a technology for providing information. Background Art
[0002] As the system is built, the number of modules that make up the system increases, and the relationships between modules become more and more complex and changeable. It becomes more and more complicated to implement queries with multiple condition combinations, and most of the current query methods are difficult to evolve with the changes in user needs. The existing query methods are generally performed by writing complex SQL (Structured Query Language) or splicing simple SQL. With different combinations of query conditions, SQL will become more and more complex, unable to be optimized in a targeted manner, and difficult to debug when problems occur during the query process. Summary of the invention
[0003] An object of the present application is to provide a method and device for providing information.
[0004] According to one aspect of the present application, a method for providing information is provided, which is applied to a network device, and the method includes:
[0005] Receiving a data query request sent by a user device, wherein the data query request is sent based on a query operation of a user in a target application, and the data query request includes one or more field information provided by the user;
[0006] In response to the data query request, parsing the one or more field information to obtain one or more condition field information and inter-condition relationship field information from the one or more field information;
[0007] Determine one or more corresponding candidate target case identification information sets according to the one or more condition field information;
[0008] A set operation is performed on the one or more candidate target case identification information sets according to the one or more conditional relationship field information to generate one or more target case identification information.
[0009] According to one aspect of the present application, another method for providing information is provided, which is applied to a network device, and the method includes:
[0010] Receiving a data query request sent by a user device, wherein the data query request is sent based on a query operation of a user in a target application, and the data query request includes one or more field information provided by the user;
[0011] In response to the data query request, parsing the one or more field information to obtain one or more condition field information and inter-condition relationship field information from the one or more field information;
[0012] Determine one or more corresponding candidate target case identification information sets according to the one or more condition field information;
[0013] Performing a set operation on the one or more candidate target case identification information sets according to the one or more conditional relationship field information to generate one or more target case identification information;
[0014] The target information of the case corresponding to each case identification information is determined according to the preset condition information and the one or more target case identification information, and the target information of each case is returned to the user device.
[0015] According to one aspect of the present application, a network device for providing information is provided, the device comprising:
[0016] A module, configured to receive a data query request sent by a user device, wherein the data query request is sent based on a query operation performed by a user in a target application, and the data query request includes one or more field information provided by the user;
[0017] A module 12 is used for parsing the one or more field information to obtain one or more condition field information and relationship field information between conditions in the one or more field information in response to the data query request;
[0018] A module 13, used to determine one or more corresponding candidate target case identification information sets according to the one or more condition field information;
[0019] A module 14 is used to perform a set operation on the one or more candidate target case identification information sets according to the one or more conditional relationship field information to generate one or more target case identification information.
[0020] According to one aspect of the present application, a network device for providing information is provided, the device comprising:
[0021] Module 21, configured to receive a data query request sent by a user device, wherein the data query request is sent based on a query operation of a user in a target application, and the data query request includes one or more field information provided by the user;
[0022] Module 22 is used for parsing the one or more field information to obtain one or more condition field information and inter-condition relationship field information in the one or more field information in response to the data query request;
[0023] Module 23 is used to determine one or more corresponding candidate target case identification information sets according to the one or more condition field information;
[0024] Module 24 is used to perform a set operation on the one or more candidate target case identification information sets according to the one or more conditional relationship field information to generate one or more target case identification information;
[0025] Module 25 is used to determine the target information of the case corresponding to each case identification information based on the preset condition information and the one or more target case identification information, and return the target information of each case to the user device.
[0026] According to one aspect of the present application, a device for providing information is provided, the device comprising:
[0027] Processor; and
[0028] A memory arranged to store computer executable instructions which, when executed, cause the processor to perform the operations of any of the methods described above.
[0029] According to another aspect of the present application, a computer-readable medium storing instructions is provided, wherein when the instructions are executed, the system performs the operation of any of the methods described above.
[0030] Compared with the prior art, in the present application, the network device responds to the data query request, determines the corresponding one or more target case identification information according to the one or more field information, and determines the target information of the case corresponding to each case identification information according to the preset condition information and the one or more target case identification information. The present application can support more types of data sources instead of a single database, thereby making the query more accurate, and can reduce the pressure on the database to execute "larger condition" queries, thereby making the query method more flexible, thereby improving query efficiency and data concurrency. BRIEF DESCRIPTION OF THE DRAWINGS
[0031] Other features, objects and advantages of the present application will become more apparent by reading the detailed description of non-limiting embodiments made with reference to the following drawings:
[0032] Figure 1 A system topology diagram according to the present application is shown;
[0033] Figure 2 A flow chart of a method for providing information according to an embodiment of the present application is shown, which is applied to a network device;
[0034] Figure 3 A schematic diagram for providing information according to an embodiment of the present application is shown;
[0035] Figure 4 A flow chart of a method for providing information according to another embodiment of the present application is shown, which is applied to a network device;
[0036] Figure 5 A device schematic diagram of a network device for providing information according to an embodiment of the present application is shown;
[0037] Figure 6 A device schematic diagram showing another network device for providing information according to an embodiment of the present application;
[0038] Figure 7 An exemplary system is shown that can be used to implement the various embodiments described in the present invention.
[0039] The same or similar reference numerals in the drawings represent the same or similar components. DETAILED DESCRIPTION
[0040] The present application is described in further detail below in conjunction with the accompanying drawings.
[0041] In a typical configuration of the present application, the terminal, the device of the service network and the trusted party all include one or more processors (CPU), input / output interfaces, network interfaces and memories.
[0042] The memory may include non-permanent storage in a computer-readable medium, random access memory (RAM) and / or non-volatile memory in the form of read-only memory (ROM) or flash RAM. The memory is an example of a computer-readable medium.
[0043] Computer readable media include permanent and non-permanent, removable and non-removable media that can be implemented by any method or technology to store information. Information can be computer readable instructions, data structures, program modules or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, compact disk read-only memory (CD-ROM), digital versatile disk (DVD) or other optical storage, magnetic cassettes, magnetic tape disk storage or other magnetic storage devices or any other non-transmission media that can be used to store information that can be accessed by a computing device.
[0044] The devices referred to in this application include but are not limited to user devices, network devices, or devices formed by integrating user devices and network devices through a network. The user devices include but are not limited to any mobile electronic products that can interact with users (for example, interact with users through a touchpad), such as smart phones, tablet computers, etc. The mobile electronic products can use any operating system, such as Android operating system, iOS operating system, etc. Among them, the network device includes an electronic device that can automatically perform numerical calculations and information processing according to pre-set or stored instructions, and its hardware includes but is not limited to microprocessors, application-specific integrated circuits (ASICs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), digital signal processors (DSPs), embedded devices, etc. The network devices include but are not limited to computers, network hosts, single network servers, multiple network server sets or multiple servers. The cloud is composed of a large number of computers or network servers based on cloud computing (Cloud Computing), wherein cloud computing is a type of distributed computing, a virtual supercomputer composed of a group of loosely coupled computer sets. The network includes but is not limited to the Internet, wide area network, metropolitan area network, local area network, VPN network, wireless self-organizing network (Ad Hoc network), etc. Preferably, the device may also be a program running on the user device, the network device, or a device formed by integrating the user device and the network device, the network device and the touch terminal, or the network device and the touch terminal via a network.
[0045] Of course, those skilled in the art should understand that the above-mentioned devices are only examples, and other existing or future devices that are applicable to the present application should also be included in the scope of protection of the present application and are included here by reference.
[0046] In the description of the present application, “plurality” means two or more, unless otherwise clearly and specifically defined.
[0047] Figure 1 A typical scenario of the present application is shown, in which a user holds a user device, and a target application is installed in the user device, wherein the target application may include a web page, a host program (applet), a client, and other running forms to run in the target application, and the user device and the network device corresponding to the target application establish a communication connection through a wired or wireless manner. Based on the communication connection, the network device receives a data query request sent by the user device, and the data query request includes one or more field information input by the user; the network device uses the one or more field information as one or more corresponding query sub-conditions, and sends one or more query requests to the content server, wherein each query request includes a corresponding query sub-condition. In response to the one or more query requests, the content server queries each query sub-condition in the corresponding data table to obtain a case identification information list corresponding to each query sub-condition, wherein each case identification information list includes at least one case identification information. The content server sends the multiple case identification information lists to the network device, and the network device performs system-defined set operations (for example, intersection, union, and difference) on the multiple case identification information lists, and uses the result of the set operation as at least one target case identification information. The at least one target case identification information is used for subsequent search to determine the query information that the user wants to obtain, wherein the query information is used to be sent to the user device, and the user device includes but is not limited to computing devices such as mobile phones, tablets, and computers.
[0048] Figure 2 A method for providing information according to an embodiment of the present application is shown, the method comprising step S101, step S102, step S103 and step S104.
[0049] Specifically, in step S101, the network device receives a data query request sent by a user device, wherein the data query request is sent based on a query operation of a user in a target application, and the data query request includes one or more field information provided by the user. For example, the target application may include running forms such as web pages, hosted programs (applets), and clients. A user holds a user device and opens a web page in the target application. Based on the user's query operation in the web page (for example, the user enters or selects one or more field information in a web page and clicks to query), the user device sends a data query request to the network device corresponding to the target application. In some embodiments, the user may perform query operations in independent running programs such as web pages and clients (for example, the user directly queries the web page). For example, one or more modules are presented in the web page, wherein the one or more modules include a case module, an infringement information module, a right holder review module, a lawyer invitation module, an evidence preparation module, etc. Each module will include multiple sub-modules after being expanded. For example, the evidence preparation module includes three sub-modules: ownership evidence, notarization evidence, and value evidence. Among them, the information of each sub-module and the parent module of the sub-module is often stored in different data tables, and the different data tables are not related to each other and do not need to be merged. Regardless of whether it is a submodule or an upper-level module of the submodule, each module presents one or more input boxes or selectable input boxes after expansion. Taking the case module as an example, the case module includes options such as case number, right holder, case type, and case handler that require users to enter and select. Among them, the one or more field information includes text information entered or selected by the user in each module (for example, some input boxes allow users to select information). After the user selects information or enters information, in response to the query operation submitted by the user in the web page, the user device sends a data query request to the network device corresponding to the target application to request query information related to the one or more field information entered by the user.
[0050] In step S102, the network device responds to the data query request and parses the one or more field information to obtain one or more condition field information and condition relationship field information in the one or more field information. The one or more condition field information is character information selected or input by the user and is used for query characters for subsequent query. The condition relationship field information includes the relationship between the one or more condition field information input by the user, and is used to determine the relationship between the query results (for example, intersection, union or difference) when the query results of each condition character information are subsequently queried. For example, since the user inputs or selects field information in different modules, there may be a certain association between the different modules (for example, only when the corresponding field is selected in module 1 can the field in module 2 appear for the user to select, that is, the relationship between the modules corresponds to the relationship between the fields. For example, if the multiple different modules are independent of each other, the condition field information between the corresponding multiple field information is a union; if the multiple different modules need to satisfy each other, the condition field information between the corresponding multiple field information is an intersection).
[0051] In step S103, the network device determines the corresponding one or more candidate target case identification information sets according to the one or more conditional field information. For example, the one or more conditional field information is "case label: A", "IP name: AA", "right holder: AAA", "lawyer: AAAA", etc., wherein prefixes such as "case label", "IP name", "right holder", etc. are index information in the conditional field information. Those skilled in the art should understand that the above conditional field information is only for example, and other existing or future conditional field information that may appear should also be included in the scope of protection of the present application if applicable to the present application, and is included here by reference. The network device regards each field information in the one or more field information as a query sub-condition, so as to facilitate subsequent independent queries based on each query sub-condition to obtain one or more target case identification information. For example, whether the network device uses each condition field information as a query sub-condition or uses at least one condition field information as a query sub-condition, on the basis of determining one or more query sub-conditions, the network device obtains a candidate target case identification information set (i.e., a case identification list) corresponding to each query sub-condition based on the one or more query sub-conditions, wherein each case identification list includes multiple case identification information (e.g., case ID1, case ID2, case ID3, etc.), and the network device determines the information in the multiple case identification lists corresponding to the multiple query sub-conditions as one or more candidate target case identification information sets. In some embodiments, there is at least one query sub-condition, and when the network device queries the content server based on the at least one query sub-condition, the result returned by the content server is empty, that is, the corresponding case identification information list is not queried based on the at least one query sub-condition. Here, the result returned by the content server based on the query sub-condition is not empty as an example for explanation. In some embodiments, in step S103, the network device determines one or more query conditions based on the one or more condition field information; and determines the corresponding one or more candidate target case identification information sets based on the one or more query conditions. For example, at least one of the one or more conditional field information involves the same data table. For example, the index information corresponding to the at least one conditional field information is located in the same data table. To optimize the query efficiency, the network device merges the conditional field information involving the same data table as a query condition. When querying information subsequently, it is only necessary to query according to each query condition to obtain the candidate result information corresponding to the query condition. The query efficiency can be improved by querying at least one conditional field information located in the same data table once. In addition, a custom combination relationship between query conditions can be realized, thereby making the query flexible.
[0052] In step S104, the network device performs a set operation on the one or more candidate target case identification information sets according to the one or more conditional relationship field information to generate one or more target case identification information. Wherein, the one or more conditional relationship field information includes the relationship between the one or more conditional field information input by the user, which is used to determine the relationship between the query results (for example, intersection, union or difference) when the query results of each conditional character information are subsequently queried. In some embodiments, in step S104, the network device parses the one or more conditional relationship field information to determine the set instruction; according to the set instruction, the one or more candidate target case identification information sets are set to generate one or more target case identification information. For example, the one or more conditional relationship field information includes the relationship between the one or more conditional field information input by the user, and the network device determines the subsequent set instruction (for example, intersection, union or difference) for the result information corresponding to each conditional field information according to the relationship between the one or more conditional field information.
[0053] In some embodiments, each query condition corresponds to a candidate target case identification information set, and each candidate target case identification information set includes at least one case identification. In step S104, the network device sorts the at least one case identification in each candidate target case identification information set to generate a target case identification information set; and performs a set operation on one or more target case identification information sets according to the relationship field information between the one or more conditions to generate one or more target case identification information. For example, the set operation process does not occur on the content server, but in the network device. In this case, it is not easy to consume a large amount of CPU resources of the database for set operations, and the relationship between the query conditions does not need to be reflected through SQL. The content server queries the results of each condition and returns it directly to the network device. On the network device side, the application code is responsible for intersecting and (nested) set operations on the results of each condition.
[0054] For example, the definitions of some core classes in the application code are as follows:
[0055]
[0056] The SubSelectBuilder class, as a top-level class, defines a class that is used to filter the query conditions of cases and return a set of candidate target case identification information that meets the conditions.
[0057] The GroupSelectBuilder class inherits from SubSelectBuilder and is used to handle the "intersection and union" collection operation
[0058] The three classes IntersectSelectBuilder, ExceptSelectBuilder, and UnionSelectBuilder inherit from GroupSelectBuilder and are used to handle the intersection, difference, and union operations respectively.
[0059] The NestedSelectBuilder class inherits from SubSelectBuilder and is used to handle nested collection operations.
[0060] The SqlSelectBuilder class inherits from SubSelectBuilder and is used to implement single table query
[0061] ObligeeSqlSelectBuilder (rights holder related information query), IPSqlSelectBuilder (IP related information query) and CaseSqlSelectBuilder (case related information query) are inherited from SqlSelectBuilder and are used to process single table queries.
[0062] The SubSelectBuilder class is defined as follows
[0063]
[0064]
[0065] Wherein, the collection instruction includes an instruction preset in the data query request, for example, when the user selects multiple field information in the web page, the collection instruction between the multiple field information has been selected, and the collection instruction is used to instruct the network device to perform what kind of collection operation on the multiple candidate target case identification information sets obtained based on the multiple query operations. For example, after the network device sends multiple query conditions to the content server, the content server will query separately according to each query condition, so the result information obtained for each query condition is independent and corresponds to each query condition, for example, query condition 1 corresponds to one result information (for example, candidate target case identification information set 1), query condition 2 corresponds to one result information (for example, candidate target case identification information set 2), query condition 3 corresponds to one result information (for example, candidate target case identification information set 3), and so on, and at least one case identification in each candidate target case identification information set is obtained by querying and matching according to the field information in the query condition. Since the network device only obtains multiple case identifications at this time, if the at least one case identification in each candidate target case identification information set is sorted (for example, sorted according to preset rules, including but not limited to ascending and descending order), and then subsequent set operations are performed, wherein the set operations include intersection, union, difference and other operations, compared to directly performing set operations on each candidate target case identification information set, the operational efficiency of the set operation can be greatly improved.For example, taking the intersection operation as an example, candidate target case identification information set 1 {ID200801, ID200803, ID200701, ID200901, ID2}, candidate target case identification information set 2 {ID201801, ID210803, ID200701, ID201901, ID2}, candidate target case identification information set 3 {ID211801, ID210803, ID200701, ID201201, ID12}, if the set operation is performed without sorting, the network device needs to start from the first ID (ID200801) in the candidate target case identification information set 1 and compare it with other candidate target case identification information sets. Multiple case identifiers in the information set are compared one by one. Candidate target case identifier information set 1 needs to be compared with other sets 50 times. Then the network device needs to start from the first ID (ID201801) in candidate target case identifier information set 2 and compare multiple case identifiers in other candidate target case identifier information sets one by one. Candidate target case identifier information set 2 needs to be compared with other sets 25 times. In some cases, it is not ruled out that candidate target case identifier information set 2 still needs to be compared with candidate target case identifier information set 1 to determine the case identifier of the intersection. In this case, candidate target case identifier information set 2 needs to be compared with other sets 50 times, and candidate target case identifier information set 3 is compared in the same way.If the set operation is performed under sorting, the candidate target case identification information set 1 (i.e., target case identification information set 1) after sorting (for example, arranging in ascending order) is {ID2, ID200701, ID200801, ID200803, ID200901}, the candidate target case identification information set 2 (i.e., target case identification information set 2) is {ID2, ID200701, ID201801, ID201901, ID210803}, and the candidate target case identification information set 3 (i.e., target case identification information set 3) is {ID12, ID200701, ID201201, ID210803, ID211801}, wherein the multiple case identifications in each set are unique, and the network device needs to start from the first ID (ID2) in the sorted candidate target case identification information set 1, and compare the multiple case identifications in other candidate target case identification information sets, for example, the first ID (ID2) in set 1 and the first ID (ID2) in set 2. If one ID is the same, the two are determined to be the intersection result, that is, there is no need to compare the first ID (ID2) in set 1 with the other IDs in set 2. Then, the first ID (ID2) in set 1 is compared with the first ID in set 3. If the first ID (ID2) in set 1 is smaller than the first ID in set 3, there is no need to compare the first ID (ID2) in set 1 with the other IDs in set 3 (that is, the other IDs in set 3 are all greater than the first ID in set 1). If the first ID (ID2) in set 1 is greater than the first ID in set 3, continue to compare with the second ID in set 3. If the first ID (ID2) in set 1 is not equal to (greater than) the second ID in set 3, continue to compare with the third ID in set 3, and so on, until the intersection of the first ID (ID2) in set 1 and the IDs in set 3 is found, or until the first ID (ID2) in set 1 is smaller than an ID in set 3 (that is, do not compare with the remaining IDs in set 3). The other IDs in set 1 are also deduced in the same manner as described above, and no repetition is made here. Obviously, sorting the case identifications in the candidate target case identification information set and then performing the set operation can reduce the comparison frequency. The network device can therefore efficiently perform a set operation on multiple target case identification information sets to obtain the result information corresponding to the set operation (i.e., one or more target case identification information). The one or more target case identification information is used to provide a query basis for the user to obtain the desired query information, thereby improving the computing efficiency. Of course, those skilled in the art should understand that the set operation performed on the above-mentioned candidate target case identification information set is an intersection only for example, and other existing or future possible combination operations, if applicable to the present application, should also be included in the scope of protection of the present application and are included here by reference.
[0066] In some embodiments, determining one or more query conditions according to the one or more condition field information includes:
[0067] Detect whether at least one condition field information in the one or more condition field information is located in the same data table. If so, use the at least one condition field information as a query condition; otherwise, use a single condition field information as a query condition, thereby generating one or more query conditions. For example, the two fields "case label: A" and "IP name: AA" in the one or more condition field information are located in the same data table, and the "right holder: AAA" and "lawyer: AAAA" in the condition field information are respectively located in a data table. The network device uses the two condition field information "case label: A" and "IP name: AA" as a query condition, and uses the two condition field information "right holder: AAA" and "lawyer: AAAA" as a query condition respectively. In addition, the other condition field information in the one or more condition field information is not located in the same data table, so they are respectively used as a query condition. Based on the above, the network device determines one or more query conditions. On the premise of determining multiple query conditions after optimization, a basis is provided for subsequent rapid search and determination of the corresponding one or more candidate target case identification information sets.
[0068] In some embodiments, the detecting whether at least one condition field in the one or more condition field information is located in the same data table includes: identifying the one or more condition field information according to a first preset rule to detect whether at least one condition field information in the one or more condition field information is located in the same data table. In some embodiments, the first preset rule includes one or more preset default field groups, wherein each default field group includes at least one condition field information, and at least one condition field information in each default field group is located in the same data table. For example, each data table can be a certain structure. As a certain structure, each data table can be applicable to a preset rule. For example, according to the first preset rule, the rule presets one or more default field groups, and each field group is classified according to the data table (for example, one or more conditional field information in the same data table is classified into one field group), wherein the multiple default field groups are generated by the network device based on historical data statistics. In some embodiments, the network device counts the conditional field information in a data table based on historical query situations. For example, the network device counts according to the index information in the conditional field information (for example, the conditional field information is "case label: A", wherein the prefix such as "case label" is the index information in the conditional field information) so that the network device can efficiently generate one or more field groups. In some embodiments, there may be a situation where new conditional field information and other conditional field information are in the same data table but are not classified. In this case, the new conditional field information can be used as a query condition.
[0069] In some embodiments, the determining of the corresponding one or more candidate target case identification information sets according to the one or more query conditions includes: sending a first query request to the corresponding content server, wherein the first query request includes the one or more query conditions; receiving the one or more candidate target case identification information sets returned by the content server in response to the first query request. Wherein, the content server includes a mysql database, and other data sources (such as MongoDB, Redis, SQLite or files). Under the premise that the network device determines one or more query conditions, the SQL based on each query condition is very concise, and is often associated with only one or two data tables, so that the query result is not easy to change within a period of time. In some embodiments, the first query request includes one or more first sub-query requests, and the sending of the first query request to the corresponding content server, wherein the first query request includes the one or more query conditions, includes: sending the first query request to the corresponding content server, wherein each of the one or more first sub-query requests corresponds to one of the query conditions. Among them, the content server includes multiple data tables, which are unrelated to each other and are independent of each other. For example, under the premise that the network device determines one or more query conditions, for each query condition, the network device initiates a query to the content server, for example, including one or more first sub-query requests, and the one or more sub-query requests are each independent query requests. The network device responds to the one or more first sub-query requests and performs query operations for each sub-query request respectively, wherein each sub-query request includes a corresponding query condition. In some embodiments, there are preset rules in the content server, such as the mapping relationship between the condition field information and the data table of the preset rule. For example, if a query condition contains only one condition field information, the content server queries the condition field information in the mapping relationship between the condition field information and the data table to determine whether there is a corresponding data table, wherein one condition field information may correspond to multiple data tables. If so, the content server queries the data table (for example, at least one data table) based on the query condition to determine the candidate case identification information that matches the condition field information (for example, the condition field information is the right holder: AAA, the content server queries the at least one data table for one or more cases where the right holder AAA is located, and obtains the case identification of the one or more cases as the candidate case identification information). If the content server queries the condition field information in the mapping relationship between the condition field information and the data table and does not find the corresponding data table, the content server may traverse and query the condition field information in one or more data tables until the candidate case identification information that matches the condition field information is found.For example, if a query condition contains at least one condition field information, the content server can determine that the at least one condition field information is located in the same data table. The content server will query the multiple condition field information in the mapping relationship between the condition field information and the data table to determine the at least one data table corresponding to each condition field information. If there is an intersection data table for at least one data table corresponding to each field, for example, field 1 corresponds to data table 1 and data table 2, field 2 corresponds to data table 1 and data table 3, and field 3 corresponds to data table 1 and data table 4, the corresponding communication data table is data table 1. The content server only needs to query the query condition once in data packet 1. The efficiency of this query is more efficient, thereby saving query time. The content server then queries other fields in the query condition in other matched data tables to determine the candidate case identification information that matches each condition field information. For each first sub-query request received, the content server returns the candidate target case identification information set determined based on the query conditions in the first sub-query request to the network device, wherein each candidate target case identification information set includes one or more case identifications (e.g., case IDs), that is, the content server will query an ID list based on each query condition, and the ID list is returned to the network device as a candidate target case identification information set. Since the query is performed based on each simple query condition, even if some query conditions include multiple condition field information, the correlation of each condition field information is not complex, so that the SQL formed by each query condition is relatively simple, avoiding excessive database Cartesian product calculations and improving data concurrency. Since the network device only requests the content server to return the case identification, it is convenient for developers to write query condition code, and the query code has high scalability. In some embodiments, in the aforementioned operation steps, since the one or more conditional field information may originate from different modules, and there may be at least one module corresponding to the conditional field information being a submodule and the upper module of the submodule, that is, there is a relationship between an upper module and multiple submodules, in order to reduce complexity and avoid repeated associations, the query conditions may be hierarchical according to the relationship between modules (for example, the same submodule is one level, and the upper module is one level), and each query condition of the same level (for example, the submodule level) is queried in the content server to find the corresponding candidate target case identification information set, and then the operation is first performed in the network device without considering the upper query condition (for example, the upper module level), and a preliminary operation result can be obtained after the operation of the submodule level is completed, and finally the operation is performed with the result obtained by the upper query condition, so that the data table associated with the upper query condition only participates in one operation. In some embodiments, the stratification is mainly based on the division of the database table structure (for example, the database table mainly serves specific businesses).
[0070] In some embodiments, the method further includes step S105 (not shown), in which the network device stores the correspondence between each field information in the one or more field information and the candidate target case identification information set corresponding to the field information. For example, since each query condition (for example, each query condition includes at least one field information) only needs to be associated with one or two data tables in the content server, so that the query result is not easy to change within a period of time, the network device can store the determined query result (that is, the candidate target case identification information set queried by each condition field information), and when the network device receives a data query request with the same condition next time (for example, the same field information), the network device can directly obtain one or more candidate target case identification information sets corresponding to the data query request from the cache, thereby improving the rate at which the network device queries information and improving the user's experience in obtaining information. In some embodiments, the one or more candidate target case identification information sets are associated with related data tables. When the content server monitors data changes in related data tables through global SQL, the content server sends a prompt message to the network device. Based on the prompt message, the network device marks at least one candidate target case identification information set associated with the changed data table as cache expired or cache invalidated, thereby providing storage space for subsequent timely updates of the cache.
[0071] In some embodiments, the method further includes step S106 (not shown), in which the network device records the one or more target case identification information in a statistical database. For example, the target case identification information is used for subsequent statistics to better serve business needs.
[0072] In some embodiments, the method further includes step S107 (not shown), in which the network device determines the target information of the case corresponding to each case identification information according to the preset condition information and the one or more target case identification information; and returns the target information of each case to the user device. For example, on the basis of the network device obtaining the one or more target case identification information, the network device can obtain the case information corresponding to the one or more target case identification information according to the one or more target case identification information, and then filter out the information that the user wants to view from the case information corresponding to each target case identification information according to the preset condition information. For example, after the network device obtains the target information of each case, it returns the target information of each case to the user device. Different from the general time required for current retrieval (for example, about 60 seconds), the average loading time of the network device is about 3-5 seconds from the time the user submits the query request to the time the user device receives the target information of each case (in some cases, the target identification information needs to be cached, and the loading time is about 1 second when the cache is cached). When the system loads the same number of query interfaces (for example, there are about 20 query interfaces), the improvement of retrieval efficiency is obvious. In some embodiments, the preset condition information includes at least any one of the following:
[0073] 1) The network device sets the display field information to be presented by default; for example, if the user does not customize the display field information, the network device can agree with the target application in advance to configure the default display field information to be presented. On the premise that the network device obtains one or more target case identification information, the network device can obtain the corresponding one or more case information based on the one or more target case identification information, and filter from each case information according to the default display field information to be presented to determine the content information that matches the display field information to be presented, and use the content information as the query information that the user needs to view.
[0074] 2) User-defined display field information uploaded by the user to the network device. For example, when the user enters or selects one or more field information in the target application and clicks to query, the user can select the display field information that he wants to view. The display field information that the user wants to view is the user-defined display field information, which is used to display the query information according to the display field information in the future. For example, there is a custom area in the data query page of the target application, and the area is used for the user to customize the display field information. For example, after the user sets the display field information in the custom area, and when the user selects or enters one or more field information and submits it, the user device sends a data query request to the corresponding network device, wherein the data query request includes the user-defined display field information. In some embodiments, the one or more field information selected or entered may be partially repeated with the user-defined display field information, or there may be no intersection. The actual relationship between the two is determined by the user's query requirements.
[0075] In some embodiments, the determination of the target information of the case corresponding to each case identification information according to the preset condition information and the one or more target case identification information includes: determining at least one display field information according to the preset condition information; determining the target information of the case corresponding to each case identification information according to the at least one display field information and the one or more target case identification information. For example, the network device first determines whether the corresponding display field information has been customized by the user according to the preset condition information. If so, the network device uses the user-defined display field information as the at least one display field information. Otherwise, the network device uses the default display field information configured in agreement with the target application as the at least one display field information. On the premise of determining the at least one display field information, for each case identification information corresponding to the case, the network device can use the at least one display field information as the case corresponding to each case identification information in the screening condition to obtain the target information that the user needs to view.
[0076] In some embodiments, determining the target information of the case corresponding to each case identification information based on the at least one display field information and the one or more target case identification information includes: sending a second query request to the corresponding content server, wherein the second query request includes the at least one display field information and the one or more target case identification information; receiving the target information of the case corresponding to each case identification information returned by the content server in response to the second query request, wherein each sub-target information in the target information matches each display field information. For example, on the premise that the network device obtains one or more target case identification information and at least one display field information, the network device sends a second query request to the corresponding content server to obtain query information matching the at least one display field information. In response to the second query request, the content server first determines the target case information corresponding to the one or more target case identification information based on the one or more target case identification information, wherein each target case information includes all information of the case from acceptance to closing (for example, some cases are still being processed). Subsequently, the content server matches the at least one display field information in each target case information to obtain target information matching the at least one display field information (for example, the at least one display field information may include the right holder, the infringing subject, the IP name, etc.) (for example, for case information 1, the target information including the right holder, the infringing subject, the IP name, etc. in the case information is obtained; for case information 2, the target information including the right holder, the infringing subject, the IP name, etc. in the case information is obtained), and the content server returns the target information to the network device. For example, for case information 1, the target information corresponding to the case includes the right holder: A, the infringing subject: AA, and the IP name: AAA, among which the sub-target information corresponding to the display field information right holder is A, the sub-target information corresponding to the display field information infringing subject is AA, and the sub-target information corresponding to the display field information IP name is AAA. On the premise that each sub-target information in the target information matches each display field information, a basis is provided for the subsequent presentation form in the user device in accordance with the correspondence between the sub-target information and the display field information.
[0077] In some embodiments, the method also includes step S108 (not shown), in which the network device determines sorting field information from the at least one display field information according to a second preset rule; sorts the target information of each case according to the sorting field information and the second preset rule information; and returning the target information of each case to the user device includes: returning the sorted target information of each case to the user device. Among them, the second preset rule includes a sorting field information of the system default setting (for example, configured according to actual business needs) or a sorting field information specified by the user, and the sorting field information is one or more of the at least one display field information. Take a sorting field information as a sorting condition as an example. For example, the sorting field information is the infringer. The network device will sort the target information of the case corresponding to each case identification information according to the data under the infringer. Among them, the sorting rule is determined by the second preset rule information. For example, the data corresponding to the field information infringer in the multiple target information are Shanghai A Company, Beijing B Company, Guangzhou C Company, and Shenzhen D Company. Here, the second preset rule can include sorting each target information according to the order of the first letter of each infringer's first word, or sorting each target information according to the registered capital of each infringer (for example, from large to small). For example, Figure 3 The target information of two cases sorted by the network device received by the user device is shown, wherein the display field information includes case number, right holder name, IP name, infringing subject name, amount involved, and operation. And the target information of the two cases is sorted by the network device according to the sorting field information (e.g., case number) and the second preset rule (e.g., from low to high according to the case number). Those skilled in the art should understand that the above second preset rule is only an example, and other existing or future second preset rules that may appear should also be included in the scope of protection of this application if they are applicable to the present application, and are included here by reference. For each sorting field information as a sorting condition, the network device can determine the priority of each sorting field information as a sorting condition according to the second preset rule (e.g., which sorting field information is prioritized for sorting). On the basis of the network device sorting multiple target information of multiple cases, the sorted and regular target information can be directly presented to the user in the future, thereby improving the user's experience in obtaining information, and also facilitating the user to quickly extract key data from it.
[0078] Figure 4 A method for providing information according to an embodiment of the present application is shown, which is applied to a network device. The method includes step S201, step S202, step S203, step 204 and step S205.
[0079] Specifically, in step S201, the network device receives a data query request sent by a user device, wherein the data query request is sent based on a query operation of a user in a target application, and the data query request includes one or more field information provided by the user. For example, the target application may include running forms such as web pages, hosted programs (applets), and clients. A user holds a user device and opens a web page in the target application. Based on the user's query operation in the web page (for example, the user enters or selects one or more field information in a web page and clicks to query), the user device sends a data query request to the network device corresponding to the target application. In some embodiments, the user may perform query operations in independent running programs such as web pages and clients (for example, the user directly queries the web page). For example, one or more modules are presented in the web page, wherein the one or more modules include a case module, an infringement information module, a right holder review module, a lawyer invitation module, an evidence preparation module, etc. Each module will include multiple sub-modules after being expanded. For example, the evidence preparation module includes three sub-modules: ownership evidence, notarization evidence, and value evidence. Among them, the information of each sub-module and the parent module of the sub-module is often stored in different data tables, and the different data tables are not related to each other and do not need to be merged. Regardless of the submodule or the upper module of the submodule, each module presents one or more input boxes to be input or selectable input boxes after expansion. Taking the case module as an example, the case module includes options such as case number, right holder, case type, and contractor that require users to input and select. Among them, the one or more field information includes text information entered by the user in each module or selected text information (for example, some input boxes are available for users to select information). After the user selects information or enters information, in response to the query operation submitted by the user in the webpage, the user device sends a data query request to the network device corresponding to the target application to request query information related to the one or more field information entered by the user. In step S202, the network device responds to the data query request and parses the one or more field information to obtain one or more condition field information and condition relationship field information in the one or more field information. Among them, the one or more condition field information is character information selected or input by the user, and is used as the query character for subsequent query. The condition relationship field information includes the relationship between the one or more condition field information input by the user, and is used to determine the relationship between the query results (for example, intersection, union or difference, etc.) when the query results of each condition character information are subsequently queried.For example, since the user inputs or selects field information in different modules, there may be certain associations between the different modules (for example, the fields in module 2 will appear for the user to select only after the corresponding field is selected in module 1, that is, the relationship between the modules corresponds to the relationship between the fields. For example, if the multiple different modules are independent of each other, the conditional field information between the corresponding multiple field information is the union; if the multiple different modules need to satisfy each other, the conditional field information between the corresponding multiple field information is the intersection).
[0080] In step S203, the network device determines the corresponding one or more candidate target case identification information sets according to the one or more conditional field information. For example, the one or more conditional field information is "case label: A", "IP name: AA", "right holder: AAA", "lawyer: AAAA", etc., wherein prefixes such as "case label", "IP name", "right holder", etc. are index information in the conditional field information. Those skilled in the art should understand that the above conditional field information is only for example, and other existing or future conditional field information that may appear should also be included in the scope of protection of the present application if applicable to the present application, and is included here by reference. The network device regards each field information in the one or more field information as a query sub-condition, so as to facilitate subsequent independent queries based on each query sub-condition to obtain one or more target case identification information. For example, regardless of whether the network device regards each condition field information as a query sub-condition or regards at least one condition field information as a query sub-condition, on the basis of determining one or more query sub-conditions, the network device obtains a set of candidate target case identification information corresponding to each query sub-condition based on the one or more query sub-conditions (i.e., a case identification list), wherein each case identification list includes multiple case identification information (for example, case ID1, case ID2, case ID3, etc.), and the network device determines the information in the multiple case identification lists corresponding to the multiple query sub-conditions as one or more candidate target case identification information sets.
[0081] In step S204, the network device performs a set operation on the one or more candidate target case identification information sets according to the one or more conditional relationship field information to generate one or more target case identification information. The one or more conditional relationship field information includes the relationship between the one or more conditional field information input by the user, which is used to determine the relationship between the query results (e.g., intersection, union, or difference, etc.) when the query results of each conditional character information are subsequently queried.
[0082] In step S205, the network device determines the target information of the case corresponding to each case identification information according to the preset condition information and the one or more target case identification information, and returns the target information of each case to the user device. For example, on the basis of the network device obtaining the one or more target case identification information, the network device can obtain the case information corresponding to the one or more target case identification information according to the one or more target case identification information, and then filter out the information that the user wants to view from the case information corresponding to each target case identification information according to the preset condition information. For example, after the network device obtains the target information of each case, it returns the target information of each case to the user device. Different from the general time required for current retrieval (for example, about 60 seconds), the average loading time of the network device is about 3-5 seconds from the time the user submits the query request to the time the user device receives the target information of each case (in some cases, the target identification information needs to be cached, and the loading time is about 1 second when the cache is cached). When the system loads the same number of query interfaces (for example, there are about 20 query interfaces), the improvement of retrieval efficiency is obvious.
[0083] Figure 5 A network device for providing information according to an embodiment of the present application is shown, and the network device includes a one-module 101, a two-module 102, a three-module 103 and a four-module 104.
[0084] Specifically, a module 101 is used to receive a data query request sent by a user device, wherein the data query request is sent based on a query operation of a user in a target application, and the data query request includes one or more field information provided by the user. For example, the target application may include running forms such as web pages, hosted programs (applets), and clients. A user holds a user device and opens a web page in the target application. Based on the user's query operation in the web page (for example, the user enters or selects one or more field information in a web page and clicks to query), the user device sends a data query request to the network device corresponding to the target application. In some embodiments, the user may perform query operations in independent running programs such as web pages and clients (for example, the user directly queries the web page). For example, one or more modules are presented in the web page, wherein the one or more modules include a case module, an infringement information module, a right holder review module, a lawyer invitation module, an evidence preparation module, etc. Each module will include multiple sub-modules after being expanded. For example, the evidence preparation module includes three sub-modules: ownership evidence, notarization evidence, and value evidence. Among them, the information of each sub-module and the parent module of the sub-module is often stored in different data tables, and the different data tables are not related to each other and do not need to be merged. Regardless of whether it is a submodule or an upper-level module of the submodule, each module presents one or more input boxes or selectable input boxes after expansion. Taking the case module as an example, the case module includes options such as case number, right holder, case type, and case handler that require users to enter and select. Among them, the one or more field information includes text information entered or selected by the user in each module (for example, some input boxes allow users to select information). After the user selects information or enters information, in response to the query operation submitted by the user in the web page, the user device sends a data query request to the network device corresponding to the target application to request query information related to the one or more field information entered by the user.
[0085] Module 102 is used to respond to the data query request and parse the one or more field information to obtain one or more condition field information and condition relationship field information in the one or more field information. The one or more condition field information is character information selected or input by the user and is used for query characters for subsequent query. The condition relationship field information includes the relationship between the one or more condition field information input by the user, and is used to determine the relationship between the query results (for example, intersection, union or difference) when the query results of each condition character information are subsequently queried. For example, since the user inputs or selects field information in different modules, there may be a certain association between the different modules (for example, the corresponding field can only appear in module 2 for the user to select after the corresponding field is selected in module 1, that is, the relationship between the modules corresponds to the relationship between the fields. For example, if the multiple different modules are independent of each other, the condition field information between the corresponding multiple field information is a union; if the multiple different modules need to satisfy each other, the condition field information between the corresponding multiple field information is an intersection).
[0086] Module 103 is used to determine the corresponding one or more candidate target case identification information sets according to the one or more conditional field information. For example, the one or more conditional field information is "case label: A", "IP name: AA", "right holder: AAA", "lawyer: AAAA", etc., wherein prefixes such as "case label", "IP name", "right holder", etc. are index information in the conditional field information. Those skilled in the art should understand that the above conditional field information is only for example, and other existing or future possible conditional field information, if applicable to the present application, should also be included in the scope of protection of the present application, and is included here by reference. The network device regards each field information in the one or more field information as a query sub-condition, so as to facilitate subsequent independent queries based on each query sub-condition to obtain one or more target case identification information. For example, regardless of whether the network device uses each condition field information as a query sub-condition or uses at least one condition field information as a query sub-condition, on the basis of determining one or more query sub-conditions, the network device obtains a candidate target case identification information set (i.e., a case identification list) corresponding to each query sub-condition based on the one or more query sub-conditions, wherein each case identification list includes multiple case identification information (e.g., case ID1, case ID2, case ID3, etc.), and the network device determines the information in the multiple case identification lists corresponding to the multiple query sub-conditions as one or more candidate target case identification information sets. In some embodiments, in step S103, the network device determines one or more query conditions based on the one or more condition field information; and determines one or more corresponding candidate target case identification information sets based on the one or more query conditions. For example, at least one of the one or more conditional field information involves the same data table. For example, the index information corresponding to the at least one conditional field information is located in the same data table. To optimize the query efficiency, the network device merges the conditional field information involving the same data table as a query condition. When querying information subsequently, it is only necessary to query according to each query condition to obtain the candidate result information corresponding to the query condition. The query efficiency can be improved by querying at least one conditional field information located in the same data table once. In addition, a custom combination relationship between query conditions can be realized, thereby making the query flexible.
[0087] The first four modules 104 are used to perform a set operation on the one or more candidate target case identification information sets according to the one or more conditional relationship field information to generate one or more target case identification information. The one or more conditional relationship field information includes the relationship between the one or more conditional field information input by the user, and is used to determine the relationship between the query results (for example, intersection, union or difference, etc.) when the query results of each conditional character information are subsequently queried.
[0088] In some embodiments, a four-module 104 is used
[0089] Parsing the one or more conditional relationship field information to determine a collection instruction;
[0090] According to the collection instruction, a collection operation is performed on the one or more candidate target case identification information sets to generate one or more target case identification information. Figure 2 The embodiments shown are the same or similar, so they are not described again and are incorporated herein by reference.
[0091] In some embodiments, the module 103 is used to determine one or more query conditions according to the one or more condition field information;
[0092] Determine one or more corresponding candidate target case identification information sets according to the one or more query conditions. Figure 2 The embodiments shown are the same or similar, so they are not described again and are incorporated herein by reference.
[0093] In some embodiments, each query condition corresponds to a candidate target case identification information set, each candidate target case identification information set includes at least one case identification, and a module 104 is used to sort the at least one case identification in each candidate target case identification information set to generate a target case identification information set;
[0094] According to the one or more conditional relationship field information, a set operation is performed on one or more target case identification information sets to generate one or more target case identification information. Figure 2 The embodiments shown are the same or similar, so they are not described again and are incorporated herein by reference.
[0095] In some embodiments, determining one or more query conditions according to the one or more condition field information includes:
[0096] Detect whether at least one of the one or more conditional field information is located in the same data table. If so, use the at least one conditional field information as a query condition; otherwise, use a single conditional field information as a query condition, thereby generating one or more query conditions. Figure 2 The embodiments shown are the same or similar, so they are not described again and are incorporated herein by reference.
[0097] In some embodiments, detecting whether at least one condition field in the one or more condition field information is located in the same data table includes:
[0098] Identify the one or more conditional field information according to the first preset rule to detect whether at least one conditional field information among the one or more conditional field information is located in the same data table. Figure 2 The embodiments shown are the same or similar, so they are not described again and are incorporated herein by reference.
[0099] In some embodiments, the first preset rule includes one or more preset default field groups, wherein each default field group includes at least one conditional field information, and at least one conditional field information in each default field group is located in the same data table. Figure 2 The embodiments shown are the same or similar, so they are not described again and are incorporated herein by reference.
[0100] In some embodiments, determining one or more corresponding candidate target case identification information sets according to the one or more query conditions includes:
[0101] Sending a first query request to a corresponding content server, wherein the first query request includes the one or more query conditions;
[0102] Receive one or more candidate target case identification information sets returned by the content server in response to the first query request. Figure 2 The embodiments shown are the same or similar, so they are not described again and are incorporated herein by reference.
[0103] In some embodiments, the first query request includes one or more first sub-query requests.
[0104] The sending of a first query request to the corresponding content server, wherein the first query request includes the one or more query conditions including:
[0105] Sending a first query request to the corresponding content server, wherein each of the one or more first sub-query requests corresponds to one of the query conditions. Figure 2 The embodiments shown are the same or similar, so they are not described again and are incorporated herein by reference.
[0106] In some embodiments, the network device further includes a module 105 (not shown), the module 105 being configured to store a correspondence between each field information in the one or more field information and a candidate target case identification information set corresponding to the field information. Figure 2 The embodiments shown are the same or similar, so they are not described again and are incorporated herein by reference.
[0107] In some embodiments, the network device further includes a module 106 (not shown), the module 106 being configured to record the one or more target case identification information into a statistical database. Figure 2 The embodiments shown are the same or similar, so they are not described again and are incorporated herein by reference.
[0108] In some embodiments, the network device further includes a module 107 (not shown), the module 107 being configured to determine the target information of the case corresponding to each case identification information according to the preset condition information and the one or more target case identification information; and return the target information of each case to the user device. Figure 2 The embodiments shown are the same or similar, so they are not described again and are incorporated herein by reference.
[0109] In some embodiments, the preset condition information includes at least one of the following:
[0110] The display field information to be presented is set by default by the network device;
[0111] User-defined display field information uploaded by the user to the network device;
[0112] Related operations and Figure 2 The embodiments shown are the same or similar, so they are not described again and are incorporated herein by reference.
[0113] In some embodiments, determining the target information of the case corresponding to each case identification information according to the preset condition information and the one or more target case identification information includes:
[0114] Determine at least one display field information according to preset condition information;
[0115] Determine the target information of the case corresponding to each case identification information according to the at least one display field information and the one or more target case identification information. Figure 2 The embodiments shown are the same or similar, so they are not described again and are incorporated herein by reference.
[0116] In some embodiments, determining the target information of the case corresponding to each case identification information according to the at least one display field information and the one or more target case identification information includes sending a second query request to the corresponding content server, wherein the second query request includes the at least one display field information and the one or more target case identification information;
[0117] Receive the target information of the case corresponding to each case identification information returned by the content server in response to the second query request, wherein each sub-target information in the target information matches each display field information. Figure 2 The embodiments shown are the same or similar, so they are not described again and are incorporated herein by reference.
[0118] In some embodiments, the network device further includes a module 108 (not shown), the module 108 being configured to determine target field information from the at least one display field information according to a second preset rule;
[0119] sorting the target information of each case according to the target field information and the second preset rule information;
[0120] The returning the target information of each case to the user device includes: returning the sorted target information of each case to the user device. Figure 2 The embodiments shown are the same or similar, so they are not described again and are incorporated herein by reference.
[0121] Figure 6 A network device for providing information according to an embodiment of the present application is shown, wherein the network device includes a 21 module 201 , a 22 module 202 , a 23 module 203 , a 24 module 204 and a 25 module 205 .
[0122] Specifically, module 2101 is used to receive a data query request sent by a user device, wherein the data query request is sent based on a query operation of a user in a target application, and the data query request includes one or more field information provided by the user. For example, the target application may include running forms such as web pages, hosted programs (applets), and clients. A user holds a user device and opens a web page in the target application. Based on the user's query operation in the web page (for example, the user enters or selects one or more field information in a web page and clicks to query), the user device sends a data query request to the network device corresponding to the target application. In some embodiments, the user may perform query operations in independent running programs such as web pages and clients (for example, the user directly queries the web page). For example, one or more modules are presented in the web page, wherein the one or more modules include a case module, an infringement information module, a right holder review module, a lawyer invitation module, an evidence preparation module, etc. Each module will include multiple sub-modules after being expanded. For example, the evidence preparation module includes three sub-modules: ownership evidence, notarization evidence, and value evidence. Among them, the information of each sub-module and the parent module of the sub-module is often stored in different data tables, and the different data tables are not related to each other and do not need to be merged. Regardless of the submodule or the upper module of the submodule, each module presents one or more input boxes to be input or selectable input boxes after expansion. Taking the case module as an example, the case module includes options such as case number, right holder, case type, and contractor that require users to input and select. Among them, the one or more field information includes text information entered by the user in each module or selected text information (for example, some input boxes are available for users to select information). After the user selects information or enters information, in response to the query operation submitted by the user in the webpage, the user device sends a data query request to the network device corresponding to the target application to request query information related to the one or more field information entered by the user. Module 202 is used to parse the one or more field information in response to the data query request to obtain one or more condition field information and condition relationship field information in the one or more field information. Among them, the one or more condition field information is character information selected or input by the user, and is used as the query character for subsequent query. The condition relationship field information includes the relationship between the one or more condition field information input by the user, and is used to determine the relationship between the query results (for example, intersection, union or difference, etc.) when the query results of each condition character information are subsequently queried.For example, since the user inputs or selects field information in different modules, there may be certain associations between the different modules (for example, the fields in module 2 will appear for the user to select only after the corresponding field is selected in module 1, that is, the relationship between the modules corresponds to the relationship between the fields. For example, if the multiple different modules are independent of each other, the conditional field information between the corresponding multiple field information is the union; if the multiple different modules need to satisfy each other, the conditional field information between the corresponding multiple field information is the intersection).
[0123] The second and third modules 203 are used to determine the corresponding one or more candidate target case identification information sets according to the one or more conditional field information. For example, the one or more conditional field information is "case label: A", "IP name: AA", "right holder: AAA", "lawyer: AAAA", etc., wherein prefixes such as "case label", "IP name", "right holder", etc. are index information in the conditional field information. Those skilled in the art should understand that the above conditional field information is only for example, and other existing or future possible conditional field information, if applicable to the present application, should also be included in the scope of protection of the present application, and are included here by reference. The network device regards each field information in the one or more field information as a query sub-condition, so as to facilitate subsequent independent queries based on each query sub-condition to obtain one or more target case identification information. For example, regardless of whether the network device regards each condition field information as a query sub-condition or regards at least one condition field information as a query sub-condition, on the basis of determining one or more query sub-conditions, the network device obtains a set of candidate target case identification information corresponding to each query sub-condition based on the one or more query sub-conditions (i.e., a case identification list), wherein each case identification list includes multiple case identification information (for example, case ID1, case ID2, case ID3, etc.), and the network device determines the information in the multiple case identification lists corresponding to the multiple query sub-conditions as one or more candidate target case identification information sets.
[0124] Module 204 is used to perform a set operation on the one or more candidate target case identification information sets according to the one or more conditional relationship field information to generate one or more target case identification information. The one or more conditional relationship field information includes the relationship between the one or more conditional field information input by the user, and is used to determine the relationship between the query results (e.g., intersection, union, or difference, etc.) when the query results of each conditional character information are subsequently queried.
[0125] The second five module 205 is used to determine the target information of the case corresponding to each case identification information according to the preset condition information and the one or more target case identification information, and return the target information of each case to the user device. For example, on the basis of the network device obtaining the one or more target case identification information, the network device can obtain the case information corresponding to the one or more target case identification information according to the one or more target case identification information, and then filter out the information that the user wants to view from the case information corresponding to each target case identification information according to the preset condition information. For example, after the network device obtains the target information of each case, it returns the target information of each case to the user device. Different from the general time required for current retrieval (for example, about 60 seconds), the average loading time of the network device is about 3-5 seconds from the time the user submits the query request to the time the user device receives the target information of each case (in some cases, the target identification information needs to be cached, and the loading time is about 1 second when the cache is cached). When the system loads the same number of query interfaces (for example, there are about 20 query interfaces), the improvement of retrieval efficiency is obvious.
[0126] The present application also provides a computer-readable storage medium, wherein the computer-readable storage medium stores computer code. When the computer code is executed, the method described in any of the preceding items is executed.
[0127] The present application also provides a computer program product. When the computer program product is executed by a computer device, the method described in any of the preceding items is executed.
[0128] The present application also provides a computer device, the computer device comprising:
[0129] one or more processors;
[0130] a memory for storing one or more computer programs;
[0131] When the one or more computer programs are executed by the one or more processors, the one or more processors are caused to implement the method as described in any of the preceding items.
[0132] Figure 7 An exemplary system that can be used to implement various embodiments described in this application is shown;
[0133] like Figure 7In some embodiments shown, the system 300 can be used as any of the devices in the various described embodiments. In some embodiments, the system 300 may include one or more computer-readable media (e.g., system memory or NVM / storage device 320) with instructions and one or more processors (e.g., (one or more) processors 305) coupled to the one or more computer-readable media and configured to execute instructions to implement modules to perform the actions described in this application.
[0134] For one embodiment, system control module 310 may include any suitable interface controller to provide any suitable interface to at least one of processor(s) 305 and / or any suitable device or component in communication with system control module 310 .
[0135] The system control module 310 may include a memory controller module 330 to provide an interface to the system memory 315. The memory controller module 330 may be a hardware module, a software module, and / or a firmware module.
[0136] The system memory 315 may be used, for example, to load and store data and / or instructions for the system 300. For one embodiment, the system memory 315 may include any suitable volatile memory, such as a suitable DRAM. In some embodiments, the system memory 315 may include double data rate type four synchronous dynamic random access memory (DDR4 SDRAM).
[0137] For one embodiment, system control module 310 may include one or more input / output (I / O) controllers to provide interfaces to NVM / storage device 320 and communication interface(s) 325 .
[0138] For example, NVM / storage device 320 may be used to store data and / or instructions. NVM / storage device 320 may include any suitable non-volatile memory (e.g., flash memory) and / or may include any suitable non-volatile storage device(s) (e.g., one or more hard disk drives (HDDs), one or more compact disk (CD) drives, and / or one or more digital versatile disk (DVD) drives).
[0139] NVM / storage device 320 may include storage resources that are physically part of the device on which system 300 is installed, or it may be accessible to the device without being part of the device. For example, NVM / storage device 320 may be accessed over a network via communication interface(s) 325.
[0140] Communication interface(s) 325 may provide an interface for system 300 to communicate over one or more networks and / or with any other suitable devices. System 300 may wirelessly communicate with one or more components of a wireless network in accordance with any of one or more wireless network standards and / or protocols.
[0141] For one embodiment, at least one of the processor(s) 305 may be packaged together with the logic of one or more controllers of the system control module 310 (e.g., the memory controller module 330). For one embodiment, at least one of the processor(s) 305 may be packaged together with the logic of one or more controllers of the system control module 310 to form a system-in-package (SiP). For one embodiment, at least one of the processor(s) 305 may be integrated on the same die with the logic of one or more controllers of the system control module 310. For one embodiment, at least one of the processor(s) 305 may be integrated on the same die with the logic of one or more controllers of the system control module 310 to form a system on chip (SoC).
[0142] In various embodiments, the system 300 may be, but is not limited to: a server, a workstation, a desktop computing device, or a mobile computing device (e.g., a laptop computing device, a handheld computing device, a tablet computer, a netbook, etc.). In various embodiments, the system 300 may have more or fewer components and / or a different architecture. For example, in some embodiments, the system 300 includes one or more cameras, a keyboard, a liquid crystal display (LCD) screen (including a touch screen display), a non-volatile memory port, multiple antennas, a graphics chip, an application specific integrated circuit (ASIC), and a speaker.
[0143] It should be noted that the present application can be implemented in software and / or a combination of software and hardware, for example, can be implemented using an application specific integrated circuit (ASIC), a general purpose computer or any other similar hardware device. In one embodiment, the software program of the present application can be executed by a processor to implement the steps or functions described above. Similarly, the software program of the present application (including relevant data structures) can be stored in a computer-readable recording medium, for example, a RAM memory, a magnetic or optical drive or a floppy disk and similar devices. In addition, some steps or functions of the present application can be implemented using hardware, for example, as a circuit that cooperates with a processor to perform each step or function.
[0144] In addition, a part of the present application may be applied as a computer program product, such as a computer program instruction, which, when executed by a computer, can call or provide the method and / or technical solution according to the present application through the operation of the computer. Those skilled in the art should understand that the existence of computer program instructions in computer-readable media includes but is not limited to source files, executable files, installation package files, etc., and accordingly, the way in which computer program instructions are executed by a computer includes but is not limited to: the computer directly executes the instruction, or the computer compiles the instruction and then executes the corresponding compiled program, or the computer reads and executes the instruction, or the computer reads and installs the instruction and then executes the corresponding installed program. Here, the computer-readable medium can be any available computer-readable storage medium or communication medium accessible to the computer.
[0145] Communication media include media by which communication signals containing, for example, computer readable instructions, data structures, program modules, or other data are transmitted from one system to another. Communication media may include guided transmission media such as cables and wires (e.g., fiber optic, coaxial, etc.) and wireless (unguided transmission) media that can propagate energy waves, such as acoustic, electromagnetic, RF, microwave, and infrared. Computer readable instructions, data structures, program modules, or other data may be embodied as a modulated data signal in, for example, a wireless medium such as a carrier wave or similar mechanism such as embodied as part of spread spectrum technology. The term "modulated data signal" refers to a signal whose one or more characteristics are changed or set in such a manner as to encode information in the signal. Modulation may be analog, digital, or a hybrid modulation technique.
[0146] By way of example and not limitation, computer-readable storage media may include volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer-readable instructions, data structures, program modules or other data. For example, computer-readable storage media include, but are not limited to, volatile memory, such as random access memory (RAM, DRAM, SRAM); and non-volatile memory, such as flash memory, various read-only memories (ROM, PROM, EPROM, EEPROM), magnetic and ferromagnetic / ferroelectric memories (MRAM, FeRAM); and magnetic and optical storage devices (hard disks, magnetic tapes, CDs, DVDs); or other media now known or later developed that can store computer-readable information / data for use by a computer system.
[0147] Here, according to an embodiment of the present application, a device is included, which includes a memory for storing computer program instructions and a processor for executing the program instructions, wherein, when the computer program instructions are executed by the processor, the device is triggered to run the methods and / or technical solutions based on the aforementioned multiple embodiments of the present application.
[0148] It is obvious to those skilled in the art that the present application is not limited to the details of the above exemplary embodiments, and that the present application can be implemented in other specific forms without departing from the spirit or basic features of the present application. Therefore, from any point of view, the embodiments should be regarded as exemplary and non-restrictive, and the scope of the present application is limited by the attached claims rather than the above description, so it is intended to include all changes that fall within the meaning and scope of the equivalent elements of the claims in the present application. Any figure mark in the claims should not be regarded as limiting the claims involved. In addition, it is obvious that the word "comprising" does not exclude other units or steps, and the singular does not exclude the plural. Multiple units or devices stated in the device claim can also be implemented by one unit or device through software or hardware. The words first, second, etc. are used to indicate names, and do not indicate any particular order.
Claims
1. A method for providing information, applied to a network device, wherein: The method includes: Receiving a data query request sent by a user device, wherein the data query request is sent based on a query operation of a user in a target application, and the data query request includes one or more field information provided by the user; In response to the data query request, parsing the one or more field information to obtain one or more condition field information and inter-condition relationship field information from the one or more field information; Determine one or more corresponding sets of candidate target case identification information based on the one or more conditional field information, wherein the determining of the corresponding sets of one or more candidate target case identification information based on the one or more conditional field information includes: determining one or more query conditions based on the one or more conditional field information; determining the corresponding sets of one or more candidate target case identification information based on the one or more query conditions; the determining of the one or more query conditions based on the one or more conditional field information includes: detecting whether at least two conditional field information among the one or more conditional field information are located in the same data table, and if so, taking the at least two conditional field information as a query condition, and the at least two conditional field information as a query condition. The segment information only needs to be queried once; otherwise, a single condition field information is used as a query condition, thereby generating one or more query conditions; the detecting whether at least two condition fields in the one or more condition field information are located in the same data table includes: identifying the one or more condition field information according to a first preset rule to detect whether at least two condition field information in the one or more condition field information are located in the same data table, the first preset rule includes one or more preset default field groups, wherein each default field group includes at least two condition field information, at least two condition field information in each default field group are located in the same data table, and the default field group is generated by the network device based on historical data statistics; Performing a set operation on the one or more candidate target case identification information sets according to the one or more conditional relationship field information to generate one or more target case identification information, wherein at least one target case identification information is used for subsequent search to determine the query information that the user wants to obtain; The method further includes: after querying the candidate target case identification information set, storing the correspondence between each field information in the one or more field information and the candidate target case identification information set corresponding to the field information.
2. The method according to claim 1, wherein: The performing a set operation on the one or more candidate target case identification information sets according to the one or more conditional relationship field information to generate one or more target case identification information includes: Parsing the one or more conditional relationship field information to determine a collection instruction; A collection operation is performed on the one or more candidate target case identification information sets according to the collection instruction to generate one or more target case identification information.
3. The method according to claim 1, wherein: Each query condition corresponds to a candidate target case identification information set, and each candidate target case identification information set includes at least one case identification. The performing a set operation on the one or more candidate target case identification information sets according to the one or more conditional relationship field information to generate one or more target case identification information includes: sorting the at least one case identification in each candidate target case identification information set to generate a target case identification information set; A set operation is performed on one or more sets of target case identification information according to the one or more conditional relationship field information to generate one or more target case identification information.
4. The method according to any one of claims 1 to 3, wherein: Determining the corresponding one or more candidate target case identification information sets according to the one or more query conditions includes: Sending a first query request to a corresponding content server, wherein the first query request includes the one or more query conditions; Receive one or more candidate target case identification information sets returned by the content server in response to the first query request.
5. The method according to claim 4, wherein: The first query request includes one or more first sub-query requests, The sending of a first query request to the corresponding content server, wherein the first query request includes the one or more query conditions including: A first query request is sent to a corresponding content server, wherein each of the one or more first sub-query requests corresponds to one of the query conditions.
6. The method according to claim 1, wherein: The method further comprises: The one or more target case identification information is recorded in a statistical database.
7. The method according to claim 1, wherein: The method further comprises: Determine the target information of the case corresponding to each case identification information according to the preset condition information and the one or more target case identification information; The target information of each case is returned to the user device.
8. The method according to claim 7, wherein: The preset condition information includes at least one of the following: The display field information to be presented is set by default by the network device; The user-defined display field information uploaded by the user to the network device.
9. The method according to claim 7, wherein: Determining the target information of the case corresponding to each case identification information according to the preset condition information and the one or more target case identification information includes: Determine at least one display field information according to preset condition information; The target information of the case corresponding to each case identification information is determined according to the at least one display field information and the one or more target case identification information.
10. The method according to claim 9, wherein: Determining the target information of the case corresponding to each case identification information according to the at least one display field information and the one or more target case identification information comprises: Sending a second query request to the corresponding content server, wherein the second query request includes the at least one display field information and the one or more target case identification information; Receive target information of the case corresponding to each case identification information returned by the content server in response to the second query request, wherein each sub-target information in the target information matches each display field information.
11. The method according to claim 9, wherein: The method further comprises: Determining sorting field information from the at least one display field information according to a second preset rule; Sort the target information of each case according to the sorting field information and the second preset rule information; The returning the target information of each case to the user device comprises: The target information of each sorted case is returned to the user device.
12. A method for providing information, applied to a network device, wherein: The method includes: Receiving a data query request sent by a user device, wherein the data query request is sent based on a query operation of a user in a target application, and the data query request includes one or more field information provided by the user; In response to the data query request, parsing the one or more field information to obtain one or more condition field information and inter-condition relationship field information from the one or more field information; Determine one or more corresponding sets of candidate target case identification information based on the one or more conditional field information, wherein the determining of the corresponding sets of one or more candidate target case identification information based on the one or more conditional field information includes: determining one or more query conditions based on the one or more conditional field information; determining the corresponding sets of one or more candidate target case identification information based on the one or more query conditions; the determining of the one or more query conditions based on the one or more conditional field information includes: detecting whether at least two conditional field information among the one or more conditional field information are located in the same data table, and if so, taking the at least two conditional field information as a query condition, and the at least two conditional field information as a query condition. The segment information only needs to be queried once; otherwise, a single condition field information is used as a query condition, thereby generating one or more query conditions; the detecting whether at least two condition fields in the one or more condition field information are located in the same data table includes: identifying the one or more condition field information according to a first preset rule to detect whether at least two condition field information in the one or more condition field information are located in the same data table, the first preset rule includes one or more preset default field groups, wherein each default field group includes at least two condition field information, at least two condition field information in each default field group are located in the same data table, and the default field group is generated by the network device based on historical data statistics; Performing a set operation on the one or more candidate target case identification information sets according to the one or more conditional relationship field information to generate one or more target case identification information, wherein at least one target case identification information is used for subsequent search to determine the query information that the user wants to obtain; Determine the target information of the case corresponding to each case identification information according to the preset condition information and the one or more target case identification information, and return the target information of each case to the user device; The method further includes: after querying the candidate target case identification information set, storing the correspondence between each field information in the one or more field information and the candidate target case identification information set corresponding to the field information.
13. A device for providing information, wherein: The equipment includes: Processor; and A memory arranged to store computer executable instructions which, when executed, cause the processor to perform the operations of the method as claimed in any one of claims 1 to 12.
14. A computer-readable medium comprising instructions which, when executed by a computer, cause the computer to perform the operations of the method of any one of claims 1 to 12.
Citation Information
Patent Citations
Distributed database multi-column composite query system and method
CN103631910A