Enterprise data combination query system and method

By designing an enterprise data combination query system, using cache manager, task manager and logic calculator to optimize data link processing, the problems of excessive server resource consumption and long response time caused by multi-dimensional data query in the prior art are solved. A more efficient query experience is achieved.

CN119149624AInactive Publication Date: 2024-12-17HANGZHOU ZHULONG INFORMATION TECH CO LTD
View PDF 10 Cites 0 Cited by

Patent Information

Application Number
CN202411629781.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-15
Publication Date
2024-12-17
Estimated Expiration
Not applicable · inactive patent

AI Technical Summary

Technical Problem

During the bidding process of construction enterprises, the existing technology uses too much server resources and has a long response time when processing multi-dimensional data queries, which seriously affects the user experience, especially when using Elasticsearch to conduct real-time statistics and full return of tens of millions of data. .

Method used

A corporate data combination query system was designed, including the user layer, the aggregate interface layer, the underlying interface layer and the data storage layer. Through the cache manager, the task manager and the logic calculator, multi-threaded parallel processing and intelligent routing scheduling are used to generate The unique cache key and the comprehensive dimension cache key optimize data link processing, reduce resource consumption, and improve query efficiency.

Benefits of technology

It significantly reduces resource consumption, improves query efficiency, provides a smoother and more efficient user experience, and solves the problem of excessive response time of enterprise multi-dimensional data combination query servers in the bidding process.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119149624A_ABST
    Figure CN119149624A_ABST
Patent Text Reader

Abstract

The invention provides an enterprise data combined query system and method. The enterprise data combined query system comprises a user layer, an aggregation interface layer, a bottom interface layer and a data storage layer, the user layer comprises application programs of different platforms; the aggregation interface layer is used for processing a user request and returning a processing result of the request; the aggregation interface layer comprises a plurality of query function modules, a cache manager, a task manager and a logic calculator; the cache manager is used for storing the historical processing results into a cache and determining the processing result of the request from the historical processing results of the cache; the task manager is used for processing tasks corresponding to the requests in parallel; the logic calculator is used for calculating the enterprise set meeting specific conditions to obtain a processing result; the bottom interface layer is used for interacting with the data storage layer based on tasks to obtain an enterprise set; the data storage layer is used for storing enterprise and personnel information. The resource consumption can be effectively reduced, and the query efficiency is remarkably improved, so that smoother and more efficient experience is brought to the user.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of data query, and in particular to a system and method for enterprise data combination query. Background Art

[0002] During the bidding process, construction companies will check themselves or combine company resources to seek potential competitors or partners for the project based on the conditions specified in the bidding documents. Common restrictions in bidding documents can be summarized as follows: 1. Basic information: company registration place, filing place, company registration capital, company nature, company establishment time, etc.

[0003] 2. Enterprise qualifications: qualification classification and whether the qualifications have expired.

[0004] 3. Company historical performance: project amount, project time, project type, project region, project launch platform, project scale, project keywords, and number of projects participated in.

[0005] 4. Corporate honors: place of honor, honor category, honor level, honor award, honor name, honor keywords, time of receipt, number of receipts, etc.

[0006] 5. Corporate credit: credit publishing platform, publishing time, credit classification, credit score, credit ranking, credit level, etc.

[0007] 6. Enterprise personnel: types and levels of personnel certificates, types and levels of certificates held by the same person, number of people holding one or more certificates with specified conditions, etc.

[0008] 7. Personnel Certificate + Performance + Honor: The query can be performed by any combination of one or more certificates, one or more qualified projects, one or more qualified honors, etc.

[0009] For the above query conditions, multiple groups can be added in a single dimension. The relationship between multiple groups of conditions is "satisfy at the same time" and "satisfy any". For example, if you set the honor condition, the company has won a designated award in the past year or won an award twice in the past three years. The company only needs to meet any one of these conditions. However, query conditions in different dimensions can only be met at the same time. For example, if you set the honor condition that the company has won a designated award in the past year and set the performance condition that the company has participated in municipal projects worth more than 100 million in the past three years, this group of conditions means that the company must meet both the honor condition and the performance condition.

[0010] Based on the business scenarios of corporate bidding and tendering, the company needs to use advanced technical means to perform basic queries, real-time statistics, logical calculations and other processing on the entire data, so as to provide customers with multi-dimensional data combination queries with fast query efficiency, full data coverage and high accuracy, and promptly respond to qualified companies and their detailed data for users to make decisions.

[0011] At present, the company mainly relies on Elasticsearch (a distributed search engine) to achieve this scenario. Although Elasticsearch performs well in data query, in the bidding document usage scenario, Elasticsearch needs to perform real-time statistics on tens of millions of data and return the full amount of the highest one million enterprises. This process consumes a lot of server resources and seriously affects the user experience. Taking the enterprise personnel certificate + performance + honor restriction conditions as an example, the bidding document requires the project manager to have a first-level registered constructor-construction engineering professional certificate and a senior engineer title, and to have done 2 or more housing construction projects or 1 30 million municipal project in the past 3 years. In this scenario, we use the efficient search engine Elasticsearch to provide data query services. At peak times, we respond to 5,000 enterprises that meet the manager certificate + performance + honor conditions, and the response time is up to 35s. In other single-dimensional data queries, when the average response data volume reaches 50W, the response time is about 12s. The long HTTP (Hypertext Transfer Protocol) link causes server resources, network resources, etc. to be affected to varying degrees, and the user experience is seriously affected. Summary of the invention

[0012] In view of this, the purpose of the present invention is to provide an enterprise data combination query system and method, which can intelligently classify the request parameters submitted by users, and accurately call the corresponding data link for processing according to various parameter classifications through a preset plurality of link models with superior query performance. It can not only effectively reduce resource consumption, but also significantly improve query efficiency, thus giving users a smoother and more efficient experience.

[0013] In the first aspect, an embodiment of the present invention provides an enterprise data combination query system, which includes: a user layer, an aggregation interface layer, an underlying interface layer and a data storage layer; the user layer includes applications of different platforms, and the applications are used to provide enterprise data combination query services for users on the corresponding platforms; the aggregation interface layer is used to process user requests and return the processing results of the requests; the aggregation interface layer includes multiple query function modules, a cache manager, a task manager and a logical calculator; the cache manager is used to store historical processing results in the cache, and determine the processing results of the request from the cached historical processing results; the task manager is used to process tasks corresponding to the requests in parallel; the logical calculator is used to calculate the set of enterprises that meet specific conditions and obtain processing results; the underlying interface layer is used to interact with the data storage layer based on tasks to obtain a set of enterprises that meet specific conditions; the data storage layer is used to store enterprise and personnel information.

[0014] In an optional embodiment of the present application, the above-mentioned multiple query function modules include at least one of the following: enterprise basic information query module, enterprise qualification query module, enterprise performance query module, enterprise honor query module, enterprise personnel certificate query module, enterprise credit query module, personnel certificate, performance and honor composite query module.

[0015] In an optional embodiment of the present application, the above-mentioned cache manager includes: a component for caching single-dimensional queries in user request parameters and a component for caching final response results; when processing a single-dimensional query scenario, the cache manager uses parameter conditional encryption to generate a unique cache key; when processing a query request containing multiple dimensional parameters, the cache manager uses parameter conditional encryption to generate a cache key for a comprehensive dimension.

[0016] In an optional embodiment of the present application, the above-mentioned task manager includes: a task parallel processing unit and an intelligent routing scheduling unit; the task parallel processing unit is used to decompose the requested query task into multiple sub-tasks, call the underlying data interface and perform data calculation in parallel; the intelligent routing scheduling unit is used to distinguish different types of sub-tasks based on predefined rule strategies, and call the corresponding underlying data interface for the distinguished sub-tasks.

[0017] In an optional embodiment of the present application, the above-mentioned logical calculator includes: a logical AND operation unit and a logical OR operation unit; the logical AND operation unit is used to perform intersection calculation on a set of enterprises that meet specific conditions; the logical OR operation unit is used to perform union calculation on a set of enterprises that meet specific conditions.

[0018] In an optional embodiment of the present application, when processing a query request containing multiple dimensional parameters, the logic calculator uses a logic and operation unit to perform the operation, and does not use a logic or operation unit to perform the operation.

[0019] In an optional embodiment of the present application, the above-mentioned underlying interface layer includes: a basic information query interface and a statistical type query interface; the basic information query interface is used to process query tasks whose computational intensity is lower than a preset threshold; the statistical type query interface is used to process query tasks that perform statistical calculations on the entire data.

[0020] In an optional embodiment of the present application, the above-mentioned statistical type query interface adopts a method of combining a multi-threaded task parallel processing strategy with a logical calculation filtering mode.

[0021] In an optional embodiment of the present application, the above-mentioned data storage layer includes at least one of the following: enterprise library, personnel certificate library, performance library, honor library, enterprise credit library, qualification library, and personnel composite library.

[0022] In the second aspect, an embodiment of the present invention also provides an enterprise data combination query method, which is applied to the above-mentioned enterprise data combination query system, and the method includes: the user layer sends a request to the aggregation interface layer; the cache manager of the aggregation interface layer determines whether there is a processing result of the request in the historical processing results; if so, the aggregation interface layer returns the processing result of the request; if not, the task manager of the aggregation interface layer creates and concurrently processes the task corresponding to the request; the underlying interface layer is used to interact with the data storage layer based on the task to obtain a set of enterprises that meet specific conditions; the logical calculator calculates the set of enterprises that meet the specific conditions to obtain a processing result; the aggregation interface layer returns the processing result of the request.

[0023] The embodiments of the present invention bring the following beneficial effects: The embodiment of the present invention provides an enterprise data combination query system and method, which intelligently classifies the request parameters submitted by the user, and accurately calls the corresponding data link for processing according to various parameter classifications through a plurality of preset link models with excellent query performance. It can not only effectively reduce resource consumption, but also significantly improve query efficiency, thus bringing users a smoother and more efficient experience.

[0024] Other features and advantages of the present disclosure will be set forth in the following description, or some features and advantages may be inferred or unambiguously determined from the description, or may be learned by implementing the above-mentioned technology of the present disclosure.

[0025] In order to make the above-mentioned objectives, features and advantages of the present disclosure more obvious and easy to understand, preferred embodiments are specifically cited below and described in detail with reference to the attached drawings. BRIEF DESCRIPTION OF THE DRAWINGS

[0026] In order to more clearly illustrate the specific implementation methods of the present invention or the technical solutions in the prior art, the drawings required for use in the specific implementation methods or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are some implementation methods of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.

[0027] Figure 1 A schematic diagram of the structure of an enterprise data combination query system provided by an embodiment of the present invention; Figure 2 A flowchart of a method for enterprise data combination query provided by an embodiment of the present invention; Figure 3 A schematic diagram of a specific example of a method for combined query of enterprise data provided by an embodiment of the present invention; Figure 4 A schematic diagram of the structure of an electronic device provided by an embodiment of the present invention. DETAILED DESCRIPTION

[0028] In order to make the purpose, technical solution and advantages of the embodiments of the present invention clearer, the technical solution of the present invention will be clearly and completely described below in conjunction with the accompanying drawings. Obviously, the described embodiments are part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.

[0029] At present, the company mainly relies on Elasticsearch to achieve this scenario. Although Elasticsearch performs well in data query, in the bidding document usage scenario, Elasticsearch needs to perform real-time statistics on tens of millions of data and return the full amount of the highest one million enterprises. This process consumes a lot of server resources and seriously affects the user experience. Taking the enterprise personnel certificate + performance + honor restriction conditions as an example, the bidding document requires that the project manager has a first-level registered constructor-construction engineering professional certificate and a senior engineer title, and has done 2 or more housing construction projects or 1 30 million municipal project in the past 3 years. In this scenario, we use the efficient search engine Elasticsearch to provide data query services. At peak times, we respond to 5,000 enterprises that meet the manager certificate + performance + honor conditions, and the response time is up to 35s. In other single-dimensional data queries, when the average response data volume reaches 50W, the response time is about 12s. The long HTTP connection causes server resources, network resources, etc. to be affected to varying degrees, and the user experience is seriously affected.

[0030] Therefore, there is a problem in the prior art that the server response time of enterprise multi-dimensional data combination query in the bidding process is too long. Based on this, an enterprise data combination query system and method provided by an embodiment of the present invention specifically provides an enterprise-level system optimization method based on user multi-dimensional data combination query, which can intelligently classify the request parameters submitted by the user, and through a preset plurality of link models with superior query performance, for various parameter classifications, can accurately call the corresponding data link for processing. It can not only effectively reduce resource consumption, but also significantly improve query efficiency, thereby giving users a smoother and more efficient experience.

[0031] To facilitate understanding of this embodiment, a system for combining enterprise data inquiries disclosed in an embodiment of the present invention is first introduced in detail.

[0032] Embodiment 1: The embodiment of the present invention provides a system for enterprise data combination query, see Figure 1The structure diagram of a combined query system for enterprise data is shown, and the combined query system for enterprise data includes: a user layer, an aggregation interface layer, a bottom interface layer and a data storage layer.

[0033] The user layer includes applications on different platforms, which are used to provide enterprise data combination query services for users on the corresponding platforms.

[0034] like Figure 1 As shown, the user layer includes applications (APPs) for combined query on three platforms: Web (webpage), Android (Android operating system), and IOS (Apple operating system). These applications provide unified enterprise combined query services for users.

[0035] The aggregation interface layer is used to process user requests and return the processing results of the requests; the aggregation interface layer includes multiple query function modules, a cache manager, a task manager and a logical calculator; the cache manager is used to store historical processing results in the cache and determine the processing results of the request from the cached historical processing results; the task manager is used to process the tasks corresponding to the requests in parallel; the logical calculator is used to calculate the set of enterprises that meet specific conditions and obtain the processing results.

[0036] like Figure 1 As shown, the aggregation interface layer serves as an intermediate interface layer, and its main function is to process user requests and return results.

[0037] In some embodiments, the above-mentioned multiple query function modules include at least one of the following: enterprise basic information query module, enterprise qualification query module, enterprise performance query module, enterprise honor query module, enterprise personnel certificate query module, enterprise credit query module, personnel certificate, performance and honor composite query module.

[0038] like Figure 1 As shown in the figure, the aggregation interface layer contains multiple different functional modules, which are mainly divided into: 1) Query basic information of enterprises; 2) Enterprise qualification query: Enterprise qualification query includes single qualification query and joint query of multiple qualification groups; 3) Enterprise performance inquiry; 4) Enterprise honor inquiry; 5) Enterprise personnel certificate query: Enterprise personnel certificate query includes one person one certificate query and one person multiple certificates query; 6) Enterprise credit inquiry: including enterprise credit rating, enterprise credit ranking, enterprise credit score, etc.; 7) Personnel Certificates + Performance + Honors: includes queries on the personnel's certificates, project performance, and honors received in pairs or more combinations.

[0039] like Figure 1 As shown in the figure, in addition to the basic query function, the aggregation interface layer also includes the following functional components: 1. Cache Manager: In some embodiments, the cache manager includes: a component for caching single-dimensional queries in user request parameters and a component for caching final response results; when processing a single-dimensional query scenario, the cache manager uses parameter conditional encryption to generate a unique cache key; when processing a query request containing multiple dimensional parameters, the cache manager uses parameter conditional encryption to generate a cache key for a comprehensive dimension.

[0040] First, when processing a single-dimensional query scenario (such as an honor information query), the system uses parameter condition MD5 (an information digest algorithm) encryption to generate a unique cache key (Key), and its storage rule is: adsearch:{dimension}:{MD5 parameter condition}. The advantage of this is that it ensures efficient reuse and fast positioning of the same query condition. At the same time, the irreversibility of the MD5 algorithm and the uniqueness of the output when the input changes avoid the problem of cache invalidation due to slight changes in the conditions. The cache value is the exact result of the company list under the corresponding query condition, which significantly improves the response speed for frequently repeated queries and reduces the pressure on the database.

[0041] Secondly, for complex query requests containing multiple dimension parameters (such as honor query and performance query at the same time), the system also uses the MD5 encryption algorithm to generate a cache key of the comprehensive dimension, and its storage rule is: adsearch: condition: {MD5 parameter condition}. The advantage of this strategy is that it can flexibly respond to query requirements under multiple condition combinations, and take the intersection of the enterprise list screened by different dimensional conditions as the final cache value.

[0042] 2. Task Manager: In some embodiments, the above-mentioned task manager includes: a task parallel processing unit and an intelligent routing scheduling unit; the task parallel processing unit is used to decompose the requested query task into multiple sub-tasks, call the underlying data interface and perform data calculation in parallel; the intelligent routing scheduling unit is used to distinguish different types of sub-tasks based on predefined rule strategies, and call the corresponding underlying data interface for the distinguished sub-tasks.

[0043] The task manager is mainly built by integrating two key modules: the task parallel processing unit and the intelligent routing scheduling unit. These two parts complement each other and jointly improve the overall performance and efficiency of the system.

[0044] First, the task parallel processing mechanism operates efficiently for query conditions of different dimensions. This module breaks down complex query tasks into multiple subtasks, calls the underlying data interface and performs data calculations in parallel. The significant advantage of this feature is that it can fully utilize hardware resources and significantly shorten response time. Especially when processing large-scale, multi-dimensional data queries, it can greatly improve the system's concurrent processing capabilities and computing speed, ensuring that good service performance can be maintained even in high-load scenarios.

[0045] Secondly, the intelligent routing scheduling part plays the role of a core coordinator, making fine distinctions between different types of tasks based on predefined rule strategies. For example, query requests are accurately divided into two categories: basic data queries and statistical analysis queries, and the corresponding underlying data interfaces are called in a targeted manner. This flexible and efficient routing strategy greatly enhances the system's task allocation accuracy and execution efficiency, reduces unnecessary resource waste, and ensures that data access at all levels can reach the optimal path, thereby improving the stability and response speed of the overall system.

[0046] 3. Logical calculator: In some embodiments, the above-mentioned logic calculator includes: a logical AND operation unit and a logical OR operation unit; the logical AND operation unit is used to perform intersection calculation on the enterprise set that meets specific conditions; the logical OR operation unit is used to perform union calculation on the enterprise set that meets specific conditions.

[0047] The core mechanism of logical calculation includes two basic operations: Intersection and Union. In specific applications, the Intersection operation is responsible for performing intersection calculations between sets of enterprises that meet specific conditions, which means that only enterprises that meet all specified conditions are retained; while the Union operation is responsible for performing union calculations, merging enterprises that meet any of the conditions together to form a broader result set.

[0048] For query operations on the same dimension, the system makes precise distinctions based on the AndOr parameter in the user's request. When set to logical AND, the system will strictly screen the conditions under the dimension and obtain a list of companies that meet the conditions through intersection operations; if set to logical OR, the system will maximize the range of companies under the same conditions and use union calculations to integrate all possible matches.

[0049] In some embodiments, when processing a query request containing multiple dimensional parameters, the logic calculator uses a logical AND operation unit to perform the operation, and does not use a logical OR operation unit to perform the operation.

[0050] When dealing with query scenarios involving different dimensions, the system's logical calculations follow a more rigorous principle, that is, only logical AND operations can be used. This means that under multiple dimensional conditions, only those companies that meet the query requirements in all given dimensions can be included in the final results, thus ensuring the high accuracy of cross-condition screening.

[0051] The underlying interface layer is used to interact with the data storage layer based on tasks to obtain a set of enterprises that meet specific conditions; the data storage layer is used to store enterprise and personnel information.

[0052] The underlying interface layer plays a key bridge role in the system and is mainly responsible for efficient interaction with the database to obtain a list of companies that meet specific conditions.

[0053] In some embodiments, the above-mentioned underlying interface layer includes: a basic information query interface and a statistical type query interface; the basic information query interface is used to process query tasks whose computing intensity is lower than a preset threshold; the statistical type query interface is used to process query tasks that perform statistical calculations on the entire data.

[0054] The underlying interface layer is divided into two core functional categories of interfaces: basic information query interface and statistical type query interface.

[0055] In some embodiments, the above-mentioned statistical type query interface adopts a method of combining a multi-threaded task parallel processing strategy with a logical calculation filtering mode.

[0056] Basic information query interfaces are mainly used to handle relatively simple query tasks with low computational intensity. The design of such interfaces fully considers performance optimization. According to statistics, more than 80% of basic information query operations can achieve fast and accurate data retrieval and achieve ideal performance effects by relying on the powerful full-text retrieval and analysis capabilities of distributed search engines.

[0057] The statistical query interface involves the task of performing complex statistical calculations on the entire amount of data, and its design and implementation are more sophisticated. In order to meet this challenge, the system adopts a method that combines a multi-threaded task parallel processing strategy with a logical calculation filtering mode. Specifically, the number of threads is dynamically allocated according to the total number of responding companies (calculation method: number of threads = total number of responding companies / 10,000). For example, when the total number of companies is greater than 10,000, a corresponding number of threads are created; each independent thread obtains data in blocks according to the specified page number order, thereby effectively dispersing the processing pressure.

[0058] In the statistical calculation stage, logical calculation is mainly responsible for eliminating enterprises that do not meet the statistical threshold requirements to ensure the accuracy of the final result set. Finally, all threads return the lists of enterprises they process, which are integrated and merged by the system to generate a complete list of enterprises that meet the statistical conditions. This design not only ensures the efficient execution of statistical queries, but also takes into account the system stability and response speed in large-scale data processing scenarios. Through the above optimization measures, the underlying interface can flexibly adapt to query requirements of different types and scales, greatly improving the query efficiency and service quality of the overall system.

[0059] In some embodiments, the above-mentioned data storage layer includes at least one of the following: an enterprise library, a personnel certificate library, a performance library, an honor library, a corporate credit library, a qualification library, and a personnel composite library.

[0060] like Figure 1 As shown, the above data storage layer may include the following databases: 1) Enterprise database: used to store detailed enterprise information, including but not limited to enterprise registration location, filing location, enterprise registration capital, enterprise nature, enterprise establishment time and other data.

[0061] 2) Personnel certificate library: used to store the certificates owned by the enterprise, including data such as certificate type, owner, and acquisition time.

[0062] 3) Performance database: used to store the company's historical project performance, including but not limited to project name, project scale, project type, bid winning time, bid winning amount, bid winner, bid winning company and other data.

[0063] 4) Honor Library: used to store the engineering honors, personnel honors and corporate honors that the company has received in the past, including but not limited to honor classification, honor level, award name, time of receipt, recipient and other data.

[0064] 5) Enterprise credit database: used to store the credit evaluation of enterprises on various platforms, including but not limited to credit rating, credit score, credit ranking, publishing platform, acquisition time and other data.

[0065] 6) Qualification database: used to store the company's various qualifications such as construction, supervision, design, etc., including but not limited to data such as qualification name and acquisition time.

[0066] 7) Personnel composite database: Combines multi-dimensional information such as personnel certificates, performance and honors to build a comprehensive view of personnel capabilities. It is used to store data such as certificates, personnel historical project performance, personnel historical honors, etc. of personnel users in the enterprise.

[0067] The embodiment of the present invention provides an enterprise data combination query system, which intelligently classifies the request parameters submitted by users, and can accurately call the corresponding data link for processing according to various parameter classifications through a plurality of preset link models with excellent query performance. It can not only effectively reduce resource consumption, but also significantly improve query efficiency, thus bringing users a smoother and more efficient experience.

[0068] Embodiment 2: Corresponding to the above embodiment, the embodiment of the present invention provides a method for combining and querying enterprise data, which is applied to the system for combining and querying enterprise data provided by the above embodiment. Figure 2 The flowchart of a method for combined query of enterprise data is shown, and the method for combined query of enterprise data includes the following steps: Step S202: The user layer sends a request to the aggregation interface layer.

[0069] Step S204: The cache manager of the aggregation interface layer determines whether the requested processing result exists in the historical processing results.

[0070] Step S206: If yes, the aggregation interface layer returns the processing result of the request.

[0071] Step S208, if not, the task manager of the aggregation interface layer creates and concurrently processes the tasks corresponding to the request; the underlying interface layer is used to interact with the data storage layer based on the task to obtain a set of enterprises that meet specific conditions; the logical calculator calculates the set of enterprises that meet the specific conditions to obtain the processing result; the aggregation interface layer returns the processing result of the request.

[0072] The embodiment of the present invention provides a method for enterprise data combination query, which intelligently classifies the request parameters submitted by the user, and accurately calls the corresponding data link for processing according to various parameter classifications through a plurality of preset link models with excellent query performance. It can not only effectively reduce resource consumption, but also significantly improve query efficiency, thereby bringing users a smoother and more efficient experience.

[0073] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working process of the above-mentioned enterprise data combination query method can refer to the corresponding process in the aforementioned embodiment of the enterprise data combination query system, and will not be repeated here.

[0074] Embodiment three: Corresponding to the above embodiment, an embodiment of the present invention provides a specific example of a method for combined query of enterprise data. This embodiment mainly uses enterprise basic information conditions + enterprise performance conditions as the process for explanation. The scenario selection of this embodiment is: enterprise basic information conditions: enterprises with a registered amount of more than 50 million in City B, Province A. The enterprise performance conditions of this embodiment are: winning a municipal project of more than 100 million in City B, Province A in the past year, or winning a municipal project of more than 50 million in City B, Province A twice in the past year.

[0075] See also Figure 3 The schematic diagram of a specific example of a method for combined query of enterprise data shown in FIG. 1 includes the following steps: Step 1: Add query conditions: Users set conditions through the UI (User Interface), which include basic enterprise information conditions (enterprises with a registered capital of more than 50 million in City B, Province A) and performance conditions (enterprises that have won bids for municipal projects worth more than 100 million in City B, Province A in the past year, or have won bids for municipal projects worth more than 50 million in City B, Province A twice in the past year).

[0076] Step 2: Whether there is a cache: The user submits the enterprise conditions and performance conditions to the aggregation interface. After receiving the request parameters, the aggregation interface generates a cache key based on the parameters, and determines whether there is a cache based on the cache key. If there is, the cache time is returned, and data is retrieved in reverse. The key generation rule is adsearch:condition:{MD5 request parameter}.

[0077] Step 3: Task Manager - Create concurrent processing tasks: Create concurrent tasks of different numbers according to the dimensions of the request parameters. In this case, two concurrent tasks will be created. One is to obtain the full list of companies that meet the basic information conditions of the companies, and the other is to obtain the full list of companies that meet the performance conditions.

[0078] Steps 4 and 7: These are the tasks for obtaining a full list of companies that meet the basic information requirements and obtaining a full list of companies that meet the performance requirements.

[0079] Steps 5 and 8: Is there a cache: This step is a single-dimensional query, and the return value of each request parameter is cached. The cache key format is adsearch:{dimension}:{MD5 parameter condition}. In this case, three caches will be generated, and their keys are: adsearch:company:{MD5 value of basic query condition parameter of the enterprise}, adsearch:project:{MD5 value of municipal project condition parameter of more than 100 million yuan in the bid of A province B city in the past year}, and adsearch:project:{MD5 value of municipal project condition parameter of more than 50 million yuan in the bid of A province B city in the past year}.

[0080] Steps 6 and 12: Cache writing: This step stores each query result data under a single dimension into the cache. In this case, three single-dimensional cache data will be written.

[0081] Step 9: Whether to aggregate statistics: judge according to the parameter "number of conditions met". If the data is greater than 1, it means aggregate statistical query, otherwise it is basic condition query. In this case, the performance query condition is that the municipal projects with a value of more than 50 million yuan in the past year have been won twice in A Province B City, and the aggregate statistical query will be used.

[0082] Step 10: Obtain the list of enterprises based on basic performance conditions: This step will call the underlying interface - obtain the list of enterprises based on basic performance conditions to obtain qualified enterprises.

[0083] Step 11: Obtain enterprise list based on statistical performance conditions: This step will call the underlying interface - Obtain enterprise list based on statistical performance conditions to obtain qualified enterprises.

[0084] Step 13: Multiple conditions are judged sequentially: multiple query conditions are looped. In this case, there are 2 performance query conditions.

[0085] Step 14: Logical "and" and logical "or" calculations: If multiple item conditions exist, the "intersection" and "union" calculations will be performed on the return values ​​of each query condition in a single dimension based on the passed parameter andOr.

[0086] Step 15: Task Manager - Concurrent Task Processing Completed: This step waits for all concurrent tasks to complete before proceeding. In this case, you need to wait until Step 4 and Step 7 are all completed.

[0087] Step 16: Logical and calculation: This step will perform "intersection" calculation on the enterprise list queried in different dimensions, and finally obtain the enterprises that meet the user's goals. In this case, the "union" calculation will be performed on the enterprises that meet the basic information conditions of the enterprise and the enterprises that meet the performance conditions.

[0088] Step 17: Write query results into cache: This step takes the final result obtained by the user after query and logical calculation as the target data, and writes the data into the cache with adsearch:condition:{MD5 request parameter} as the cache key.

[0089] Steps 18, 19, and 20: Steps 18, 19, and 20 are high-performance query interfaces built into the underlying interface. The interfaces are divided into two categories: basic query condition query and aggregate statistical condition query. Data is acquired through the interfaces.

[0090] Step 21: Get the total number of responding enterprises: In the aggregate statistical query mode, the system first calculates the total number of enterprises that meet the conditions.

[0091] Step 22: Calculate the number of threads required: Calculate the number of threads required for this aggregate statistical query, which is used for multi-threaded acquisition of target data. The calculation formula is: number of threads = total number of responding enterprises / 10000.

[0092] Step 23: Construct multi-threaded concurrent requests: Use the number of threads calculated in step 22 to establish concurrent tasks equal to the number of threads. These concurrent tasks will uniformly initiate requests to the data warehouse in the thread pool to obtain data.

[0093] Step 24: Multi-threaded data aggregation logic processing: This step is mainly to avoid a large number of statistical calculations and data filtering in storage. Through this step, the system will "union" the companies that meet the statistical values. In this case, the municipal projects with a bid of more than 50 million yuan in City B, Province A, will be aggregated twice in the past year. The number of performances of the list of qualified companies is >= 2.

[0094] The method provided in the embodiment of the present invention specifically provides the following contents: 1. Intelligent scheduling method for enterprise multi-dimensional combined query based on basic query link and statistical query link.

[0095] 2. A complete solution based on multi-dimensional data combination query during the enterprise bidding process.

[0096] The method provided by the embodiment of the present invention has the following advantages: 1. Improve the parallel processing capability of the system: By allocating requests to independent data processing modules, parallel processing is achieved and the processing capability of the system is improved.

[0097] 2. Improve search speed and accuracy: By establishing independent request links for different dimensions and query modes, it avoids the interference of aggregate statistical queries with high performance consumption with basic queries with low performance consumption. At the same time, concurrent processing is introduced to reduce response time and improve search speed.

[0098] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working process described above can refer to the corresponding process in the aforementioned embodiment, and will not be repeated here.

[0099] Embodiment 4: The embodiment of the present invention also provides an electronic device for executing the above enterprise data combination query method; see Figure 4 A structural schematic diagram of an electronic device is shown, which includes a memory 100 and a processor 101, wherein the memory 100 is used to store one or more computer instructions, and the one or more computer instructions are executed by the processor 101 to implement the above-mentioned enterprise data combination query method.

[0100] Further, Figure 4 The electronic device shown further includes a bus 102 and a communication interface 103 , and the processor 101 , the communication interface 103 and the memory 100 are connected via the bus 102 .

[0101] The memory 100 may include a high-speed random access memory (RAM), and may also include a non-volatile memory, such as at least one disk storage. The communication connection between the system network element and at least one other network element is realized through at least one communication interface 103 (which may be wired or wireless), and the Internet, wide area network, local area network, metropolitan area network, etc. may be used. The bus 102 may be an ISA bus, a PCI bus, or an EISA bus, etc. The bus can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Figure 4 Only one bidirectional arrow is used in the diagram, but this does not mean that there is only one bus or only one type of bus.

[0102] The processor 101 may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above method can be completed by the hardware integrated logic circuit or software instructions in the processor 101. The above processor 101 can be a general-purpose processor, including a central processing unit (CPU), a network processor (NP), etc.; it can also be a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components. The methods, steps and logic block diagrams disclosed in the embodiments of the present invention can be implemented or executed. The general processor can be a microprocessor or the processor can also be any conventional processor, etc. The steps of the method disclosed in conjunction with the embodiments of the present invention can be directly embodied as a hardware decoding processor for execution, or a combination of hardware and software modules in the decoding processor for execution. The software module may be located in a storage medium mature in the art, such as a random access memory, a flash memory, a read-only memory, a programmable read-only memory, or an electrically erasable programmable memory, a register, etc. The storage medium is located in the memory 100, and the processor 101 reads the information in the memory 100 and completes the steps of the method of the above embodiment in combination with its hardware.

[0103] An embodiment of the present invention also provides a computer-readable storage medium, which stores computer-executable instructions. When the computer-executable instructions are called and executed by a processor, the computer-executable instructions prompt the processor to implement the above-mentioned enterprise data combination query method. The specific implementation can be found in the method embodiment, which will not be repeated here.

[0104] The computer program product of the enterprise data combination query system and method provided in the embodiments of the present invention includes a computer-readable storage medium storing program code. The instructions included in the program code can be used to execute the methods in the previous method embodiments. The specific implementation can be found in the method embodiments and will not be repeated here.

[0105] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working process of the system and / or device described above can refer to the corresponding process in the aforementioned method embodiment, and will not be repeated here.

[0106] In addition, in the description of the embodiments of the present invention, unless otherwise clearly specified and limited, the terms "installed", "connected", and "connected" should be understood in a broad sense, for example, it can be a fixed connection, a detachable connection, or an integral connection; it can be a mechanical connection or an electrical connection; it can be a direct connection or an indirect connection through an intermediate medium, or it can be the internal communication of two components. For ordinary technicians in this field, the specific meanings of the above terms in the present invention can be understood according to specific circumstances.

[0107] If the function is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, or the part that contributes to the prior art, or the part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in a storage medium, including several instructions for a computer device (which can be a personal computer, server, or network device, etc.) to perform all or part of the steps of the methods of each embodiment of the present invention. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), disk or optical disk, etc. Various media that can store program codes.

[0108] In the description of the present invention, it should be noted that the terms "center", "upper", "lower", "left", "right", "vertical", "horizontal", "inner", "outer", etc., indicating the orientation or positional relationship, are based on the orientation or positional relationship shown in the drawings, and are only for the convenience of describing the present invention and simplifying the description, rather than indicating or implying that the device or element referred to must have a specific orientation, be constructed and operated in a specific orientation, and therefore cannot be understood as limiting the present invention. In addition, the terms "first", "second", and "third" are used for descriptive purposes only, and cannot be understood as indicating or implying relative importance.

[0109] Finally, it should be noted that the above embodiments are only specific implementations of the present invention, which are used to illustrate the technical solutions of the present invention, rather than to limit them. The protection scope of the present invention is not limited thereto. Although the present invention is described in detail with reference to the above embodiments, ordinary technicians in the field should understand that any technician familiar with the technical field can still modify the technical solutions recorded in the above embodiments within the technical scope disclosed by the present invention, or can easily think of changes, or make equivalent replacements for some of the technical features therein; and these modifications, changes or replacements do not make the essence of the corresponding technical solutions deviate from the spirit and scope of the technical solutions of the embodiments of the present invention, and should be included in the protection scope of the present invention. Therefore, the protection scope of the present invention shall be based on the protection scope of the claims.

Claims

1. An enterprise data combination query system, characterized in that: The enterprise data combination query system includes: a user layer, an aggregation interface layer, a bottom interface layer and a data storage layer; The user layer includes application programs on different platforms, and the application programs are used to provide enterprise data combination query services for users on the corresponding platforms; The aggregation interface layer is used to process user requests and return the processing results of the requests; the aggregation interface layer includes multiple query function modules, a cache manager, a task manager and a logic calculator; the cache manager is used to store historical processing results in the cache, and determine the processing results of the request from the historical processing results in the cache; the task manager is used to process the tasks corresponding to the requests in parallel; the logic calculator is used to calculate the enterprise set that meets specific conditions to obtain the processing results; The bottom interface layer is used to interact with the data storage layer based on the task to obtain a set of enterprises that meet specific conditions; The data storage layer is used to store enterprise and personnel information.

2. The enterprise data combination query system according to claim 1, characterized in that: The multiple query function modules include at least one of the following: enterprise basic information query module, enterprise qualification query module, enterprise performance query module, enterprise honor query module, enterprise personnel certificate query module, enterprise credit query module, and personnel certificate, performance and honor composite query module.

3. The enterprise data combination query system according to claim 1, characterized in that: The cache manager includes: a component for caching single-dimensional queries in user request parameters and a component for caching final response results; When processing a single-dimensional query scenario, the cache manager generates a unique cache key using parameter condition encryption; When processing a query request containing multiple dimensional parameters, the cache manager generates a cache key of the comprehensive dimension using the parameter conditional encryption method.

4. The enterprise data combination query system according to claim 1, characterized in that: The task manager includes: a task parallel processing unit and an intelligent routing scheduling unit; The task parallel processing unit is used to split the requested query task into multiple subtasks, call the underlying data interface and perform data calculation in parallel; The intelligent routing scheduling unit is used to distinguish different types of subtasks based on predefined rule strategies, and call the corresponding underlying data interface for the distinguished subtasks.

5. The enterprise data combination query system according to claim 1, characterized in that: The logic calculator comprises: a logic AND operation unit and a logic OR operation unit; The logic and operation unit is used to perform intersection calculation on the enterprise set that meets specific conditions; The logical OR operation unit is used to perform a union calculation on a set of enterprises that meet specific conditions.

6. The enterprise data combination query system according to claim 5, characterized in that: When processing a query request containing multiple dimension parameters, the logic calculator uses the logic AND operation unit to perform operations, and does not use the logic OR operation unit to perform operations.

7. The enterprise data combination query system according to claim 1, characterized in that: The bottom interface layer includes: basic information query interface and statistical type query interface; The basic information query interface is used to process query tasks whose computational intensity is lower than a preset threshold; The statistical type query interface is used to process query tasks that perform statistical calculations on the entire amount of data.

8. The enterprise data combination query system according to claim 7, characterized in that: The statistical type query interface adopts a method of combining a multi-threaded task parallel processing strategy with a logical calculation filtering mode.

9. The enterprise data combination query system according to claim 1, characterized in that: The data storage layer includes at least one of the following: an enterprise library, a personnel certificate library, a performance library, an honor library, an enterprise credit library, a qualification library, and a personnel composite library.

10. A method for combined query of enterprise data, characterized in that: Applied to the enterprise data combination query system according to any one of claims 1 to 9, the method comprising: The user layer sends a request to the aggregation interface layer; The cache manager of the aggregation interface layer determines whether there is a processing result of the request in the historical processing results; If yes, the aggregation interface layer returns the processing result of the request; If not, the task manager of the aggregation interface layer creates and concurrently processes the task corresponding to the request; the underlying interface layer is used to interact with the data storage layer based on the task to obtain a set of enterprises that meet specific conditions; the logic calculator calculates the set of enterprises that meet the specific conditions to obtain the processing result; the aggregation interface layer returns the processing result of the request.

Citation Information

Patent Citations

  • Parallel query method for distributed database

    CN101930472A

  • Enterprise data storage and query cloud platform

    CN107395732A

  • Method and system for retrieving air ticket data, storage medium and electronic device

    CN107944039A

  • Distributed service chain tracking and log aggregation method

    CN110806959A

  • Digital operation analysis platform and method based on enterprise informatization heterogeneous system

    CN110991984A