Message pushing system and method
By introducing a search server and an advanced search module into the message push system, the problem that the HBase architecture cannot provide fuzzy search is solved, and the advanced search function is completely separated and decoupled, providing advanced search services to users and improving the user experience.
Patent Information
- Application Number
- CN202311086470.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-08-25
- Publication Date
- 2026-05-15
- Estimated Expiration
- 2043-08-25
AI Technical Summary
In existing technologies, the HBase architecture cannot provide fuzzy search functionality, which means that enterprise online banking message retrieval cannot meet customers' advanced search needs.
A search server and an advanced search module are introduced into the message push system. The advanced search module obtains the user's search request, generates a search instruction, and sends it to the search server. The search server searches the search database for messages to be searched and sends the results back to the user, thus achieving complete separation and decoupling of the advanced search function.
While ensuring the message push function, we provide advanced search services to users, which improves the user experience and meets customers' needs for advanced search.
Smart Images

Figure CN117131267B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of computer technology, and in particular to a message push system and method. Background Technology
[0002] With scientific advancements and social progress, various messages require push notifications in daily life. As one of the most important services in people's daily lives, the convenience of a push notification system directly impacts the user experience, especially for banking services.
[0003] Currently, historical messages pushed by bank subscription accounts are stored in HBase due to their massive volume. However, for the message retrieval function in enterprise online banking, the HBase architecture cannot provide fuzzy search functionality, resulting in the inability of enterprise online banking message retrieval to meet customer needs.
[0004] The above content is only used to help understand the technical solution of the present invention and does not represent an admission that the above content is prior art. Summary of the Invention
[0005] The main objective of this invention is to provide a message push system and method that aims to solve the technical problem that the storage architecture of existing message push technologies cannot meet customers' needs for advanced search of certain messages.
[0006] To achieve the above objectives, the present invention provides a message push system, which includes: a search server and an advanced search module;
[0007] The advanced search module is connected to both the search server and the user terminal.
[0008] The search server includes a search database that stores messages for advanced searches;
[0009] The advanced search module is also used to obtain search requests sent by the user terminal, and generate search instructions based on the search requests and send them to the search server;
[0010] The search server is configured to search for messages to be searched in the search database based on the search instructions, and to send the target messages obtained from the search back to the user terminal based on the advanced search module.
[0011] Optionally, the message push system further includes: a message push module;
[0012] The message push module is connected to the search server;
[0013] The message push module is used to obtain messages to be processed, filter the messages to be processed, and obtain messages to be pushed.
[0014] The message push module is also used to filter the message to be pushed, obtain the message to be searched in advanced mode, and send the message to be searched in advanced mode to the search server;
[0015] The search server is used to store the message to be searched in the search database.
[0016] Optionally, the message push system further includes: a historical message storage module;
[0017] The historical message storage module is connected to the message push module;
[0018] The historical message storage module is used to store the messages to be processed pushed by the message push module.
[0019] Optionally, the historical message storage module is also connected to the user terminal;
[0020] The historical message storage module is also used to receive a precise search request sent by the user terminal;
[0021] The historical message storage module is also used to perform a precise search on the message to be processed based on the precise search request to obtain the target historical message;
[0022] The historical message storage module is also used to send the target historical message back to the user terminal.
[0023] Optionally, the search server is further configured to parse the search command to obtain the search terms;
[0024] The search server is also used to perform word segmentation on the search terms to obtain search words;
[0025] The search server is also configured to retrieve the messages to be searched in the search database based on each of the search terms, and to send the target messages obtained from the search back to the user terminal based on the advanced search module.
[0026] Optionally, the search server is further configured to preprocess the search terms to obtain standardized search terms;
[0027] The search server is also used to determine the breakpoint position of the standardized search terms through a text segmentation algorithm;
[0028] The search server is also used to perform word segmentation on the standardized search terms based on the breakpoint position to obtain pre-segmented words;
[0029] The search server is also used to filter invalid words in the pre-segmented words to obtain search terms.
[0030] Optionally, the message push module is further configured to obtain preset message filtering rules when a message to be processed is obtained, wherein the message filtering rules include at least: filtering and classification operations of message type or message priority;
[0031] The message push module is also used to filter the messages to be processed based on the message filtering rules to obtain messages to be pushed.
[0032] Furthermore, to achieve the above objectives, the present invention also proposes a message push method, which is applied to the message push system described above, and the method includes:
[0033] Obtain the search request sent by the user and generate a search instruction based on the search request;
[0034] Based on the search command, the search database is searched for the message to be searched, and the target message obtained from the search is sent back to the user terminal.
[0035] Optionally, before the step of obtaining the search request sent by the user terminal and generating a search instruction based on the search request, the method further includes:
[0036] Obtain messages to be processed, filter the messages to be processed, and obtain messages to be pushed.
[0037] The messages to be pushed are filtered to obtain messages to be searched in advanced search.
[0038] The message to be searched is stored in the search database.
[0039] Optionally, the step of searching the search database for the advanced search message based on the search instruction and sending the target message obtained from the search back to the user terminal includes:
[0040] The search command is parsed to obtain the search terms;
[0041] The search terms are segmented to obtain search terms;
[0042] The search database is used to retrieve the messages to be searched based on the search terms, and the target messages obtained from the search are sent back to the user terminal.
[0043] The message push system of this invention includes a search server and an advanced search module. The search server includes a search database storing messages to be searched using advanced search. The advanced search module receives search requests sent by the user and generates search instructions based on the requests, which are then sent to the search server. The search server searches the search database for messages to be searched using advanced search instructions and sends the search results back to the user based on the advanced search module's information. By adding an advanced search module and a search server for storing and managing messages to be searched using advanced search, the message push and advanced search functions are completely separated and decoupled. While ensuring the message push function, advanced search services are provided separately to the user, and this service can be provided without the user's awareness, thus improving the user experience. Attached Figure Description
[0044] Figure 1 This is a functional structure block diagram of the first embodiment of the message push system of the present invention;
[0045] Figure 2 This is a schematic diagram of the functional module interaction of the message push system of the present invention in a second embodiment;
[0046] Figure 3 This is a flowchart illustrating the first embodiment of the message push method of the present invention;
[0047] Figure 4 This is a flowchart illustrating the second embodiment of the message push method of the present invention;
[0048] Figure 5 This is a flowchart illustrating the third embodiment of the message push method of the present invention.
[0049] Explanation of reference numerals in the attached figures
[0050] label name label name 100 Message push system 200 User terminal 110 Search server 120 Advanced search module 130 Message push module 140 Historical message storage module
[0051] The realization of the objective, functional features and advantages of the present invention will be further explained in conjunction with the embodiments and with reference to the accompanying drawings. Detailed Implementation
[0052] It should be understood that the specific embodiments described herein are for illustrative purposes only and are not intended to limit the scope of the invention.
[0053] Reference Figure 1 , Figure 1 This is a functional structure block diagram of the first embodiment of the message push system 100 of the present invention.
[0054] like Figure 1 As shown, the message push system 100 of the present invention includes: a search server 110 and an advanced search module 120;
[0055] The advanced search module 120 is connected to the search server 110 and the user terminal 200, respectively.
[0056] It should be understood that the connection described in this embodiment and the following embodiments is a data communication connection between various software modules in the message push system 100 of the present invention. Data communication between the two functional modules can be achieved by connecting the two functional modules.
[0057] It should be noted that this embodiment does not limit the specific connection relationships between the functional modules of the message push system 100 of the present invention. In practical applications, any two functional modules in the message push system 100 of the present invention can be connected.
[0058] It should be noted that the functional modules described in this embodiment are only one of the functional modules of the message push system 100 of this embodiment, and do not limit the actual functional modules of the message push system 100 of the present invention. In practical applications, the message push system 100 may include fewer or more functional modules than those described in the embodiment, such as message deduplication module, security check module, etc., and this embodiment does not impose any restrictions on this.
[0059] It should be noted that since the historical messages of the existing message push service are stored in HBase, and the HBase architecture cannot provide effective fuzzy search functionality, this system will store messages that require advanced search in search server 110 and provide query functionality through the advanced search service.
[0060] It should be understood that, compared to basic search, advanced search is a more complex and precise search technology designed to provide more accurate and comprehensive search results. Compared to basic search, advanced search offers more search options and functions to meet users' search requirements for specific conditions and needs. Common functions of advanced search may include multi-field search, phrase search, wildcard search, regular expression search, range search, fuzzy search, search weighting and ranking, and aggregated search, etc., which are not limited in this embodiment.
[0061] It should be explained that the aforementioned search server 110 is a service module that can be used to implement one or more functions such as real-time search, log analysis, data visualization, and large-scale data analysis. In this embodiment, by constructing the search server 110 to store messages awaiting advanced search in the message push system 100, advanced search functions are provided to users.
[0062] It should be noted that the aforementioned search server 110 includes a database for storing advanced search messages, i.e., a search database. By searching the advanced search queries in the search database, accurate recommendations for user search terms can be achieved.
[0063] It should be understood that the aforementioned user terminal 200 refers to the software or mini-program used by the user that requires the message push system 100 to perform message push and advanced historical message search. Specifically, the user terminal 200 may be a corporate online banking APP or online banking mini-program installed on the user's client, etc., and this embodiment does not limit this.
[0064] It should be noted that the aforementioned advanced search module 120 is a service that can provide complex and refined advanced search for the user terminal 200. Specifically, the advanced search module 120 can provide the user terminal 200 with an application programming interface (API) to enable the provision of advanced search services to the user terminal 200.
[0065] The advanced search module 120 is also used to obtain search requests sent by the user terminal 200, and generate search instructions based on the search requests and send them to the search server 110.
[0066] It should be understood that the search request described above is the search request that the user wants to perform an advanced search. The search request may include search terms, client 200 priority, search term type, etc. When a user needs to perform an advanced search, they can do so through client 200, thereby sending the search terms to the advanced search module 120.
[0067] It is understood that the search database can store different types of advanced search messages, such as expense records, income records, transfer records, prepayment records, and duplicate transfer records. To store different types of advanced search messages, the search database can be divided into different data partitions, each partition storing one type of advanced search message. Alternatively, multiple search databases can be set up in the search server 110, storing different types of advanced search messages in different databases. Of course, other methods can also be used to store different types of advanced search messages. This embodiment does not limit the types of advanced search messages or the storage methods for each type; the administrator of the message push system 100 can choose according to the user needs in actual applications. This embodiment and the following embodiments use the storage of different types of advanced search messages in different search databases as an example.
[0068] In one implementation, the advanced search module 120 can obtain the search term type in the search request, determine the search database type based on the search term type, determine the target search database based on the search database type, and generate a second target database instruction based on the target search database.
[0069] It should be understood that the aforementioned target search database is the search database determined according to the type of search database. The number of target search databases can be one, two, or more, and this embodiment does not limit this.
[0070] It should be noted that the above-mentioned different categories may also include priority classifications. Since the message push system 100 of this invention is mainly used for message push to enterprise customers, and enterprises typically involve multi-user management functions, allowing enterprises to assign different management permissions and roles to different employees. Therefore, when obtaining the search terms sent by the user terminal 200, the priority of the user terminal 200 that sent the search terms can also be obtained, and the accessible database of the user terminal 200 can be determined based on the user terminal 200's priority, and advanced message search can be performed based on the accessible database.
[0071] In one implementation, the administrator of the message push system 100 can determine the priority of the user terminal 200 of different management roles in the enterprise users according to their management permissions, and establish a search database layer with different priority levels based on the user terminal 200 priority.
[0072] Understandably, when enterprise users use the message push system 100, they can assign priority to each user terminal 200 among the enterprise users, thereby enabling the message push system 100 to identify the priority of different user terminals 200.
[0073] It should be noted that each search database layer may include one or more search databases, such as an expenditure database for storing expenditure records, a transfer database for storing transfer records, and a prepayment database for storing prepayment records. This embodiment does not impose any restrictions on this.
[0074] It should be explained that when the advanced search module 120 receives a search request sent by the user terminal 200, it can obtain the priority of the user terminal 200 in the search request; determine the accessible database of the user terminal 200 in the search server 110 based on the user terminal 200 priority; and generate a first target database instruction based on the accessible database.
[0075] It is understandable that the accessible databases mentioned above are determined based on the user client 200 priority. For example, the user client 200 priority can be divided into three levels from high to low: Level 1, Level 2, and Level 3. Each priority level corresponds to at least one priority tier, namely, the first priority tier, the second priority tier, and the third priority tier. Specifically, the user client 200 with priority level 1 can access databases including those in the first, second, and third priority tiers; the user client 200 with priority level 2 can access databases including those in the second and third priority tiers; and the user client 200 with priority level 3 can access databases including those in the third priority tier.
[0076] It should be understood that the above search instructions may include a first target database instruction, a second target database instruction, and search terms. The target database for advanced search can be determined by the first target database instruction and the second target database instruction.
[0077] Understandably, in order to save system resources, when performing an advanced search, the advanced search module 120 can first execute the operation of determining the first target database instruction to determine the priority level of the user terminal 200, and then execute the operation of determining the second target database instruction based on the database selected by the first target database instruction to determine which databases in the priority level, i.e., the target databases, are used in this advanced search.
[0078] In the specific implementation, the advanced search module 120 obtains the search request sent by the user terminal 200, and generates a search instruction based on the search request and sends it to the search server 110.
[0079] The search server 110 is used to search for messages to be searched in the search database based on the search instructions, and to send the target messages obtained by the search back to the user terminal 200 based on the advanced search module 120.
[0080] It should be noted that when the search server 110 receives a search instruction, it can send the search terms to the corresponding target database according to the search instruction, and perform advanced message search through the target database. Because the newly added advanced search module 120 and search server 110 are used for data storage and query management of messages to be searched, the message push and advanced search functions are completely separated and decoupled. While ensuring the message push function, advanced search services are provided separately to the user terminal 200, and this service can be provided without the user's awareness.
[0081] It is understood that the aforementioned target message is the message stored in the search database and obtained by searching using search terms. Upon completion of the advanced search, the search server 110 obtains the target message retrieved from the target database and sends it back to the advanced search module 120. The advanced search module 120 then processes the target message accordingly and sends it back to the user terminal 200. Processing methods may include encryption, digital signatures, etc., which are not limited in this embodiment.
[0082] It should be understood that when performing an advanced search in the search database, no corresponding data may be found. In this case, an empty value can be returned to the advanced search module 120. When the advanced search module 120 receives an empty value returned by the search server 110, it can send the instruction that no message was found back to the client 200, so that the client 200 can provide feedback on the instruction that no message was found to the user.
[0083] In the specific implementation, the search server 110 searches for the message to be searched in the search database based on the search command, and sends the target message obtained by the search back to the user terminal 200 based on the advanced search module 120.
[0084] The message push system 100 in this embodiment includes a search server 110 and an advanced search module 120. The search server 110 includes a search database storing messages to be searched in the advanced search. The advanced search module 120 receives search requests sent by the user terminal 200 and generates search instructions based on the search requests, which are then sent to the search server 110. The search server 110 searches the search database for messages to be searched in the advanced search based on the search instructions, and the advanced search module 120 sends the search results back to the user terminal 200. By adding the advanced search module 120 and the search server 110 for data storage and query management of messages to be searched in the advanced search, the message push and advanced search functions are completely separated and decoupled. While ensuring the message push function, advanced search services are provided separately to the user terminal 200, and the service can be provided without the user's awareness, thus improving the user experience.
[0085] Based on the first embodiment of the message push system 100 of the present invention as described above, in order to store and search historical messages of the message push system 100, a second embodiment of the message push system 100 of the present invention is proposed.
[0086] like Figure 2 As shown, Figure 2 This is a schematic diagram of the functional module interaction of the message push system 100 of the present invention in a second embodiment.
[0087] like Figure 2As shown, in this embodiment, the message push system 100 further includes a message push module 130;
[0088] The message push module 130 is connected to the search server 110 and the user terminal 200 respectively.
[0089] It should be noted that the aforementioned message push module 130 is a module that can be used to send notifications and messages to users. The message push module 130 can push important messages, updates, or reminders to users in order to promptly convey key content to them.
[0090] It is understood that the message push module 130 can be used to promptly notify and push messages to be pushed in the message push system 100 through multiple channels. The push method can be email, SMS, etc., and this embodiment does not limit this.
[0091] The message push module 130 is used to obtain messages to be processed and filter the messages to be processed to obtain messages to be pushed.
[0092] It should be noted that the aforementioned message to be processed can be a message received by the system, and the message push system 100 can store and process the received message.
[0093] The message push module 130 is also used to obtain preset message filtering rules when a message to be processed is obtained. The message filtering rules include at least the filtering and classification operation of message type or message keyword.
[0094] The message push module 130 is also used to filter the messages to be processed based on the message filtering rules to obtain the messages to be pushed.
[0095] It should be noted that since different types of search databases are used to store different types of messages, a mapping between different message types and search databases can be established so that the search server 110 can store the message to be searched in the search database of the corresponding search database type according to the message type of the message to be searched.
[0096] It is understood that the aforementioned message priority includes push priority and target priority. Based on the push priority, it can be determined which pending messages are to be pushed. Specifically, the message push module 130 can obtain the push priority of the pending messages and filter the pending messages based on the push priority, marking pending messages with a push priority greater than a preset push priority as pending messages to be pushed.
[0097] It should be understood that there is a mapping relationship between the target priority and the user terminal 200 priority. Based on the mapping relationship between the target priority and the user terminal 200 priority, it can be determined which user terminals 200 the message to be processed can be pushed to. Specifically, the message push module 130 can obtain the target priority of the message to be processed, and filter out the target user terminals 200 of the message to be pushed based on the target priority of the message to be pushed; and push the message to be pushed to the target user terminals 200.
[0098] It is understood that the number of target user terminals 200 can be one or more. This embodiment does not limit the number of target user terminals 200. The user terminals 200 obtained through the above filtering operation can be used as the target user terminals 200 in this embodiment.
[0099] It should be noted that the push priority of the above-mentioned pending message can be determined by the message generation system that generated the pending message. The message generation system can be a payment system, a news system, etc., and this embodiment does not limit it.
[0100] It should be noted that a search bar can be set in the user terminal 200. Even when no input is entered in the search bar, push notifications can be displayed to the user. When the user enters search terms and search type, the user terminal 200 can generate a search request and send it to the search server 110 via the advanced search application interface. It then displays the target message returned by the search server 110 through the advanced search module 120. This ensures consistency between the push notification and advanced search UIs, allowing for seamless switching between push notifications and advanced search. From a user experience perspective, the results displayed after the user enters filter or query conditions are consistent with those from push notifications.
[0101] In the specific implementation, the message push module 130 obtains the messages to be processed, filters the messages to be processed, and obtains the messages to be pushed.
[0102] The message push module 130 is also used to filter the message to be pushed, obtain the message to be searched, and send the message to be searched to the search server 110.
[0103] It should be understood that when a message to be pushed is obtained, in order to determine the validity of the message, the message to be pushed can be filtered, and the filtered message to be searched can be sent to the search server 110.
[0104] In practical applications, the message push system 100 can filter messages to be pushed from messages to be processed according to push priority, and then filter the messages to be pushed. If the message is meaningless, the message to be pushed will be removed. If the message is not meaningless, the target user terminal 200 of the message to be pushed will be determined according to the target priority of the message to be pushed, and the message to be pushed will be pushed to the target user terminal 200.
[0105] It should be noted that the aforementioned meaningless messages may include garbled messages, random character messages, duplicate messages, spam messages, etc., and this embodiment does not impose any restrictions on them.
[0106] It is understood that the aforementioned messages awaiting advanced search are also messages that can be searched using advanced search methods. In this embodiment, messages with importance values greater than a preset value or search frequencies greater than a preset search frequency can be identified as messages awaiting advanced search. This embodiment does not limit the specific method for determining messages awaiting advanced search. The message push system 100 can set filtering rules for messages awaiting advanced search according to actual applications, and this embodiment does not impose any restrictions on this.
[0107] In the specific implementation, the message push module 130 filters the messages to be pushed, obtains the messages to be searched, and sends the messages to be searched to the search server 110.
[0108] The search server 110 is used to store the advanced search message to the search database.
[0109] It is understandable that, upon identifying a message to be searched in an advanced manner, the message can be stored in the corresponding search database layer based on its target priority. Specifically, the search server 110 can obtain the target priority of the message to be searched; determine the search database layer corresponding to the message based on the target priority; obtain the message type of the message; and determine the search database corresponding to the message in the search database layer based on the message type.
[0110] In the specific implementation, the search server 110 stores the advanced search messages to be searched in the search database.
[0111] Furthermore, in order to store the messages to be processed, the message push system 100 also includes a historical message storage module 140;
[0112] The historical message storage module 140 is connected to the message push module 130;
[0113] The historical message storage module 140 is used to store the messages to be processed pushed by the message push module 130.
[0114] It should be noted that the historical message storage module 140 can store messages to be processed. Before storage, the messages to be processed can be filtered to remove meaningless messages, and the filtered messages to be processed can be stored in the historical message module.
[0115] It should be explained that, in order to store the messages to be processed, this embodiment uses HBase as the historical message storage module 140. HBase is a distributed column-oriented database, which is typically used to process large-scale data and features high reliability and high performance. Storing the messages to be processed using HBase meets the massive data storage needs of enterprise users.
[0116] Furthermore, the historical message storage module 140 is also connected to the user terminal 200;
[0117] The historical message storage module 140 is also used to receive a precise search request sent by the user terminal 200;
[0118] The historical message storage module 140 is also used to perform a precise search on the message to be processed based on the precise search request to obtain the target historical message;
[0119] The historical message storage module 140 is also used to send the target historical message back to the user terminal 200.
[0120] It is understandable that the above precise search request may include information such as search terms and search term types.
[0121] It should be noted that precise search is a search method that accurately matches and retrieves search terms from the user's search terms 200. Through precise search, target historical messages that perfectly match the search terms can be found in the historical message storage module 140.
[0122] In one implementation, the historical message storage module 140 can record the search terms and search times of the user terminal 200, and determine the search frequency of the search terms; when the search frequency is greater than a preset search frequency, the target historical message corresponding to the search term is marked as a message to be searched in advanced mode; and the target historical message corresponding to the search term is stored in the search server 110.
[0123] The message push system 100 in this embodiment further includes: a message push module 130; the message push module 130 acquires messages to be processed, filters the messages to be processed, and obtains messages to be pushed; it filters the messages to be pushed to obtain messages to be searched in advanced mode, and sends the messages to be searched in advanced mode to the search server 110; the search server 110 stores the messages to be searched in advanced mode in the search database. Because the messages to be processed are filtered and the messages to be searched in advanced mode are obtained, the data quality of the messages to be searched in advanced mode in the search server 110 is ensured, and the resource pressure on the search server 110 is reduced.
[0124] Based on the above embodiments of the message push system 100 of the present invention, in order to parse search instructions, a third embodiment of the message push system 100 of the present invention is proposed.
[0125] In this embodiment, the search server 110 is further configured to parse the search command to obtain the search terms;
[0126] The search server 110 is also used to perform word segmentation on the search terms to obtain search word segments;
[0127] The search server 110 is also used to retrieve the messages to be searched in the search database according to each of the search terms, and to send the target messages obtained by the search back to the user terminal 200 based on the advanced search module 120.
[0128] It should be noted that by parsing the above search instructions, the target database and search terms for advanced search can be determined, and word segmentation can be performed based on the search terms to obtain search words.
[0129] It's important to explain that search term segmentation is the process of breaking down search terms into individual word units or terms. In data retrieval and search engines, segmenting search terms into search units is a crucial step, appropriately cutting continuous strings according to language rules to extract meaningful lexical units. This allows for better matching with documents in the index, resulting in more accurate search results.
[0130] It should be noted that the search terms can be split in this embodiment by means of a word segmentation library, natural language processing technology, or machine learning model. This embodiment does not limit the way search terms are split into search words.
[0131] In one implementation, this embodiment uses a standard analyzer to segment the search terms. Specifically, the search server 110 segments the search terms according to string types such as spaces and punctuation marks to generate independent word units; stops are removed from each word unit to obtain standard word units; and the standard word units are normalized using a stemming algorithm (such as PorterStemmer) to obtain the search terms.
[0132] It should be noted that the above string types may include letters, punctuation marks, Greek letters, formulas, Chinese characters, etc., and this embodiment does not impose any restrictions on them.
[0133] It should be explained that the stop words mentioned above are meaningless words in the word unit, which can include high-frequency words such as prepositions, articles, and conjunctions that have no actual meaning. Removing stop words can reduce the time for message retrieval, thereby improving message search efficiency.
[0134] In another implementation, this embodiment uses ElasticSearch as the search server 110 of the message push system 100 of the present invention, and uses icu_analyzer as the word segmenter of ElasticSearch.
[0135] As is understood, ElasticSearch is a search and analytics engine used for distributed full-text retrieval. This embodiment builds a search server 110 based on ElasticSearch, implementing the storage of advanced search messages and advanced search functionality.
[0136] It's worth noting that icu_analyzer is a Unicode text segmentation algorithm that better supports Asian languages and performs well in Chinese word segmentation scenarios. Compared to standard word segmenters that also use Unicode text segmentation algorithms, icu_analyzer's dictionary-based vocabulary recognition methods for Thai, Lao, Chinese, Japanese, and Korean make its Chinese word recognition more accurate and avoid the "over-segmentation" that can occur with standard word segmenters. This significantly reduces resource consumption while improving search accuracy.
[0137] It's worth explaining that icu_analyzer can filter out "invalid content" within the text that interferes with user searches. During word segmentation, it can automatically identify and remove punctuation marks, special characters, etc., avoiding retrieval errors caused by symbols. In practical scenarios, icu_analyzer can accurately identify numerical information such as user accounts and amounts, as well as English words, allowing users to perform precise searches based on information such as account number, amount, and date.
[0138] Specifically, the search server 110 is also used to preprocess the search terms to obtain standardized search terms;
[0139] The search server 110 is also used to determine the breakpoint position of the standardized search terms through a text segmentation algorithm;
[0140] The search server 110 is also used to perform word segmentation on the standardized search terms based on the breakpoint position to obtain pre-segmented words;
[0141] The search server 110 is also used to filter invalid words in the pre-segmented words to obtain search words.
[0142] It should be noted that the purpose of the above-mentioned preprocessing of search terms is to improve the search process. Specifically, the search server 110 can check the string type contained in the search terms and remove special characters such as punctuation marks, spaces, and special symbols, making the search terms cleaner and more standardized.
[0143] As can be understood, text segmentation algorithms are algorithms that cut standardized search terms and determine the breakpoints of these standardized search terms. Specifically, standardized search terms can be classified according to string type to obtain string groups; each string group can be cut according to preset segmentation rules to obtain segmented character segments; weights can be calculated for each segmented character segment to determine the standardized search term weights for each string; and the breakpoints of the standardized search terms can be determined based on the weights of each standardized search term.
[0144] It should be noted that the segmentation rules and weight calculation methods for different string groups may differ in this embodiment, and this embodiment does not limit the segmentation rules and weight calculation methods.
[0145] Understandably, once the breakpoint position is obtained, the standardized search terms can be segmented based on the breakpoint position to obtain pre-segmented terms.
[0146] It should be noted that the aforementioned invalid words are those that have no practical meaning or are not helpful for advanced search. Specifically, these can include stop words, punctuation marks, and words set by the message push system administrator. In some implementations, invalid words may also include numbers and symbols. By filtering invalid words from the pre-segmentation, the search terms can be obtained.
[0147] It should be understood that once the search terms are obtained, the target message can be retrieved from the target database based on the search terms.
[0148] In this embodiment, the search server 110 parses the search command to obtain search terms. The search server 110 also performs word segmentation on the search terms to obtain search segments. Based on each search segment, the search database is used to retrieve messages to be searched in the advanced search, and the target message obtained by the search is sent back to the user terminal 200 based on the advanced search module 120. Because the search segments are obtained before message retrieval, the accuracy of advanced message search is improved, and the user experience is optimized.
[0149] Furthermore, this embodiment of the invention also proposes a message push method, which is applied to the message push system described above.
[0150] It should be noted that since the historical messages of the existing message push service are stored in HBase, and the HBase architecture cannot provide effective fuzzy search functionality, this method will store the messages that require advanced search in the search server and provide query functionality through the advanced search service.
[0151] It should be understood that, compared to basic search, advanced search is a more complex and precise search technology designed to provide more accurate and comprehensive search results. Compared to basic search, advanced search offers more search options and functions to meet users' search requirements for specific conditions and needs. Common functions of advanced search may include multi-field search, phrase search, wildcard search, regular expression search, range search, fuzzy search, search weighting and ranking, and aggregated search, etc., which are not limited in this embodiment.
[0152] It should be explained that a search server is a service module that can be used to implement one or more functions such as real-time search, log analysis, data visualization, and large-scale data analysis. In this embodiment, by constructing a search server to store messages awaiting advanced search in the message push system, advanced search functionality is provided to users.
[0153] It should be noted that the aforementioned search server includes a database for storing advanced search queries, i.e., a search database. By searching the search database for advanced searches, precise recommendations can be made to the user's search terms.
[0154] like Figure 3 As shown, Figure 3 This is a flowchart illustrating the first embodiment of the message push method of the present invention.
[0155] In this embodiment, the method includes: step S10: obtaining a search request sent by the user terminal, and generating a search instruction based on the search request.
[0156] It should be understood that the aforementioned user terminal refers to the software or mini-program used by the user that requires the use of a message push system for message push and advanced historical message search. Specifically, the user terminal can be a corporate online banking app or online banking mini-program installed on the user's client, and this embodiment does not impose any limitations on this.
[0157] It should be noted that the message push method in this embodiment provides advanced search services to the user terminal based on the advanced search module of the message push system. The advanced search module is a service that can provide complex and refined advanced searches to the user terminal. Specifically, the advanced search module can provide an Application Programming Interface (API) to the user terminal to provide advanced search services.
[0158] The advanced search module obtains the search request sent by the user and generates a search instruction based on the search request, which is then sent to the search server.
[0159] It should be understood that the search request described above is the search request a user wants to perform for advanced search. The search request may include search terms, client-side priority, and search term type. When a user needs to perform an advanced search, they can do so through the client-side, sending the search terms to the advanced search module.
[0160] It is understandable that the search database can store different types of messages awaiting advanced search, such as expense records, income records, transfer records, prepayment records, and duplicate transfer records. To store different types of messages awaiting advanced search, the search database can be divided into different data partitions, each partition storing one type of message. Alternatively, multiple search databases can be set up in the search server, storing different types of messages awaiting advanced search in different databases. Of course, other methods can also be used to store different types of messages awaiting advanced search. This embodiment does not limit the types of messages awaiting advanced search or the storage methods for each type; the administrator of the message push system can choose according to the user needs in actual application. This embodiment and the following embodiments illustrate the storage of different types of messages awaiting advanced search using different search databases.
[0161] In one implementation, the advanced search module can obtain the search term type in the search request, determine the search database type based on the search term type, determine the target search database based on the search database type, and generate a second target database instruction based on the target search database.
[0162] It should be understood that the aforementioned target search database is the search database determined according to the type of search database. The number of target search databases can be one, two, or more, and this embodiment does not limit this.
[0163] It should be noted that the above-mentioned different categories may also include priority classifications. Since the message push system of this invention is mainly used for message push to enterprise customers, and enterprises typically involve multi-user management functions, allowing enterprises to assign different management permissions and roles to different employees. Therefore, when obtaining search terms sent by a user, the priority of the user sending the search term can also be obtained, and the accessible database of that user can be determined based on the user's priority, and advanced message search can be performed based on the accessible database.
[0164] In one implementation, the administrator of the message push system can determine the user-end priority of different management roles among enterprise users based on their management permissions, and establish a search database layer with different priority levels based on the user-end priority.
[0165] Understandably, when enterprise users use a message push system, they can assign user priorities to each user terminal, thereby enabling the message push system to identify the user terminal priorities corresponding to different user terminals.
[0166] It should be noted that each search database layer may include one or more search databases, such as an expenditure database for storing expenditure records, a transfer database for storing transfer records, and a prepayment database for storing prepayment records. This embodiment does not impose any restrictions on this.
[0167] It should be explained that when the advanced search module receives a search request sent by the user, it can obtain the user's priority in the search request; determine the accessible databases of the user in the search server based on the user's priority; and generate a first target database instruction based on the accessible databases.
[0168] Understandably, the accessible databases mentioned above are determined based on user client priority. For example, user client priorities can be divided into three levels from high to low: Level 1, Level 2, and Level 3. Each priority level corresponds to at least one priority tier, namely, the first priority tier, the second priority tier, and the third priority tier. Specifically, a user client with priority level 1 can access databases including those in the first, second, and third priority tiers; a user client with priority level 2 can access databases including those in the second and third priority tiers; and a user client with priority level 3 can access databases including those in the third priority tier.
[0169] It should be understood that the above search instructions may include a first target database instruction, a second target database instruction, and search terms. The target database for advanced search can be determined by the first target database instruction and the second target database instruction.
[0170] Understandably, in order to save system resources, when performing an advanced search, the advanced search module can first execute the operation of determining the first target database instruction to determine the priority level of the user terminal, and then execute the operation of determining the second target database instruction based on the database selected by the first target database instruction to determine which databases in the priority level, i.e., the target databases, are used in this advanced search.
[0171] In its implementation, the advanced search module obtains the search request sent by the user and generates a search instruction based on the search request, which is then sent to the search server.
[0172] Step S20: Search the search database for the message to be searched based on the search instruction, and send the target message obtained from the search back to the user terminal.
[0173] It should be noted that when the search server receives a search command, it can send the search terms to the corresponding target database based on the command, and then perform advanced message search through the target database. By adding an advanced search module and a search server for storing and querying advanced search messages, the message push and advanced search functions are completely separated and decoupled. While ensuring the message push function, advanced search services are provided separately to the user, and this service can be provided without the user's awareness.
[0174] It is understood that the aforementioned target message is the message stored in the search database and obtained by searching using search terms. Upon completion of the advanced search, the search server retrieves the target message from the target database and sends it back to the advanced search module. The advanced search module then processes the target message accordingly and sends it back to the user. Processing methods may include encryption, digital signatures, etc., which are not limited in this embodiment.
[0175] It should be understood that when performing an advanced search in the search database, no corresponding data may be found. In this case, an empty value can be returned to the advanced search module. When the advanced search module receives an empty value returned by the search server, it can send the instruction that no message was found back to the user, so that the user can receive feedback on the instruction that no message was found.
[0176] In the specific implementation, the search server searches the search database for messages to be searched based on search instructions, and then sends the target messages obtained from the search back to the user terminal based on the advanced search module.
[0177] The message push method in this embodiment obtains the search request sent by the user terminal through the advanced search module, generates a search instruction based on the search request, and sends it to the search server. The search server searches the search database for messages to be searched using the search instruction, and then sends the target message obtained by the search back to the user terminal based on the advanced search module. By adding an advanced search module and a search server for storing and managing messages to be searched, the message push and advanced search functions are completely separated and decoupled. While ensuring the message push function, advanced search services are provided separately to the user terminal, and this service can be provided without the user's awareness, thus improving the user experience.
[0178] Based on the first embodiment of the message push method of the present invention as described above, in order to store and search historical messages of the message push system, a second embodiment of the message push method of the present invention is proposed.
[0179] like Figure 4 As shown, Figure 4 This is a flowchart illustrating the second embodiment of the message push method of the present invention.
[0180] In this embodiment, the message push system further includes: a message push module;
[0181] It should be noted that the aforementioned push notification module is a module that can be used to send notifications and messages to users. The push notification module can push important messages, updates, or reminders to users to promptly deliver key information.
[0182] It is understandable that the message push module can enable timely notification and multi-channel push of messages to be pushed in the message push system. The push method can be email, SMS, etc., and this embodiment does not limit this.
[0183] Before the step of obtaining the search request sent by the user terminal and generating a search instruction based on the search request, the method further includes:
[0184] Step S01: Obtain messages to be processed and filter them to obtain messages to be pushed.
[0185] It should be noted that the aforementioned message to be processed can be a message received by the system, and the message push system can store and process the received message.
[0186] When the message push module receives a message to be processed, it obtains a preset message filtering rule, which includes at least the following filtering and classification operations: message type or message keyword.
[0187] The message push module filters the messages to be processed based on the message filtering rules to obtain the messages to be pushed.
[0188] It should be noted that since different types of search databases are used to store different types of messages, a mapping between different message types and search databases can be established so that the search server can store the message to be searched in the search database of the corresponding search database type according to the message type of the message to be searched.
[0189] It is understood that the aforementioned message priority includes push priority and target priority. Based on the push priority, it can be determined which pending messages are to be pushed. Specifically, the message push module can obtain the push priority of pending messages and filter them based on the push priority, marking pending messages with a push priority greater than a preset push priority as pending messages to be pushed.
[0190] It should be understood that there is a mapping relationship between the target priority and the user terminal priority. Based on the mapping relationship between the target priority and the user terminal priority, it can be determined which user terminals the message to be processed can be pushed to. Specifically, the message push module can obtain the target priority of the message to be processed, and filter out the target user terminals of the message to be pushed based on the target priority of the message to be pushed; and push the message to be pushed to the target user terminals.
[0191] It is understood that the number of target user terminals can be one or more. This embodiment does not limit the number of target user terminals. The user terminals obtained through the above filtering operation can be used as the target user terminals in this embodiment.
[0192] It should be noted that the push priority of the above-mentioned pending message can be determined by the message generation system that generated the pending message. The message generation system can be a payment system, a news system, etc., and this embodiment does not limit it.
[0193] It's worth noting that a search bar can be set up in the user's app. Even when no input is displayed in the search bar, push notifications can still be shown to the user. When the user enters search terms and search type, the app generates a search request and sends it to the search server via the advanced search API. The app then displays the target message returned by the search server through the advanced search module. This ensures UI consistency between push notifications and advanced search, allowing for seamless switching between the two. From a user experience perspective, the results displayed after the user enters filter or query criteria are identical to those from push notifications.
[0194] In the actual implementation, the message push module obtains messages to be processed, filters them, and obtains messages to be pushed.
[0195] Step S02: Filter the messages to be pushed to obtain messages to be searched in advanced search.
[0196] It should be understood that when a message to be pushed is obtained, in order to determine the validity of the message, it can be filtered and the filtered message to be searched is sent to the search server.
[0197] In practical applications, message push systems can filter messages from pending messages based on push priority, then filter the messages to be pushed. If a message is meaningless, it is removed from the list of messages to be pushed. If a message is not meaningless, the target user is determined based on the target priority of the message to be pushed, and the message is pushed to the target user.
[0198] It should be noted that the aforementioned meaningless messages may include garbled messages, random character messages, duplicate messages, spam messages, etc., and this embodiment does not impose any restrictions on them.
[0199] It is understood that the aforementioned messages awaiting advanced search are also messages that can be searched using advanced search techniques. In this embodiment, messages with importance values greater than a preset value or search frequencies greater than a preset search frequency can be identified as messages awaiting advanced search. This embodiment does not limit the specific method for determining messages awaiting advanced search. The message push system can set filtering rules for messages awaiting advanced search according to actual applications, and this embodiment does not impose any restrictions on this.
[0200] In the specific implementation, the message push module filters the messages to be pushed, obtains the messages to be searched in advanced search mode, and sends the messages to be searched in advanced search mode to the search server.
[0201] Step S03: Store the message to be searched in the search database.
[0202] It is understandable that, upon identifying a message to be searched in an advanced manner, the message can be stored in the corresponding search database layer based on its target priority. Specifically, the search server can obtain the target priority of the message to be searched; determine the search database layer corresponding to the message based on the target priority; obtain the message type of the message; and determine the search database corresponding to the message in the search database layer based on the message type.
[0203] In practice, the search server stores the advanced search messages to be searched in the search database.
[0204] Furthermore, in order to store the messages to be processed, the message push system also includes: a historical message storage module;
[0205] The historical message storage module is connected to the message push module;
[0206] The historical message storage module stores the messages to be processed pushed by the message push module.
[0207] It should be noted that the historical message storage module can store messages to be processed. Before storage, the messages to be processed can be filtered to remove meaningless messages, and the filtered messages to be processed can be stored in the historical message module.
[0208] It should be explained that, in order to store the messages to be processed, this embodiment uses HBase as the historical message storage module. HBase is a distributed column-oriented database, which is typically used to handle large-scale data and features high reliability and high performance. Storing the messages to be processed using HBase meets the massive data storage needs of enterprise users.
[0209] Furthermore, the historical message storage module is also connected to the user terminal;
[0210] The historical message storage module receives a precise search request sent by the user terminal;
[0211] The historical message storage module performs a precise search on the message to be processed based on the precise search request to obtain the target historical message;
[0212] The historical message storage module sends the target historical message back to the user terminal.
[0213] It is understandable that the above precise search request may include information such as search terms and search term types.
[0214] It should be noted that exact match is a search method that precisely matches and retrieves search terms based on the user's search query. Through exact match, target historical messages that exactly match the search terms can be found in the historical message storage module.
[0215] In one implementation, the historical message storage module can record the user's search terms and search time, and determine the search frequency of the search terms; when the search frequency is greater than a preset search frequency, the target historical message corresponding to the search term is marked as a message to be searched in advanced mode; and the target historical message corresponding to the search term is stored in the search server.
[0216] This embodiment's message push method obtains messages to be processed through a message push module, filters these messages to obtain messages to be pushed, filters the messages to be pushed to obtain messages to be searched in advanced search mode, and sends these messages to the search server. The search server stores these messages in the search database. Because the messages to be processed are filtered to obtain messages to be searched in advanced search mode, the data quality of these messages in the search server is ensured, and the resource pressure on the search server is reduced.
[0217] Based on the above embodiments of the message push system of the present invention, a third embodiment of the message push method of the present invention is proposed in order to parse search instructions.
[0218] like Figure 5 As shown, Figure 5 This is a flowchart illustrating the third embodiment of the message push method of the present invention.
[0219] In this embodiment, the step of searching the search database for advanced search messages based on the search command and sending the searched target messages back to the user terminal includes:
[0220] Step S21: Parse the search command to obtain the search term;
[0221] Step S22: Perform word segmentation on the search term to obtain search word segments;
[0222] Step S23: Retrieve the messages to be searched in the search database according to the search terms, and send the target messages obtained from the search back to the user terminal.
[0223] It's important to explain that search term segmentation is the process of breaking down search terms into individual word units or terms. In data retrieval and search engines, segmenting search terms into search units is a crucial step, appropriately cutting continuous strings according to language rules to extract meaningful lexical units. This allows for better matching with documents in the index, resulting in more accurate search results.
[0224] It should be noted that the search terms can be split in this embodiment by means of a word segmentation library, natural language processing technology, or machine learning model. This embodiment does not limit the way search terms are split into search words.
[0225] In one implementation, this embodiment uses a standard analyzer to segment the search terms. Specifically, the search server segments the search terms according to string types such as spaces and punctuation marks to generate independent word units; stops are removed from each word unit to obtain standard word units; and the standard word units are normalized using a stemming algorithm (such as PorterStemmer) to obtain the search terms.
[0226] It should be noted that the above string types may include letters, punctuation marks, Greek letters, formulas, Chinese characters, etc., and this embodiment does not impose any restrictions on them.
[0227] It should be explained that the stop words mentioned above are meaningless words in the word unit, which can include high-frequency words such as prepositions, articles, and conjunctions that have no actual meaning. Removing stop words can reduce the time for message retrieval, thereby improving message search efficiency.
[0228] In another implementation, this embodiment uses ElasticSearch as the search server for the message push system of this invention, and uses icu_analyzer as the word segmenter for ElasticSearch.
[0229] As is understood, ElasticSearch is a search and analytics engine used for distributed full-text retrieval. This embodiment builds a search server based on ElasticSearch, implementing the storage of advanced search messages and advanced search capabilities.
[0230] It's worth noting that icu_analyzer is a Unicode text segmentation algorithm that better supports Asian languages and performs well in Chinese word segmentation scenarios. Compared to standard word segmenters that also use Unicode text segmentation algorithms, icu_analyzer's dictionary-based vocabulary recognition methods for Thai, Lao, Chinese, Japanese, and Korean make its Chinese word recognition more accurate and avoid the "over-segmentation" that can occur with standard word segmenters. This significantly reduces resource consumption while improving search accuracy.
[0231] It's worth explaining that icu_analyzer can filter out "invalid content" within the text that interferes with user searches. During word segmentation, it can automatically identify and remove punctuation marks, special characters, etc., avoiding retrieval errors caused by symbols. In practical scenarios, icu_analyzer can accurately identify numerical information such as user accounts and amounts, as well as English words, allowing users to perform precise searches based on information such as account number, amount, and date.
[0232] Specifically, the search server preprocesses the search terms to obtain standardized search terms;
[0233] The search server determines the breakpoints of the standardized search terms using a text segmentation algorithm;
[0234] The search server performs word segmentation on the standardized search terms based on the breakpoint positions to obtain pre-segmented terms;
[0235] The search server filters out invalid words in the pre-segmented words to obtain search terms.
[0236] It should be noted that the purpose of the above-mentioned preprocessing of search terms is to improve search efficiency. Specifically, the search server can check the string type contained in the search terms and remove special characters such as punctuation marks, spaces, and special symbols, making the search terms cleaner and more standardized.
[0237] As can be understood, text segmentation algorithms are algorithms that cut standardized search terms and determine the breakpoints of these standardized search terms. Specifically, standardized search terms can be classified according to string type to obtain string groups; each string group can be cut according to preset segmentation rules to obtain segmented character segments; weights can be calculated for each segmented character segment to determine the standardized search term weights for each string; and the breakpoints of the standardized search terms can be determined based on the weights of each standardized search term.
[0238] It should be noted that the segmentation rules and weight calculation methods for different string groups may differ in this embodiment, and this embodiment does not limit the segmentation rules and weight calculation methods.
[0239] Understandably, once the breakpoint position is obtained, the standardized search terms can be segmented based on the breakpoint position to obtain pre-segmented terms.
[0240] It should be noted that the aforementioned invalid words are those that have no practical meaning or are not helpful for advanced search. Specifically, these can include stop words, punctuation marks, and words set by the push notification system administrator. In some implementations, invalid words may also include numbers and symbols. By filtering invalid words from the pre-segmentation, the search terms can be obtained.
[0241] It should be understood that once the search terms are obtained, the target message can be retrieved from the target database based on the search terms.
[0242] This embodiment parses the search command through a search server to obtain search terms; the search server then segments the search terms to obtain search segments; based on each search segment, it retrieves the messages to be searched in the search database, and the target messages obtained from the search are sent back to the user terminal based on the advanced search module. Because the search segments are processed before message retrieval, the accuracy of advanced message searches is improved, and the user experience is optimized.
[0243] It should be noted that, in this document, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or system 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 system. Unless otherwise specified, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or system that includes that element.
[0244] The sequence numbers of the above embodiments of the present invention are for descriptive purposes only and do not represent the superiority or inferiority of the embodiments.
[0245] Through the above description of the embodiments, those skilled in the art can clearly understand that the methods of the above embodiments can be implemented by means of software plus necessary general-purpose hardware platforms. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of the present invention, in essence, or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product is stored in a storage medium (such as read-only memory / random access memory, magnetic disk, optical disk) and includes several instructions to cause a terminal device (which may be a mobile phone, computer, server, air conditioner, or network device, etc.) to execute the methods described in the various embodiments of the present invention.
[0246] The above are merely preferred embodiments of the present invention and do not limit the scope of the patent. Any equivalent structural or procedural transformations made based on the description and drawings of the present invention, or direct or indirect applications in other related technical fields, are similarly included within the scope of patent protection of the present invention.
Claims
1. A message push system, characterized in that, The message push system includes: a search server and an advanced search module; The advanced search module is connected to both the search server and the user terminal. The search server includes a search database that stores messages for advanced searches; The advanced search module is also used to acquire search requests sent by the user terminal, and generate search instructions based on the search requests and send them to the search server; the search instructions include a first target database instruction, a second target database instruction, and search terms; The search server is used to search for messages to be searched in the search database based on the search instructions, and to send the target messages obtained by the search back to the user terminal based on the advanced search module. The advanced search module is further configured to obtain the user terminal priority in the search request; determine the accessible database of the user terminal in the search server based on the user terminal priority; and generate the first target database instruction based on the accessible database. The advanced search module is further configured to obtain the search term type in the search request, determine the search database type based on the search term type, determine the target search database according to the database type, and generate the second target database instruction based on the target search database; The message push system also includes: a message push module; The message push module is connected to the search server; The message push module is used to obtain messages to be processed, filter the messages to be processed, and obtain messages to be pushed. The message push module is also used to filter the message to be pushed, obtain the message to be searched in advanced mode, and send the message to be searched in advanced mode to the search server; The search server is used to store the message to be searched in the search database.
2. The message push system as described in claim 1, characterized in that, The message push system also includes: a historical message storage module; The historical message storage module is connected to the message push module; The historical message storage module is used to store the messages to be processed pushed by the message push module.
3. The message push system as described in claim 2, characterized in that, The historical message storage module is also connected to the user terminal; The historical message storage module is also used to receive a precise search request sent by the user terminal; The historical message storage module is also used to perform a precise search on the message to be processed based on the precise search request to obtain the target historical message; The historical message storage module is also used to send the target historical message back to the user terminal.
4. The message push system as described in claim 1, characterized in that, The search server is also used to parse the search command to obtain the search terms; The search server is also used to perform word segmentation on the search terms to obtain search words; The search server is also configured to retrieve the messages to be searched in the search database based on each of the search terms, and to send the target messages obtained from the search back to the user terminal based on the advanced search module.
5. The message push system as described in claim 4, characterized in that, The search server is also used to preprocess the search terms to obtain standardized search terms; The search server is also used to determine the breakpoint position of the standardized search terms through a text segmentation algorithm; The search server is also used to perform word segmentation on the standardized search terms based on the breakpoint position to obtain pre-segmented words; The search server is also used to filter invalid words in the pre-segmented words to obtain search terms.
6. The message push system as described in claim 1, characterized in that, The message push module is also used to obtain preset message filtering rules when a message to be processed is obtained. The message filtering rules include at least the filtering and classification operation of message type or message priority. The message push module is also used to filter the messages to be processed based on the message filtering rules to obtain messages to be pushed.
7. A message push method, characterized in that, The message push method is applied to the message push system as described in any one of claims 1-6, and the method includes: The system acquires a search request sent by the user and generates a search instruction based on the search request; the search instruction includes a first target database instruction, a second target database instruction, and search terms. The search is performed on the search database based on the search command, and the target message obtained from the search is sent back to the user terminal. The step of generating search instructions based on the search request includes: Obtain the client-side priority in the search request; The databases accessible to the user in the search server are determined based on the user's priority. Generate the first target database instruction based on the accessible database; Obtain the search term type in the search request, and determine the search database type based on the search term type; The target search database is determined based on the aforementioned database type; Generate the second target database instruction based on the target search database; Before the step of obtaining the search request sent by the user terminal and generating a search instruction based on the search request, the method further includes: Obtain messages to be processed, filter the messages to be processed, and obtain messages to be pushed. The messages to be pushed are filtered to obtain messages to be searched in advanced search. The message to be searched is stored in the search database.
8. The message push method as described in claim 7, characterized in that, The step of searching the search database for the message to be searched based on the search command, and sending the target message obtained from the search back to the user terminal, includes: The search command is parsed to obtain the search terms; The search terms are segmented to obtain search terms; The search database is used to retrieve the messages to be searched based on the search terms, and the target messages obtained from the search are sent back to the user terminal.