Full-text retrieval method and device, equipment, storage medium and program product
By introducing a meta-model interface and abstract query description into full-text search technology, and dynamically configuring data sources and filtering scripts, the problems of low efficiency and accuracy in full-text search are solved, achieving efficient and reliable full-text search adaptability.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-12-29
- Publication Date
- 2026-04-07
AI Technical Summary
Existing full-text search technologies are ill-suited to adapting to dynamic business needs, resulting in low efficiency and accuracy, which is particularly evident in enterprise-level data assets.
By introducing a meta-model acquisition interface, the target data source, data table, and data filtering script are dynamically configured to generate target query statements, enabling dynamic configuration and conditional filtering of full-text search data. Abstract query descriptions are used to adapt to different databases, and full-text search datasets are constructed asynchronously and retrieved through a full-text search engine.
It improves the efficiency and accuracy of full-text search, can adapt to dynamically changing business needs, reduces storage requirements, improves query performance, and ensures the relevance and reliability of search results.
Smart Images

Figure CN121807928A_ABST
Abstract
Description
Technical Field
[0001] This application belongs to the field of full-text retrieval technology, and in particular relates to a full-text retrieval method, apparatus, device, storage medium and program product. Background Technology
[0002] Full-text search is a key technology for achieving efficient data querying. Its process generally includes the following three stages: 1) Accessing raw source data from different sources; 2) Converting the raw source data into target source data that can be used for full-text search by extracting fields, cleaning data, etc.; 3) Performing full-text search on the target source data to obtain and display the query results.
[0003] As business needs and data formats continue to evolve, the fields users focus on and data cleaning rules may change frequently. However, current data extraction and cleaning processes typically rely on customized programs for fixed requirements. Once requirements change, developers must modify the code and redeploy the updated version to the production environment. This process is cumbersome and slow, making it difficult to adapt to dynamically changing full-text search needs, resulting in low efficiency and accuracy. Summary of the Invention
[0004] This application provides a full-text retrieval method, apparatus, electronic device, computer-readable storage medium, and computer program product that can adapt to dynamically changing and conditionally filtered full-text retrieval needs, thereby improving the efficiency and accuracy of full-text retrieval.
[0005] In a first aspect, embodiments of this application provide a full-text search method, the method comprising: In response to the user's first input for collecting the metamodel, the metamodel acquisition interface is displayed. In response to the user's second input of selecting a target data source, a target data table, and a target data filtering script on the metamodel acquisition interface, the first field information of the target data table of the target data source is acquired, and the first field information includes the full-text search attribute of the field; Display the information in the first field; In response to the user's configuration input of the full-text search attribute in the first field information, the second field information is obtained; Based on the full-text search attributes in the second field information, the target field for full-text search is determined; In response to a third input from a user to obtain field data corresponding to the target field, based on a target query statement, the system queries the target data table of the target data source for field data that corresponds to the target field and satisfies the target data filtering conditions. The target data filtering conditions are the data filtering conditions corresponding to the target data filtering script. The target query statement is generated based on the target data source, the target data table, the target data filtering script, and the target field. Based on the target fields of the target data table and their respective corresponding field data, determine the full-text search data for full-text retrieval; In response to a full-text search request, a full-text search is performed on the full-text search data based on the query keywords to obtain search results.
[0006] Secondly, embodiments of this application provide a full-text search device, the device comprising: The display module is used to display the metamodel acquisition interface in response to the user's first input for acquiring the metamodel. The acquisition module is used to collect the first field information of the target data table of the target data source in response to the second input of the user selecting the target data source, the target data table and the target data filtering script on the metamodel acquisition interface. The first field information includes the full-text search attribute of the field. The display module is also used to display the information in the first field; The configuration module is used to obtain the second field information in response to the user's configuration input of the full-text search attribute in the first field information; The determination module is used to determine the target field for full-text retrieval based on the full-text retrieval attributes in the second field information; The query module is used to respond to a third input from a user to obtain field data corresponding to the target field, and based on the target query statement, to query field data corresponding to the target field and satisfying the target data filtering conditions in the target data table of the target data source. The target data filtering conditions are the data filtering conditions corresponding to the target data filtering script. The target query statement is generated based on the target data source, the target data table, the target data filtering script, and the target field. The determining module is further configured to determine full-text search data for full-text retrieval based on the target fields of the target data table and their respective corresponding field data; The retrieval module is used to respond to a full-text retrieval request, perform a full-text retrieval on the full-text retrieval data based on the query keywords, and obtain retrieval results.
[0007] Thirdly, embodiments of this application provide an electronic device, which includes: a processor and a memory storing computer program instructions; When the processor executes the computer program instructions, it implements any of the possible implementations of the first aspect described above.
[0008] Fourthly, embodiments of this application provide a computer-readable storage medium storing computer program instructions, which, when executed by a processor, implement the method in any of the possible implementations of the first aspect described above.
[0009] Fifthly, embodiments of this application provide a computer program product in which instructions, when executed by a processor of an electronic device, cause the electronic device to perform a method as described in any of the possible implementations of the first aspect above.
[0010] In this embodiment, the first field information includes the full-text search attribute of the field. Based on this, by responding to the user's second input—selecting the target data source, target data table, and target data filtering script on the metamodel acquisition interface—the first field information of the target data table of the target data source is acquired and displayed. In response to the user's configuration input for the full-text search attribute in the first field information, the second field information is obtained. Based on the full-text search attribute in the second field information, the target field used for full-text search is determined, enabling dynamic configuration of the target data source, target data table, target field, and target data filtering script required for full-text search. Furthermore, since the target query statement is generated based on the target data source, target data table, target data filtering script, and target field, and the target data filtering conditions are the data filtering conditions corresponding to the target data filtering script, by responding to the user's third input for obtaining the field data corresponding to the target field, based on the target query statement, the field data corresponding to the target field and satisfying the target data filtering conditions is queried in the target data table of the target data source. And by determining the full-text search data used for full-text search based on the target field of the target data table and its corresponding field data, it is possible to ensure that the constructed full-text search dataset accurately reflects the filtered business data range. In this way, by responding to full-text search requests and performing searches in full-text search data based on query keywords, it can adapt to dynamically changing and conditionally filtered full-text search needs, thereby improving the efficiency and accuracy of full-text search. Attached Figure Description
[0011] To more clearly illustrate the technical solutions of the embodiments of this application, the accompanying drawings used in the embodiments of this application will be briefly introduced below. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0012] Figure 1 This is a flowchart illustrating the full-text retrieval method provided in the first embodiment of this application; Figure 2 This is a flowchart illustrating the full-text retrieval method provided in the second embodiment of this application; Figure 3 This is a flowchart illustrating the full-text retrieval method provided in the third embodiment of this application; Figure 4 This is a flowchart illustrating the full-text retrieval method provided in the fourth embodiment of this application; Figure 5 This is a flowchart illustrating the full-text retrieval method provided in the fifth embodiment of this application; Figure 6 This is a flowchart illustrating the full-text retrieval method provided in the sixth embodiment of this application; Figure 7 This is a flowchart illustrating the full-text retrieval method provided in the seventh embodiment of this application; Figure 8 This is a flowchart illustrating the full-text retrieval method provided in the eighth embodiment of this application; Figure 9 This is a schematic diagram of the structure of a full-text search device provided in one embodiment of this application; Figure 10 This is a schematic diagram of the structure of an electronic device provided in one embodiment of this application. Detailed Implementation
[0013] The features and exemplary embodiments of various aspects of this application will be described in detail below. To make the objectives, technical solutions, and advantages of this application clearer, the application will be further described in detail below with reference to the accompanying drawings and specific embodiments. It should be understood that the specific embodiments described herein are only intended to explain this application and not to limit it. For those skilled in the art, this application can be implemented without some of these specific details. The following description of the embodiments is merely to provide a better understanding of this application by illustrating examples.
[0014] It should be noted that, in this document, relational terms such as "first" and "second" are used merely to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising..." does not exclude the presence of additional identical elements in the process, method, article, or apparatus that includes said element.
[0015] It should be noted that in the embodiments of this application, certain software, components, models and other existing solutions in the industry may be mentioned. These should be regarded as exemplary and are only intended to illustrate the feasibility of implementing the technical solution of this application. However, it does not mean that the applicant has used or necessarily used the solution.
[0016] Furthermore, the acquisition, storage, use, and processing of data in this application's technical solution all comply with relevant national laws and regulations.
[0017] Full-text search is a key technology for achieving efficient data querying. Its process generally includes the following three stages: 1) Accessing raw source data from different sources; 2) Converting the raw source data into target source data that can be used for full-text search by extracting fields, cleaning data, etc.; 3) Performing full-text search on the target source data to obtain and display the query results.
[0018] As business needs and data formats continue to evolve, the fields users focus on and data cleaning rules may change frequently. However, current data extraction and cleaning processes typically rely on customized programs for fixed requirements. Once requirements change, developers must modify the code and redeploy the updated version to the production environment. This process is cumbersome and slow, making it difficult to adapt to dynamically changing full-text search needs, resulting in low efficiency and accuracy.
[0019] Especially for enterprise-level data assets, which are diverse in type and massive in volume, and whose data volume and structure will continue to change dynamically as production progresses. Therefore, it is crucial to provide enterprises with an efficient and configurable solution for data acquisition and utilization, enabling the configuration of data collection, storage, querying, and display.
[0020] To address the related technical issues, embodiments of this application provide a full-text retrieval method, apparatus, electronic device, computer-readable storage medium, and computer program product.
[0021] The full-text search method provided in the embodiments of this application is described below.
[0022] Figure 1 This illustration shows a flowchart of a full-text search method provided in one embodiment of this application. This full-text search method can be executed by a data asset platform. This data asset platform can support data acquisition. Firstly, whether it's data acquisition or the acquisition of data model structures (i.e., meta-models), data source information needs to be configured on the data asset platform. Therefore, this embodiment can first complete the data source configuration. The data source configuration can involve adding or updating information such as the data source name, data source driver class name, database username, data source parameters, data source description, physical subsystem, database type, data source address, database password, and environment type in the data asset platform. Furthermore, the data source configuration in this application already supports nine databases, including MySQL, Oracle, TIDBA, HIVE, and GoldendDB.
[0023] like Figure 1 As shown, the full-text search method provided in this application includes the following steps: S110, In response to the user's first input for acquiring the metamodel, display the metamodel acquisition interface; S120, In response to the user's second input of selecting the target data source, target data table and target data filtering script on the metamodel acquisition interface, the first field information of the target data table of the target data source is acquired. The first field information includes the full-text search attribute of the field. S130, Display the information in the first field; S140. In response to the user's configuration input of the full-text search attribute in the first field information, the second field information is obtained; S150. Based on the full-text search attributes in the second field information, determine the target field for full-text search; S160. In response to the third input from the user for obtaining the field data corresponding to the target field, based on the target query statement, query the field data corresponding to the target field and satisfying the target data filtering conditions in the target data table of the target data source. The target data filtering conditions are the data filtering conditions corresponding to the target data filtering script. The target query statement is generated based on the target data source, the target data table, the target data filtering script, and the target field. S170. Based on the target fields of the target data table and their respective field data, determine the full-text search data to be used for full-text search; S180. In response to the full-text search request, a full-text search is performed in the full-text search data based on the query keywords to obtain the search results.
[0024] In this embodiment, the first field information includes the full-text search attribute of the field. Based on this, by responding to the user's second input—selecting the target data source, target data table, and target data filtering script on the metamodel acquisition interface—the first field information of the target data table of the target data source is acquired and displayed. In response to the user's configuration input for the full-text search attribute in the first field information, the second field information is obtained. Based on the full-text search attribute in the second field information, the target field used for full-text search is determined, enabling dynamic configuration of the target data source, target data table, target field, and target data filtering script required for full-text search. Furthermore, since the target query statement is generated based on the target data source, target data table, target data filtering script, and target field, and the target data filtering conditions are the data filtering conditions corresponding to the target data filtering script, by responding to the user's third input for obtaining the field data corresponding to the target field, based on the target query statement, the field data corresponding to the target field and satisfying the target data filtering conditions is queried in the target data table of the target data source. And by determining the full-text search data used for full-text search based on the target field of the target data table and its corresponding field data, it is possible to ensure that the constructed full-text search dataset accurately reflects the filtered business data range. In this way, by responding to full-text search requests and performing searches in full-text search data based on query keywords, it can adapt to dynamically changing and conditionally filtered full-text search needs, thereby improving the efficiency and accuracy of full-text search.
[0025] The specific implementation methods for each of the above steps are described below.
[0026] In some embodiments, in S110, the metamodel is data that describes the data model. Specifically, the metamodel can be a model that describes the structural information of data tables and fields in a database. Additionally, the front-end interface of the data asset platform may include a metamodel acquisition control. The user's click on the metamodel acquisition control can be the first input.
[0027] As an example, the front-end interface of a data asset platform can display a metamodel acquisition control. Clicking this control will redirect the user to the metamodel acquisition interface. The metamodel acquisition interface can include a data source selection area, a data table selection area, a data filtering script selection area, and acquisition controls. The data source selection area allows users to choose a target data source from multiple data sources; the data table selection area allows users to choose a target data table from multiple data tables; and the data filtering script selection area allows users to choose a target data filtering script from multiple data filtering scripts. The data filtering script can be a pre-configured script based on data filtering conditions. These conditions can be associated with data sources or data tables. Therefore, data sources and data tables, as well as data tables and data filtering scripts, can be displayed in a synchronized manner.
[0028] As an example, if a user has already selected data source A, the data table selection area can display multiple data tables under data source A, allowing the user to select data table B from among these tables. Furthermore, the data filtering script selection area can display multiple data filtering scripts corresponding to data table B under data source A, or multiple data filtering scripts corresponding to data source A, or multiple data filtering scripts that are only related to data table B and unrelated to data source A.
[0029] Of course, data filtering scripts can also be related to business needs, but not to data sources and data tables; this is not a limitation here.
[0030] This application embodiment introduces a data filtering script that can be dynamically configured by the user, enabling the data source range for full-text retrieval to be flexibly adjusted according to changes in business needs without modifying the program code.
[0031] In some embodiments, in S120, the first field information may include field information corresponding to all fields of the target data table of the target data source. The first field information may include field name, field identifier, field type, field grouping, format constraints, data analysis identifier, full-text search attributes, etc. Additionally, the second input may include the user selecting the target data source in the data source selection area of the metamodel acquisition interface, selecting the target data table in the data table selection area, selecting the target data filtering script in the data filtering script selection area, and clicking the acquisition control. After clicking the acquisition control, the acquisition of the first field information of the target data table of the target data source can begin.
[0032] As an example, after clicking the data collection control, a data collection task targeting the first field information will be generated and executed in the background. The front-end interface can also display the task's execution status for the user to view, and output a notification message after the task is completed to indicate that the first field information has been collected. Furthermore, multiple data collection tasks targeting different first fields can run simultaneously without interfering with each other. That is, if the user selects three different combinations of target data sources, target data tables, and target data filtering scripts on the front-end interface and clicks the data collection control, three different data collection tasks targeting the first field information will be generated. These three different data collection tasks can be executed separately in the background.
[0033] In some embodiments, in S130, after obtaining the first field information of the target data table of the target data source, the first field information and operation controls corresponding to all fields of the target data table of the target data source can be displayed in the form of a field list. The operation controls may include modification controls, detail controls, delete controls, move up controls, and move down controls, etc.
[0034] In some embodiments, in S140, the user can view the detailed information of a field by clicking the details control, and modify the information of the first field by clicking the edit control.
[0035] As an example, after a user clicks the edit control corresponding to a field, the field's detailed information will be displayed on the field details page. This detailed information includes full-text search attributes. Specifically, the field details page may display a prompt message "Full-text search?" and its corresponding configuration area. Users can configure the full-text search attributes in this configuration area. Users can select or enter "Yes" or "No" in this configuration area to modify the first field information and obtain the second field information.
[0036] In some embodiments, in S150, if the full-text search attribute of a field is configured as "yes", then the field can be the target field.
[0037] In some embodiments, during S160, the front-end interface of the data asset platform may also display a data acquisition control. The user's action of clicking the data acquisition control after selecting the target data source, target data table, target data filtering script, and target field serves as the third input for obtaining the field data corresponding to the aforementioned target field.
[0038] Upon receiving a third input, the data asset platform can asynchronously generate a target query statement based on the target data source, target data table, target data filtering script, and target field. This target query statement can be used to retrieve the original field data corresponding to the target field in the target data table of the target data source, and to perform secondary processing such as filtering and assembly on the original field data based on the target data filtering conditions corresponding to the target data filtering script, thereby obtaining the field data corresponding to the target field and satisfying the target data filtering conditions.
[0039] This application embodiment filters and assembles the original field data based on the target data filtering conditions corresponding to the target data filtering script, which can reduce the storage of subsequent full-text search data, improve query performance, and enable the search results to focus on the data that users care about, thereby improving the targeting of full-text search.
[0040] Furthermore, as described above, the data source configuration in this application already supports nine databases, including MySQL, Oracle, TIDBA, HIVE, and GOLDENDB. Since different database types have different database syntaxes, in order to adapt to various database types, in some embodiments, such as... Figure 2 As shown, the above S160 may specifically include: S161. In response to the third input from the user to obtain the field data corresponding to the target field, an abstract query description independent of the database type is generated based on the table structure information of the target data table and the target data filtering script. S162. Based on the target database type, the abstract query description and target fields are compiled and reorganized to obtain a target query statement that conforms to the target database syntax. The target database type is the database type corresponding to the target data source, and the target database syntax is the database syntax corresponding to the target database type. S163. Based on the target query statement, query the field data in the target data table of the target data source that corresponds to the target field and meets the target data filtering conditions.
[0041] Here, the abstract query description can be a structured intermediate data object that encapsulates metadata such as the table name and basic field types from the target data table, as well as cleaning logic from the target data filtering script.
[0042] As an example, in response to the second input mentioned above, the data asset platform can also automatically obtain the table structure information of the target data table from the target data source through a standard database interface. Based on this, in response to the third input, it can first parse the target data filtering script to obtain the parsing result, and then generate an abstract query description independent of the database type based on the parsing result and the table structure information of the target data table. Then, the data asset platform can call a compiler corresponding to the target database type (i.e., the database type corresponding to the target data source) to convert the abstract query description into a basic framework for that target database type, and populate the target fields into the corresponding positions in the framework to obtain a complete target query statement that conforms to the target database syntax.
[0043] This application embodiment introduces an intelligent intermediate layer called abstract query description, which isolates the differences between the upper-layer business logic and the underlying database dialect, thereby decoupling the query logic from the database implementation. This allows the full-text search method in this application embodiment to be adaptable to various types of databases.
[0044] As another implementation of this application, in order to improve full-text search efficiency and user experience, in some embodiments, such as Figure 3 As shown, the above S120 may specifically include: S121. In response to the user's second input of selecting the target data source, target data table, and target data filtering script on the metamodel acquisition interface, the system acquires the first field information of the target data table of the target data source, as well as the table structure information and target data filtering script based on the target data table, and generates an abstract query description that is independent of the database type.
[0045] Based on this, the above-mentioned S160 may specifically include: S164. In response to the third input from the user to obtain the field data corresponding to the target field, the abstract query description and the target field are compiled and reorganized based on the target database type to obtain a target query statement that conforms to the target database syntax. The target database type is the database type corresponding to the target data source, and the target database syntax is the database syntax corresponding to the target database type. S165. Based on the target query statement, query the field data in the target data table of the target data source that corresponds to the target field and meets the target data filtering conditions.
[0046] This application embodiment, while the user configures the interface, asynchronously completes the tasks in the background, such as obtaining the table structure information of the target data table, generating an abstract query description independent of the database type based on the table structure information and the target data filtering script. This allows the user to obtain an executable target query statement by simply inserting a few fields and rendering a template when finally triggering the query. This greatly reduces the waiting time after the user's third input and improves the efficiency of full-text search and user experience.
[0047] In some embodiments, in S170, there are typically multiple target fields. After obtaining multiple target fields and their corresponding field data, the multiple target fields and their corresponding field data from the target data table are first stored in a temporary table. Then, the data in the temporary table is synchronized with the index of the full-text search engine to obtain full-text search data for full-text search. The full-text search engine can be the Elasticsearch search engine (ES search engine).
[0048] Based on this, in order to provide a standardized data input format and a convenient processing foundation for subsequent word segmentation queries using full-text search engines, and to improve the reliability of full-text search, in some embodiments, such as Figure 4 As shown, the above S170 may specifically include: S171. Obtain the identifier of the first data table corresponding to the target data table; S172. Based on the preset delimiter, multiple target fields are concatenated to obtain an aggregated field block; S173. Based on a preset delimiter, the field data corresponding to multiple target fields are concatenated to obtain an aggregated data block; S174. Store the first data table identifier, the aggregate field block, and the aggregate data block into a temporary table; S175. Synchronize the data in the temporary table to the index of the full-text search engine to obtain full-text search data for full-text retrieval.
[0049] Here, when storing multiple target fields from the target data table, and the corresponding field data of each target field, into a temporary table, a configuration table corresponding to the temporary table can be obtained first. Then, based on the configuration table, the specific information to be obtained can be determined. The configuration table can be shown in Table 1 below: Table 1 In Table 1, an aggregated data block can include multiple data units. Each data unit can be obtained by concatenating the field data corresponding to multiple field names based on a preset delimiter. For example, if multiple target fields include identifier, name, and age, the aggregated field block can be represented as: identifier|@@|name|@@|age. If the field data corresponding to identifier includes 01, 02, and 03, the field data corresponding to name includes A, B, and C, and the field data corresponding to age includes 10, 20, and 30, then the aggregated data block can be included as: 01|@@|A|@@|10|@@|02|@@|B|@@|20|@@|03|@@|C|@@|30, where 01|@@|A|@@|10 can represent one data unit, |02|@@|B|@@|20 can represent one data unit, and 03|@@|C|@@|30 can represent one data unit.
[0050] Thus, when storing multiple target fields from the target data table, and the field data corresponding to each of the multiple target fields, into a temporary table, based on the configuration table, the first data table identifier corresponding to the target data table can be obtained first and added to the temporary table; then, based on the preset delimiter, multiple target fields are concatenated to obtain an aggregated field block, which is added to the corresponding position in the same row as the first data table identifier in the temporary table; then, based on the preset delimiter, the field data corresponding to each of the multiple target fields are concatenated to obtain an aggregated data block, which is added to the corresponding position in the same row as the first data table identifier in the temporary table, thereby obtaining a data row including the first data table identifier, the aggregated field block, and the aggregated data block.
[0051] This application's embodiments first store aggregated field blocks and aggregated data blocks, concatenated based on preset delimiters, in a data table, and then synchronize the data in the temporary table to the full-text search engine's index. On one hand, the aggregated field blocks and aggregated data blocks, concatenated based on preset delimiters, provide a standardized data input format and a convenient processing foundation for subsequent word segmentation queries using the full-text search engine. On the other hand, the design of the temporary table achieves phased decoupling and asynchronous processing of data extraction, transformation, and loading, constructing a reliable, efficient, and easy-to-maintain data buffer and preprocessing layer, thus improving the reliability of full-text search.
[0052] Therefore, to avoid interruptions in full-text retrieval during data synchronization and to improve the reliability of full-text retrieval, in some embodiments, the data in the temporary table is synchronized to the index of the full-text search engine to obtain full-text retrieval data for full-text retrieval. Specifically, this may include: Construct a second index corresponding to the temporary table; Synchronize the data in the temporary table to the second index; Switch the query alias that points to the first index to point to the second index. The query alias is used to provide an access interface for the full-text search engine. Delete the first index.
[0053] Here, the full-text search engine may include a first index, which can also be called the old index. The second index may be a new index. This embodiment does not directly update the existing index, but first constructs a completely new second index containing the latest data. Once the data is fully ready, a unified query alias is used to instantly route user query requests to the new index, and finally, the old first index is safely deleted. This process decouples high-risk data writing operations from the user-insensitive query service, achieving zero service interruption and high availability for full-text search data updates.
[0054] Throughout the entire process of synchronizing data and building a new index in the background, user query requests always access the old index through the same query alias, and the service remains unaffected. Switching aliases is a near-instantaneous metadata operation, and users are unaware of the data update, thus ensuring the continuity and stability of the retrieval service, avoiding interruptions to full-text search during data synchronization, and improving the reliability of full-text search.
[0055] In some embodiments, during S180, the user can also initiate a full-text search request on the data asset platform, which may include query keywords. The query keywords can be any content such as keywords or phrases. Upon receiving the full-text search request, the data asset platform can respond by invoking a full-text search engine to perform a full-text search on the full-text search data based on the query keywords, obtaining search results. The search results may include at least one result record, and the result record may include a second data table identifier. This second data table identifier may be the identifier of the data table where the result record resides. The second data table identifier may be any one of the multiple first data table identifiers mentioned above.
[0056] Furthermore, in order to dynamically categorize and display search results according to user needs and improve the user's search experience, in some embodiments, such as Figure 5 As shown, the above S120 may specifically include: S122. In response to the user's second input of selecting the target data source, target data table, and target data filtering script on the metamodel acquisition interface, the first field information of the target data table of the target data source is collected, and the target data table is mounted to the corresponding node of the category tree based on the category of the target data table. The category tree is used to manage data tables of different categories.
[0057] Based on this, after S180 above, the method may further include: S510. Based on the mounting relationship between the second data table identifier and the node of the category tree, determine the category tree node corresponding to each result record; S520: Based on the category tree node, display the category tree and at least one result record.
[0058] Here, a category tree can be used to manage data tables of different categories. A category tree can include multiple category levels, and each category level can include multiple category nodes.
[0059] As an example, after receiving the user's second input, the system can not only begin collecting the first field information of the target data table from the target data source, but also obtain the first data table identifier of the target data table. Based on the correspondence between the data table identifier and the data table category, the system can determine the category of the target data table and attach it to the corresponding node in the category tree. If multiple target data tables have the same category, they can be attached to the same node. Furthermore, the leaf nodes of the category tree can be the data table identifiers of specific target data tables.
[0060] After attaching the target data table to the corresponding node in the category tree, the attachment relationship between the target data table and the category tree node can be obtained, and thus the attachment relationship between the second data table identifier and the category tree node can be obtained. Based on this, since the result record includes the second data table identifier, the category tree category to which each result record belongs can be determined based on the attachment relationship between the second data table identifier and the category tree node.
[0061] Building upon this, after obtaining search results from a full-text search, a category tree and multiple result records can be displayed simultaneously. For example, the category tree can be displayed on the left side of the results display interface, while all result records from the search results can be displayed on the right side.
[0062] Additionally, when displaying the category tree, you can show the node portion related to at least one result record instead of the entire category tree. For example, if the category tree includes node A (attached to table A), node B (attached to table B), and node C (attached to table C), and at least one result record is retrieved from tables B and C, then it can be determined that at least one result record is related to nodes B and C, but not to node A. Therefore, you can only display nodes B and C in the category tree, and not node A.
[0063] Furthermore, if there are multiple result records, the display order of these records can be determined based on the position of their respective category tree nodes within the category tree, and the records can be displayed in that order. For example, if category tree node A corresponding to result record A is located above category tree node B corresponding to result record B, then result record A can be displayed before result record B.
[0064] This application embodiment determines the category tree node corresponding to each result record by identifying the mounting relationship between the second data table identifier and the node of the category tree, and displays the category tree and at least one result record based on the category tree node, so that the search results can be dynamically classified and displayed according to user needs, thereby improving the user's search experience.
[0065] Based on this, in order to further improve the user's search experience, in some embodiments, such as Figure 6 As shown, after S520 above, the full-text search method may also include a process of filtering search results. For example... Figure 6 As shown, the process of filtering search results may include the following steps: S610, In response to the fourth input from the user selecting a target node in the category tree, determine at least one target data table identifier corresponding to the target node; S620: Display the result record containing the target data table identifier.
[0066] Here, the target data table identifier can be the data table identifier corresponding to the target node in the second data table identifier. There may be one or more target data table identifiers. Additionally, the user's operation of displaying the target node in the category tree can be a fourth input. In response to the fourth input, the data asset platform can determine the target data table identifier corresponding to the target node based on the mounting relationship between the second data table identifier and the category tree nodes, and determine and display the result records containing that target data table identifier in the search results.
[0067] This application embodiment further enhances the user's search experience by filtering search results based on user selection and category tree classification.
[0068] In addition, the configuration table mentioned above can also include aggregate primary key values and page display style identifiers. Based on this, the configuration table can be shown in Table 2 below: Table 2 Therefore, the temporary table can also include the aggregated primary key value corresponding to the target data table. The aggregated primary key value is obtained by concatenating multiple primary key values from the target data table based on a preset delimiter. Additionally, the search results records can also include query keywords, which can be field data or a portion of field data.
[0069] Based on this, in order to further improve the user's search experience, in some embodiments, after S520 above, the full-text search method may also include the process of viewing the complete data record corresponding to the target result record. For example... Figure 7 As shown, the process of viewing the complete data record corresponding to the target result record may include the following steps: S710. In response to a details viewing request for viewing a target result record, obtain the second data table identifier and query keywords corresponding to the target result record; S720. Determine the target data row corresponding to the second data table identifier in the temporary table; S730. Obtain the aggregated primary key value and aggregated data block of the target data row. The aggregated data block includes multiple data units, and each data unit includes field data corresponding to multiple target fields. S740. Parse the aggregated data block to determine the target data unit that includes the query keywords; S750. Based on the location information of the target data unit in the aggregated data block, determine the target primary key value in the aggregated primary key value; S760. Query the complete data record corresponding to the target primary key value in the data table corresponding to the second data table identifier; S770: Display complete data records.
[0070] Here, after displaying at least one result record, the user can click on any target result record within that record. After the user clicks on a target result record, a details viewing request for that record is generated. Responding to this request, the data asset platform first obtains the second data table identifier and query keyword corresponding to the target result record. Then, it determines the target data row corresponding to the second data table identifier in a temporary table, and retrieves the aggregated primary key value and aggregated data block from the target data row. As mentioned above, the aggregated data block can include multiple data units. Thus, by parsing the aggregated data block, multiple data units can be obtained. Since the query keyword can be field data or part of field data, and a data unit can include field data corresponding to multiple target fields, after parsing and obtaining multiple data units, the target data unit containing the query keyword can be identified among these data units. Based on the position information of the target data unit in the aggregated data block, the target primary key value can be determined from the aggregated primary key value. For example, if the aggregated data block is 01|@@|A|@@| 10|@@|02|@@|B|@@|20|@@|03|@@|C|@@|30, and the multiple data units in the aggregated data block are 01|@@|A|@@|10, 02|@@|B|@@|20, and 03|@@|C|@@|30, the aggregated primary key value is 01|@@|02|@@| 03, and the target data unit is 01|@@|A|@@|10, then the target data unit can be determined to be at the beginning of the aggregated data block. Therefore, the first digit of the aggregated primary key value, 01, can be determined as the target primary key value.
[0071] On the other hand, the data asset platform can also locate the corresponding data table in the original source data based on the second data table identifier in the target result record. In this way, the complete data record corresponding to the target primary key value can be queried in that data table. Here, the original source data is the original source data of the full-text search data. In other words, the full-text search data can be the target source data extracted and processed from the original source data based on the target field and the target data filtering script. Therefore, the final result record obtained may not be the original, complete data record.
[0072] Therefore, through the embodiments of this application, it is possible to further determine the target primary key value based on the second data table identifier and query keywords corresponding to the target result record, and query and display the complete data record from the original source data based on the target primary key value, thereby further improving the user's search experience.
[0073] Therefore, in order to improve the flexibility and consistency of data display, and to further enhance the user's search experience, in some embodiments, such as Figure 8As shown, the above-mentioned S770 may specifically include: S771. Determine the target display style of the complete data record based on the page display style identifier corresponding to the second data table identifier; S772. Display complete data records based on the target display style.
[0074] Here, based on the configuration table, we know that the temporary table can also include the page display style identifier corresponding to the target data table.
[0075] This application embodiment stores page display style identifiers in a temporary table, enabling the data asset platform to quickly match the corresponding display style according to different data tables, and automatically adapt to the predetermined page layout and format when displaying complete data records. This not only decouples the display process from the data logic, improving the flexibility and consistency of data display, but also further enhances the user's search experience.
[0076] Based on the full-text retrieval method provided in the above embodiments, this application also provides specific implementations of a full-text retrieval device. Please refer to the following embodiments.
[0077] like Figure 9 As shown, a full-text search device 900 provided in one embodiment of this application includes the following modules: Display module 910 is used to display the metamodel acquisition interface in response to the user's first input for acquiring the metamodel. The acquisition module 920 is used to collect the first field information of the target data table of the target data source in response to the second input of the user selecting the target data source, target data table and target data filtering script in the metamodel acquisition interface. The first field information includes the full-text search attribute of the field. Display module 910 is also used to display the first field information; Configuration module 930 is used to obtain second field information in response to user input on the configuration of full-text search attributes in the first field information; The determination module 940 is used to determine the target field for full-text retrieval based on the full-text retrieval attributes in the second field information. The query module 950 is used to respond to the third input from the user to obtain the field data corresponding to the target field. Based on the target query statement, it queries the field data corresponding to the target field and satisfying the target data filtering conditions in the target data table of the target data source. The target data filtering conditions are the data filtering conditions corresponding to the target data filtering script. The target query statement is generated based on the target data source, the target data table, the target data filtering script, and the target field. The determination module 940 is also used to determine the full-text search data for full-text search based on the target fields of the target data table and their respective corresponding field data; The retrieval module 960 is used to respond to full-text retrieval requests, perform full-text retrieval in the full-text retrieval data based on query keywords, and obtain retrieval results.
[0078] The full-text retrieval device 900 described above is explained in detail below: In some embodiments, the query module 950 may specifically include: The generation submodule is used to respond to the third input from the user to obtain the field data corresponding to the target field, and to generate an abstract query description that is independent of the database type based on the table structure information of the target data table and the target data filtering script. The compilation submodule is used to compile and reorganize the abstract query description and target fields based on the target database type to obtain the target query statement that conforms to the target database syntax. The target database type is the database type corresponding to the target data source, and the target database syntax is the database syntax corresponding to the target database type. The query submodule is used to query field data that corresponds to the target field and meets the target data filtering conditions in the target data table of the target data source, based on the target query statement.
[0079] In some embodiments, the acquisition module 920 may specifically include: The acquisition submodule is used to respond to the user's second input—selecting the target data source, target data table, and target data filtering script—on the metamodel acquisition interface, and to acquire the first field information of the target data table from the target data source, as well as... The generation submodule is also used to generate an abstract query description that is independent of the database type in response to the second input, based on the table structure information of the target data table and the target data filtering script.
[0080] Based on this, the query module 950 may specifically include: The compilation submodule is used to respond to the third input from the user to obtain the field data corresponding to the target field. Based on the target database type, it compiles and reorganizes the abstract query description and the target field to obtain the target query statement that conforms to the target database syntax. The target database type is the database type corresponding to the target data source, and the target database syntax is the database syntax corresponding to the target database type. The query submodule is used to query field data that corresponds to the target field and meets the target data filtering conditions in the target data table of the target data source, based on the target query statement.
[0081] In some embodiments, the determining module 940 may specifically include: The acquisition submodule is used to obtain the first data table identifier corresponding to the target data table; The concatenation submodule is used to concatenate multiple target fields based on a preset delimiter to obtain an aggregated field block; The splicing submodule is also used to splice the field data corresponding to multiple target fields based on a preset delimiter to obtain an aggregated data block; The storage submodule is used to store the first data table identifier, the aggregate field block, and the aggregate data block into a temporary table; The synchronization submodule is used to synchronize data from the temporary table to the full-text search engine's index, obtaining full-text search data for full-text retrieval.
[0082] In some embodiments, the full-text search engine includes a first index. Based on this, the synchronization submodule may specifically include: A construction unit is used to build a second index corresponding to the temporary table; The synchronization unit is used to synchronize data from the temporary table to the second index; The switching unit is used to switch the query alias pointing to the first index to the second index. The query alias is used to provide the access interface for the full-text search engine. The delete unit is used to delete the first index.
[0083] In some embodiments, the acquisition module 920 may specifically include: The acquisition submodule is used to respond to the user's second input—selecting the target data source, target data table, and target data filtering script—on the metamodel acquisition interface, and to acquire the first field information of the target data table from the target data source, as well as... The mounting submodule is used in response to the second input to mount the target data table to the corresponding node in the category tree based on the category of the target data table. The category tree is used to manage data tables of different categories.
[0084] In addition, the search results include at least one result record, and the result record includes a second data table identifier.
[0085] Based on this, the full-text retrieval device 900 may also include: The determination module 940 is also used to determine the category tree node corresponding to each result record after performing a full-text search in the full-text search data in response to a full-text search request and obtaining the search results, based on the mounting relationship between the second data table identifier and the node of the category tree. Display module 910 is also used to display the category tree and at least one result record based on the category tree node.
[0086] In some embodiments, the determining module 940 is further configured to, after displaying the category tree and at least one result record based on the category tree node, determine at least one target data table identifier corresponding to the target node in response to a fourth input from the user selecting the target node in the category tree; Display module 910 is also used to display result records containing the identifier of the target data table.
[0087] In some embodiments, the temporary table also includes the aggregated primary key value corresponding to the target data table. The aggregated primary key value is obtained by concatenating multiple primary key values of the target data table based on a preset delimiter. The result record also includes query keywords.
[0088] Based on this, the full-text retrieval device 900 may also include: The acquisition module is used to display the category tree and at least one result record based on the category tree node, and then, in response to a detail viewing request for viewing the target result record, acquire the second data table identifier and query keywords corresponding to the target result record. The determination module 940 is also used to determine the target data row corresponding to the second data table identifier in the temporary table; The acquisition module is also used to acquire the aggregated primary key value and aggregated data block of the target data row. The aggregated data block includes multiple data units, and each data unit includes field data corresponding to multiple target fields. The parsing module is used to parse aggregated data blocks and determine the target data units that include the query keywords; The determination module 940 is also used to determine the target primary key value in the aggregated primary key value based on the location information of the target data unit in the aggregated data block; The query module 950 is also used to query the complete data record corresponding to the target primary key value in the data table corresponding to the second data table identifier; Display module 910 is also used to display complete data records.
[0089] In some embodiments, the temporary table also includes a page display style identifier corresponding to the target data table. Based on this, the display module 910 may specifically include: The determination submodule is used to determine the target display style of the complete data record based on the page display style identifier corresponding to the second data table identifier. The display submodule is used to display the complete data record based on the target display style.
[0090] In this embodiment, the first field information includes the full-text search attribute of the field. Based on this, by responding to the user's second input—selecting the target data source, target data table, and target data filtering script on the metamodel acquisition interface—the first field information of the target data table of the target data source is acquired and displayed. In response to the user's configuration input for the full-text search attribute in the first field information, the second field information is obtained. Based on the full-text search attribute in the second field information, the target field used for full-text search is determined, enabling dynamic configuration of the target data source, target data table, target field, and target data filtering script required for full-text search. Furthermore, since the target query statement is generated based on the target data source, target data table, target data filtering script, and target field, and the target data filtering conditions are the data filtering conditions corresponding to the target data filtering script, by responding to the user's third input for obtaining the field data corresponding to the target field, based on the target query statement, the field data corresponding to the target field and satisfying the target data filtering conditions is queried in the target data table of the target data source. And by determining the full-text search data used for full-text search based on the target field of the target data table and its corresponding field data, it is possible to ensure that the constructed full-text search dataset accurately reflects the filtered business data range. In this way, by responding to full-text search requests and performing searches in full-text search data based on query keywords, it can adapt to dynamically changing and conditionally filtered full-text search needs, thereby improving the efficiency and accuracy of full-text search.
[0091] Based on the full-text retrieval method provided in the above embodiments, this application also provides specific implementation methods for electronic devices. Figure 10 A schematic diagram of the structure of an electronic device provided in one embodiment of this application is shown.
[0092] like Figure 10 As shown, the electronic device 1000 may include a processor 1010 and a memory 1020 storing computer program instructions.
[0093] Specifically, the processor 1010 may include a central processing unit (CPU), an application specific integrated circuit (ASIC), or one or more integrated circuits that can be configured to implement the embodiments of this application.
[0094] Memory 1020 may include mass storage for data or instructions. For example, and not limitingly, memory 1020 may include a hard disk drive (HDD), floppy disk drive, flash memory, optical disk, magneto-optical disk, magnetic tape, or Universal Serial Bus (USB) drive, or a combination of two or more of these. Where appropriate, memory 1020 may include removable or non-removable (or fixed) media. Where appropriate, memory 1020 may be internal or external to electronic device 1000. In a particular embodiment, memory 1020 is a non-volatile solid-state memory.
[0095] In specific embodiments, the memory 1020 may be implemented as a read-only memory (ROM), random access memory (RAM), static storage device, dynamic storage device, etc. The memory 1020 may store the operating system and other applications. When the technical solutions provided in the embodiments of this specification are implemented through software or firmware, the relevant program code is stored in the memory 1020 and executed by the processor 1010. The processor 1010 implements any of the full-text search methods in the above embodiments by reading and executing the computer program instructions stored in the memory 1020.
[0096] The processor 1010 implements any of the full-text search methods described in the above embodiments by reading and executing computer program instructions stored in the memory 1020.
[0097] In one example, the electronic device 1000 may also include a communication interface 1030 and a bus 1040. For example, Figure 10 As shown, the processor 1010, memory 1020, and communication interface 1030 are connected through bus 1040 and complete communication with each other.
[0098] The communication interface 1030 is mainly used to realize communication between various modules, devices, units and / or equipment in the embodiments of this application.
[0099] Bus 1040 includes hardware, software, or both, that couples components of an electronic device together. For example, and not limitingly, the bus may include an Accelerated Graphics Port (AGP) or other graphics bus, an Enhanced Industry Standard Architecture (EISA) bus, a Front Side Bus (FSB), a Hyper Transport (HT) interconnect, an Industry Standard Architecture (ISA) bus, an Infinite Bandwidth Interconnect, a Low Pin Count (LPC) bus, a memory bus, a Micro Channel Architecture (MCA) bus, a Peripheral Component Interconnect (PCI) bus, a PCI-Express (PCI-E) bus, a Serial Advanced Technology Attachment (SATA) bus, a Video Electronics Standards Association Local Bus (VLB) bus, or other suitable buses, or a combination of two or more of these. Where appropriate, bus 1040 may include one or more buses. Although specific buses are described and illustrated in the embodiments of this application, this application considers any suitable bus or interconnection.
[0100] For example, the electronic device 1000 can be a mobile phone, tablet computer, laptop computer, handheld computer, in-vehicle electronic device, ultra-mobile personal computer (UMPC), netbook, or personal digital assistant (PDA), etc.
[0101] The electronic device can execute the full-text search method in the embodiments of this application, thereby achieving a combination of Figures 1 to 8 The full-text search method described herein, and the beneficial effects of the corresponding method embodiments, will not be elaborated further here.
[0102] Furthermore, in conjunction with the full-text search methods in the above embodiments, this application embodiment can provide a computer-readable storage medium for implementation. This computer-readable storage medium stores computer program instructions; when these computer program instructions are executed by a processor, they implement any of the full-text search methods in the above embodiments. Examples of such computer-readable storage media include non-transitory computer-readable storage media, such as read-only memory (ROM).
[0103] The computer program instructions stored in the storage medium of the above embodiments are used to cause the computer to execute the full-text retrieval method as shown in any of the above embodiments, and have the beneficial effects of the corresponding method embodiments, which will not be repeated here.
[0104] Based on the full-text search methods described in the above embodiments, this application can provide a computer program product for implementation. When the instructions in this computer program product are executed by the processor of an electronic device, they implement any of the full-text search methods described in the above embodiments.
[0105] The computer program products of the above embodiments are used to implement the full-text retrieval method shown in any of the above embodiments, and have the beneficial effects of the corresponding method embodiments, which will not be repeated here.
[0106] It should be clarified that this application is not limited to the specific configurations and processes described above and shown in the figures. For the sake of brevity, detailed descriptions of known methods are omitted here. In the above embodiments, several specific steps are described and shown as examples. However, the method process of this application is not limited to the specific steps described and shown. Those skilled in the art can make various changes, modifications, and additions, or change the order of steps, after understanding the spirit of this application.
[0107] The functional blocks shown in the above-described block diagram can be implemented as hardware, software, firmware, or a combination thereof. When implemented in hardware, they can be, for example, electronic circuits, application-specific integrated circuits (ASICs), appropriate firmware, plug-ins, function cards, etc. When implemented in software, the elements of this application are programs or code segments used to perform the required tasks. Programs or code segments can be stored on a machine-readable medium or transmitted over a transmission medium or communication link via data signals carried on a carrier wave. "Machine-readable medium" can include any medium capable of storing or transmitting information. Examples of machine-readable media include electronic circuits, semiconductor memory devices, ROM, flash memory, erasable ROM (EROM), floppy disks, CD-ROMs, optical disks, hard disks, fiber optic media, radio frequency (RF) links, etc. Code segments can be downloaded via computer networks such as the Internet, intranets, etc.
[0108] It should also be noted that the exemplary embodiments mentioned in this application describe methods or systems based on a series of steps or apparatus. However, this application is not limited to the order of the above steps; that is, the steps can be performed in the order mentioned in the embodiments, or in a different order, or several steps can be performed simultaneously.
[0109] The aspects of this application have been described above with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this application. It should be understood that each block in the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus to produce a machine such that these instructions, executable via the processor of the computer or other programmable data processing apparatus, enable the implementation of the functions / actions specified in one or more blocks of the flowchart illustrations and / or block diagrams. Such a processor can be, but is not limited to, a general-purpose processor, a special-purpose processor, a special application processor, or a field-programmable logic circuit. It is also understood that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can also be implemented by dedicated hardware performing the specified functions or actions, or can be implemented by a combination of dedicated hardware and computer instructions.
[0110] The above description is merely a specific implementation of this application. Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working processes of the systems, modules, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here. It should be understood that the protection scope of this application is not limited thereto. Any person skilled in the art can easily conceive of various equivalent modifications or substitutions within the technical scope disclosed in this application, and these modifications or substitutions should all be covered within the protection scope of this application.
Claims
1. A full-text retrieval method, characterized in that, include: In response to the user's first input for collecting the metamodel, the metamodel acquisition interface is displayed. In response to the user's second input of selecting a target data source, a target data table, and a target data filtering script on the metamodel acquisition interface, the first field information of the target data table of the target data source is acquired, and the first field information includes the full-text search attribute of the field; Display the information in the first field; In response to the user's configuration input of the full-text search attribute in the first field information, the second field information is obtained; Based on the full-text search attributes in the second field information, the target field for full-text search is determined; In response to a third input from a user to obtain field data corresponding to the target field, based on a target query statement, the system queries the target data table of the target data source for field data that corresponds to the target field and satisfies the target data filtering conditions. The target data filtering conditions are the data filtering conditions corresponding to the target data filtering script. The target query statement is generated based on the target data source, the target data table, the target data filtering script, and the target field. Based on the target fields of the target data table and their respective corresponding field data, determine the full-text search data for full-text retrieval; In response to a full-text search request, a full-text search is performed on the full-text search data based on the query keywords to obtain search results.
2. The method according to claim 1, characterized in that, in response to a third input from a user for obtaining field data corresponding to the target field, querying field data corresponding to the target field and satisfying the target data filtering conditions in the target data table of the target data source based on the target query statement includes: In response to a third input from the user to obtain the field data corresponding to the target field, an abstract query description independent of the database type is generated based on the table structure information of the target data table and the target data filtering script. Based on the target database type, the abstract query description and the target fields are compiled and reorganized to obtain a target query statement that conforms to the target database syntax. The target database type is the database type corresponding to the target data source, and the target database syntax is the database syntax corresponding to the target database type. Based on the target query statement, query the field data in the target data table of the target data source that corresponds to the target field and meets the target data filtering conditions.
3. The method according to claim 1, characterized in that, in response to the user selecting a target data source, a target data table, and a target data filtering script as a second input on the metamodel acquisition interface, acquiring the first field information of the target data table of the target data source includes: In response to the user's second input of selecting a target data source, a target data table, and a target data filtering script on the metamodel acquisition interface, the system acquires the first field information of the target data table of the target data source, as well as the table structure information of the target data table and the target data filtering script, and generates an abstract query description that is independent of the database type. The step of responding to a third input from the user to obtain field data corresponding to the target field, based on the target query statement, involves querying field data corresponding to the target field and satisfying the target data filtering conditions in the target data table of the target data source, including: In response to a third input from a user to obtain field data corresponding to the target field, the abstract query description and the target field are compiled and reorganized based on the target database type to obtain a target query statement that conforms to the target database syntax. The target database type is the database type corresponding to the target data source, and the target database syntax is the database syntax corresponding to the target database type. Based on the target query statement, query the field data in the target data table of the target data source that corresponds to the target field and meets the target data filtering conditions.
4. The method according to claim 1, characterized in that, The determination of full-text search data for full-text retrieval based on the target fields and their corresponding field data in the target data table includes: Obtain the first data table identifier corresponding to the target data table; Based on a preset delimiter, multiple target fields are concatenated to obtain an aggregated field block; Based on the preset delimiter, the field data corresponding to multiple target fields are concatenated to obtain an aggregated data block; Store the first data table identifier, the aggregated field block, and the aggregated data block into a temporary table; The data in the temporary table is synchronized to the index of the full-text search engine to obtain full-text search data for full-text retrieval.
5. The method according to claim 4, characterized in that, The full-text search engine includes a first index; synchronizing the data in the temporary table to the index of the full-text search engine to obtain full-text search data for full-text retrieval includes: Construct a second index corresponding to the temporary table; Synchronize the data in the temporary table to the second index; The query alias pointing to the first index is switched to point to the second index, and the query alias is used to provide an access interface for the full-text search engine; Delete the first index.
6. The method according to any one of claims 1-5, characterized in that, In response to the user's second input—selecting a target data source, a target data table, and a target data filtering script on the metamodel acquisition interface—the system acquires the first field information of the target data table from the target data source, including: In response to the user's second input of selecting a target data source, a target data table, and a target data filtering script on the metamodel acquisition interface, the first field information of the target data table of the target data source is collected, and based on the category of the target data table, the target data table is mounted to the corresponding node of the category tree, which is used to manage data tables of different categories. The search results include at least one result record, and the result record includes a second data table identifier; after responding to the full-text search request and performing a full-text search on the full-text search data to obtain the search results, the method further includes: Based on the mounting relationship between the second data table identifier and the node of the category tree, determine the category tree node corresponding to each result record; Based on the category tree nodes, display the category tree and the at least one result record.
7. The method according to claim 6, characterized in that, After displaying the category tree and the at least one result record based on the category tree node, the method may further include: In response to the user's fourth input of selecting a target node in the category tree, at least one target data table identifier corresponding to the target node is determined; Display the result record containing the identifier of the target data table.
8. The method according to claim 6, characterized in that, The temporary table also includes the aggregated primary key value corresponding to the target data table. The aggregated primary key value is obtained by concatenating multiple primary key values of the target data table based on a preset delimiter. The result record also includes the query keyword; after displaying the category tree and the at least one result record based on the category tree node, the method further includes: In response to a details viewing request for a target result record, the second data table identifier and query keywords corresponding to the target result record are obtained; Determine the target data row corresponding to the second data table identifier in the temporary table; Obtain the aggregated primary key value and aggregated data block of the target data row. The aggregated data block includes multiple data units, and each data unit includes field data corresponding to multiple target fields. Parse the aggregated data block to determine the target data unit that includes the query keywords; Based on the location information of the target data unit in the aggregated data block, the target primary key value is determined in the aggregated primary key value; Query the complete data record corresponding to the target primary key value in the data table corresponding to the second data table identifier; Display the complete data record.
9. The method according to claim 8, characterized in that, The temporary table also includes a page display style identifier corresponding to the target data table, and displaying the complete data record includes: Based on the page display style identifier corresponding to the second data table identifier, the target display style of the complete data record is determined; Based on the target display style, the complete data record is displayed.
10. A full-text retrieval device, characterized in that, The device includes: The display module is used to display the metamodel acquisition interface in response to the user's first input for acquiring the metamodel. The acquisition module is used to collect the first field information of the target data table of the target data source in response to the second input of the user selecting the target data source, the target data table and the target data filtering script on the metamodel acquisition interface. The first field information includes the full-text search attribute of the field. The display module is also used to display the information in the first field; The configuration module is used to obtain the second field information in response to the user's configuration input of the full-text search attribute in the first field information; The determination module is used to determine the target field for full-text retrieval based on the full-text retrieval attributes in the second field information; The query module is used to respond to a third input from a user to obtain field data corresponding to the target field, and to query field data corresponding to the target field and satisfying the target data filtering conditions in the target data table of the target data source based on the target query statement. The target data filtering conditions are the data filtering conditions corresponding to the target data filtering script. The target query statement is generated based on the target data source, the target data table, the target data filtering script, and the target field. The determining module is further configured to determine full-text search data for full-text retrieval based on the target fields of the target data table and their respective corresponding field data; The retrieval module is used to respond to a full-text retrieval request, perform a full-text retrieval on the full-text retrieval data based on the query keywords, and obtain retrieval results.
11. An electronic device, characterized in that, The electronic device includes: a processor and a memory storing computer program instructions; When the processor executes the computer program instructions, it implements the full-text retrieval method as described in any one of claims 1-9.
12. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer program instructions, which, when executed by a processor, implement the full-text retrieval method as described in any one of claims 1-9.
13. A computer program product, characterized in that, When the instructions in the computer program product are executed by the processor of the electronic device, the electronic device performs the full-text retrieval method as described in any one of claims 1-9.