WO2008128473A1 - Method and system of updating user word stock synchronouslly - Google Patents

Method and system of updating user word stock synchronouslly Download PDF

Info

Publication number
WO2008128473A1
WO2008128473A1 PCT/CN2008/070751 CN2008070751W WO2008128473A1 WO 2008128473 A1 WO2008128473 A1 WO 2008128473A1 CN 2008070751 W CN2008070751 W CN 2008070751W WO 2008128473 A1 WO2008128473 A1 WO 2008128473A1
Authority
WO
WIPO (PCT)
Prior art keywords
server
user
vocabulary
data
client
Prior art date
Application number
PCT/CN2008/070751
Other languages
French (fr)
Chinese (zh)
Inventor
Lei Yang
Jun Zhang
Original Assignee
Beijing Sogou Technology Development Co., Ltd.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Sogou Technology Development Co., Ltd. filed Critical Beijing Sogou Technology Development Co., Ltd.
Publication of WO2008128473A1 publication Critical patent/WO2008128473A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/237Lexical tools
    • G06F40/242Dictionaries

Definitions

  • the present invention relates to the field of input method lexicon update technology, and in particular, to a method and system for synchronous updating of user lexicon.
  • the current input method system (including Chinese, Japanese, Korean, etc.) is used in the lexicon system and the word frequency information in the lexicon system to provide the user with the ordering of candidate words in the information input process.
  • the sorting of candidate words is an important indicator for the user's preferred hit rate in the information input process.
  • the input method system itself cannot know that the word is most needed by the user; but in the vast Chinese characters, the use and frequency of each word are different. Sorting the words with higher frequency in the first place can greatly improve the preferred word hit rate of the input method system, that is, the probability that the sorted vocabulary can satisfy the user's needs can be improved probabilistically.
  • the input method system generally includes a system vocabulary for satisfying the usage habits of most users, and a user vocabulary for recording the usage habits of a specific user, so as to better improve the user's usage. Input efficiency.
  • existing input method users are generally likely to use multiple computers, such as office computers, home computers and mobile notebooks or other people's computers, etc.; and possibly in multiple computers Frequent conversions. Therefore, how to ensure that the user vocabulary of these computers is consistent for this particular user is one of the technical problems that need to be solved urgently.
  • due to the proliferation of computer viruses most users will encounter the situation that the computer reinstalls the operating system. How to ensure that the user's vocabulary in the computer before reinstallation and the computer after reinstallation are consistent, and it is also a problem to be solved. one.
  • the existing method can only solve the above problems by the user who is familiar with the computer knowledge to back up the user vocabulary and then overwrite the old user vocabulary, but such an operation will inevitably bring the following problems: First, many users are not familiar with the computer. Knowledge, it is difficult to complete the above work; Secondly, in order to achieve synchronization between multiple computers, users need frequent backup and coverage, resulting in inefficiency, so it is actually difficult to achieve accurate synchronization between multiple computers. In short, there is an urgent need for a person skilled in the art to propose a Alternative method of synchronizing user lexicon.
  • the technical problem to be solved by the present invention is to provide a method and system for synchronously updating a user's vocabulary to meet the requirements of a specific user vocabulary used by a particular user when using an input method between different computers.
  • the present invention discloses a method for synchronously updating a user vocabulary, which relates to a server and at least one client.
  • the method may include: presetting a storage space for storing a user vocabulary on the server side;
  • a trigger condition is generated, the local user vocabulary uploads a different entry and/or different attribute parameters to the server side than the server vocabulary of the server side, and the server uses the partial data to update the server-side user vocabulary; the second trigger condition is satisfied.
  • the server-side user vocabulary downloads different terms and/or different attribute parameters from the local user vocabulary to the local computing device, the local computing device uses the partial data to update the local user vocabulary.
  • the method may further include: when uploading and downloading data, the client provides a user vocabulary identifier, and the user vocabulary identifier is used to point to a specific user vocabulary.
  • the uploaded or downloaded data is all terms and/or attribute parameters that change; or the uploaded or downloaded data is a partial term and/or attribute parameter that changes.
  • a system for synchronizing update of a user vocabulary which relates to a server and at least one client, and the system may include:
  • a storage unit located at the server end, configured to store a plurality of user lexicons and/or different attribute parameters to the server according to the user vocabulary identifier;
  • a server communication unit configured to send a server-side user vocabulary different entry and/or different attribute parameters to the client than the local user vocabulary
  • At least one comparison unit located at the client or the server, for comparing the user vocabulary of the local user vocabulary with the server side;
  • a server update unit configured to update a server-side user vocabulary according to the uploaded data
  • a client update unit for updating a local user vocabulary based on data downloaded from a server Preferably, the uploaded or downloaded data is all terms and/or attribute parameters that change; or the uploaded or downloaded data is a partial term and/or attribute parameter that changes.
  • a method for synchronous updating of a user vocabulary is disclosed, which relates to a server and at least one client.
  • the method may include: recording a user input term and a corresponding attribute parameter to an unsynchronized vocabulary
  • the local user vocabulary includes the synchronized vocabulary and the unsynchronized vocabulary; when the first trigger condition is met, the data is uploaded to the server, and the above data includes the unsynchronized vocabulary; the server will upload the unsynchronized vocabulary and the server has The saved user vocabulary is merged; when the second trigger condition is met, the server-side data is downloaded for updating the synchronized vocabulary in the local user lexicon.
  • the downloaded server-side data is an entire user vocabulary of the server, and the update is to directly replace the synchronized vocabulary in the local user vocabulary.
  • the method may further include: when downloading server-side data, the client uploads a timestamp of the previous download of the server-side data; the server compares the timestamp uploaded by the client with the time of each term maintained by the server.
  • the server-side data sent is: the terms and/or attribute parameters that are changed after the timestamp uploaded by the client.
  • the method may further include: the server confirming to the client that the uploaded unsynchronized word list has been received; the client merges the unsynchronized word list into the synchronized word list.
  • the user lexicon records: existing words input by the user and corresponding attribute parameters; and/or, self-created words input by the user and corresponding attribute parameters.
  • the data uploaded by the client and the data stored by the server may further include: configuration data of the user input method, and a time for setting the configuration data; the method may further include the following steps: comparing the local configuration data of the user and The configuration data of the server side changes or retains the local configuration data based on the configuration data after the set time; and/or compares the configuration data and the local configuration data of the server side of the user, to change the configuration data according to the setting time or Keep configuration data on the server side.
  • the method may further include: when uploading and downloading data, the client provides a user vocabulary identifier, and the user vocabulary identifier is used to point to a specific user vocabulary.
  • the data uploaded by the client further includes a deletion vocabulary table, wherein the vocabulary list is used to record the deleted words of the user; and the server updates the user vocabulary of the server according to the vocabulary list.
  • the user's deletion of the word can be recorded in the following manner: the user's manual operation is used to record the user's deleted words information; or, by detecting the user's fallback operation in the candidate word window, the user's deleted words information is recorded; or, Detecting the deletion operation of the user selected word on the screen within the preset time, Record the user's deleted words.
  • a system for synchronizing update of a user vocabulary which relates to a server and at least one client, and the system may include:
  • a storage unit located at the server end, for storing a plurality of user vocabularies according to the user lexicon identifier;
  • the recording unit located at the client, for recording the user input terms and corresponding attribute parameters to the unsynchronized vocabulary;
  • the thesaurus includes synchronized vocabulary and unsynchronized vocabulary;
  • a client communication unit configured to upload data to the server when the trigger condition is met, where the foregoing data includes an unsynchronized word list;
  • a client update unit configured to update a local user vocabulary according to data downloaded from the server
  • a server communication unit configured to send the server vocabulary data stored by the server to the client
  • a server update unit configured to upload the unsynchronized word
  • the sent server-side data is an entire server-side user vocabulary
  • the update is to directly replace the synchronized vocabulary in the local user vocabulary.
  • the download request data of the client may further include: a timestamp of the previous download of the server-side data; the system may further include: a thesaurus comparison unit, located at the server, for comparing the The timestamp uploaded by the client and the timestamp of each term maintained by the server; the server-side data sent is: the term and/or attribute parameter changed after the timestamp uploaded by the client.
  • the system may further include: an unsynchronized vocabulary merging unit, located at the client, configured to merge the unsynchronized vocabulary into the already received acknowledgment message when the server has received the unsynchronized vocabulary Synchronized in the vocabulary.
  • an unsynchronized vocabulary merging unit located at the client, configured to merge the unsynchronized vocabulary into the already received acknowledgment message when the server has received the unsynchronized vocabulary Synchronized in the vocabulary.
  • the data uploaded by the client and the data stored by the server further include: configuration data of the user input method, and a time for setting the configuration data; when downloading the server-side data, the download request data of the client further includes: Setting the time; the system may further include: a configuration data comparison unit, located at the server side, configured to compare the local configuration data of the user with the configuration data of the server, if the setting time of the local configuration data after the setting time of the server configuration data is set , the server configuration data is sent; the configuration data change unit is located at the client, and is used to change the local configuration data according to the received server configuration data.
  • the upload data and the download request data sent by the client communication unit further include: a user vocabulary identifier.
  • the data uploaded by the client further includes a vocabulary list, and the vocabulary list is used to record the deleted words of the user.
  • the user's deletion of the word can be recorded in the following manner: the user's manual operation is used to record the user's deleted words information; or, by detecting the user's fallback operation in the candidate word window, the user's deleted words information is recorded; or, The deletion operation of the user selected word on the screen after the preset time is detected, and the user's deleted word information is recorded.
  • a method for synchronous updating of a user vocabulary which relates to a server and at least one client.
  • the method may include: recording a user input term and a corresponding attribute parameter to an unsynchronized vocabulary
  • the local user vocabulary includes the synchronized vocabulary and the unsynchronized vocabulary
  • the client stores a client timestamp for the local user word library, the client timestamp is determined by the server; when the trigger condition is met, the unsynchronized vocabulary is uploaded Data D1 to the server, and uploading the current client timestamp T1 as a parameter
  • the server searches for a term with a timestamp higher than T1 in the server-side user vocabulary to form a set D2;
  • the server maintains a global time Poke, and maintain a term timestamp for each entry;
  • the server updates the global timestamp to T2 and sends D2 and T2 to the corresponding client;
  • the entry timestamp is updated to T2;
  • the client uses the data D2 update to be synchronized Vocabulary, and
  • the user lexicon records: existing words input by the user and corresponding attribute parameters; and/or, self-created words input by the user and corresponding attribute parameters.
  • the method may further include: uploading configuration data of the user input method, and setting a time of the configuration data; comparing the local configuration data of the user with the configuration data of the server, and setting the time according to the configuration data after the time is changed. Or retain the local configuration data; and/or, upload the configuration data of the user input method, and the time when the configuration data is set; compare the configuration data of the user's server side and the local configuration data, to change the configuration data based on the time after the change or Keep configuration data on the server side.
  • the method may further include: when uploading and downloading data, the client provides a user vocabulary identifier, and the user vocabulary identifier is used to point to a specific user vocabulary.
  • an input method client is further disclosed, including: a recording unit, configured to record a user input term and a corresponding attribute parameter to an unsynchronized word list; the local user vocabulary includes the synchronized word Table and unsynchronized vocabulary;
  • a client communication unit configured to upload the data D1 in the unsynchronized word list to the server when the trigger condition is met, and upload the current client timestamp T1 for the local user vocabulary as a parameter;
  • the client update unit Update the synchronized word list with the data D2 returned by the server, and merge the data D1 into the synchronized word list; and clear the unsynchronized word list, and update the client time stamp to T2 according to the notification of the server;
  • the data returned by the server D2 is a set of terms whose term timestamp is found in the server-side user vocabulary is higher than T1, and the timestamp T2 is determined by the server.
  • the client may further include: a configuration data changing unit, configured to change local configuration data according to the received server-side configuration data; and the configuration data returned by the server is: setting data whose setting time is later than the local setting time The local setup time is included in the update request data of the client.
  • a configuration data changing unit configured to change local configuration data according to the received server-side configuration data
  • the configuration data returned by the server is: setting data whose setting time is later than the local setting time
  • the local setup time is included in the update request data of the client.
  • the update request data of the client communication unit further includes: a user lexicon identifier.
  • a server for synchronously updating a user vocabulary including:
  • a storage unit configured to store a plurality of user vocabularies according to the user vocabulary identifier
  • a server processing unit configured to search for a term with a timestamp higher than T1 in the server-side user vocabulary to form a set D2; and update the global timestamp to T2; the timestamp T1 is an uploaded client timestamp;
  • a server communication unit configured to send D2 and T2 to the corresponding client
  • a server update unit configured to merge the uploaded data D1 with the stored user vocabulary of the server, and update the term time stamp of the merging to T2; the data D1 is recorded by the client in the unsynchronized vocabulary
  • the data including the user's input terms and word frequency information.
  • the server may further include: a configuration data comparison unit, configured to compare the local configuration data of the user with the configuration data of the server, and if the setting time of the local configuration data is set after the setting time of the server configuration data, the sending server End configuration data; the local setting time is included in the update request data of the client.
  • a configuration data comparison unit configured to compare the local configuration data of the user with the configuration data of the server, and if the setting time of the local configuration data is set after the setting time of the server configuration data, the sending server End configuration data; the local setting time is included in the update request data of the client.
  • the invention can back up and input the input habit information of the same user posted on multiple distributed computing devices to the server through various uploading behaviors; and, in turn, can input the user closest to the user through various downloading behaviors.
  • the custom vocabulary is updated to any current computing device used by the user, thereby solving the problem that when the user replaces the computing device, the user's previous vocabulary cannot be conveniently obtained, thereby further improving the convenience of the user using the input method, and accelerating the user's Input speed.
  • the present invention can collect user input information in a plurality of distributed computing devices, so that a very complete user vocabulary can be obtained on the server side, and the user vocabulary in any one of the computing devices can better reflect the user's user. Input habits.
  • the efficiency of synchronous updating of the user's thesaurus is further improved by the management of the unsynchronized vocabulary and the time stamp, thereby saving communication resources and computing resources.
  • 1 is a flow chart showing the steps of an embodiment of a user lexicon synchronization update method
  • FIG. 2 is a structural block diagram of an embodiment of a user lexicon synchronization update apparatus
  • FIG. 3 is a flow chart showing the steps of an embodiment of a second user thesaurus synchronization update method
  • FIG. 4 is a structural block diagram of an embodiment of a second user thesaurus synchronization update system
  • FIG. 5 is a flow chart showing the steps of an embodiment of a third user vocabulary synchronization update method
  • FIG. 6 is a structural block diagram of an embodiment of a third user thesaurus synchronization update system
  • Figure ⁇ is a flow chart of the steps of the fourth embodiment of the user lexicon synchronization update method
  • Figure 8 is a structural block diagram of an input method client
  • FIG. 9 is a structural block diagram of a server for synchronously updating a user's thesaurus.
  • the user lexicon record of the present invention may include: an existing word input by the user and corresponding attribute parameters; and/or a self-created word input by the user and corresponding attribute parameters.
  • the data storage structure of a record of a user's thesaurus can be:
  • the attribute parameters may be word frequency information, classification information, level or weight information, and the like.
  • the user can modify the terms and attribute parameters in the thesaurus record by manual operation.
  • the input method can also automatically update the detection of the user input behavior information according to the preset rule, for example, increasing the word frequency according to the user selection word; or, the word frequency information is attenuated according to the time; or, the level is adjusted according to the user's common input environment. Or weights and other ways.
  • FIG. 1 a flow chart of an embodiment of a user lexicon synchronization update is shown.
  • the method relates to a server and at least one client, and specifically includes the following steps:
  • Step 101 Pre-set a storage space for storing the user vocabulary on the server side.
  • the storage of the user's thesaurus can be implemented on the server side in any existing feasible way, for example, by means of a database or a data file.
  • Step 102 When the first trigger condition is met, the local user vocabulary is compared with the user vocabulary of the server side, and the term and/or word frequency is compared to the server end, and the server uses the part of the data to update the server user vocabulary;
  • the uploading may only upload the different terms and/or word frequency, or upload the entire local user vocabulary; the two different words and/or word frequencies are included in the local user vocabulary, and are selected by the server. Just go out.
  • Step 103 When the second trigger condition is met, downloading the user vocabulary on the server side and the local user vocabulary have different terms and/or word frequency to the local computing device, and the local computing device uses the partial data to update the local user vocabulary.
  • the download may only download different terms and/or word frequencies, or may download the entire server-side local computing device to select.
  • the satisfying trigger condition may be: reaching a preset time point; or, reaching a preset word input amount; or, manually triggering by a user, etc. .
  • the first trigger condition and the second trigger condition may be the same condition or different conditions.
  • the upload client and the download client may be the same client or different clients. In general, uploading and downloading can be two separate processes.
  • the different terms and/or word frequencies obtained by comparing the local user vocabulary and the server-side user vocabulary may include the following situations: a. The local user vocabulary has, and the server-side user vocabulary has no entry and The word frequency; b, although a term is in both, but the local user lexicon may be small); c, the local user lexicon does not, and the server-side user vocabulary has the terms and their word frequency ( For example, a user maintains a local user vocabulary by deleting some local records.
  • the update step performed by the server side may be: a. Adding a local entry, and the words and words frequency not available on the server side; b. When the recorded content of the two is different, recording the local user lexicon Overwrite the corresponding record of the server user vocabulary; c. Delete the record on the server side that is more than the local user vocabulary. Because the user chooses to upload the local user lexicon data, it is generally desirable to back up some changes of the local user lexicon to the server vocabulary of the server. These changes may include: adding terms, modifying word frequency and other attribute parameters, and deleting terms, etc. Etc;; Therefore, the server-side update strategy can be completely based on the local user lexicon.
  • the different terms and/or word frequencies obtained by comparing the server-side user vocabulary and the local user vocabulary may include the following situations: a.
  • the server-side user vocabulary has, and the local user vocabulary has no entry and The word frequency; b, although a term is in both, but the server-side user may also be small; c, the user's thesaurus in the server is not in the user's thesaurus, and the local user's thesaurus has the term and Word frequency.
  • the updating step performed by the local computing device may be: a, adding a term that is not present locally, and a word frequency that is not present locally; b. when the recorded content of the two is different, the server user lexicon The corresponding record covers the record of the local user lexicon; c . Delete the record of the local user vocabulary more than the server-side user vocabulary. That is to say, the above update strategy is completely based on the server-side user vocabulary. In some cases, very good results can be achieved. For example, the local user vocabulary of the user's current input method is other users, and the user wants to obtain his own. The server-side user vocabulary is used to complete the input; then, the above update strategy can achieve the goal, and does not invalidate the amount of bytes of the local user lexicon, because a user's common words may be for another user. Less used.
  • the lexicon comparison process in step 102 and step 103 can be done on the client side or in the service.
  • the device is completed.
  • the computing resources on the server side are relatively rich, it is preferable to complete the above comparison process on the server side to avoid occupying the local computing resources of the user and affect the input behavior of the user.
  • the embodiment may further include: when uploading and downloading data, the client provides a user vocabulary identifier, and the user vocabulary identifier is used to point to a specific user vocabulary.
  • the user vocabulary identifier may be a user name (for example, a user registration), or an identification number (for example, a serial number, etc.) assigned by the server when storing the vocabulary, or may be a client computing device hardware identifier or an address identifier. Wait.
  • the user vocabulary identifier can be accurately pointed to the required user vocabulary, and the embodiment does not need to define its form here.
  • the user may be required to pass the identity authentication before the processing operations such as uploading and downloading can be completed.
  • Specific identity authentication techniques are well known and will not be described here.
  • the data uploaded by the client and the data stored by the server may further include: user input method Configuration data, and when to set the configuration data.
  • the embodiment may further include: uploading configuration data of the user input method, and setting a time of the configuration data, comparing the local configuration data of the user and the configuration data of the server, and setting the time according to the configuration data after the time is changed. Or keep the configuration data on the server side.
  • the embodiment may further include: downloading configuration data of the server and setting the time of the configuration data, comparing the local configuration data of the user and the configuration data of the server, and changing or retaining the local configuration data according to the configuration data after the time is set. .
  • the step of updating the configuration data the following manner may also be adopted:
  • the local configuration data is changed or retained according to the configuration data of the server. Since the setting of the configuration data is generally implemented by the selection method, the update can be performed by rewriting.
  • FIG. 2 there is shown a block diagram of a system embodiment of a user lexicon synchronization update involving a server and at least one client, including the following components:
  • the storage unit 201 is located at the server end, and is configured to store a plurality of user vocabularies according to the user vocabulary identifier;
  • the client communication unit 202 is configured to upload the local user vocabulary compared to the server vocabulary on the server side. Different terms and/or words to the server;
  • a server communication unit 203 configured to send a server-side user vocabulary different from the local user vocabulary to the client and the word frequency to the client;
  • At least one comparison unit 204 located at the client or the server, is used to compare the local user lexicon with the server vocabulary of the server; the comparison unit shown in the embodiment of FIG. 2 has only one, located at the server; in other embodiments, Each client can also set a comparison unit;
  • the server update unit 205 is configured to update the server-side user vocabulary according to the upload data
  • the client update unit 206 is configured to update the local user vocabulary according to the data downloaded from the server. Since the system corresponds to the embodiment shown in Fig. 1, the same or similar points will not be described in detail, and the relevant parts may be referred to.
  • the data uploaded or downloaded as described in the above embodiments is all terms and/or attribute parameters that have changed.
  • the following two embodiments will be described with the case where the uploaded or downloaded data is a partial term and/or attribute parameter that changes.
  • FIG. 3 a flow chart of a method for a method for synchronizing update of a user's thesaurus is shown, which relates to a server and at least one client, including:
  • Step 301 Presetting a storage space for storing a user vocabulary on the server side;
  • Step 302 When the first trigger condition is met, uploading the local user vocabulary and the server vocabulary to increase the vocabulary and/or the higher word frequency to the server end, and the server uses the partial data to update the server vocabulary of the server end;
  • the uploaded data may also be an increased term and/or a varying word frequency.
  • it can be done according to the preset rules, and there is no need to limit it here.
  • Step 303 When the second trigger condition is met, the user vocabulary on the server side is compared with the local user vocabulary to increase the vocabulary and/or the higher word frequency to the local computing device, and the local computing device uses the partial data to update the local user word. Library.
  • the downloaded data may also be an increased term and/or a varying word frequency.
  • This embodiment is very similar to the embodiment shown in Fig. 1, and the related description can be applied to the present embodiment.
  • the specifically uploaded data may be only the added data portion, or may be the entire user vocabulary.
  • FIG. 4 a structural block diagram of a system embodiment of a user lexicon synchronization update is shown, which relates to a server and at least one client, including:
  • a storage unit 401 located at the server end, configured to store multiple user vocabularies according to the user vocabulary identifier
  • the client communication unit 402 is configured to upload the local user vocabulary and the server-side user vocabulary to increase the term and/or the higher word frequency to the server;
  • a server communication unit 403 configured to send a server-side user vocabulary with an increased term and/or a higher word frequency to the client than the local user vocabulary
  • At least one comparison unit 404 is located at the client or the server for comparing the local user vocabulary with the server vocabulary of the server; the comparison unit shown in the embodiment of FIG. 4 has only one, located at the server; in other embodiments, Each client can also set a comparison unit;
  • the server update unit 405 is configured to update the server-side user vocabulary according to the upload data
  • the client update unit 406 is configured to update the local user vocabulary according to the data downloaded from the server. Since the system corresponds to the method embodiment shown in FIG. 3, the same or similar points will not be described in detail, and the relevant parts may be referred to.
  • the foregoing four embodiments are all based on the concept of overall comparison of the thesaurus and data part transmission, but if the data records in the thesaurus are compared one by one to obtain the data to be transmitted, it is very computationally consuming. Even the server is unbearable, especially when there are multiple client request processing at the same time.
  • the following example presents a way to conserve computing resources: by local The method of setting up the unsynchronized vocabulary in the user vocabulary reduces the comparison process; further, a time stamp can be set up to avoid the direct comparison process for the data record.
  • a method and system for synchronizing update of a user vocabulary is shown, which relates to a server and at least one client, including:
  • Step 501 Record the input term and the word frequency information of the user to the unsynchronized word list; the local user vocabulary includes the synchronized vocabulary and the unsynchronized vocabulary; that is, after one update is completed, the input behavior information of the user is recorded in the unsynchronized word.
  • the next update only needs to upload the data in the unsynchronized vocabulary.
  • Step 502 Upload the unsynchronized vocabulary to the server when the first trigger condition is met; and add the word frequency of the server, if the entry does not exist in the server, join.
  • Step 503 When the second trigger condition is met, download server-side data for updating the synchronized word list in the local user vocabulary.
  • the downloaded server-side data may be an entire server-side user vocabulary, and the update is to directly replace the synchronized vocabulary in the local user vocabulary. This is the easiest way to update, but it can increase the waste of communication resources.
  • the client when downloading server-side data, the client uploads a timestamp of the previous download of the server-side data; the server compares the timestamp with the timestamp of each term maintained by the server, and the server-side data sent is: Terms and/or attribute parameters that are changed after the timestamp uploaded by the client.
  • the updating process may use the data records to cover the corresponding records in the synchronized word list, and if it is a newly added term, join the synchronized word list.
  • the timestamp of the download update is recorded according to the notification of the server; the server maintains the timestamp of each entry for the upload situation. Since the time stamp can be completely maintained by the server, it is preferably a server clock.
  • the term and/or attribute parameter changed after the timestamp uploaded by the client may be the data uploaded by the client or other client after the timestamp, or may be the server according to the user vocabulary or Update data automatically added after multiple user lexicon analysis, for example, some comprehensive personality data or adjustment of attribute parameters.
  • the embodiment may further include: Step 504: The server confirms to the client that the uploaded unsynchronized word list has been received; 505. The client merges the unsynchronized word list into the synchronized word list, where the combining may be a method of increasing the word frequency. If the term does not exist in the synchronized word list, the joining may be performed.
  • the embodiment may further include: when uploading and downloading data, the client provides a user vocabulary identifier, and the user vocabulary identifier is used to point to a specific user vocabulary.
  • the user vocabulary identifier may be a user name (for example, a user registration account), or may be a combination of an identification number assigned by the server (for example, a serial number, etc.) or a user name and an identification number, or may be a client. Calculate device hardware identification or address identification, and so on.
  • the user lexicon identification can only be accurately pointed to the required user vocabulary, and the embodiment does not need to limit its form here.
  • a user registration account may correspond to a user vocabulary, or may correspond to multiple user vocabularies, and may indicate which vocabulary to update when updating.
  • a user vocabulary can also correspond to multiple user registration accounts, that is, a situation in which multiple users use the same user vocabulary together. For example, a professional group member jointly maintains a user vocabulary.
  • the user may be required to pass the identity authentication before the processing operations such as uploading and downloading can be completed.
  • Specific identity authentication techniques are well known and will not be described here.
  • the user lexicon data corresponding to the account may be downloaded; or multiple identity authentication may be performed, and the data in the corresponding multiple user vocabularies may be downloaded and merged into the local user.
  • Thesaurus for downloading data on the server side, after an identity authentication, the user lexicon data corresponding to the account may be downloaded; or multiple identity authentication may be performed, and the data in the corresponding multiple user vocabularies may be downloaded and merged into the local user. Thesaurus.
  • the data uploaded by the client and the data stored by the server may further include: user input method Configuration data, and when to set the configuration data.
  • the embodiment may further include: uploading configuration data of the user input method, and setting a time of the configuration data, comparing the local configuration data of the user and the configuration data of the server, and setting the time according to the configuration data after the time is changed. Or keep the configuration data on the server side.
  • the embodiment may further include: downloading configuration data of the server and setting the time of the configuration data, comparing the local configuration data of the user and the configuration data of the server, and changing or retaining the local configuration data according to the configuration data after the time is set.
  • the step of updating the configuration data the following manner may also be adopted: The local configuration data is changed or retained according to the configuration data of the server. Since the setting of the configuration data is generally implemented by a selection method, the update can be performed by rewriting.
  • users may delete some entries in the local user lexicon, which can be updated by recording in the unsynchronized vocabulary. You can set up a new vocabulary to update it. When you upload the data, you can upload the vocabulary.
  • the deleted words involved in the download it can be recorded in the thesaurus data record, and the deleted words are updated by updating the data records after the timestamp locally; or can be recorded in the deleted words table on the server side, and the local deletion is performed by updating The vocabulary is updated.
  • the user may manually record the deleted word information of the user; or, by detecting the user's fallback operation in the candidate word window, the user's deleted word information may be recorded; or, The deletion operation of the user selected word on the screen after the preset time is detected, and the user's deleted word information is recorded.
  • FIG. 6 a system for synchronous updating of user lexicon corresponding to the method of FIG. 5 is shown, which relates to a server and at least one client, including:
  • the recording unit 602 is located at the client, and is used for recording the input term and the word frequency information of the user to the unsynchronized word list;
  • the local user vocabulary includes the synchronized vocabulary and the unsynchronized vocabulary;
  • a client communication unit 603 configured to upload the unsynchronized vocabulary to the server when the trigger condition is met;
  • the client update unit 604 is configured to update the local user vocabulary according to the data downloaded from the server; the server communication unit 605 is configured to send the user vocabulary data stored in the server to the client; and the server update unit 606 is configured to upload the The unsynchronized vocabulary is merged with the server's existing user vocabulary.
  • the server-side data that is sent may be the entire server-side user vocabulary, and the update may directly replace the synchronized vocabulary in the local user vocabulary.
  • the sent server-side data is: a term and/or an attribute parameter that is changed after the timestamp uploaded by the client.
  • the download request data of the client further includes: a timestamp of the previous download of the server-side data; the system further includes: a thesaurus comparison unit 607 located at the server end, configured to compare the timestamps The timestamp of each entry maintained with the server.
  • the client may further include: an unsynchronized vocabulary merging unit 608, configured to merge the unsynchronized vocabulary into the synchronized vocabulary when receiving the acknowledgment information that the server has received the unsynchronized vocabulary; The unsynchronized vocabulary.
  • an unsynchronized vocabulary merging unit 608 configured to merge the unsynchronized vocabulary into the synchronized vocabulary when receiving the acknowledgment information that the server has received the unsynchronized vocabulary.
  • the data uploaded by the client and the data stored by the server further include: configuration data of the user input method, and a time when the configuration data is set.
  • the client's download request data also includes: The setting time of the local configuration data.
  • the system further includes: a configuration data comparing unit 609 located at the server end, configured to compare the local configuration data of the user with the configuration data of the server, and send the setting time of the local configuration data after the setting time of the server configuration data is sent.
  • Server-side configuration data located at the client, configured to change local configuration data according to the received server-side configuration data.
  • the upload data and the download request data of the client further include: a user vocabulary identifier.
  • FIG. 7 there is shown an embodiment of a method for synchronizing user lexicon updates, which combines uploading and downloading, which is well suited for users to convert complex update situations using input methods between multiple computing devices.
  • Step 701 Record a user input term and word frequency information to an unsynchronized word list; and the local user vocabulary includes a synchronized word list and an unsynchronized word.
  • the client maintains a client timestamp for the local user vocabulary;
  • Step 702 When the trigger condition is met, upload the data D1 in the client unsynchronized vocabulary to the server, and upload the current client timestamp T1 as a parameter;
  • Step 703 The server searches for a term with a timestamp higher than T1 in the server-side user vocabulary to form a set D2; the server maintains a global timestamp, and maintains a term timestamp for each entry;
  • Step 704 The server updates the global timestamp to T2, and sends D2 and T2 to the corresponding client.
  • Step 706 The client updates the synchronized word list by using the data D2, and merges the data D1 into the synchronized word list;
  • Step 707 The client clears the unsynchronized word list, and updates the client timestamp to T2.
  • the embodiment may further include: when uploading and downloading data, the client provides a user vocabulary identifier, and the user vocabulary identifier is used to point to a specific user vocabulary.
  • the user may be required to pass the identity authentication before the processing operations such as uploading and downloading can be completed.
  • this embodiment may also include an update of configuration data and the like. Due to space limitations, the parts mentioned in the previous embodiments are not repeated here, please refer to the relevant description.
  • the user's input behavior information has been recorded in the unsynchronized word list: "User input Wl, W2, once,,, record as” Wl: 1; W2: 1". Since at this time, the server does not store data, it cannot return valid data D2, and client 1 merges the unsynchronized words table (word frequency addition) into the synchronized word list, and according to the server The notification changes the client timestamp to "2". The server sets the timestamp of Wl, W2 to "2".
  • the server sends D2 and the updated timestamp "3" - to the client 2; then, the server will upload the data D1 "W2: 1; W3: 1” and the stored data "Wl: 1 (2); W2: 1 ( 2 ),, merge (word frequency addition), and update the timestamp of the entry involved in the merge to "3", for example "W2: 1 + 1 (3); W3: 1 (3)”.
  • Client 2 Update the data D2 "W1: 1; W2: 1" to the synchronized vocabulary (if the entry does not exist, add the vocabulary, if it exists, directly cover it); and the data of the unsynchronized vocabulary D1 "W2: 1; W3: 1" merges into the synchronized word list (word frequency addition). Therefore, the data in the synchronized word list obtained by client 2 is "Wl: 1; W2: 1 + 1; W3: 1" Finally, Client 2 changes the client timestamp to "3" based on the server's notification.
  • the timestamp of client 2 is “7", and the data set D2 found by the server is "W4: 3 (8); W5: 1 (8) ", because the entry timestamp "8" of W4 and W5 is larger than the client. 2 timestamp "7".
  • the D2 can be directly updated to the synchronized vocabulary, and the client timestamp is changed to "9" according to the notification of the server.
  • an input method client is shown, which may specifically include the following components:
  • a recording unit 801 configured to record a user input term and word frequency information to an unsynchronized word list;
  • the local user vocabulary includes a synchronized vocabulary and an unsynchronized vocabulary;
  • a client communication unit 802 configured to upload data in the unsynchronized word list when the trigger condition is met
  • the client update unit 803 is configured to update the synchronized word list by using the data D2 returned by the server, and merge the data D1 into the synchronized word list; and clear the unsynchronized word list, and update the client time stamp according to the notification of the server to T2;
  • the data D2 returned by the server is a set of terms whose term timestamp is found in the server-side user vocabulary is higher than T1, and the timestamp T2 is determined by the server.
  • the data uploaded by the client and the data stored by the server may further include: configuration data of the user input method, and a time when the configuration data is set.
  • the update request data of the client further includes: setting time of the local configuration data; at this time, the client may further include: a configuration data changing unit 804, configured to change the local configuration data according to the received server-side configuration data.
  • the configuration data returned by the server is: after comparing the local configuration data of the user and the configuration data of the server, setting the configuration data later than the local setting time.
  • the update request data of the client further includes: a user vocabulary identifier.
  • a server for synchronizing update of a user's thesaurus is shown, which may include: a storage unit 901, configured to store a plurality of user vocabularies according to a user vocabulary identifier;
  • the server processing unit 902 is configured to search for a term with a timestamp higher than T1 in the server-side user vocabulary to form a set D2; and update the global timestamp to T2; the timestamp T1 is an uploaded client timestamp ;
  • a server communication unit 903, configured to send D2 and T2 to the corresponding client;
  • the server updating unit 904 is configured to merge the uploaded data D1 with the stored user vocabulary of the server, and update the term time stamp of the merging to T2; the data D1 is recorded by the client in the unsynchronized vocabulary The data in the user, including the user's input terms and word frequency information.
  • the data uploaded by the client and the data stored by the server may further include: a user input method
  • the configuration data, and the time when the configuration data is set, when the trigger condition is met, the update request data of the client further includes: a setting time of the local configuration data
  • the server may further include: a configuration data comparing unit 905, configured to compare The local configuration data of the user and the configuration data of the server end, if the setting time of the local configuration data is set after the setting time of the server configuration data, the server configuration data is sent; the client changes the local configuration according to the received server configuration data. data. If the setting time of the server side configuration data is earlier than the setting time of the local configuration data, the corresponding configuration data of the server side is updated according to the uploaded local configuration data.
  • the client clears the unsynchronized word list only after receiving the confirmation information of the server, and if not received, uploads the information in all the unsynchronized words in the next upload.
  • processing methods can also be adopted: organize each submitted data into one transaction, and apply for the transaction number before each submission; the server records the transaction number that has been successfully submitted so far, and the client fails to submit each time after submitting. If the confirmation has been successfully submitted, save the commit transaction for the next time; the client can submit the transaction that failed to confirm the success when it commits next time (or it is feasible to implement through transaction consolidation).

Abstract

A method of updating the user word stock synchronously, relating to a server and at least a client terminal. It includes: presetting the storage space for storing the user word stock in the server terminal; uploading the different entries and/or different attribute parameters of the local user word stock in comparison of the local user word stock with the user word stock in the server terminal to the server terminal when the first trigger condition is satisfied, the server updating the user word stock in the server terminal by using the data; downloading the different entries and/or different attribute parameters of the user word stock in the server terminal in comparison of the user word stock in the server terminal with the local user word stock to the local computing device when the second trigger condition is satisfied, the local computing device updating the local user word stock by using the data.

Description

一种用户词库同步更新的方法和系统  Method and system for synchronous updating of user lexicon
本申请要求于 2007 年 4 月 20 日提交中国专利局、 申请号为 200710098199.6、 发明名称为"一种用户词库同步更新的方法和系统"的中国专 利申请的优先权, 其全部内容通过引用结合在本申请中。  This application claims priority to Chinese Patent Application No. 200710098199.6, entitled "Method and System for Simultaneous Update of User Thesaurus", filed on April 20, 2007, the entire contents of which are incorporated by reference. In this application.
技术领域 Technical field
本发明涉及输入法词库更新技术领域,特别是涉及一种用户词库同步更新 的方法和系统。  The present invention relates to the field of input method lexicon update technology, and in particular, to a method and system for synchronous updating of user lexicon.
背景技术 Background technique
当前的输入法系统(包括中文、 日文以及韩文等等)都 于其词库系统 以及词库系统中的词频信息来为使用者在信息输入过程中提供候选词的排序。 候选词的排序是使用者在信息输入过程中首选词命中率高低的一个重要指标。 当然, 以中文输入法为例, 从技术上讲, 输入法系统本身是无法知悉那个词是 用户最需要的; 但是在浩如烟海的中文字词中,各个字词的使用和出现频率是 不同的,将出现频率较高的字词排序在前就可以大大提高输入法系统的首选词 命中率, 即可以从概率上提高排序在前的词汇满足用户需要的可能性。  The current input method system (including Chinese, Japanese, Korean, etc.) is used in the lexicon system and the word frequency information in the lexicon system to provide the user with the ordering of candidate words in the information input process. The sorting of candidate words is an important indicator for the user's preferred hit rate in the information input process. Of course, taking the Chinese input method as an example, technically speaking, the input method system itself cannot know that the word is most needed by the user; but in the vast Chinese characters, the use and frequency of each word are different. Sorting the words with higher frequency in the first place can greatly improve the preferred word hit rate of the input method system, that is, the probability that the sorted vocabulary can satisfy the user's needs can be improved probabilistically.
在现有技术中,输入法系统一般包括一系统词库, 用于满足大多数用户的 使用习惯, 还包括一用户词库, 用于记录特定用户的使用习惯, 以更好的提高 该用户的输入效率。但是随着计算机技术的飞速发展,现有的输入法用户一般 都有可能使用多台计算机, 例如, 办公室计算机、 家用计算机以及移动笔记本 或者他人的计算机等等; 并且还有可能在多台计算机之间频繁转换。 因此, 如 何保证这些计算机中、针对该特定用户的用户词库是一致的 ,是迫切需要解决 的技术问题之一。 另外, 由于计算机病毒的泛滥, 大多数用户都会遇到计算机 重装操作系统的情况,那么如何保证重装前的计算机和重装后的计算机中的用 户词库是一致的, 也是需要解决的问题之一。  In the prior art, the input method system generally includes a system vocabulary for satisfying the usage habits of most users, and a user vocabulary for recording the usage habits of a specific user, so as to better improve the user's usage. Input efficiency. However, with the rapid development of computer technology, existing input method users are generally likely to use multiple computers, such as office computers, home computers and mobile notebooks or other people's computers, etc.; and possibly in multiple computers Frequent conversions. Therefore, how to ensure that the user vocabulary of these computers is consistent for this particular user is one of the technical problems that need to be solved urgently. In addition, due to the proliferation of computer viruses, most users will encounter the situation that the computer reinstalls the operating system. How to ensure that the user's vocabulary in the computer before reinstallation and the computer after reinstallation are consistent, and it is also a problem to be solved. one.
现有的方式只能由熟悉计算机知识的用户自行备份用户词库、然后覆盖旧 的用户词库的方式来解决上述问题,但是这样的操作必然会带来以下问题: 首 先, 很多用户不熟悉计算机知识, 难以完成上述工作; 其次, 为了在多台计算 机之间达到同步, 用户需要频繁的备份和覆盖, 导致效率低下, 因而实际上很 难实现多台计算机之间的准确同步。 总之, 迫切需要本领域技术人员提出一种 创新的同步更新用户词库的方法。 The existing method can only solve the above problems by the user who is familiar with the computer knowledge to back up the user vocabulary and then overwrite the old user vocabulary, but such an operation will inevitably bring the following problems: First, many users are not familiar with the computer. Knowledge, it is difficult to complete the above work; Secondly, in order to achieve synchronization between multiple computers, users need frequent backup and coverage, resulting in inefficiency, so it is actually difficult to achieve accurate synchronization between multiple computers. In short, there is an urgent need for a person skilled in the art to propose a Innovative method of synchronizing user lexicon.
发明内容 Summary of the invention
本发明所要解决的技术问题是提供一种同步更新用户词库的方法和系统, 以满足特定用户在不同计算机之间变换使用输入法时,所使用的各个用户词库 基本一致的需求。  The technical problem to be solved by the present invention is to provide a method and system for synchronously updating a user's vocabulary to meet the requirements of a specific user vocabulary used by a particular user when using an input method between different computers.
为了解决上述问题,本发明公开了一种用户词库同步更新的方法,其涉及 服务器和至少一个客户端,该方法可以包括: 在服务器端预置用于存储用户词 库的存储空间; 满足第一触发条件时,上传本地用户词库与服务器端的用户词 库相比不同的词条和 /或不同的属性参数至服务器端 , 服务器采用该部分数据 更新服务器端用户词库; 满足第二触发条件时, 下载服务器端的用户词库与本 地用户词库相比不同的词条和 /或不同的属性参数至本地计算设备, 本地计算 设备采用该部分数据更新本地用户词库。  In order to solve the above problem, the present invention discloses a method for synchronously updating a user vocabulary, which relates to a server and at least one client. The method may include: presetting a storage space for storing a user vocabulary on the server side; When a trigger condition is generated, the local user vocabulary uploads a different entry and/or different attribute parameters to the server side than the server vocabulary of the server side, and the server uses the partial data to update the server-side user vocabulary; the second trigger condition is satisfied. When the server-side user vocabulary downloads different terms and/or different attribute parameters from the local user vocabulary to the local computing device, the local computing device uses the partial data to update the local user vocabulary.
优选的, 所述的方法还可以包括: 当上传和下载数据时, 客户端提供用户 词库标识, 所述用户词库标识用于指向特定的用户词库。  Preferably, the method may further include: when uploading and downloading data, the client provides a user vocabulary identifier, and the user vocabulary identifier is used to point to a specific user vocabulary.
优选的, 所述上传或下载的数据为发生变化的全部词条和 /或属性参数; 或者, 所述上传或下载的数据为发生变化的部分词条和 /或属性参数。  Preferably, the uploaded or downloaded data is all terms and/or attribute parameters that change; or the uploaded or downloaded data is a partial term and/or attribute parameter that changes.
依据本发明另一实施例,还公开了一种用户词库同步更新的系统, 涉及服 务器和至少一个客户端, 该系统可以包括:  According to another embodiment of the present invention, a system for synchronizing update of a user vocabulary is disclosed, which relates to a server and at least one client, and the system may include:
存储单元, 位于服务器端, 用于依据用户词库标识, 存储多个用户词库; 的词条和 /或不同的属性参数至服务器端;  a storage unit, located at the server end, configured to store a plurality of user lexicons and/or different attribute parameters to the server according to the user vocabulary identifier;
服务器通信单元,用于发送服务器端的用户词库与本地用户词库相比不同 的词条和 /或不同的属性参数至客户端;  a server communication unit, configured to send a server-side user vocabulary different entry and/or different attribute parameters to the client than the local user vocabulary;
至少一个比较单元,位于客户端或者服务器端, 用于比较本地用户词库与 服务器端的用户词库;  At least one comparison unit, located at the client or the server, for comparing the user vocabulary of the local user vocabulary with the server side;
服务器更新单元, 用于依据上传数据更新服务器端用户词库;  a server update unit, configured to update a server-side user vocabulary according to the uploaded data;
客户端更新单元, 用于依据从服务器下载的数据更新本地用户词库。 优选的, 所述上传或下载的数据为发生变化的全部词条和 /或属性参数; 或者, 所述上传或下载的数据为发生变化的部分词条和 /或属性参数。 依据本发明另一实施例,还公开了一种用户词库同步更新的方法, 涉及服 务器和至少一个客户端,该方法可以包括: 记录用户的输入词条和相应的属性 参数至未同步词表; 本地用户词库包括已同步词表和未同步词表; 满足第一触 发条件时, 上传数据至服务器, 所述上述的数据包括未同步词表; 服务器将上 传的未同步词表和服务器已存的用户词库进行合并; 满足第二触发条件时, 下 载服务器端数据, 用于更新本地用户词库中的已同步词表。 A client update unit for updating a local user vocabulary based on data downloaded from a server. Preferably, the uploaded or downloaded data is all terms and/or attribute parameters that change; or the uploaded or downloaded data is a partial term and/or attribute parameter that changes. According to another embodiment of the present invention, a method for synchronous updating of a user vocabulary is disclosed, which relates to a server and at least one client. The method may include: recording a user input term and a corresponding attribute parameter to an unsynchronized vocabulary The local user vocabulary includes the synchronized vocabulary and the unsynchronized vocabulary; when the first trigger condition is met, the data is uploaded to the server, and the above data includes the unsynchronized vocabulary; the server will upload the unsynchronized vocabulary and the server has The saved user vocabulary is merged; when the second trigger condition is met, the server-side data is downloaded for updating the synchronized vocabulary in the local user lexicon.
优选的, 所述下载的服务器端数据为服务器端的整个用户词库, 所述更新 为直接替换本地用户词库中的已同步词表。  Preferably, the downloaded server-side data is an entire user vocabulary of the server, and the update is to directly replace the synchronized vocabulary in the local user vocabulary.
优选的, 所述的方法还可以包括: 当下载服务器端数据时, 客户端上传前 次下载服务器端数据的时间戳;服务器比较该客户端上传的时间戳与服务器端 维护的各词条的时间戳, 所发送的服务器端数据为: 在该客户端上传的时间戳 之后改变的词条和 /或属性参数。  Preferably, the method may further include: when downloading server-side data, the client uploads a timestamp of the previous download of the server-side data; the server compares the timestamp uploaded by the client with the time of each term maintained by the server. The server-side data sent is: the terms and/or attribute parameters that are changed after the timestamp uploaded by the client.
优选的, 所述的方法还可以包括: 服务器向客户端确认已收到上传的未同 步词表; 客户端将所述未同步词表合并到已同步词表中。  Preferably, the method may further include: the server confirming to the client that the uploaded unsynchronized word list has been received; the client merges the unsynchronized word list into the synchronized word list.
优选的, 所述用户词库记录有: 用户输入的已有字词及相应的属性参数; 和 /或 , 用户输入的自造字词及相应的属性参数。  Preferably, the user lexicon records: existing words input by the user and corresponding attribute parameters; and/or, self-created words input by the user and corresponding attribute parameters.
优选的,客户端上传的数据和服务器存储的数据还可以包括: 用户输入法 的配置数据,以及设置该配置数据的时间;则,所述方法还可以包括以下步骤: 比较用户的本地配置数据和服务器端的配置数据,以设置时间在后的配置数据 为依据更改或者保留本地配置数据; 和 /或, 比较用户的服务器端的配置数据 和本地配置数据 ,以设置时间在后的配置数据为依据更改或者保留服务器端的 配置数据。  Preferably, the data uploaded by the client and the data stored by the server may further include: configuration data of the user input method, and a time for setting the configuration data; the method may further include the following steps: comparing the local configuration data of the user and The configuration data of the server side changes or retains the local configuration data based on the configuration data after the set time; and/or compares the configuration data and the local configuration data of the server side of the user, to change the configuration data according to the setting time or Keep configuration data on the server side.
优选的, 所述的方法还可以包括: 当上传和下载数据时, 客户端提供用户 词库标识, 所述用户词库标识用于指向特定的用户词库。  Preferably, the method may further include: when uploading and downloading data, the client provides a user vocabulary identifier, and the user vocabulary identifier is used to point to a specific user vocabulary.
优选的,客户端上传的数据还包括删词表, 所述删词表用于记录用户的删 词情况; 服务器依据所述删词表更新服务器端的用户词库。  Preferably, the data uploaded by the client further includes a deletion vocabulary table, wherein the vocabulary list is used to record the deleted words of the user; and the server updates the user vocabulary of the server according to the vocabulary list.
优选的,可以通过以下方式记录用户的删词情况: 通过用户手动操作记录 用户的删词信息; 或者, 通过检测用户在候选词窗口中的回退操作, 记录用户 的删词信息; 或者, 通过检测用户所选字词上屏后在预置时间内的删除操作, 记录用户的删词信息。 Preferably, the user's deletion of the word can be recorded in the following manner: the user's manual operation is used to record the user's deleted words information; or, by detecting the user's fallback operation in the candidate word window, the user's deleted words information is recorded; or, Detecting the deletion operation of the user selected word on the screen within the preset time, Record the user's deleted words.
依据本发明另一实施例,还公开了一种用户词库同步更新的系统, 涉及服 务器和至少一个客户端, 该系统可以包括:  According to another embodiment of the present invention, a system for synchronizing update of a user vocabulary is disclosed, which relates to a server and at least one client, and the system may include:
存储单元, 位于服务器端, 用于依据用户词库标识, 存储多个用户词库; 记录单元,位于客户端, 用于记录用户的输入词条和相应的属性参数至未 同步词表; 本地用户词库包括已同步词表和未同步词表;  a storage unit, located at the server end, for storing a plurality of user vocabularies according to the user lexicon identifier; the recording unit, located at the client, for recording the user input terms and corresponding attribute parameters to the unsynchronized vocabulary; The thesaurus includes synchronized vocabulary and unsynchronized vocabulary;
客户端通信单元, 用于当满足触发条件时, 上传数据至服务器, 所述上述 的数据包括未同步词表;  a client communication unit, configured to upload data to the server when the trigger condition is met, where the foregoing data includes an unsynchronized word list;
客户端更新单元, 用于依据从服务器下载的数据更新本地用户词库; 服务器通信单元, 用于发送服务器端存储的用户词库数据至客户端; 服务器更新单元,用于将上传的未同步词表和服务器已存的用户词库进行 合并。  a client update unit, configured to update a local user vocabulary according to data downloaded from the server; a server communication unit, configured to send the server vocabulary data stored by the server to the client; and a server update unit, configured to upload the unsynchronized word The table and server stored user vocabulary are merged.
优选的, 所述发送的服务器端数据为整个服务器端用户词库, 所述更新为 直接替换本地用户词库中的已同步词表。  Preferably, the sent server-side data is an entire server-side user vocabulary, and the update is to directly replace the synchronized vocabulary in the local user vocabulary.
优选的, 当下载服务器端数据时, 客户端的下载请求数据还可以包括: 前 次下载服务器端数据的时间戳; 则所述系统还可以包括: 词库比较单元, 位于 服务器端, 用于比较该客户端上传的时间戳与服务器端维护的各词条的时间 戳; 所述发送的服务器端数据为: 在该客户端上传的时间戳之后改变的词条和 /或属性参数。  Preferably, when the server-side data is downloaded, the download request data of the client may further include: a timestamp of the previous download of the server-side data; the system may further include: a thesaurus comparison unit, located at the server, for comparing the The timestamp uploaded by the client and the timestamp of each term maintained by the server; the server-side data sent is: the term and/or attribute parameter changed after the timestamp uploaded by the client.
优选的, 所述的系统还可以包括: 未同步词表合并单元, 位于客户端, 用 于当接收到服务器已收到未同步词表的确认信息时,将所述未同步词表合并到 已同步词表中。  Preferably, the system may further include: an unsynchronized vocabulary merging unit, located at the client, configured to merge the unsynchronized vocabulary into the already received acknowledgment message when the server has received the unsynchronized vocabulary Synchronized in the vocabulary.
优选的,客户端上传的数据和服务器存储的数据还包括: 用户输入法的配 置数据, 以及设置该配置数据的时间; 当下载服务器端数据时, 客户端的下载 请求数据还包括: 本地配置数据的设置时间; 则所述系统还可以包括: 配置数 据比较单元,位于服务器端, 用于比较用户的本地配置数据和服务器端的配置 数据,如果服务器端配置数据的设置时间后于本地配置数据的设置时间, 则发 送服务器端配置数据; 配置数据更改单元, 位于客户端, 用于依据接收的服务 器端配置数据更改本地配置数据。 优选的, 当上传和下载数据时,客户端通信单元发出的上传数据和下载请 求数据还包括: 用户词库标识。 Preferably, the data uploaded by the client and the data stored by the server further include: configuration data of the user input method, and a time for setting the configuration data; when downloading the server-side data, the download request data of the client further includes: Setting the time; the system may further include: a configuration data comparison unit, located at the server side, configured to compare the local configuration data of the user with the configuration data of the server, if the setting time of the local configuration data after the setting time of the server configuration data is set , the server configuration data is sent; the configuration data change unit is located at the client, and is used to change the local configuration data according to the received server configuration data. Preferably, when uploading and downloading data, the upload data and the download request data sent by the client communication unit further include: a user vocabulary identifier.
优选的,客户端上传的数据还包括删词表, 所述删词表用于记录用户的删 词情况。  Preferably, the data uploaded by the client further includes a vocabulary list, and the vocabulary list is used to record the deleted words of the user.
优选的,可以通过以下方式记录用户的删词情况: 通过用户手动操作记录 用户的删词信息; 或者, 通过检测用户在候选词窗口中的回退操作, 记录用户 的删词信息; 或者, 通过检测用户所选字词上屏后在预置时间内的删除操作, 记录用户的删词信息。  Preferably, the user's deletion of the word can be recorded in the following manner: the user's manual operation is used to record the user's deleted words information; or, by detecting the user's fallback operation in the candidate word window, the user's deleted words information is recorded; or, The deletion operation of the user selected word on the screen after the preset time is detected, and the user's deleted word information is recorded.
依据本发明另一实施例,还公开了一种用户词库同步更新的方法, 涉及服 务器和至少一个客户端,该方法可以包括: 记录用户的输入词条和相应的属性 参数至未同步词表; 本地用户词库包括已同步词表、 未同步词表; 客户端针对 本地用户词库存储一客户端时间戳,所述客户端时间戳由服务器确定; 满足触 发条件时, 上传未同步词表中的数据 D1至服务器, 以及将当前客户端时间戳 T1作为参数上传; 服务器在服务器端用户词库中查找词条时间戳高于 T1的 词条, 构成集合 D2; 所述服务器维护一全局时间戳, 以及针对每个词条维护 一词条时间戳;服务器更新全局时间戳至 T2,并发送 D2和 T2至相应客户端; 的词条时间戳更新为 T2; 客户端采用数据 D2更新已同步词表, 并将数据 D1 合并至已同步词表; 客户端清空未同步词表, 并将客户端时间戳更新为 T2。  According to another embodiment of the present invention, a method for synchronous updating of a user vocabulary is disclosed, which relates to a server and at least one client. The method may include: recording a user input term and a corresponding attribute parameter to an unsynchronized vocabulary The local user vocabulary includes the synchronized vocabulary and the unsynchronized vocabulary; the client stores a client timestamp for the local user word library, the client timestamp is determined by the server; when the trigger condition is met, the unsynchronized vocabulary is uploaded Data D1 to the server, and uploading the current client timestamp T1 as a parameter; the server searches for a term with a timestamp higher than T1 in the server-side user vocabulary to form a set D2; the server maintains a global time Poke, and maintain a term timestamp for each entry; the server updates the global timestamp to T2 and sends D2 and T2 to the corresponding client; the entry timestamp is updated to T2; the client uses the data D2 update to be synchronized Vocabulary, and merge data D1 into the synchronized vocabulary; the client empties the unsynchronized vocabulary and updates the client timestamp T2.
优选的, 所述用户词库记录有: 用户输入的已有字词及相应的属性参数; 和 /或 , 用户输入的自造字词及相应的属性参数。  Preferably, the user lexicon records: existing words input by the user and corresponding attribute parameters; and/or, self-created words input by the user and corresponding attribute parameters.
优选的, 所述的方法还可以包括: 上传用户输入法的配置数据, 以及设置 该配置数据的时间; 比较用户的本地配置数据和服务器端的配置数据, 以设置 时间在后的配置数据为依据更改或者保留本地配置数据; 和 /或, 上传用户输 入法的配置数据, 以及设置该配置数据的时间; 比较用户的服务器端的配置数 据和本地配置数据 ,以设置时间在后的配置数据为依据更改或者保留服务器端 的配置数据。  Preferably, the method may further include: uploading configuration data of the user input method, and setting a time of the configuration data; comparing the local configuration data of the user with the configuration data of the server, and setting the time according to the configuration data after the time is changed. Or retain the local configuration data; and/or, upload the configuration data of the user input method, and the time when the configuration data is set; compare the configuration data of the user's server side and the local configuration data, to change the configuration data based on the time after the change or Keep configuration data on the server side.
优选的, 所述的方法还可以包括: 当上传和下载数据时, 客户端提供用户 词库标识, 所述用户词库标识用于指向特定的用户词库。 依据本发明另一实施例, 还公开了一种输入法客户端, 包括: 记录单元, 用于记录用户的输入词条和相应的属性参数至未同步词表; 本 地用户词库包括已同步词表和未同步词表; Preferably, the method may further include: when uploading and downloading data, the client provides a user vocabulary identifier, and the user vocabulary identifier is used to point to a specific user vocabulary. According to another embodiment of the present invention, an input method client is further disclosed, including: a recording unit, configured to record a user input term and a corresponding attribute parameter to an unsynchronized word list; the local user vocabulary includes the synchronized word Table and unsynchronized vocabulary;
客户端通信单元, 用于当满足触发条件时, 上传未同步词表中的数据 D1 至服务器, 以及将针对本地用户词库的当前客户端时间戳 T1作为参数上传; 客户端更新单元, 用于采用服务器返回的数据 D2更新已同步词表, 并将 数据 D1合并至已同步词表; 以及清空未同步词表, 并根据服务器的通知将客 户端时间戳更新为 T2;所述服务器返回的数据 D2为在服务器端用户词库中查 找到的词条时间戳高于 T1的词条集合, 所述时间戳 T2由服务器确定。  a client communication unit, configured to upload the data D1 in the unsynchronized word list to the server when the trigger condition is met, and upload the current client timestamp T1 for the local user vocabulary as a parameter; the client update unit, Update the synchronized word list with the data D2 returned by the server, and merge the data D1 into the synchronized word list; and clear the unsynchronized word list, and update the client time stamp to T2 according to the notification of the server; the data returned by the server D2 is a set of terms whose term timestamp is found in the server-side user vocabulary is higher than T1, and the timestamp T2 is determined by the server.
优选的, 所述的客户端还可以包括: 配置数据更改单元, 用于依据接收的 服务器端配置数据更改本地配置数据; 所述服务器返回的配置数据为:设置时 间晚于本地设置时间的配置数据;所述本地设置时间包括在客户端的更新请求 数据中。  Preferably, the client may further include: a configuration data changing unit, configured to change local configuration data according to the received server-side configuration data; and the configuration data returned by the server is: setting data whose setting time is later than the local setting time The local setup time is included in the update request data of the client.
优选的, 当更新数据时, 客户端通信单元的更新请求数据还包括: 用户词 库标识。  Preferably, when the data is updated, the update request data of the client communication unit further includes: a user lexicon identifier.
依据本发明另一实施例 , 还公开了一种用于同步更新用户词库的服务器 , 包括:  According to another embodiment of the present invention, a server for synchronously updating a user vocabulary is further disclosed, including:
存储单元, 用于依据用户词库标识, 存储多个用户词库;  a storage unit, configured to store a plurality of user vocabularies according to the user vocabulary identifier;
服务器处理单元, 用于在服务器端用户词库中查找词条时间戳高于 T1的 词条, 构成集合 D2; 以及更新全局时间戳至 T2; 所述时间戳 T1为上传的客 户端时间戳;  a server processing unit, configured to search for a term with a timestamp higher than T1 in the server-side user vocabulary to form a set D2; and update the global timestamp to T2; the timestamp T1 is an uploaded client timestamp;
服务器通信单元, 用于发送 D2和 T2至相应客户端;  a server communication unit, configured to send D2 and T2 to the corresponding client;
服务器更新单元, 用于将上传的数据 D1和服务器已存的用户词库进行合 并,并将合并所涉及的词条时间戳更新为 T2; 所述数据 D1为客户端记录在未 同步词表中的数据, 包括用户的输入词条和词频信息。  a server update unit, configured to merge the uploaded data D1 with the stored user vocabulary of the server, and update the term time stamp of the merging to T2; the data D1 is recorded by the client in the unsynchronized vocabulary The data, including the user's input terms and word frequency information.
优选的, 所述的服务器还可以包括: 配置数据比较单元, 用于比较用户的 本地配置数据和服务器端的配置数据 ,如果服务器端配置数据的设置时间后于 本地配置数据的设置时间, 则发送服务器端配置数据; 所述本地设置时间包括 在客户端的更新请求数据中。 与现有技术相比, 本发明具有以下优点: Preferably, the server may further include: a configuration data comparison unit, configured to compare the local configuration data of the user with the configuration data of the server, and if the setting time of the local configuration data is set after the setting time of the server configuration data, the sending server End configuration data; the local setting time is included in the update request data of the client. Compared with the prior art, the present invention has the following advantages:
本发明通过各种各样的上传行为 ,可以将发布在多台分散的计算设备上的 同一用户的输入习惯信息合并备份至服务器端;进而 ,可以通过各种下载行为 , 将最贴近用户自己输入习惯的词库更新至用户使用的任何当前计算设备中,从 而解决当用户更换计算设备时, 无法方便的获得自己之前的用户词库的问题, 进一步提高用户使用输入法的便利性, 加速用户的输入速度。  The invention can back up and input the input habit information of the same user posted on multiple distributed computing devices to the server through various uploading behaviors; and, in turn, can input the user closest to the user through various downloading behaviors. The custom vocabulary is updated to any current computing device used by the user, thereby solving the problem that when the user replaces the computing device, the user's previous vocabulary cannot be conveniently obtained, thereby further improving the convenience of the user using the input method, and accelerating the user's Input speed.
另外,本发明可以收集多个分散计算设备中的用户输入信息,从而可以在 服务器端得到一个非常完善的用户词库,较其中任何一台计算设备中的用户词 库都更能反映用户的用户输入习惯。  In addition, the present invention can collect user input information in a plurality of distributed computing devices, so that a very complete user vocabulary can be obtained on the server side, and the user vocabulary in any one of the computing devices can better reflect the user's user. Input habits.
其次,在本发明的另一优选实施例中,通过未同步词表以及时间戳的管理, 进一步提高了用户词库同步更新的效率, 节约了通信资源和计算资源。  Secondly, in another preferred embodiment of the present invention, the efficiency of synchronous updating of the user's thesaurus is further improved by the management of the unsynchronized vocabulary and the time stamp, thereby saving communication resources and computing resources.
附图说明 DRAWINGS
图 1是一种用户词库同步更新方法实施例的步骤流程图;  1 is a flow chart showing the steps of an embodiment of a user lexicon synchronization update method;
图 2是一种用户词库同步更新装置实施例的结构框图;  2 is a structural block diagram of an embodiment of a user lexicon synchronization update apparatus;
图 3是第二种用户词库同步更新方法实施例的步骤流程图;  3 is a flow chart showing the steps of an embodiment of a second user thesaurus synchronization update method;
图 4是第二种用户词库同步更新系统实施例的结构框图;  4 is a structural block diagram of an embodiment of a second user thesaurus synchronization update system;
图 5是第三种用户词库同步更新方法实施例的步骤流程图;  5 is a flow chart showing the steps of an embodiment of a third user vocabulary synchronization update method;
图 6是第三种用户词库同步更新系统实施例的结构框图;  6 is a structural block diagram of an embodiment of a third user thesaurus synchronization update system;
图 Ί是第四种用户词库同步更新方法实施例的步骤流程图;  Figure Ί is a flow chart of the steps of the fourth embodiment of the user lexicon synchronization update method;
图 8是一种输入法客户端的结构框图;  Figure 8 is a structural block diagram of an input method client;
图 9是一种用于同步更新用户词库的服务器的结构框图。  9 is a structural block diagram of a server for synchronously updating a user's thesaurus.
具体实施方式 detailed description
为使本发明的上述目的、特征和优点能够更加明显易懂, 下面结合附图和 具体实施方式对本发明作进一步详细的说明。  The present invention will be further described in detail with reference to the accompanying drawings and specific embodiments.
本发明所述的用户词库记录可以包括:用户输入的已有字词及相应的属性 参数; 和 /或, 用户输入的自造字词及相应的属性参数。 例如, 用户词库的一 条记录的数据存储结构可以为:  The user lexicon record of the present invention may include: an existing word input by the user and corresponding attribute parameters; and/or a self-created word input by the user and corresponding attribute parameters. For example, the data storage structure of a record of a user's thesaurus can be:
(词条; 属性参数 1 ; 属性参数 2; ......; 属性参数 n )  (entry; attribute parameter 1; attribute parameter 2; ...; attribute parameter n )
其中, 属性参数可以为词频信息、 分类信息、 级别或权重信息等等。 输入 法用户可以通过手动操作对词库记录中的词条、属性参数进行修改。输入法也 可以通过对用户输入行为信息的检测依据预置规则进行自动更新, 例如,根据 用户选词增加词频; 或者, 才 据时间对词频信息进行衰减; 或者, 依据用户的 常用输入环境调整级别或权重等各种方式。 The attribute parameters may be word frequency information, classification information, level or weight information, and the like. Input The user can modify the terms and attribute parameters in the thesaurus record by manual operation. The input method can also automatically update the detection of the user input behavior information according to the preset rule, for example, increasing the word frequency according to the user selection word; or, the word frequency information is attenuated according to the time; or, the level is adjusted according to the user's common input environment. Or weights and other ways.
下面实施例中都仅仅采用属性参数中最常用的词频信息进行说明,但是对 于本领域普通技术人员而言, 将其扩展至其他属性参数, 应该是显而易见的。  The following examples use only the most commonly used word frequency information in the attribute parameters, but it should be apparent to those of ordinary skill in the art that extending it to other attribute parameters.
参照图 1, 示出了一种用户词库同步更新的实施例的步骤流程图, 该方法 涉及服务器和至少一个客户端, 具体可以包括以下步骤:  Referring to FIG. 1, a flow chart of an embodiment of a user lexicon synchronization update is shown. The method relates to a server and at least one client, and specifically includes the following steps:
步骤 101 , 在服务器端预置用于存储用户词库的存储空间。 在服务器端可 以采用任何现有可行的方式实现用户词库的存储, 例如,可以采用数据库的方 式或者数据文件的方式等等。  Step 101: Pre-set a storage space for storing the user vocabulary on the server side. The storage of the user's thesaurus can be implemented on the server side in any existing feasible way, for example, by means of a database or a data file.
步骤 102、 满足第一触发条件时, 上传本地用户词库与服务器端的用户词 库相比不同的词条和 /或词频至服务器端 , 服务器采用该部分数据更新服务器 端用户词库;  Step 102: When the first trigger condition is met, the local user vocabulary is compared with the user vocabulary of the server side, and the term and/or word frequency is compared to the server end, and the server uses the part of the data to update the server user vocabulary;
所述上传可以仅仅上传所述不同的词条和 /或词频, 也可以上传整个本地 用户词库; 二者相比不同的词条和 /或词频就包含在本地用户词库中, 由服务 器选出即可。  The uploading may only upload the different terms and/or word frequency, or upload the entire local user vocabulary; the two different words and/or word frequencies are included in the local user vocabulary, and are selected by the server. Just go out.
步骤 103、 满足第二触发条件时, 下载服务器端的用户词库与本地用户词 库相比不同的词条和 /或词频至本地计算设备, 本地计算设备采用该部分数据 更新本地用户词库。  Step 103: When the second trigger condition is met, downloading the user vocabulary on the server side and the local user vocabulary have different terms and/or word frequency to the local computing device, and the local computing device uses the partial data to update the local user vocabulary.
所述下载可以仅仅下载不同的词条和 /或词频, 也可以下载整个服务器端 本地计算设备选出即可。  The download may only download different terms and/or word frequencies, or may download the entire server-side local computing device to select.
其中, 所述的满足触发条件 (包括所述第一触发条件和第二触发条件 )可 以为: 达到预置的时间点; 或者, 达到预置的字词输入量; 或者, 用户手动触 发等等。所述第一触发条件和第二触发条件可以为同一条件,也可以为不同条 件。  The satisfying trigger condition (including the first trigger condition and the second trigger condition) may be: reaching a preset time point; or, reaching a preset word input amount; or, manually triggering by a user, etc. . The first trigger condition and the second trigger condition may be the same condition or different conditions.
其中,上传客户端和下载客户端可以是同一客户端,也可以是不同的客户 端。 一般的, 上传和下载可以为两个独立的过程。 所述的比较本地用户词库和服务器端的用户词库得到的不同的词条和 /或 词频可以包括以下几种情况: a、 本地用户词库具有, 而服务器端的用户词库 没有的词条及其词频; b、 虽然某个词条在二者中都有, 但是本地用户词库中 可能小); c、 本地用户词库没有, 而服务器端的用户词库中具有的词条及其词 频(例如, 用户通过删除部分本地记录维护本地用户词库)。 The upload client and the download client may be the same client or different clients. In general, uploading and downloading can be two separate processes. The different terms and/or word frequencies obtained by comparing the local user vocabulary and the server-side user vocabulary may include the following situations: a. The local user vocabulary has, and the server-side user vocabulary has no entry and The word frequency; b, although a term is in both, but the local user lexicon may be small); c, the local user lexicon does not, and the server-side user vocabulary has the terms and their word frequency ( For example, a user maintains a local user vocabulary by deleting some local records.
针对上述各种情况, 服务器端所作的更新步骤可以为: a、 增加本地有, 而服务器端没有的词条及其词频; b、 当二者的记录内容不同时, 以本地用户 词库的记录覆盖服务器用户词库的相应记录; c、 删除服务器端比本地用户词 库多出的记录。 因为用户选择上传本地用户词库数据,一般是希望将本地用户 词库的一些改变备份至服务器端的用户词库中去,这些改变可能包括: 增加词 条、修改词频等属性参数以及删除词条等等; 因此, 服务器端的更新策略可以 完全以本地用户词库为准。  For the above various situations, the update step performed by the server side may be: a. Adding a local entry, and the words and words frequency not available on the server side; b. When the recorded content of the two is different, recording the local user lexicon Overwrite the corresponding record of the server user vocabulary; c. Delete the record on the server side that is more than the local user vocabulary. Because the user chooses to upload the local user lexicon data, it is generally desirable to back up some changes of the local user lexicon to the server vocabulary of the server. These changes may include: adding terms, modifying word frequency and other attribute parameters, and deleting terms, etc. Etc;; Therefore, the server-side update strategy can be completely based on the local user lexicon.
所述的比较服务器端的用户词库和本地用户词库得到的不同的词条和 /或 词频可以包括以下几种情况: a、 服务器端的用户词库具有, 而本地用户词库 没有的词条及其词频; b、 虽然某个词条在二者中都有, 但是服务器端的用户 也可能小) ; c、 月良务器端的用户词库中没有, 而本地用户词库具有的词条及其 词频。  The different terms and/or word frequencies obtained by comparing the server-side user vocabulary and the local user vocabulary may include the following situations: a. The server-side user vocabulary has, and the local user vocabulary has no entry and The word frequency; b, although a term is in both, but the server-side user may also be small; c, the user's thesaurus in the server is not in the user's thesaurus, and the local user's thesaurus has the term and Word frequency.
针对上述各种情况, 本地计算设备所作的更新步骤可以为: a、 增加服务 器端有, 而本地没有的词条及其词频; b、 当二者的记录内容不同时, 以服务 器用户词库的相应记录覆盖本地用户词库的记录; c、 删除本地用户词库比服 务器端用户词库多出的记录。即上述的更新策略就是完全以服务器端的用户词 库为准, 在一些情况下, 可以达到非常好的效果, 例如, 用户当前输入法的本 地用户词库是其他用户的, 该用户希望获得自己的服务器端用户词库加以使 用, 完成输入; 那么, 上述更新策略就可以实现该目标, 并且不会无效增加本 地用户词库的字节量,因为一个用户的常用字词对于另一个用户而言可能艮少 用到。 For the above various situations, the updating step performed by the local computing device may be: a, adding a term that is not present locally, and a word frequency that is not present locally; b. when the recorded content of the two is different, the server user lexicon The corresponding record covers the record of the local user lexicon; c . Delete the record of the local user vocabulary more than the server-side user vocabulary. That is to say, the above update strategy is completely based on the server-side user vocabulary. In some cases, very good results can be achieved. For example, the local user vocabulary of the user's current input method is other users, and the user wants to obtain his own. The server-side user vocabulary is used to complete the input; then, the above update strategy can achieve the goal, and does not invalidate the amount of bytes of the local user lexicon, because a user's common words may be for another user. Less used.
步骤 102和步骤 103中的词库比较过程可以在客户端完成,也可以在服务 器端完成。 一般的, 由于服务器端的计算资源比较丰富, 所以优选的, 在服务 器端完成上述比较过程,以避免占用用户本地计算资源,影响用户的输入行为。 The lexicon comparison process in step 102 and step 103 can be done on the client side or in the service. The device is completed. Generally, since the computing resources on the server side are relatively rich, it is preferable to complete the above comparison process on the server side to avoid occupying the local computing resources of the user and affect the input behavior of the user.
另外, 由于服务器端存储了多个用户词库, 在上传和下载时, 需要知悉此 次处理过程指向的是哪个词库。 因此, 本实施例还可以包括: 当上传和下载数 据时,客户端提供用户词库标识,所述用户词库标识用于指向特定的用户词库。 所述用户词库标识可以为用户名 (例如, 用户注册), 也可以为存储词库时服 务器分配的标识号 (例如, 序列号等), 也可以为客户端计算设备硬件标识或 者地址标识等等。 总之, 所述用户词库标识只要能够准确指向所需的用户词库 即可, 本实施例在此并不需要对其形式加以限定。  In addition, since the server side stores multiple user vocabularies, it is necessary to know which lexicon the process refers to during uploading and downloading. Therefore, the embodiment may further include: when uploading and downloading data, the client provides a user vocabulary identifier, and the user vocabulary identifier is used to point to a specific user vocabulary. The user vocabulary identifier may be a user name (for example, a user registration), or an identification number (for example, a serial number, etc.) assigned by the server when storing the vocabulary, or may be a client computing device hardware identifier or an address identifier. Wait. In summary, the user vocabulary identifier can be accurately pointed to the required user vocabulary, and the embodiment does not need to define its form here.
进一步, 为了安全或者隐私的要求, 还可以要求用户通过身份认证之后, 才可以完成上传、 下载等处理操作。 具体的身份认证技术属于公知技术, 在此 就不伴述了。  Further, for security or privacy requirements, the user may be required to pass the identity authentication before the processing operations such as uploading and downloading can be completed. Specific identity authentication techniques are well known and will not be described here.
进一步, 考虑到用户的输入习惯中还可能包括一些配置习惯, 例如, 双拼 设置、标点设置以及各种属性设置等等,故客户端上传的数据和服务器存储的 数据还可以包括: 用户输入法的配置数据, 以及设置该配置数据的时间。  Further, considering that the user's input habits may also include some configuration habits, for example, double-setting settings, punctuation settings, various attribute settings, and the like, the data uploaded by the client and the data stored by the server may further include: user input method Configuration data, and when to set the configuration data.
则优选的, 本实施例还可以包括: 上传用户输入法的配置数据, 以及设置 该配置数据的时间, 比较用户的本地配置数据和服务器端的配置数据, 以设置 时间在后的配置数据为依据更改或者保留服务器端的配置数据。  Preferably, the embodiment may further include: uploading configuration data of the user input method, and setting a time of the configuration data, comparing the local configuration data of the user and the configuration data of the server, and setting the time according to the configuration data after the time is changed. Or keep the configuration data on the server side.
或者,本实施例还可以包括: 下载服务器端的配置数据及设置该配置数据 的时间, 比较用户的本地配置数据和服务器端的配置数据, 以设置时间在后的 配置数据为依据更改或者保留本地配置数据。  Alternatively, the embodiment may further include: downloading configuration data of the server and setting the time of the configuration data, comparing the local configuration data of the user and the configuration data of the server, and changing or retaining the local configuration data according to the configuration data after the time is set. .
当然, 上述配置数据更新的步骤中, 也可以采用以下方式: 依据服务器端 的配置数据更改或者保留本地配置数据。由于配置数据的设置一般都是采用选 择方式实现的, 因此, 其更新采用改写方式即可。  Of course, in the step of updating the configuration data, the following manner may also be adopted: The local configuration data is changed or retained according to the configuration data of the server. Since the setting of the configuration data is generally implemented by the selection method, the update can be performed by rewriting.
参见图 2, 示出了一种用户词库同步更新的系统实施例的结构框图, 其涉 及服务器和至少一个客户端, 包括以下部件:  Referring to Figure 2, there is shown a block diagram of a system embodiment of a user lexicon synchronization update involving a server and at least one client, including the following components:
存储单元 201, 位于服务器端, 用于依据用户词库标识, 存储多个用户词 库;  The storage unit 201 is located at the server end, and is configured to store a plurality of user vocabularies according to the user vocabulary identifier;
客户端通信单元 202, 用于上传本地用户词库与服务器端的用户词库相比 不同的词条和 /或词频至服务器端; The client communication unit 202 is configured to upload the local user vocabulary compared to the server vocabulary on the server side. Different terms and/or words to the server;
服务器通信单元 203 , 用于发送服务器端的用户词库与本地用户词库相比 不同的词条和 /或词频至客户端;  a server communication unit 203, configured to send a server-side user vocabulary different from the local user vocabulary to the client and the word frequency to the client;
至少一个比较单元 204, 位于客户端或者服务器端, 用于比较本地用户词 库与服务器端的用户词库; 图 2实施例中示出的比较单元只有一个,位于服务 器端; 其他实施例中, 在各个客户端还可以设置一比较单元;  At least one comparison unit 204, located at the client or the server, is used to compare the local user lexicon with the server vocabulary of the server; the comparison unit shown in the embodiment of FIG. 2 has only one, located at the server; in other embodiments, Each client can also set a comparison unit;
服务器更新单元 205 , 用于依据上传数据更新服务器端用户词库; 客户端更新单元 206, 用于依据从服务器下载的数据更新本地用户词库。 由于该系统相应于图 1所示的实施例, 因此, 相同或相似之处, 就不再详 述, 参见前述相关部分即可。  The server update unit 205 is configured to update the server-side user vocabulary according to the upload data, and the client update unit 206 is configured to update the local user vocabulary according to the data downloaded from the server. Since the system corresponds to the embodiment shown in Fig. 1, the same or similar points will not be described in detail, and the relevant parts may be referred to.
上面的实施例中所述上传或下载的数据为发生变化的全部词条和 /或属性 参数。 下面两个实施例将以所述上传或下载的数据为发生变化的部分词条和 / 或属性参数的情况, 进行说明。  The data uploaded or downloaded as described in the above embodiments is all terms and/or attribute parameters that have changed. The following two embodiments will be described with the case where the uploaded or downloaded data is a partial term and/or attribute parameter that changes.
参照图 3, 示出了一种用户词库同步更新的方法实施例的步骤流程图, 其 涉及服务器和至少一个客户端, 包括:  Referring to FIG. 3, a flow chart of a method for a method for synchronizing update of a user's thesaurus is shown, which relates to a server and at least one client, including:
步骤 301、 在服务器端预置用于存储用户词库的存储空间;  Step 301: Presetting a storage space for storing a user vocabulary on the server side;
步骤 302、 满足第一触发条件时, 上传本地用户词库与服务器端的用户词 库相比增加的词条和 /或高出的词频至服务器端, 服务器采用该部分数据更新 服务器端的用户词库;  Step 302: When the first trigger condition is met, uploading the local user vocabulary and the server vocabulary to increase the vocabulary and/or the higher word frequency to the server end, and the server uses the partial data to update the server vocabulary of the server end;
当然, 所述上传的数据也可以为增加的词条和 /或变化的词频。 对于如何 选择部分数据以及如何确定所选数据,根据预置规则完成即可,在此并不需要 加以限定。  Of course, the uploaded data may also be an increased term and/or a varying word frequency. For how to select part of the data and how to determine the selected data, it can be done according to the preset rules, and there is no need to limit it here.
步骤 303、 满足第二触发条件时, 下载服务器端的用户词库与本地用户词 库相比增加的词条和 /或高出的词频至本地计算设备, 本地计算设备采用该部 分数据更新本地用户词库。  Step 303: When the second trigger condition is met, the user vocabulary on the server side is compared with the local user vocabulary to increase the vocabulary and/or the higher word frequency to the local computing device, and the local computing device uses the partial data to update the local user word. Library.
当然, 所述下载的数据也可以为增加的词条和 /或变化的词频。  Of course, the downloaded data may also be an increased term and/or a varying word frequency.
本实施例与图 1所示的实施例非常相似,其相关描述均可以应用至本实施 例。  This embodiment is very similar to the embodiment shown in Fig. 1, and the related description can be applied to the present embodiment.
本实施例与图 1所示的实施例的主要区别在于:图 1所示的实施例中所有 不同之处都需要更新, 固然可以满足一些情况下的需求,但是对于另一些情况 (例如, 用户并没有一个最好的本地用户词库, 而是需要多点上传各个客户端 用户词库的数据, 以在服务器端形成一个完善的用户词库), 采用图 1所示实 施例的方法就无法达到最佳效果了 ,因为其会将各个客户端用户词库的劣势也 同时备份。 The main difference between this embodiment and the embodiment shown in FIG. 1 is that all of the embodiments shown in FIG. 1 The differences need to be updated, although they can meet the needs of some situations, but in other cases (for example, users do not have a best local user vocabulary, but need to upload data of each client user vocabulary In order to form a complete user vocabulary on the server side, the method shown in Figure 1 can not achieve the best results, because it will also back up the disadvantages of each client user vocabulary.
采用本实施例的步骤, 可以仅仅将变化的部分数据(例如, 增加的新词条 和词频增加或者减小的记录)上传、下载,通过积累获得非常完善的用户词库, 尤其适用于频繁更新的情况。  With the steps of this embodiment, only a part of the changed data (for example, an increased new term and a word frequency increase or decrease) can be uploaded and downloaded, and a very perfect user vocabulary is obtained through accumulation, especially for frequent update. Case.
当然, 与前述实施例相同, 具体上传的数据可以仅仅是增加的数据部分, 也可以是整个用户词库。  Of course, as in the previous embodiment, the specifically uploaded data may be only the added data portion, or may be the entire user vocabulary.
参照图 4, 示出了一种用户词库同步更新的系统实施例的结构框图, 其涉 及服务器和至少一个客户端, 包括:  Referring to FIG. 4, a structural block diagram of a system embodiment of a user lexicon synchronization update is shown, which relates to a server and at least one client, including:
存储单元 401, 位于服务器端, 用于依据用户词库标识, 存储多个用户词 库;  a storage unit 401, located at the server end, configured to store multiple user vocabularies according to the user vocabulary identifier;
客户端通信单元 402, 用于上传本地用户词库与服务器端的用户词库相比 增加的词条和 /或高出的词频至服务器端;  The client communication unit 402 is configured to upload the local user vocabulary and the server-side user vocabulary to increase the term and/or the higher word frequency to the server;
服务器通信单元 403 , 用于发送服务器端的用户词库与本地用户词库相比 增加的词条和 /或高出的词频至客户端;  a server communication unit 403, configured to send a server-side user vocabulary with an increased term and/or a higher word frequency to the client than the local user vocabulary;
至少一个比较单元 404, 位于客户端或者服务器端, 用于比较本地用户词 库与服务器端的用户词库; 图 4实施例中示出的比较单元只有一个,位于服务 器端; 其他实施例中, 在各个客户端还可以设置一比较单元;  At least one comparison unit 404 is located at the client or the server for comparing the local user vocabulary with the server vocabulary of the server; the comparison unit shown in the embodiment of FIG. 4 has only one, located at the server; in other embodiments, Each client can also set a comparison unit;
服务器更新单元 405, 用于依据上传数据更新服务器端用户词库; 客户端更新单元 406, 用于依据从服务器下载的数据更新本地用户词库。 由于该系统相应与图 3所示的方法实施例, 因此, 相同或相似之处, 就不 再详述, 参见前述相关部分即可。  The server update unit 405 is configured to update the server-side user vocabulary according to the upload data, and the client update unit 406 is configured to update the local user vocabulary according to the data downloaded from the server. Since the system corresponds to the method embodiment shown in FIG. 3, the same or similar points will not be described in detail, and the relevant parts may be referred to.
前述的四个实施例都是采用整体比较词库、数据部分传输的构思的,但是 其中,如果通过对词库中的数据记录一一进行对比,从而获得需要传输的数据, 是非常耗费计算资源的, 即使是服务器, 也难以承受, 尤其当同时有多个客户 端请求处理时。 下面的实施例就提出了一种节约计算资源的方式: 通过在本地 用户词库中设立未同步词表的方式, 减少一次比较过程; 进一步, 还可以设立 时间戳, 用于避免直接针对数据记录的比对过程。 The foregoing four embodiments are all based on the concept of overall comparison of the thesaurus and data part transmission, but if the data records in the thesaurus are compared one by one to obtain the data to be transmitted, it is very computationally consuming. Even the server is unbearable, especially when there are multiple client request processing at the same time. The following example presents a way to conserve computing resources: by local The method of setting up the unsynchronized vocabulary in the user vocabulary reduces the comparison process; further, a time stamp can be set up to avoid the direct comparison process for the data record.
参照图 5, 示出了一种用户词库同步更新的方法和系统, 其涉及服务器和 至少一个客户端, 包括:  Referring to FIG. 5, a method and system for synchronizing update of a user vocabulary is shown, which relates to a server and at least one client, including:
步骤 501、 记录用户的输入词条和词频信息至未同步词表; 本地用户词库 包括已同步词表和未同步词表; 即一次更新完成之后,用户的输入行为信息都 记录在未同步词表中 , 下次更新仅仅需要上传未同步词表中的数据即可。  Step 501: Record the input term and the word frequency information of the user to the unsynchronized word list; the local user vocabulary includes the synchronized vocabulary and the unsynchronized vocabulary; that is, after one update is completed, the input behavior information of the user is recorded in the unsynchronized word. In the table, the next update only needs to upload the data in the unsynchronized vocabulary.
步骤 502、 满足第一触发条件时, 上传所述未同步词表至服务器; 服务器 的词频相加的方式, 如果词条在服务器不存在, 则加入即可。  Step 502: Upload the unsynchronized vocabulary to the server when the first trigger condition is met; and add the word frequency of the server, if the entry does not exist in the server, join.
步骤 503、 满足第二触发条件时, 下载服务器端数据, 用于更新本地用户 词库中的已同步词表。  Step 503: When the second trigger condition is met, download server-side data for updating the synchronized word list in the local user vocabulary.
其中, 所述下载的服务器端数据可以为整个服务器端用户词库, 所述更新 为直接替换本地用户词库中的已同步词表。这是一种最简单的更新方式,但是 可能会增加通信资源的浪费。  The downloaded server-side data may be an entire server-side user vocabulary, and the update is to directly replace the synchronized vocabulary in the local user vocabulary. This is the easiest way to update, but it can increase the waste of communication resources.
优选的, 当下载服务器端数据时,客户端上传前次下载服务器端数据的时 间戳; 服务器比较该时间戳与服务器端维护的各词条的时间戳, 所发送的服务 器端数据为: 在该客户端上传的时间戳之后改变的词条和 /或属性参数。 所述 更新过程可以为采用这些数据记录覆盖已同步词表中的相应记录,如果是新增 加的词条, 则加入已同步词表。  Preferably, when downloading server-side data, the client uploads a timestamp of the previous download of the server-side data; the server compares the timestamp with the timestamp of each term maintained by the server, and the server-side data sent is: Terms and/or attribute parameters that are changed after the timestamp uploaded by the client. The updating process may use the data records to cover the corresponding records in the synchronized word list, and if it is a newly added term, join the synchronized word list.
即客户端每次完成下载更新之后 ,根据服务器的通知记录此次下载更新的 时间戳; 服务器针对上传情况维护各词条的时间戳。 由于所述时间戳可以完全 由服务器维护, 所以优选的, 可以为服务器时钟。  That is, after the client completes the download update, the timestamp of the download update is recorded according to the notification of the server; the server maintains the timestamp of each entry for the upload situation. Since the time stamp can be completely maintained by the server, it is preferably a server clock.
所述在客户端上传的时间戳之后改变的词条和 /或属性参数, 可以是该客 户端或者其他客户端在该时间戳之后上传更新的数据,也可以是服务器根据对 该用户词库或者多个用户词库分析后自动添加的更新数据, 例如, 一些综合的 个性数据或者属性参数的调整。  The term and/or attribute parameter changed after the timestamp uploaded by the client may be the data uploaded by the client or other client after the timestamp, or may be the server according to the user vocabulary or Update data automatically added after multiple user lexicon analysis, for example, some comprehensive personality data or adjustment of attribute parameters.
进一步, 为了防止下次上传时, 将前次上传的数据重复上传, 则本实施例 还可以包括: 步骤 504、 服务器向客户端确认已收到上传的未同步词表; 步骤 505、 客户端将所述未同步词表合并到已同步词表中, 所述合并可以为将词频 增加的方式, 如果词条在已同步词表中不存在, 则加入即可。 Further, in order to prevent the data uploaded in the previous upload from being repeatedly uploaded, the embodiment may further include: Step 504: The server confirms to the client that the uploaded unsynchronized word list has been received; 505. The client merges the unsynchronized word list into the synchronized word list, where the combining may be a method of increasing the word frequency. If the term does not exist in the synchronized word list, the joining may be performed.
另外, 由于服务器端存储了多个用户词库, 在上传和下载时, 需要知悉此 次处理过程指向的是哪个词库。 因此, 本实施例还可以包括: 当上传和下载数 据时,客户端提供用户词库标识,所述用户词库标识用于指向特定的用户词库。 所述用户词库标识可以为用户名 (例如, 用户注册帐号), 也可以为存储词库 是服务器分配的标识号(例如, 序列号等)或者用户名和标识号的结合, 也可 以为客户端计算设备硬件标识或者地址标识等等。 总之, 所述用户词库标识只 要能够准确指向所需的用户词库即可,本实施例在此并不需要对其形式加以限 定。  In addition, since the server side stores multiple user vocabularies, it is necessary to know which lexicon the process refers to during uploading and downloading. Therefore, the embodiment may further include: when uploading and downloading data, the client provides a user vocabulary identifier, and the user vocabulary identifier is used to point to a specific user vocabulary. The user vocabulary identifier may be a user name (for example, a user registration account), or may be a combination of an identification number assigned by the server (for example, a serial number, etc.) or a user name and an identification number, or may be a client. Calculate device hardware identification or address identification, and so on. In summary, the user lexicon identification can only be accurately pointed to the required user vocabulary, and the embodiment does not need to limit its form here.
对于本发明而言,一个用户注册帐号可以对应一个用户词库,也可以对应 多个用户词库, 更新时指明更新哪个词库即可。 进一步, 本发明中一个用户词 库也可以对应多个用户注册帐号, 即满足多人共同使用同一用户词库的情况, 例如, 一个专业小组成员共同维护一个用户词库。  For the purposes of the present invention, a user registration account may correspond to a user vocabulary, or may correspond to multiple user vocabularies, and may indicate which vocabulary to update when updating. Further, in the present invention, a user vocabulary can also correspond to multiple user registration accounts, that is, a situation in which multiple users use the same user vocabulary together. For example, a professional group member jointly maintains a user vocabulary.
进一步, 为了安全或者隐私的要求, 还可以要求用户通过身份认证之后, 才可以完成上传、 下载等处理操作。 具体的身份认证技术属于公知技术, 在此 就不伴述了。  Further, for security or privacy requirements, the user may be required to pass the identity authentication before the processing operations such as uploading and downloading can be completed. Specific identity authentication techniques are well known and will not be described here.
另外, 对于下载服务器端的数据而言, 经过一个身份认证, 可以下载该帐 号对应的用户词库数据; 也可以经过多个身份认证, 下载相应的多个用户词库 中的数据, 合并至本地用户词库。  In addition, for downloading data on the server side, after an identity authentication, the user lexicon data corresponding to the account may be downloaded; or multiple identity authentication may be performed, and the data in the corresponding multiple user vocabularies may be downloaded and merged into the local user. Thesaurus.
进一步, 考虑到用户的输入习惯中还可能包括一些配置习惯, 例如, 双拼 设置、标点设置以及各种属性设置等等,故客户端上传的数据和服务器存储的 数据还可以包括: 用户输入法的配置数据, 以及设置该配置数据的时间。  Further, considering that the user's input habits may also include some configuration habits, for example, double-setting settings, punctuation settings, various attribute settings, and the like, the data uploaded by the client and the data stored by the server may further include: user input method Configuration data, and when to set the configuration data.
则优选的, 本实施例还可以包括: 上传用户输入法的配置数据, 以及设置 该配置数据的时间, 比较用户的本地配置数据和服务器端的配置数据, 以设置 时间在后的配置数据为依据更改或者保留服务器端的配置数据。  Preferably, the embodiment may further include: uploading configuration data of the user input method, and setting a time of the configuration data, comparing the local configuration data of the user and the configuration data of the server, and setting the time according to the configuration data after the time is changed. Or keep the configuration data on the server side.
或者,本实施例还可以包括: 下载服务器端的配置数据及设置该配置数据 的时间, 比较用户的本地配置数据和服务器端的配置数据, 以设置时间在后的 配置数据为依据更改或者保留本地配置数据。 当然, 上述配置数据更新的步骤中, 也可以采用以下方式: 依据服务器端 的配置数据更改或者保留本地配置数据。由于配置数据的设置一般都是采用选 择方式实现的, 因此, 其更新采用改写方式即可。 Alternatively, the embodiment may further include: downloading configuration data of the server and setting the time of the configuration data, comparing the local configuration data of the user and the configuration data of the server, and changing or retaining the local configuration data according to the configuration data after the time is set. . Of course, in the step of updating the configuration data, the following manner may also be adopted: The local configuration data is changed or retained according to the configuration data of the server. Since the setting of the configuration data is generally implemented by a selection method, the update can be performed by rewriting.
某些情况下, 由于词库存储容量的问题或者错误的输入习惯的问题, 用户 可能会删除本地用户词库中的一些词条,则可以通过在未同步词表中记录的方 式实现更新,也可以另行设立一删词表的方式实现更新,上传数据时一并上传 该删词表即可。  In some cases, due to problems with word storage capacity or incorrect input habits, users may delete some entries in the local user lexicon, which can be updated by recording in the unsynchronized vocabulary. You can set up a new vocabulary to update it. When you upload the data, you can upload the vocabulary.
对于下载时涉及的删词情况,则可以记录在词库数据记录中 ,通过在本地, 更新时间戳之后的数据记录实现删词更新; 也可以记录在服务器端的删词表 中, 通过更新本地删词表而实现更新。  For the deleted words involved in the download, it can be recorded in the thesaurus data record, and the deleted words are updated by updating the data records after the timestamp locally; or can be recorded in the deleted words table on the server side, and the local deletion is performed by updating The vocabulary is updated.
对于删词表的实现而言,可以通过用户手动操作记录用户的删词信息; 或 者, 也可以通过检测用户在候选词窗口中的回退操作, 记录用户的删词信息; 或者,还可以通过检测用户所选字词上屏后在预置时间内的删除操作,记录用 户的删词信息。  For the implementation of the vocabulary list, the user may manually record the deleted word information of the user; or, by detecting the user's fallback operation in the candidate word window, the user's deleted word information may be recorded; or, The deletion operation of the user selected word on the screen after the preset time is detected, and the user's deleted word information is recorded.
本实施例中未涉及的部分, 可以参见本说明书的相关描述即可。  For the parts not involved in this embodiment, reference may be made to the related description of this specification.
参照图 6, 示出了一种与图 5方法相应的用户词库同步更新的系统, 其涉 及服务器和至少一个客户端, 包括:  Referring to FIG. 6, a system for synchronous updating of user lexicon corresponding to the method of FIG. 5 is shown, which relates to a server and at least one client, including:
存储单元 601, 位于服务器端, 用于依据用户词库标识, 存储多个用户词 库;  a storage unit 601, located at the server end, configured to store multiple user vocabularies according to the user vocabulary identifier;
记录单元 602, 位于客户端, 用于记录用户的输入词条和词频信息至未同 步词表; 本地用户词库包括已同步词表和未同步词表;  The recording unit 602 is located at the client, and is used for recording the input term and the word frequency information of the user to the unsynchronized word list; the local user vocabulary includes the synchronized vocabulary and the unsynchronized vocabulary;
客户端通信单元 603, 用于当满足触发条件时, 上传所述未同步词表至服 务器;  a client communication unit 603, configured to upload the unsynchronized vocabulary to the server when the trigger condition is met;
客户端更新单元 604, 用于依据从服务器下载的数据更新本地用户词库; 服务器通信单元 605 , 用于发送服务器端存储的用户词库数据至客户端; 服务器更新单元 606, 用于将上传的未同步词表和服务器已存的用户词库 进行合并。  The client update unit 604 is configured to update the local user vocabulary according to the data downloaded from the server; the server communication unit 605 is configured to send the user vocabulary data stored in the server to the client; and the server update unit 606 is configured to upload the The unsynchronized vocabulary is merged with the server's existing user vocabulary.
其中, 所述发送的服务器端数据可以为整个服务器端用户词库, 所述更新 可以为直接替换本地用户词库中的已同步词表。 或者, 所述发送的服务器端数据为: 在客户端上传的时间戳之后改变的词 条和 /或属性参数。 则, 当下载服务器端数据时, 客户端的下载请求数据还需 要包括: 前次下载服务器端数据的时间戳; 则所述系统还包括: 位于服务器端 的词库比较单元 607, 用于比较该时间戳与服务器端维护的各词条的时间戳。 The server-side data that is sent may be the entire server-side user vocabulary, and the update may directly replace the synchronized vocabulary in the local user vocabulary. Alternatively, the sent server-side data is: a term and/or an attribute parameter that is changed after the timestamp uploaded by the client. Then, when downloading the server-side data, the download request data of the client further includes: a timestamp of the previous download of the server-side data; the system further includes: a thesaurus comparison unit 607 located at the server end, configured to compare the timestamps The timestamp of each entry maintained with the server.
进一步, 客户端还可以包括: 未同步词表合并单元 608, 用于当接收到服 务器已收到未同步词表的确认信息时, 将所述未同步词表合并到已同步词表 中; 清空所述未同步词表。  Further, the client may further include: an unsynchronized vocabulary merging unit 608, configured to merge the unsynchronized vocabulary into the synchronized vocabulary when receiving the acknowledgment information that the server has received the unsynchronized vocabulary; The unsynchronized vocabulary.
优选的,客户端上传的数据和服务器存储的数据还包括: 用户输入法的配 置数据, 以及设置该配置数据的时间。 当下载服务器端数据时, 客户端的下载 请求数据还包括: 本地配置数据的设置时间。 则, 所述系统还包括: 位于服务 器端的配置数据比较单元 609, 用于比较用户的本地配置数据和服务器端的配 置数据,如果服务器端配置数据的设置时间后于本地配置数据的设置时间, 则 发送服务器端配置数据; 位于客户端的配置数据更改单元 6010, 用于依据接 收的服务器端配置数据更改本地配置数据。  Preferably, the data uploaded by the client and the data stored by the server further include: configuration data of the user input method, and a time when the configuration data is set. When downloading server-side data, the client's download request data also includes: The setting time of the local configuration data. Then, the system further includes: a configuration data comparing unit 609 located at the server end, configured to compare the local configuration data of the user with the configuration data of the server, and send the setting time of the local configuration data after the setting time of the server configuration data is sent. Server-side configuration data; a configuration data change unit 6010 located at the client, configured to change local configuration data according to the received server-side configuration data.
进一步,当上传和下载数据时,客户端的上传数据和下载请求数据还包括: 用户词库标识。  Further, when uploading and downloading data, the upload data and the download request data of the client further include: a user vocabulary identifier.
参照图 7, 示出了一种用户词库同步更新的方法实施例, 艮好的将上传和 下载结合起来,非常适合用户在多台计算设备之间转换使用输入法的复杂更新 情况。  Referring to Figure 7, there is shown an embodiment of a method for synchronizing user lexicon updates, which combines uploading and downloading, which is well suited for users to convert complex update situations using input methods between multiple computing devices.
图 7所示的实施例涉及服务器和至少一个客户端, 包括以下步骤: 步骤 701、 记录用户的输入词条和词频信息至未同步词表; 本地用户词库 包括已同步词表、未同步词表;客户端针对本地用户词库维护一客户端时间戳; 步骤 702、 满足触发条件时, 上传客户端未同步词表中的数据 D1至服务 器, 以及将当前客户端时间戳 T1作为参数上传;  The embodiment shown in FIG. 7 relates to a server and at least one client, and includes the following steps: Step 701: Record a user input term and word frequency information to an unsynchronized word list; and the local user vocabulary includes a synchronized word list and an unsynchronized word. The client maintains a client timestamp for the local user vocabulary; Step 702: When the trigger condition is met, upload the data D1 in the client unsynchronized vocabulary to the server, and upload the current client timestamp T1 as a parameter;
步骤 703、服务器在服务器端用户词库中查找词条时间戳高于 T1的词条, 构成集合 D2; 所述服务器维护一全局时间戳, 以及针对每个词条维护一词条 时间戳;  Step 703: The server searches for a term with a timestamp higher than T1 in the server-side user vocabulary to form a set D2; the server maintains a global timestamp, and maintains a term timestamp for each entry;
步骤 704、服务器更新全局时间戳至 T2, 并发送 D2和 T2至相应客户端; 步骤 705、 服务器将上传的数据 D1和服务器已存的用户词库进行合并, 并将合并所涉及的词条时间戳更新为 T2; Step 704: The server updates the global timestamp to T2, and sends D2 and T2 to the corresponding client. Step 705: The server merges the uploaded data D1 with the stored user vocabulary of the server. And update the timestamp of the entry involved in the merge to T2;
步骤 706、 客户端采用数据 D2更新已同步词表, 并将数据 D1合并至已 同步词表;  Step 706: The client updates the synchronized word list by using the data D2, and merges the data D1 into the synchronized word list;
步骤 707、 客户端清空未同步词表, 并将客户端时间戳更新为 T2。  Step 707: The client clears the unsynchronized word list, and updates the client timestamp to T2.
上述多个步骤之间的顺序关系并非固定不变,在此依次说明仅仅是为了描 述方便。  The order relationship between the above multiple steps is not fixed, and the description here is merely for convenience of description.
另外, 由于服务器端存储了多个用户词库, 在上传和下载时, 需要知悉此 次处理过程指向的是哪个词库。 因此, 本实施例还可以包括: 当上传和下载数 据时,客户端提供用户词库标识,所述用户词库标识用于指向特定的用户词库。  In addition, since the server side stores multiple user vocabularies, it is necessary to know which lexicon the process refers to during uploading and downloading. Therefore, the embodiment may further include: when uploading and downloading data, the client provides a user vocabulary identifier, and the user vocabulary identifier is used to point to a specific user vocabulary.
进一步, 为了安全或者隐私的要求, 还可以要求用户通过身份认证之后, 才可以完成上传、 下载等处理操作。  Further, for security or privacy requirements, the user may be required to pass the identity authentication before the processing operations such as uploading and downloading can be completed.
当然, 本实施例也可以包括配置数据的更新等等。 由于篇幅限制, 前面各 实施例提及的部分在此就不重复了 , 请参见相关描述即可。  Of course, this embodiment may also include an update of configuration data and the like. Due to space limitations, the parts mentioned in the previous embodiments are not repeated here, please refer to the relevant description.
下面以一个具体的例子, 对上述过程进行更伴细的说明。 参照下表, 整个 同步更新方法涉及一个服务器和两个客户端, 实际中还可能涉及更多的客户 端。在 W1 : 1(2)中, "W1"表示一个输入字词, "1"表示输入词频, 括号中的" 2" 表示该词条的时间戳。 在这个例子中, 为了简单起见, 采用递增的正整数作为 时间戳。假定初始状态时用户词库中没有数据, 时间戳采用 0表示。 实施例中 所使用的" + "仅仅为了形象的说明不同来源数据相加的关系。 月良务器端 客户端 1 客户端 2  The above process will be described in more detail with a specific example. Referring to the table below, the entire synchronous update method involves one server and two clients, and more clients may be involved in practice. In W1: 1(2), "W1" indicates an input word, "1" indicates the input word frequency, and "2" in parentheses indicates the time stamp of the entry. In this example, for simplicity, an incremental positive integer is used as the timestamp. Assume that there is no data in the user's thesaurus in the initial state, and the timestamp is represented by 0. The "+" used in the embodiment is merely for the purpose of visually explaining the relationship of the addition of data from different sources. Month server client 1 client 2
全局 客户端 已同步 未同步 客户端 已同步 未同步 词表  Global Clients Synchronized Unsynchronized Clients Synchronized Unsynchronized Vocabulary
时间戳 时间戳 词表 词表 时间戳 词表 词表  Timestamp timestamp vocabulary vocabulary timestamp vocabulary vocabulary
0 0 0  0 0 0
用户输入 Wl、 W2各一次  User input Wl, W2 each time
W1: 1  W1: 1
1 0 0  1 0 0
W2: 1  W2: 1
同步 用户输入 W2、 W3各一次  Synchronize user input W2, W3 each time
2 W1: 1(2) 2 W1: 1 0 W2: 1 W2: 1(2) W2: 1 W3: 12 W1: 1(2) 2 W1: 1 0 W2: 1 W2: 1(2) W2: 1 W3: 1
^ ^ ^ ^ ^ ^ ^ ^ 用户输入 Wl、 W3各一次 同步 ^ ^ ^ ^ ^ ^ ^ ^ User input Wl, W3 each time synchronization
^ ^ ^ ^ ^ ^ ^ ^  ^ ^ ^ ^ ^ ^ ^ ^
Wl: )) f f f f 1(2) W1: 1  Wl: )) f f f f 1(2) W1: 1
C M M C M MJJ卜卜 W1: 1 W1: 1  C M M C M MJJ Bub W1: 1 W1: 1
W2: 1+1( w w w w w w w w3) 2 3 W2: 1+1 W2: 1+1( w w w w w w w w3) 2 3 W2: 1+1
W2: 1 W3: 1  W2: 1 W3: 1
W3: 1(3) W3: 1  W3: 1(3) W3: 1
同步 用户输入 W3、 W4各一次 Synchronize user input W3, W4 each time
Wl: 1+1(4) W1: 1+1 W1: 1 Wl: 1+1(4) W1: 1+1 W1: 1
W3: 1 W3: 1
W2: 2(3) 4 W2: 2 3 W2: 2 W2: 2(3) 4 W2: 2 3 W2: 2
W4: 1 W3: 1+1(4) W3: 1+1 W3: 1  W4: 1 W3: 1+1(4) W3: 1+1 W3: 1
用户输入 W4、 W5各一次 同步  User input W4, W5 each time synchronization
W1: 2  W1: 2
W1: 2  W1: 2
W4: 1 W2: 2  W4: 1 W2: 2
4 W2: 2 5  4 W2: 2 5
W5: 1 W3: 2+1  W5: 1 W3: 2+1
W3: 2  W3: 2
W4: 1  W4: 1
暂停使用 用户输入 Wl、 W4各一次  Suspend use User input Wl, W4 each time
W1: 2  W1: 2
W1: 2  W1: 2
W4: 1 W2: 2 W1: 1 W4: 1 W2: 2 W1: 1
4 W2: 2 5 4 W2: 2 5
W5: 1 W3: 3 W4: 1 W3: 2  W5: 1 W3: 3 W4: 1 W3: 2
W4: 1  W4: 1
暂停使用 同步  Pause use sync
W1: 2+1  W1: 2+1
W1: 2  W1: 2
W4: 1 W2: 2  W4: 1 W2: 2
4 W2: 2 7  4 W2: 2 7
W5: 1 W3: 3  W5: 1 W3: 3
W3: 2  W3: 2
W4: 1+1 同步 暂停使用  W4: 1+1 sync paused
W1: 3 W1: 3  W1: 3 W1: 3
W2: 2 W2: 2  W2: 2 W2: 2
8 7  8 7
W3: 3 W3: 3  W3: 3 W3: 3
W4: 2+1 W4: 2 W5: 1(8) W5: 1 W4: 2+1 W4: 2 W5: 1(8) W5: 1
暂停使用 同步  Pause use sync
Wl: 3(7) Wl: 3 Wl: 3  Wl: 3(7) Wl: 3 Wl: 3
W2: 2(3) W2: 2 W2: 2  W2: 2(3) W2: 2 W2: 2
9 W3: 3(5) 8 W3: 3 9 W3: 3  9 W3: 3(5) 8 W3: 3 9 W3: 3
W4: 3(8) W4: 3 W4: 3  W4: 3(8) W4: 3 W4: 3
W5: 1(8) W5: 1 W5: 1 客户端 1 第一次同步时, 已经在未同步词表中记录了用户的输入行为信 息: "用户输入 Wl、 W2各一次,,, 记录为 "Wl: 1; W2: 1"。 由于此时, 服务 器端没有存储数据, 所以无法返回有效数据 D2, 客户端 1将未同步词表合并 (词频相加)至已同步词表中, 并根据服务器的通知将客户端时间戳改为 "2"。 服务器将 Wl、 W2的词条时间戳设为" 2"。  W5: 1(8) W5: 1 W5: 1 When client 1 synchronizes for the first time, the user's input behavior information has been recorded in the unsynchronized word list: "User input Wl, W2, once,,, record as" Wl: 1; W2: 1". Since at this time, the server does not store data, it cannot return valid data D2, and client 1 merges the unsynchronized words table (word frequency addition) into the synchronized word list, and according to the server The notification changes the client timestamp to "2". The server sets the timestamp of Wl, W2 to "2".
客户端 2 第一次同步时, 已经在未同步词表中记录了用户的输入行为信 息: "用户输入 W2、 W3各一次", 记录为 "W2: 1; W3: 1", 客户端时间戳为 初始状态" 0"。 由于此时, 客户端 1 已经更新过一次, 服务器端已经存储有数 据" W1: 1 (2); W2: 1 (2) ", 因此, 上述数据构成集合 D2。 服务器将 D2 以及更新后的时间戳 "3"—同发送给客户端 2; 然后, 服务器将上传数据 D1"W2: 1; W3: 1"和已存数据" Wl: 1 (2); W2: 1 ( 2 ),,合并(词频相加), 并将合并所涉及的词条时间戳更新为" 3", 例如" W2: 1 + 1 (3); W3: 1 (3)"。 客户端 2将数据 D2"W1: 1; W2: 1"更新至已同步词表(如果词条不存在则 加入词表, 如果存在, 则直接覆盖); 并将未同步词表的数据 D1"W2: 1; W3: 1"合并至已同步词表中 (词频相加)。 因此, 客户端 2最后得到的已同步词表 中的数据为" Wl: 1; W2: 1 + 1; W3: 1"。 最后, 客户端 2根据服务器的通 知, 将客户端时间戳改为 "3"。  When client 2 synchronizes for the first time, the user's input behavior information has been recorded in the unsynchronized vocabulary: "User input W2, W3 each time", record as "W2: 1; W3: 1", client timestamp The initial state is "0". Since client 1 has been updated once at this time, the server has stored the data "W1: 1 (2); W2: 1 (2)", so the above data constitutes the set D2. The server sends D2 and the updated timestamp "3" - to the client 2; then, the server will upload the data D1 "W2: 1; W3: 1" and the stored data "Wl: 1 (2); W2: 1 ( 2 ),, merge (word frequency addition), and update the timestamp of the entry involved in the merge to "3", for example "W2: 1 + 1 (3); W3: 1 (3)". Client 2 Update the data D2 "W1: 1; W2: 1" to the synchronized vocabulary (if the entry does not exist, add the vocabulary, if it exists, directly cover it); and the data of the unsynchronized vocabulary D1 "W2: 1; W3: 1" merges into the synchronized word list (word frequency addition). Therefore, the data in the synchronized word list obtained by client 2 is "Wl: 1; W2: 1 + 1; W3: 1" Finally, Client 2 changes the client timestamp to "3" based on the server's notification.
其他的更新过程依次类推即可, 例如,上表中客户端 2的最后一次同步更 新:  Other update processes can be analogized, for example, the last synchronization update for Client 2 in the above table:
客户端 2的时间戳为" 7", 服务器查找到的数据集合 D2为" W4: 3 (8); W5: 1 (8) ", 因为 W4和 W5的词条时间戳 "8"大于客户端 2的时间戳" 7"。 客户端 2的未同步词表中没有数据, 所以直接将 D2更新至已同步词表即可, 并根据服务器的通知将客户端时间戳改为 "9"。 The timestamp of client 2 is "7", and the data set D2 found by the server is "W4: 3 (8); W5: 1 (8) ", because the entry timestamp "8" of W4 and W5 is larger than the client. 2 timestamp "7". There is no data in the unsynchronized vocabulary of client 2, so the D2 can be directly updated to the synchronized vocabulary, and the client timestamp is changed to "9" according to the notification of the server.
参照图 8, 示出了一种输入法客户端, 具体可以包括以下部件:  Referring to FIG. 8, an input method client is shown, which may specifically include the following components:
记录单元 801, 用于记录用户的输入词条和词频信息至未同步词表; 本地 用户词库包括已同步词表和未同步词表;  a recording unit 801, configured to record a user input term and word frequency information to an unsynchronized word list; the local user vocabulary includes a synchronized vocabulary and an unsynchronized vocabulary;
客户端通信单元 802, 用于当满足触发条件时, 上传未同步词表中的数据 a client communication unit 802, configured to upload data in the unsynchronized word list when the trigger condition is met
D1 至服务器, 以及将针对本地用户词库的当前客户端时间戳 T1作为参数上 传; D1 to the server, and uploading the current client timestamp T1 for the local user lexicon as a parameter;
客户端更新单元 803 , 用于采用服务器返回的数据 D2更新已同步词表, 并将数据 D1合并至已同步词表; 以及清空未同步词表, 并根据服务器的通知 将客户端时间戳更新为 T2;所述服务器返回的数据 D2为在服务器端用户词库 中查找到的词条时间戳高于 T1的词条集合, 所述时间戳 T2由服务器确定。  The client update unit 803 is configured to update the synchronized word list by using the data D2 returned by the server, and merge the data D1 into the synchronized word list; and clear the unsynchronized word list, and update the client time stamp according to the notification of the server to T2; the data D2 returned by the server is a set of terms whose term timestamp is found in the server-side user vocabulary is higher than T1, and the timestamp T2 is determined by the server.
优选的,客户端上传的数据和服务器存储的数据还可以包括: 用户输入法 的配置数据, 以及设置该配置数据的时间。 当满足触发条件时, 客户端的更新 请求数据还包括: 本地配置数据的设置时间; 此时, 客户端还可以包括: 配置 数据更改单元 804, 用于依据接收的服务器端配置数据更改本地配置数据。 所 述服务器返回的配置数据为:比较用户的本地配置数据和服务器端的配置数据 之后, 设置时间晚于本地设置时间的配置数据。  Preferably, the data uploaded by the client and the data stored by the server may further include: configuration data of the user input method, and a time when the configuration data is set. When the trigger condition is met, the update request data of the client further includes: setting time of the local configuration data; at this time, the client may further include: a configuration data changing unit 804, configured to change the local configuration data according to the received server-side configuration data. The configuration data returned by the server is: after comparing the local configuration data of the user and the configuration data of the server, setting the configuration data later than the local setting time.
进一步, 当更新数据时, 客户端的更新请求数据还包括: 用户词库标识。 参照图 9, 示出了一种用于用户词库同步更新的服务器, 具体可以包括: 存储单元 901, 用于依据用户词库标识, 存储多个用户词库;  Further, when the data is updated, the update request data of the client further includes: a user vocabulary identifier. Referring to FIG. 9, a server for synchronizing update of a user's thesaurus is shown, which may include: a storage unit 901, configured to store a plurality of user vocabularies according to a user vocabulary identifier;
服务器处理单元 902,用于在服务器端用户词库中查找词条时间戳高于 T1 的词条, 构成集合 D2; 以及更新全局时间戳至 T2; 所述时间戳 T1为上传的 客户端时间戳;  The server processing unit 902 is configured to search for a term with a timestamp higher than T1 in the server-side user vocabulary to form a set D2; and update the global timestamp to T2; the timestamp T1 is an uploaded client timestamp ;
服务器通信单元 903, 用于发送 D2和 T2至相应客户端;  a server communication unit 903, configured to send D2 and T2 to the corresponding client;
服务器更新单元 904, 用于将上传的数据 D1和服务器已存的用户词库进 行合并,并将合并所涉及的词条时间戳更新为 T2; 所述数据 D1为客户端记录 在未同步词表中的数据, 包括用户的输入词条和词频信息。  The server updating unit 904 is configured to merge the uploaded data D1 with the stored user vocabulary of the server, and update the term time stamp of the merging to T2; the data D1 is recorded by the client in the unsynchronized vocabulary The data in the user, including the user's input terms and word frequency information.
进一步,客户端上传的数据和服务器存储的数据还可以包括: 用户输入法 的配置数据, 以及设置该配置数据的时间、 当满足触发条件时, 客户端的更新 请求数据还包括: 本地配置数据的设置时间; 则所述服务器还可以包括: 配置 数据比较单元 905, 用于比较用户的本地配置数据和服务器端的配置数据, 如 果服务器端配置数据的设置时间后于本地配置数据的设置时间 ,则发送服务器 端配置数据; 客户端则依据所述接收的服务器端配置数据更改本地配置数据。 如果服务器端配置数据的设置时间早于本地配置数据的设置时间,则依据所上 传的本地配置数据更新服务器端的相应配置数据。 Further, the data uploaded by the client and the data stored by the server may further include: a user input method The configuration data, and the time when the configuration data is set, when the trigger condition is met, the update request data of the client further includes: a setting time of the local configuration data; and the server may further include: a configuration data comparing unit 905, configured to compare The local configuration data of the user and the configuration data of the server end, if the setting time of the local configuration data is set after the setting time of the server configuration data, the server configuration data is sent; the client changes the local configuration according to the received server configuration data. data. If the setting time of the server side configuration data is earlier than the setting time of the local configuration data, the corresponding configuration data of the server side is updated according to the uploaded local configuration data.
图 8和图 9所示实施例是相应于图 7所示方法实施例的,其中未详尽之处, 可以参见前述实施例的相关部分以及说明书中的其他部分。  The embodiment shown in Figures 8 and 9 corresponds to the embodiment of the method shown in Figure 7, and where not exhaustive, reference may be made to the relevant portions of the foregoing embodiments and other portions of the specification.
对于前述各个实施例中,还有可能涉及客户端上传数据之后, 没有得到服 务器已收到的确认信息, 则如何处理的问题。 在上传数据量较小的情况下, 可 以采用重传的方式实现, 当然可能会浪费一些通信资源。优选的,也可以设定, 只有收到服务器的确认信息, 客户端才清空未同步词表, 如果没有收到, 则在 下次上传时将所有的未同步词表中的信息一并上传。  For the foregoing various embodiments, it is also possible to deal with the problem of how to deal with the acknowledgment information that the server has received after the client uploads the data. In the case of a small amount of uploaded data, it can be implemented by retransmission, and of course, some communication resources may be wasted. Preferably, it can also be set that the client clears the unsynchronized word list only after receiving the confirmation information of the server, and if not received, uploads the information in all the unsynchronized words in the next upload.
当然, 也可以采用以下处理方式: 将每次提交的数据组织成一个事务, 每 次提交前先申请事务编号; 服务器端记录迄今为止已成功提交的事务编号,客 户端每次提交后如果没能确认已经成功提交, 则保存该次提交事务留待下次; 客户端下次提交时把没能确认成功的事务都提交上去即可(或者通过事务合并 来实现也是可行的)。  Of course, the following processing methods can also be adopted: organize each submitted data into one transaction, and apply for the transaction number before each submission; the server records the transaction number that has been successfully submitted so far, and the client fails to submit each time after submitting. If the confirmation has been successfully submitted, save the commit transaction for the next time; the client can submit the transaction that failed to confirm the success when it commits next time (or it is feasible to implement through transaction consolidation).
以上对本发明所提供的一种用户词库同步更新的方法和系统,以及一种输 入法客户端和一种用于用户词库同步更新的服务器, 进行了详细介绍,本文中 是用于帮助理解本发明的方法及其核心思想; 同时,对于本领域的一般技术人 员, 依据本发明的思想, 在具体实施方式及应用范围上均会有改变之处, 综上 所述, 本说明书内容不应理解为对本发明的限制。  The method and system for synchronous updating of user lexicon provided by the present invention, and an input method client and a server for synchronous updating of the user vocabulary are described in detail, and are used to help understand The method of the present invention and its core idea; at the same time, for those skilled in the art, according to the idea of the present invention, there will be changes in the specific implementation manner and the scope of application. It is understood to be a limitation of the invention.

Claims

权 利 要 求 Rights request
1、 一种用户词库同步更新的方法, 其特征在于, 涉及服务器和至少一个 客户端, 包括:  A method for synchronously updating a user vocabulary, characterized in that the server and the at least one client are involved, including:
在服务器端预置用于存储用户词库的存储空间;  Presetting the storage space for storing the user vocabulary on the server side;
满足第一触发条件时,上传本地用户词库与服务器端的用户词库相比不同 的词条和 /或不同的属性参数至服务器端, 服务器采用该部分数据更新服务器 端用户词库;  When the first trigger condition is met, the local user vocabulary is compared with the server vocabulary of the server-side user-specific vocabulary and/or different attribute parameters to the server, and the server uses the partial data to update the server-side user vocabulary;
满足第二触发条件时,下载服务器端的用户词库与本地用户词库相比不同 的词条和 /或不同的属性参数至本地计算设备, 本地计算设备采用该部分数据 更新本地用户词库。  When the second trigger condition is met, the user vocabulary on the server side is downloaded with different terms and/or different attribute parameters from the local user vocabulary to the local computing device, and the local computing device uses the partial data to update the local user vocabulary.
2、 如权利要求 1所述的方法, 其特征在于, 还包括:  2. The method of claim 1, further comprising:
当上传和下载数据时,客户端提供用户词库标识, 所述用户词库标识用于 指向特定的用户词库。  When uploading and downloading data, the client provides a user vocabulary identifier that is used to point to a particular user vocabulary.
3、 如权利要求 1所述的方法, 其特征在于,  3. The method of claim 1 wherein:
所述上传或下载的数据为发生变化的全部词条和 /或属性参数;  The uploaded or downloaded data is all terms and/or attribute parameters that have changed;
或者, 所述上传或下载的数据为发生变化的部分词条和 /或属性参数。 Alternatively, the uploaded or downloaded data is a partial term and/or attribute parameter that changes.
4、 一种用户词库同步更新的系统, 其特征在于, 涉及服务器和至少一个 客户端, 包括: 4. A system for synchronous updating of a user vocabulary, characterized in that the server and the at least one client are involved, including:
存储单元, 位于服务器端, 用于依据用户词库标识, 存储多个用户词库; 的词条和 /或不同的属性参数至服务器端;  a storage unit, located at the server end, configured to store a plurality of user lexicons and/or different attribute parameters to the server according to the user vocabulary identifier;
服务器通信单元,用于发送服务器端的用户词库与本地用户词库相比不同 的词条和 /或不同的属性参数至客户端;  a server communication unit, configured to send a server-side user vocabulary different entry and/or different attribute parameters to the client than the local user vocabulary;
至少一个比较单元,位于客户端或者服务器端, 用于比较本地用户词库与 服务器端的用户词库;  At least one comparison unit, located at the client or the server, for comparing the user vocabulary of the local user vocabulary with the server side;
服务器更新单元, 用于依据上传数据更新服务器端用户词库;  a server update unit, configured to update a server-side user vocabulary according to the uploaded data;
客户端更新单元, 用于依据从服务器下载的数据更新本地用户词库。 A client update unit for updating a local user vocabulary based on data downloaded from a server.
5、 如权利要求 4所述的系统, 其特征在于, 5. The system of claim 4 wherein:
所述上传或下载的数据为发生变化的全部词条和 /或属性参数; 或者, 所述上传或下载的数据为发生变化的部分词条和 /或属性参数。 The uploaded or downloaded data is all terms and/or attribute parameters that have changed; Alternatively, the uploaded or downloaded data is a partial term and/or attribute parameter that changes.
6、 一种用户词库同步更新的方法, 其特征在于, 涉及服务器和至少一个 客户端, 包括: 6. A method for synchronizing update of a user vocabulary, characterized in that the server and the at least one client are involved, including:
记录用户的输入词条和相应的属性参数至未同步词表;本地用户词库包括 已同步词表和未同步词表;  Recording the user's input terms and corresponding attribute parameters to the unsynchronized vocabulary; the local user vocabulary includes the synchronized vocabulary and the unsynchronized vocabulary;
满足第一触发条件时,上传数据至服务器, 所述上述的数据包括未同步词 表; 服务器将上传的未同步词表和服务器已存的用户词库进行合并;  When the first trigger condition is met, the data is uploaded to the server, and the foregoing data includes an unsynchronized vocabulary table; the server merges the uploaded unsynchronized word table with the stored user vocabulary of the server;
满足第二触发条件时, 下载服务器端数据, 用于更新本地用户词库中的已 同步词表。  When the second trigger condition is met, the server-side data is downloaded for updating the synchronized word list in the local user lexicon.
7、 如权利要求 6所述的方法, 其特征在于,  7. The method of claim 6 wherein:
所述下载的服务器端数据为服务器端的整个用户词库,所述更新为直接替 换本地用户词库中的已同步词表。  The downloaded server-side data is the entire user vocabulary on the server side, and the update is to directly replace the synchronized vocabulary in the local user vocabulary.
8、 如权利要求 6所述的方法, 其特征在于, 还包括:  8. The method according to claim 6, further comprising:
当下载服务器端数据时, 客户端上传前次下载服务器端数据的时间戳; 服务器比较该客户端上传的时间戳与服务器端维护的各词条的时间戳,所 发送的服务器端数据为: 在该客户端上传的时间戳之后改变的词条和 /或属性 参数。  When downloading server-side data, the client uploads the timestamp of the previous server-side data download; the server compares the timestamp uploaded by the client with the timestamp of each entry maintained by the server, and the server-side data sent is: The term and/or attribute parameter changed after the timestamp uploaded by the client.
9、 如权利要求 6所述的方法, 其特征在于, 还包括:  9. The method of claim 6, further comprising:
服务器向客户端确认已收到上传的未同步词表;  The server confirms to the client that the uploaded unsynchronized word list has been received;
客户端将所述未同步词表合并到已同步词表中。  The client merges the unsynchronized word list into the synchronized word list.
10、 如权利要求 6所述的方法, 其特征在于, 所述用户词库记录有: 用户输入的已有字词及相应的属性参数;  The method according to claim 6, wherein the user vocabulary records: the existing words input by the user and corresponding attribute parameters;
和 /或 , 用户输入的自造字词及相应的属性参数。  And / or , the user-entered self-created words and corresponding attribute parameters.
11、 如权利要求 6所述的方法, 其特征在于,  11. The method of claim 6 wherein:
客户端上传的数据和服务器存储的数据还包括: 用户输入法的配置数据, 以及设置该配置数据的时间;  The data uploaded by the client and the data stored by the server further include: configuration data of the user input method, and the time when the configuration data is set;
则, 所述方法还包括:  Then, the method further includes:
比较用户的本地配置数据和服务器端的配置数据,以设置时间在后的配置 数据为依据更改或者保留本地配置数据; 和 /或, 比较用户的服务器端的配置数据和本地配置数据, 以设置时间在 后的配置数据为依据更改或者保留服务器端的配置数据。 Compare the user's local configuration data with the server's configuration data, and change or retain the local configuration data based on the configuration data after the time is set; And/or, compare the user's server-side configuration data and local configuration data, and change or retain the server-side configuration data based on the configuration data after the time is set.
12、 如权利要求 6所述的方法, 其特征在于, 还包括:  12. The method of claim 6, further comprising:
当上传和下载数据时,客户端提供用户词库标识, 所述用户词库标识用于 指向特定的用户词库。  When uploading and downloading data, the client provides a user vocabulary identifier that is used to point to a particular user vocabulary.
13、 如权利要求 6所述的方法, 其特征在于,  13. The method of claim 6 wherein:
客户端上传的数据还包括删词表, 所述删词表用于记录用户的删词情况; 服务器依据所述删词表更新服务器端的用户词库。  The data uploaded by the client further includes a deletion vocabulary table, wherein the vocabulary list is used to record the deleted words of the user; and the server updates the user vocabulary of the server according to the vocabulary list.
14、 如权利要求 13所述的方法, 其特征在于, 通过以下方式记录用户的 删词情况:  14. The method according to claim 13, wherein the user's deletion is recorded in the following manner:
通过用户手动操作记录用户的删词信息;  Recording the user's deleted words by manual operation by the user;
或者, 通过检测用户在候选词窗口中的回退操作, 记录用户的删词信息; 或者,通过检测用户所选字词上屏后在预置时间内的删除操作,记录用户 的删词信息。  Alternatively, the user's deleted word information is recorded by detecting the user's fallback operation in the candidate word window; or the user's deleted word information is recorded by detecting the deletion operation of the user selected word on the screen within the preset time.
15、 一种用户词库同步更新的系统, 其特征在于, 涉及服务器和至少一个 客户端, 包括:  A system for synchronizing update of a user vocabulary, characterized in that the server and the at least one client are involved, including:
存储单元, 位于服务器端, 用于依据用户词库标识, 存储多个用户词库; 记录单元,位于客户端, 用于记录用户的输入词条和相应的属性参数至未 同步词表; 本地用户词库包括已同步词表和未同步词表;  a storage unit, located at the server end, for storing a plurality of user vocabularies according to the user lexicon identifier; the recording unit, located at the client, for recording the user input terms and corresponding attribute parameters to the unsynchronized vocabulary; The thesaurus includes synchronized vocabulary and unsynchronized vocabulary;
客户端通信单元, 用于当满足触发条件时, 上传数据至服务器, 所述上述 的数据包括未同步词表;  a client communication unit, configured to upload data to the server when the trigger condition is met, where the foregoing data includes an unsynchronized word list;
客户端更新单元, 用于依据从服务器下载的数据更新本地用户词库; 服务器通信单元, 用于发送服务器端存储的用户词库数据至客户端; 合并。  a client update unit, configured to update a local user vocabulary according to data downloaded from the server; and a server communication unit, configured to send the server vocabulary data stored by the server to the client; merge.
16、 如权利要求 15所述的系统, 其特征在于,  16. The system of claim 15 wherein:
所述发送的服务器端数据为整个服务器端用户词库,所述更新为直接替换 本地用户词库中的已同步词表。  The transmitted server-side data is the entire server-side user vocabulary, and the update is to directly replace the synchronized vocabulary in the local user lexicon.
17、 如权利要求 15所述的系统, 其特征在于, 当下载服务器端数据时,客户端的下载请求数据还包括: 前次下载服务器 端数据的时间戳; 17. The system of claim 15 wherein: When downloading server-side data, the client's download request data further includes: a timestamp of the previous download of the server-side data;
则所述系统还包括:  Then the system further includes:
词库比较单元,位于服务器端, 用于比较该客户端上传的时间戳与服务器 端维护的各词条的时间戳; 所述发送的服务器端数据为: 在该客户端上传的时 间戳之后改变的词条和 /或属性参数。  The lexicon comparison unit is located on the server side, and is configured to compare the timestamp uploaded by the client with the timestamp of each term maintained by the server; the server-side data sent is: after the timestamp uploaded by the client changes Terms and/or attribute parameters.
18、 如权利要求 15所述的系统, 其特征在于, 还包括:  18. The system of claim 15 further comprising:
未同步词表合并单元,位于客户端, 用于当接收到服务器已收到未同步词 表的确认信息时, 将所述未同步词表合并到已同步词表中。  The unsynchronized vocabulary merging unit is located at the client, and is used to merge the unsynchronized vocabulary into the synchronized vocabulary when receiving confirmation that the server has received the unsynchronized vocabulary.
19、 如权利要求 15所述的系统, 其特征在于,  19. The system of claim 15 wherein:
客户端上传的数据和服务器存储的数据还包括: 用户输入法的配置数据, 以及设置该配置数据的时间;  The data uploaded by the client and the data stored by the server further include: configuration data of the user input method, and the time when the configuration data is set;
当下载服务器端数据时,客户端的下载请求数据还包括: 本地配置数据的 设置时间;  When downloading server-side data, the client's download request data further includes: a setting time of the local configuration data;
则所述系统还包括:  Then the system further includes:
配置数据比较单元,位于服务器端, 用于比较用户的本地配置数据和服务 器端的配置数据,如果服务器端配置数据的设置时间后于本地配置数据的设置 时间, 则发送服务器端配置数据;  The configuration data comparison unit is located at the server side, and is configured to compare the local configuration data of the user with the configuration data of the server. If the setting time of the local configuration data is set after the setting time of the server configuration data, the server configuration data is sent;
配置数据更改单元,位于客户端,用于依据接收的服务器端配置数据更改 本地配置数据。  A configuration data change unit, located at the client, that is used to change local configuration data based on received server-side configuration data.
20、 如权利要求 15所述的系统, 其特征在于,  20. The system of claim 15 wherein:
当上传和下载数据时,客户端通信单元发出的上传数据和下载请求数据还 包括: 用户词库标识。  When uploading and downloading data, the upload data and the download request data sent by the client communication unit further include: a user vocabulary identifier.
21、 如权利要求 15所述的系统, 其特征在于, 客户端上传的数据还包括 删词表, 所述删词表用于记录用户的删词情况。  The system of claim 15, wherein the data uploaded by the client further comprises a vocabulary list, wherein the vocabulary list is used to record the user's deleted words.
22、 如权利要求 21所述的系统, 其特征在于, 通过以下方式记录用户的 删词情况:  22. The system according to claim 21, wherein the user's deletion is recorded in the following manner:
通过用户手动操作记录用户的删词信息;  Recording the user's deleted words by manual operation by the user;
或者, 通过检测用户在候选词窗口中的回退操作, 记录用户的删词信息; 或者,通过检测用户所选字词上屏后在预置时间内的删除操作,记录用户 的删词信息。 Or, by detecting a user's fallback operation in the candidate word window, recording the user's deleted words information; Alternatively, the user's deleted word information is recorded by detecting a deletion operation within a preset time after the user selects the word on the screen.
23、 一种用户词库同步更新的方法, 其特征在于, 涉及服务器和至少一个 客户端, 包括:  A method for synchronously updating a user vocabulary, characterized in that the server and the at least one client are involved, including:
记录用户的输入词条和相应的属性参数至未同步词表;本地用户词库包括 已同步词表、 未同步词表; 客户端针对本地用户词库存储一客户端时间戳, 所 述客户端时间戳由服务器确定;  Recording the user's input terms and corresponding attribute parameters to the unsynchronized word list; the local user vocabulary includes the synchronized vocabulary, the unsynchronized vocabulary; the client stores a client timestamp for the local user word library, the client The timestamp is determined by the server;
满足触发条件时, 上传未同步词表中的数据 D1至服务器, 以及将当前客 户端时间戳 T1作为参数上传;  When the trigger condition is met, the data D1 in the unsynchronized word list is uploaded to the server, and the current client timestamp T1 is uploaded as a parameter;
服务器在服务器端用户词库中查找词条时间戳高于 T1的词条, 构成集合 The server looks up the entry in the server-side user vocabulary with a timestamp higher than T1, and constitutes a collection.
D2; 所述服务器维护一全局时间戳, 以及针对每个词条维护一词条时间戳; 服务器更新全局时间戳至 T2, 并发送 D2和 T2至相应客户端; 涉及的词条时间戳更新为 T2; D2; the server maintains a global timestamp, and maintains a term timestamp for each entry; the server updates the global timestamp to T2, and sends D2 and T2 to the corresponding client; the term timestamp involved is updated to T2;
客户端采用数据 D2更新已同步词表, 并将数据 D1合并至已同步词表; 客户端清空未同步词表, 并将客户端时间戳更新为 T2。  The client updates the synchronized vocabulary with data D2 and merges the data D1 into the synchronized vocabulary; the client empties the unsynchronized vocabulary and updates the client timestamp to T2.
24、 如权利要求 23所述的方法, 其特征在于, 所述用户词库记录有: 用户输入的已有字词及相应的属性参数;  The method according to claim 23, wherein the user vocabulary records: the existing words input by the user and corresponding attribute parameters;
和 /或 , 用户输入的自造字词及相应的属性参数。  And / or , the user-entered self-created words and corresponding attribute parameters.
25、 如权利要求 23所述的方法, 其特征在于, 还包括:  25. The method of claim 23, further comprising:
上传用户输入法的配置数据, 以及设置该配置数据的时间; 比较用户的本 地配置数据和服务器端的配置数据,以设置时间在后的配置数据为依据更改或 者保留本地配置数据;  Uploading the configuration data of the user input method, and setting the time of the configuration data; comparing the local configuration data of the user with the configuration data of the server, and changing or retaining the local configuration data based on the configuration data after the time is set;
和 /或, 上传用户输入法的配置数据, 以及设置该配置数据的时间; 比较 用户的服务器端的配置数据和本地配置数据,以设置时间在后的配置数据为依 据更改或者保留服务器端的配置数据。  And/or, uploading the configuration data of the user input method, and setting the time of the configuration data; comparing the configuration data of the user's server side with the local configuration data, and changing or retaining the configuration data of the server side according to the configuration data after the time is set.
26、 如权利要求 23所述的方法, 其特征在于, 还包括:  The method of claim 23, further comprising:
当上传和下载数据时,客户端提供用户词库标识, 所述用户词库标识用于 指向特定的用户词库。 When uploading and downloading data, the client provides a user vocabulary identifier that is used to point to a particular user vocabulary.
27、 一种输入法客户端, 其特征在于, 包括: 27. An input method client, comprising:
记录单元, 用于记录用户的输入词条和相应的属性参数至未同步词表; 本 地用户词库包括已同步词表和未同步词表;  a recording unit, configured to record a user input term and a corresponding attribute parameter to an unsynchronized word list; the local user vocabulary includes a synchronized vocabulary and an unsynchronized vocabulary;
客户端通信单元, 用于当满足触发条件时, 上传未同步词表中的数据 D1 至服务器, 以及将针对本地用户词库的当前客户端时间戳 T1作为参数上传; 客户端更新单元, 用于采用服务器返回的数据 D2更新已同步词表, 并将 数据 D1合并至已同步词表; 以及清空未同步词表, 并根据服务器的通知将客 户端时间戳更新为 T2;所述服务器返回的数据 D2为在服务器端用户词库中查 找到的词条时间戳高于 T1的词条集合, 所述时间戳 T2由服务器确定。  a client communication unit, configured to upload the data D1 in the unsynchronized word list to the server when the trigger condition is met, and upload the current client timestamp T1 for the local user vocabulary as a parameter; the client update unit, Update the synchronized word list with the data D2 returned by the server, and merge the data D1 into the synchronized word list; and clear the unsynchronized word list, and update the client time stamp to T2 according to the notification of the server; the data returned by the server D2 is a set of terms whose term timestamp is found in the server-side user vocabulary is higher than T1, and the timestamp T2 is determined by the server.
28、 如权利要求 27所述的客户端, 其特征在于, 还包括:  The client according to claim 27, further comprising:
配置数据更改单元, 用于依据接收的服务器端配置数据更改本地配置数 据; 所述服务器返回的配置数据为: 设置时间晚于本地设置时间的配置数据; 所述本地设置时间包括在客户端的更新请求数据中。  a configuration data change unit, configured to change local configuration data according to the received server-side configuration data; the configuration data returned by the server is: setting data that is later than the local setting time; the local setting time includes an update request at the client In the data.
29、 如权利要求 28所述的客户端, 其特征在于,  29. The client of claim 28, wherein:
当更新数据时, 客户端通信单元的更新请求数据还包括: 用户词库标识。 When the data is updated, the update request data of the client communication unit further includes: a user vocabulary identifier.
30、 一种用于同步更新用户词库的服务器, 其特征在于, 包括: 30. A server for synchronously updating a user vocabulary, comprising:
存储单元, 用于依据用户词库标识, 存储多个用户词库;  a storage unit, configured to store a plurality of user vocabularies according to the user vocabulary identifier;
服务器处理单元, 用于在服务器端用户词库中查找词条时间戳高于 T1的 词条, 构成集合 D2; 以及更新全局时间戳至 T2; 所述时间戳 T1为上传的客 户端时间戳;  a server processing unit, configured to search for a term with a timestamp higher than T1 in the server-side user vocabulary to form a set D2; and update the global timestamp to T2; the timestamp T1 is an uploaded client timestamp;
服务器通信单元, 用于发送 D2和 T2至相应客户端;  a server communication unit, configured to send D2 and T2 to the corresponding client;
服务器更新单元, 用于将上传的数据 D1和服务器已存的用户词库进行合 并,并将合并所涉及的词条时间戳更新为 T2; 所述数据 D1为客户端记录在未 同步词表中的数据, 包括用户的输入词条和词频信息。  a server update unit, configured to merge the uploaded data D1 with the stored user vocabulary of the server, and update the term time stamp of the merging to T2; the data D1 is recorded by the client in the unsynchronized vocabulary The data, including the user's input terms and word frequency information.
31、 如权利要求 30所述的服务器, 其特征在于, 还包括:  The server according to claim 30, further comprising:
配置数据比较单元 , 用于比较用户的本地配置数据和服务器端的配置数 据,如果服务器端配置数据的设置时间后于本地配置数据的设置时间, 则发送 服务器端配置数据; 所述本地设置时间包括在客户端的更新请求数据中。  The configuration data comparison unit is configured to compare the local configuration data of the user with the configuration data of the server. If the setting time of the local configuration data is set after the setting time of the server configuration data, the server configuration data is sent; the local setting time is included in The client's update request data.
PCT/CN2008/070751 2007-04-20 2008-04-18 Method and system of updating user word stock synchronouslly WO2008128473A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CNB2007100981996A CN100464308C (en) 2007-04-20 2007-04-20 Method and system for updating user vocabulary synchronouslly
CN200710098199.6 2007-04-20

Publications (1)

Publication Number Publication Date
WO2008128473A1 true WO2008128473A1 (en) 2008-10-30

Family

ID=38715525

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2008/070751 WO2008128473A1 (en) 2007-04-20 2008-04-18 Method and system of updating user word stock synchronouslly

Country Status (2)

Country Link
CN (1) CN100464308C (en)
WO (1) WO2008128473A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2784628A1 (en) * 2013-03-28 2014-10-01 Fujitsu Limited Terminal device, conversion word candidate synchronization method, and conversion word candidate synchronization program

Families Citing this family (47)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100464308C (en) * 2007-04-20 2009-02-25 北京搜狗科技发展有限公司 Method and system for updating user vocabulary synchronouslly
CN101420313B (en) * 2007-10-22 2011-01-12 北京搜狗科技发展有限公司 Method and system for clustering customer terminal user group
CN101242228B (en) * 2008-02-25 2011-01-19 中兴通讯股份有限公司 Emergent handling method and system for interactive network TV system
CN101639863B (en) * 2009-09-04 2014-07-16 腾讯科技(深圳)有限公司 Method system and equipment for loading city lexicon
JP5061166B2 (en) 2009-09-04 2012-10-31 Kii株式会社 Data synchronization system and data synchronization method
CN101710326B (en) * 2009-12-03 2012-10-03 腾讯科技(深圳)有限公司 Word stock substitution method, device and input method system
CN101840418A (en) * 2010-03-31 2010-09-22 北京搜狗科技发展有限公司 User word library synchronous update method, update server and input method system
CN102209083B (en) * 2010-03-31 2015-03-18 北京搜狗科技发展有限公司 Method and server for synchronous update of user lexicon and input method system
CN102214011B (en) * 2010-04-09 2015-09-09 北京搜狗科技发展有限公司 A kind of method of initiating input method remote calculation request and device
CN102314334A (en) * 2010-06-30 2012-01-11 百度在线网络技术(北京)有限公司 Method for caching content input into application program by user and equipment
CN101908061A (en) * 2010-07-02 2010-12-08 互动在线(北京)科技有限公司 Method and device for synchronizing entries
CN102402298A (en) * 2010-09-16 2012-04-04 腾讯科技(深圳)有限公司 Pinyin input method and user word adding method and system of same
CN102467320A (en) * 2010-11-09 2012-05-23 腾讯科技(深圳)有限公司 Input method, input method device and system
CN102467537B (en) * 2010-11-10 2016-07-27 腾讯科技(深圳)有限公司 The method and apparatus deleting vocabulary
CN102768576A (en) * 2011-05-06 2012-11-07 张家港市赫图阿拉信息技术有限公司 Input method allowing user to manage custom dictionary
CN102902362B (en) * 2011-07-25 2017-10-31 深圳市世纪光速信息技术有限公司 Character input method and system
CN103019398A (en) * 2011-09-20 2013-04-03 腾讯科技(深圳)有限公司 Character input method and character input device
CN103108012B (en) * 2011-11-15 2019-11-19 深圳市世纪光速信息技术有限公司 A kind of user thesaurus synchronous method and user thesaurus sync server
CN102521379A (en) * 2011-12-19 2012-06-27 上海交通大学 Internet information collection method and internet information collection device based on active push technology
CN102546779B (en) * 2011-12-27 2014-12-10 Tcl集团股份有限公司 Synchronized method and device of application data across devices
US8983849B2 (en) * 2012-10-17 2015-03-17 Nuance Communications, Inc. Multiple device intelligent language model synchronization
CN102982070A (en) * 2012-10-26 2013-03-20 北京百度网讯科技有限公司 Word bank updating method and system and cloud server used for input method application program
CN103825918B (en) * 2012-11-16 2018-09-18 腾讯科技(深圳)有限公司 Method of data synchronization, terminal device, server and system
CN103929448B (en) * 2013-01-14 2018-06-05 百度国际科技(深圳)有限公司 Server provides the method, system and device of cell dictionary beyond the clouds
CN104049766B (en) * 2013-03-11 2017-05-31 百度国际科技(深圳)有限公司 Cloud server and its terminal for updating language model in cloud input method
CN103246703B (en) * 2013-04-03 2017-09-15 百度在线网络技术(北京)有限公司 A kind of method and apparatus for being used to determine application dictionary
CN103327026B (en) * 2013-06-28 2016-03-02 腾讯科技(深圳)有限公司 A kind of data-updating method and the system of renewal
CN103647761B (en) * 2013-11-28 2017-04-12 小米科技有限责任公司 Method and device for marking audio record, and terminal, server and system
CN103888519B (en) * 2014-03-10 2019-03-01 北京搜狗科技发展有限公司 A kind of dictionary synchronous method and input method server
CN104917669A (en) * 2015-05-29 2015-09-16 北京搜狗科技发展有限公司 Information processing method and device
CN105207809B (en) * 2015-08-25 2019-01-15 广州华多网络科技有限公司 A kind of data processing method, server, client and system
CN105117263B (en) * 2015-09-14 2018-06-22 北京空间飞行器总体设计部 A kind of unix environment software system updating method
CN105934759A (en) * 2015-10-13 2016-09-07 深圳还是威健康科技有限公司 Data updating method and device, terminal and server
CN106802762B (en) * 2015-11-26 2020-09-11 思杰系统有限公司 Synchronizing server-side keyboard layout with client-side layout in virtual session
CN105636121A (en) * 2015-12-17 2016-06-01 福建新大陆通信科技股份有限公司 Server login and data synchronization method and system for client
CN105955495A (en) * 2016-04-29 2016-09-21 百度在线网络技术(北京)有限公司 Information input method and device
CN106249914A (en) * 2016-08-03 2016-12-21 太仓美宅姬娱乐传媒有限公司 A kind of character input method and system thereof
CN107018194A (en) * 2017-04-07 2017-08-04 厦门天锐科技股份有限公司 The implementation method that a kind of strategy is correctly downloaded in time
CN109829010B (en) * 2017-08-28 2023-11-14 西安中兴新软件有限责任公司 Entry modification method and entry modification device
JP7063988B2 (en) 2017-10-20 2022-05-09 オッポ広東移動通信有限公司 Data transmission method, terminal equipment and network equipment
CN110362686B (en) * 2018-04-02 2024-02-06 北京搜狗科技发展有限公司 Word stock generation method and device, terminal equipment and server
CN108874175A (en) * 2018-06-20 2018-11-23 北京百度网讯科技有限公司 A kind of data processing method, device, equipment and medium
CN109542248A (en) * 2018-11-16 2019-03-29 上海二三四五网络科技有限公司 A kind of control method and control device of incremental update dictionary data
CN109617950B (en) * 2018-11-26 2021-09-03 杭州涂鸦信息技术有限公司 Data updating method, device, equipment and readable storage medium
CN110263184A (en) * 2019-06-20 2019-09-20 中国医学科学院医学信息研究所 A kind of data processing method and relevant device
CN112581941A (en) * 2020-11-17 2021-03-30 北京百度网讯科技有限公司 Audio recognition method and device, electronic equipment and storage medium
CN112765275A (en) * 2021-01-26 2021-05-07 成都佳发安泰教育科技股份有限公司 Data synchronous exchange method, equipment and medium based on single time coordinate system

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6282508B1 (en) * 1997-03-18 2001-08-28 Kabushiki Kaisha Toshiba Dictionary management apparatus and a dictionary server
US20040148597A1 (en) * 2002-10-11 2004-07-29 Lilley Patrick C. System for optimizing distribution of information employing a universal dictionary
CN101030157A (en) * 2007-04-20 2007-09-05 北京搜狗科技发展有限公司 Method and system for updating user vocabulary synchronouslly
CN101079037A (en) * 2006-06-26 2007-11-28 腾讯科技(深圳)有限公司 Chinese character library updating method and system
CN101140585A (en) * 2007-09-24 2008-03-12 腾讯科技(深圳)有限公司 User thesaurus management system and management method

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6785869B1 (en) * 1999-06-17 2004-08-31 International Business Machines Corporation Method and apparatus for providing a central dictionary and glossary server
JP4398144B2 (en) * 2002-12-24 2010-01-13 インターナショナル・ビジネス・マシーンズ・コーポレーション Dictionary update system, update server, terminal, control method, program, and recording medium
JP2007034801A (en) * 2005-07-28 2007-02-08 Orion Denki Kk Dictionary update system and dictionary update method

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6282508B1 (en) * 1997-03-18 2001-08-28 Kabushiki Kaisha Toshiba Dictionary management apparatus and a dictionary server
US20040148597A1 (en) * 2002-10-11 2004-07-29 Lilley Patrick C. System for optimizing distribution of information employing a universal dictionary
CN101079037A (en) * 2006-06-26 2007-11-28 腾讯科技(深圳)有限公司 Chinese character library updating method and system
CN101030157A (en) * 2007-04-20 2007-09-05 北京搜狗科技发展有限公司 Method and system for updating user vocabulary synchronouslly
CN101140585A (en) * 2007-09-24 2008-03-12 腾讯科技(深圳)有限公司 User thesaurus management system and management method

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2784628A1 (en) * 2013-03-28 2014-10-01 Fujitsu Limited Terminal device, conversion word candidate synchronization method, and conversion word candidate synchronization program
JP2014194669A (en) * 2013-03-28 2014-10-09 Fujitsu Ltd Terminal device, conversion character candidate synchronizing method, and conversion character candidate synchronizing program
US9448989B2 (en) 2013-03-28 2016-09-20 Fujitsu Limited Terminal device, conversion word candidate synchronization method, and conversion word candidate synchronization program

Also Published As

Publication number Publication date
CN100464308C (en) 2009-02-25
CN101030157A (en) 2007-09-05

Similar Documents

Publication Publication Date Title
WO2008128473A1 (en) Method and system of updating user word stock synchronouslly
EP1271320B1 (en) Method and system for using a sync key
US7287068B1 (en) System and method for updating devices that execute an operating system or application program directly from nonvolatile storage
JP4732661B2 (en) How to synchronize the client database with the server database
US20070174246A1 (en) Multiple client search method and system
US20050108297A1 (en) Transfer of user profiles using portable storage devices
WO2011000254A1 (en) Search method, device and system
WO2011085631A1 (en) Method, system and server for collecting version of software
EP2701083B1 (en) Method, apparatus and system for auto-synchronization of compressed content files
CN107423070B (en) Page generation method and device
WO2014063658A1 (en) Method and device for content synchronization
US11868634B2 (en) Systems and methods for file management by mobile computing devices
US20030236864A1 (en) File downloading system and method
WO2009121262A1 (en) A device, method and system for management of customized information
JP4719732B2 (en) Backup server, mobile device, communication system using these, and backup method
CN108259543B (en) Distributed cloud storage database and method for deploying same in multiple data centers
US6560700B1 (en) Protocol for synchronizing parallel processors in a mobile communication system
US20060020572A1 (en) Computer, storage system, file management method done by the computer, and program
JP2002183019A (en) Cache device
US8150802B2 (en) Accumulating star knowledge in replicated data protocol
WO2018000785A1 (en) Method for remote file access, server, client terminal, and system
JP5467032B2 (en) Information management system and its data update operation method
JP2002251309A (en) Shared file management system
CN105701110B (en) A kind of method and apparatus that data are applied in inquiry
CN112948406B (en) Method, system and device for storing and synchronizing configuration change data

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 08734109

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 08734109

Country of ref document: EP

Kind code of ref document: A1