WO1998006046A1 - Synchronization of server database with client database using distribution tables - Google Patents
Synchronization of server database with client database using distribution tables Download PDFInfo
- Publication number
- WO1998006046A1 WO1998006046A1 PCT/US1997/013276 US9713276W WO9806046A1 WO 1998006046 A1 WO1998006046 A1 WO 1998006046A1 US 9713276 W US9713276 W US 9713276W WO 9806046 A1 WO9806046 A1 WO 9806046A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- distribution
- database
- client
- information
- server
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2308—Concurrency control
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2308—Concurrency control
- G06F16/2315—Optimistic concurrency control
- G06F16/2322—Optimistic concurrency control using timestamps
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99951—File or database maintenance
- Y10S707/99952—Coherency, e.g. same view to multiple users
Definitions
- the invention relates to distributed databases, and more particularly, to distributed relational databases in which a client computer maintains a database that is a subset of a server database.
- the client computers may be portable remote computers, and the server database may be maintained by a powerful server computer, for example.
- the contents of the shared database may change, and the client computers periodically download updated information from the shared database to ensure that the remote database subsets are current and accurate.
- the client computers also may periodically upload information to the shared database. This bi-directional exchange of information between the server and client databases is referred to as database synchronization.
- RDBMS Relational Database Management Systems
- Prior approaches to database synchronization often accessed a transaction log file, maintained for database recovery purposes, to ascertain what changes were made to a server database since the last synchronization
- An objective of a server synchronization for any client computer typically is to extract from the server database all records in the user subset that have been modified since that remote computer last performed a synchronization Extract records are identified by referring to the log file to determine which records have changed In order to reduce the volume of information sent during synchronization, only the extract records for that user subset are downloaded to the remote computer
- synchronization process could read the log file once and produce extract files for all remote users
- the synchronization process and the RDBMS logging process therefore, may be in direct conflict with each other because each requires access to the transaction log file.
- the RDBMs cannot be appending records to the end of the log file while the log file is being read for synchronization.
- the conflict problem becomes more acute as the number of remote computers, the number of record updates and the size of the transaction log file increase.
- log file approach to database synchronization Another problem with the log file approach to database synchronization is that there may be records that should be extracted and downloaded during database synchronization, but which do not exist in the log file.
- the log file generally contains only records that have been modified. However, there may be situations in which the modification of one record implicates other records which should be extracted for downloading despite the fact that those other records have not been modified. If these additional records are not extracted and propagated to the remote database, then the remote database will have gaps which shall be referred to herein as, "black holes.”
- a sales representative may be assigned to a sales team in which each team member has a portable client computer with access to a server database subset relating to the team's sales territory.
- Each team has company records assigned to it.
- the company records may indicate not only which companies are associated with a particular team, but also may identify records in a contact table that specify the contact persons at the company.
- the server database includes a team table which relates sales representatives to sales teams. Whenever a new team member is added to a sales team, the server database team table is updated, and the RDBMS updates the transaction log file to show the change to the team table.
- the server log file is scanned to identify extract records to be download.
- the present invention provides novel data structures and processes for use in extracting information from a server database during the synchronization of the server database and a client database.
- Novel distribution tables which are distinct from the server database application schema, are used by novel processes to locate information in the server database that may require extraction during the synchronization.
- the distribution tables can be used to identify information in related server database tables that requires extraction because the information has changed since the last synchronization. Consequently, the distribution tables obviate the need to resort to a transaction log file to identify changed information.
- the distribution tables also can be used to identify related server database tables that may contain information to be extracted based upon changed relationships among information in the server database, rather than based upon some change in the actual contents of such related server tables.
- the distribution tables can avoid the appearance of so called, "black holes" in a synchronizing client database.
- the distribution tables are maintained as part of the synchronization process, and the distribution tables cannot be modified during a synchronization extract phase. As a result, synchronization occurs on an efficient net change basis.
- Figure 1 is an illustrative block diagram of a server computer system and a plurality of remote client computer systems that can employ the apparatus and methods of the presently preferred embodiment of the invention
- Figure 2 is a simplified flow diagram illustrating steps in a bidirectional database synchronization process employing apparatus and methods of the presently preferred embodiment of the invention.
- the present invention comprises a novel method and apparatus for improved distribution of database information during the synchronization of a server database and a client database.
- the present invention is primarily concerned with the extract of information from the server database for distribution to a client database.
- FIG. 1 a block diagram of a server computer system 10 which manages a shared server database and multiple client computers 12, 14 and 16 each of which accesses a different subset of the shared server database
- server computer system includes storage media encoded with the server database, a RDBMS distribution structures and related programs used during database synchronization.
- Each client computer includes storage media encoded with, a RDBMS and a complete copy of the subset of the server database appropriate to that client. Users of the client computers can run applications using the client databases without being connected to the server database.
- the server database is updated with information entered on the client computers, and conversely, the client computers are updated with new information entered on the server computer.
- the different client databases are synchronized with the server database through separate bi-directional synchronization processes as indicated in the drawing and as described below.
- a server computer system maintains a server database in electronic memory.
- Information within the server database can be shared with different client databases which may contain different subsets of the server database.
- the server system maintains structures in electronic memory, which shall be referred to herein as distribution tables, which inform a database synchronization process of the distribution information which is to be extracted from server database tables for distribution to different client databases.
- a distribution table can be created during database set up for each server database table for which a modification may affect the distribution of information between another server database table and a client database.
- Server database tables possessing the property that their modification may affect the distribution of other server database table information shall be referred to herein as a distribution point tables.
- a distribution point table is created for a given server table if modification of such server table may modify the set of information that is required to be extracted from the server database for distribution to some given client database in the course of synchronization of the server and the given client database.
- a server database table is defined as a distribution point table and requires a corresponding distribution table if there are any columns in such server database table that have the property that modification of the column's data values could affect the distribution set for this or other tables.
- the distribution set for a given client database is defined herein as the subset of records from the server database that are extracted for distribution to such given client during synchronization of such client and server databases.
- every data distribution point table has a distribution table maintained for it.
- a distribution table is a data structure in electronic memory that is separate table from its corresponding server database table. More specifically, a distribution table is separate from the server database in that it is not one of the server database application tables. Hence a distribution table is not an application table that is available for general purpose application processing. Rather, it is a system table that is created soley to support synchronizations and is used only during synchronizations. It is "maintained" during the initial phase of the synchronization host extract process and then is referenced later in the host extract process to identify different distribution sets for different synchronizing clients.
- a distribution table includes an identification field for a synchronization client user and a set of fields, such as a primary key, that uniquely identifies record occurrences within a corresponding distribution point table, for example.
- the distribution table therefore, represents a distribution set of records from a corresponding server database table for synchronizing clients.
- a database synchronization process may employ multiple distribution tables during the synchronization of a given client database.
- distribution tables may be created for other server database tables that are subsetted during a client database synchronization, but which do not necessarily possess the property that modification of such server table may modify distribution requirements for such table or other server tables.
- a distribution relation table is a server database table that possesses the property that information subsetted from it for distribution during a synchronization process may be affected by modifications to another server table.
- a single table may serve as both a distribution point table and a distribution relation table.
- a distribution relation table may be subsetted during the extraction portion of a synchronization process, it does not include columns for which the modification of data values would affect the distribution sets for itself or other tables.
- a distribution relation table can be further defined as any table which has records to be subsetted based upon a relationship directly to a distribution point table, or indirectly, through another intermediate distribution relation table, to a distribution point table.
- a distribution relation table can be defined as a table that is subsetted during an extract process and for which at least one criteria for identification of record subsets is based upon a relationship to another table rather than upon the distribution relation table's own column values.
- the synchronization process uses the distribution tables to extract subset records from distribution relation tables, directly or indirectly, so that the subsetted information can be distributed to a synchronizing client. More particularly, in the current embodiment only the subset of the records in a server distribution relation table that require distribution to a given synchronizing client is extracted from that server database table for distribution to that client.
- one set of records in a distribution relation table may pertain to one client and another set of records in that distribution relation table may pertain to another client, for example. Only the one or the other set of records is extracted during a given synchronization, depending upon whether it is the one or the other client that is synchronizing.
- Distribution tables advantageously permit this limited extraction without the need to access a log file.
- the distribution point tables and distribution relation tables within the server database include time stamp information indicating when records were modified. They also include modifier information indicating who last modified records within such tables. During the synchronization process, time stamp information and modifier information are used to determine whether information must be extracted from server database tables.
- server database tables that are not subsetted i.e., all records sent to synchronizing client
- Distribution tables of the presently preferred embodiment of the invention provide a distribution flag which indicates whether or not distribution requirements for a synchronizing client have changed since the last synchronization of that client. If the requirements have changed since the last synchronization, then subsetted distribution relation table information is distributed to such synchronizing client without regard to time stamp and last modifier information. That is, even if the time stamp and last modifier information indicates that there has been no change in the subsetted records, those subsetted records are transferred to the synchronizing client if the distribution flag indicates changed distribution requirements.
- the server computer system maintains data distribution tables for use in conjunction with the server database.
- the distribution tables inform the synchronization process as to the different server database information to be distributed to different clients.
- the distribution tables can be used to identify server database information that requires distribution to a synchronizing client database, even if the identified (subsetted) server information itself has not changed since the last synchronization of that client database.
- the need to distribute may be based upon a change in distribution requirements for the synchronizing client rather than based upon a change in the actual distributed information.
- the distribution tables therefore, obviate the need to refer to the log file to locate update information.
- the synchronization can cause distribution of subsetted server database distribution relation table information based upon such changed distribution alone, regardless of whether the information has been modified, gaps or "black holes" in a client database can be more readily avoided.
- FIG. 2 there is shown a generalized flow diagram of a synchronization process in accordance with a presently preferred embodiment of the invention.
- First scan the client database and build a flat file containing the extracted database records which shall be referred to as a, Client Data Transfer File (CDTF).
- Second transfer the CDTF file to the server computer system.
- Third scan the server database and build a flat file containing the extracted database records which shall be referred to as a, Server Data Transfer File (HDTF).
- HDTF Server Data Transfer File
- Fifth transfer the HDTF file to the client computer.
- Sixth apply the HDTF records into the client database.
- the focal point of the present invention is the third step, scanning the server database to extract server database records to be transferred to the synchronizing client database.
- An important advantage of the presently preferred embodiment of the invention is that the server database extract portion of the synchronization process scans the server database directly rather than reading from a log file of database modifications. Consequently, there is no contention between the log file process and the synchronization process.
- the remaining steps in the synchronization process generally are well known and need not be described in detail herein, although certain aspects of the sixth step, such as reassignments, record deletions and de-assignments, are novel and are explained below.
- the database scans are done on a table by table basis in referential integrity order.
- Referential integrity order is derived from the foreign key relationships maintained between multiple tables.
- the data transfer files are built as the records are extracted and are applied in the same order on the other computer. This procedure avoids referential integrity constraints since all foreign key dependent records are inserted after the foreign key itself.
- Exemplary Server Database Tables and Data Distribution Tables The following sections provide illustrative examples of three types of data structures employed in the presently preferred embodiment of the invention.
- these structures are tables. These tables are described in the context of a hypothetical situation in which remote sales representatives possess associated client databases which receive all record occurrences within an Employee Table, a Sales Team Table and a Team Link Table but only some of the records within a Company Table and a Contact Table.
- Each remote representative can access all employee records and all sales team records and determine who is on each team.
- each sales representative's client database receives only the particular Company Table records that are related to a team for which an associated remote employee is included.
- joeb's client database contains company records only for Acme Tools and Western Boots.
- the client database for marys contains company records only for Bathe Stores.
- the Contact Table is subsetted by its direct relationship through the common key value of "company id" to the Company Table.
- the client database for joeb contains the contacts for Acme Tools and Western Boots: Jeff Camp, Mary Teele and Abe Matson.
- the client database for marys contains the contacts for Bathe Stores: Steve Smith.
- each client database includes all records from the server database's
- each client database includes only a subset of the records from the server database Company Table and from the server database Contact Table.
- the tables in the hypothetical example are as follows.
- the Employee and Sales Team tables do not 25 need distribution tables since the modification of any column's data value will not affect the distribution sets of any other tables in the server database.
- the Team Link Table fits the parameters for requiring a distribution table since modification to either of the Team Link Table's columns will affect the distribution sets of the server database Company table and the server database Contact table.
- the distribution table for the Team Link Table follows.
- the Team Link Table does not have an identification field, but the occurrence of both column data values uniquely identifies a record. That is, the "employee code" column and the "sales team” column provide distribution information that indicates distribution requirements for a synchronizing client.
- the Distribution Table for the Team Link Table supports the following distribution rules: for (client) joeb, distribute records that relate to the northwest team; and for (client) marys, distribute records that relate to the southwest team.
- the "employee code” column of the Distribution Table for the Team Link Table is used not only to identify record distributions, but also to identify which synchronization client database owns the record occurrences within the Distribution Table for the Team Link Table. That is, the employee code column provides client database identifier information for use during synchronization.
- the Company Table also fits the parameters for requiring a distribution table since modification of the sales team column in the Company Table both affects which Company Table records and which Contact Table records are distributed to synchronizing client databases.
- the distribution table for the Company Table follows. In essence, the Distribution Table for the Company Table supports the following distribution rules: for (client) joeb, distribute records that relate to "company id" 22334 and 77663; and for (client) marys, distribute records that relate to "company id" 44556.
- Distribution Table for the Companv Table emplovee code lcomoanv id Idistribution fiae joeb
- Each of the above distribution tables includes a distribution flag field.
- the distribution flag within a distribution table is used to indicate whether or not the distribution rules (as represented in the distribution table), have changed for the currently synchronizing client since that client's last synchronization.
- “N” signifies, '"no”
- "Y” signifies, "yes”
- certain records in an associated distribution relation table must be extracted during the synchronization process.
- the Contact Table is a distribution relation table with respect to the Company Table.
- the distribution flag will be set to "Y" (yes).
- the next synchronization for joeb will include a copy of all records in the Contact Table which are related to such new company record.
- the distribution flags in the distribution tables reduce the possibility of gaps or "black holes" in a client database which might otherwise occur when the distribution rules for certain data records change.
- changes to the relationships set forth in the Company Table can impact the required distribution of records in the Contact Table
- changes to the relationships set forth in the Team Link Table can impact the required distribution of records in both the Company Table and the Contact Table.
- the records in those tables relating to the synchronizing representative are extracted and transferred to the representative's client database. That means that the extract and transfer occurs without regard to a last modified time stamp information or to last modifier information in the Company and Contact Tables.
- each of the above distribution tables includes an "employee code” column which can be used during synchronization to identify records of interest to a synchronizing client.
- the distribution table for the Team Link Table includes a "team link” column which can be used to identify records that require update in the distribution relation tables referred to as the Company Table and the Contact Table.
- the distribution table for the Company Table includes a "company id" column which can be used to identify records in the distribution relation table referred to as the Contact Table that may require update.
- the "team link” and "company id” fields are foreign keys that are used to indicate relationships between tables in the relational database.
- a single table may serve as both a distribution point table and a distribution relation table.
- An example of this is the Company Table.
- the Company Table is a distribution relation table to the Team Link Table which itself is a distribution point table.
- Company Table acts as a distribution point for the Company Table itself and as a distribution point for the distribution relation table, Contact Table.
- a (primary) distribution relation table can optionally have a distribution table built for it.
- a performance reason for building such a distribution table is that other (secondary) distribution relation tables may be joined to a distribution point table through such a distribution table.
- a new distribution table can be built for a primary distribution relation table.
- the new distribution table can serve as a distribution table for secondary distribution relation tables in order to reduce the number of secondary distribution relation tables that must be joined from the one primary distribution relation table.
- the advantages of adding new distribution tables may be significant when there are a large number of secondary distribution relation tables related through a single primary distribution relation table.
- the subsetting of the primary distribution relation table typically is performed redundantly for each of the secondary distribution related tables.
- adding a distribution table for the primary distribution relation table causes that join to happen once and then be referenced repeatedly for the secondary distribution relation tables.
- the process of maintaining distribution tables occurs at the beginning of a server extract cycle and is implemented with a stored computer program on the server database system.
- the functional requirement of this maintainenance process is to read through all modified records in the database tables that affect distribution to a synchronizing client database and to maintain the distribution tables for that client.
- the maintainenance process is run as part of each client database's synchronization extract and maintains the distribution sets within the distribution tables for only the client that is currently synchronizing.
- the distribution tables represent the working set of records to distribute for the synchronizing client during the extract. For example, if new team link records or company records are added after the distribution tables have been maintained these records and their related records will not be extracted until the next synchronization for this client. This will prevent the extraction of what will be referred to herein as orphan records
- Orphan records are records whose parent records were stored in a table after that table was extracted so it did not make it into the extract file, but the child record was stored before the extract process got to that table so it could be included in the extract.
- the overall effect of determining the set of distribution records for a synchronizing client database at the beginning of the extract process is that the set is not impacted by records updated in the database during the extract process.
- the database synchronization process can run concurrently, rather than in contention, with general purpose update and extract of the database.
- the first task the maintenance program executes is to save a time-date stamp that will be used as the synchronizing client's last synchronization date for the next synchronization if the current synchronization completes successfully. This will guarantee that any records modified in the server database tables during the maintenance or extract process will be extracted on the next synchronization cycle of the currently synchronizing client.
- the maintain process involves checking numerous possible combinations within the database to determine which records should be added to or deleted from a distribution table. It will be appreciated that there can be many different ways that a specific record can be included in the distribution set for a particular client.
- the synchronization process operates on what can be termed a "snapshot" of the server database, i.e.
- Distribution tables are maintained at the start of the synchronization process. After the data distribution tables have been maintained, the snapshot of the database remains fixed for the remainder of the synchronization process. Moreover, changes that relate to the distribution point tables or to the distribution relation tables and that arrive after the start of the synchronization process, either during maintenance or during extract and transfer, are not picked up by the synchronizing client until that client's next synchronization.
- the distribution point table records relating to the synchronizing client are first evaluated to determine whether or not there have been any deletions, and then the distribution point table records are evaluated to determine whether there have been any updates or any new inserts. The deletions are processed first so that deleted records are not checked for updates.
- the record has been modified through update or insert.
- the distribution tables are maintained based upon the information gleaned through the processes just described That is, the distribution tables are altered, if necessary, to accurately represent any modification of the distribution rules derived from the distribution point tables at the moment of the database snapshot. Also, for each record inserted into a distribution table, the distribution flag is set to "yes". The flags must all be reset to "no" at the beginning of the maintenance process or at the end of the extract process.
- a maintainenance process in accordance with the presently preferred embodiment of the invention, focuses upon the distribution tables instead of the log file. Rather than read through an entire log file to identify server database changes that may require extract during the synchronization of a given client, a maintainenance process merely evaluates whether there have been changes to records in the server database tables, particularly distribution point tables, that relate to that client These changes are used to maintain accurate distribution tables
- the distribution tables are the data structures actually used during synchronization to guide the synchronization process in the identification of record subsets to be extracted from the server database for distribution to the synchronizing client database.
- This maintenance process is far more efficient than a log file based approach since the maintenance process is only examining the set of modified records for a single synchronizing client within the distribution point tables.
- These distribution point tables are regular database tables that can be indexed for efficient access directly to the appropriate records.
- a log file approach typically examines all modified records for all clients even if these records do not modify the distribution set for the synchronizing client.
- the synchronization process includes extract processes which operate on the distribution tables to determine the subsets of records that are to be selected from the server database for different distribution point tables and for the respective distribution relation tables that are related through different respective distribution tables.
- a sql (structure querie language) select statement such as the following can be employed.
- the select statement represents a short computer program encoded in stored procedures or views in the server database electronic memory that implements the extract process described below.
- the distribution table for the Company Table is used as a set of pointers to join into the Company Table and extract only the company records that are in the distribution set for this user/employee.
- the "company id" is a unique primary key for the Company Table and is the join column.
- the synchronization process requires two additional fields for each table, the " last_modify_date” (LMD) and the last modify employee (LME).
- LMD last_modify_date
- LME last modify employee
- the last_modify_date is a time date stamp of when the record has been last modified
- the last_modify_employee is the employee code stamp of the last employee to modify the record.
- the synchronization process also maintains in the database the last_synchronization_date which is the time stamp of the start of the user/employee's last server extract process.
- the above computer program references the distribution table for the Company Table to identify records that may require extraction for the synchronizing client, identified by the "employee code.”
- the "company id" field in the distribution table is used to identify records in the Company Table, which serves as a distribution point table in this case, that may require extract.
- the LMD and LME information are used to determine whether the identified records really require extraction and distribution. If the records have not been modified since the last synchronization by the synchronizing client, then no extract is required. If the records were last updated by the employee (user) who possess the synchronizing client database, then no update is required.
- an additional distribution table is added which corresponds to the Contact Table.
- the Contact Table does not require a distribution table because there are no column values in it that if modified would change the distribution rules for it or any other tables. It should be pointed out that the modification of the "company id" field in the Contact Table would change the distribution of the Contact Table, but the hypothetical application is defined as not allowing the modification of the "company id” field.
- the Contact Table does act as a distribution relation table because the distribution rule for the Contact Table is defined by the relation of the "company id" field to the Company Table.
- the distribution rule for the Contact Table is to join from the Company distribution table into the Contact table based upon the join over the "company id" field.
- a sql statement that can be used to extract records from the Contact Table acting as a distribution relation table to the Company Table is set forth below.
- the select statement represents a short computer program encoded in stored procedures or views in the server database in electronic memory, and implements the extract process described above.
- a select to extract contacts from the server database with the addition of the Contact Distribution Table can be as follows.
- the above select statement represents a short computer program encoded in procedures or views within the server database in electronic memory, and that implements the extract process.
- the select statements extracting records from the Contact Table involves a two table join, with or without the Contact Distribution Table. Thus, there is not a big performance advantage with respect to the Contact Table alone.
- the Contact Distribution Table eliminates a join.
- an additional table is added to the server database which is called the ContactNotes Table.
- the ContactNotes Table is related through the "contact id" column to the Contact Table.
- a contact record in the Contact Table can be related to multiple ContactNotes records.
- the distribution objective for the ContactNotes table is to extract all records which are related to all contact records in the Contact Table which are related to all company records in the Company Table.
- the computer program references the Contact Distribution Table to identify records that may require extraction for the synchronizing client, identified by the "employee code”.
- the ContactTable is a distribution relation table which does not fit the definition of a distribution point table.
- modification to the ContactTable does not affect the distribution set for the ContactTable or for the ContactNotes Table. Nevertheless, a Contact Distribution Table has been produced for the ContactTable.
- the "contact id" field in the Contact Distribution Table is used to identify records in the
- the following example of the processing used to support reassignments is illustrates the usage of a distribution flag within a distribution table.
- the "employee code" column of the TeamLink Table will be updated to change from marys to joeb for the TeamLink table with the row id value of 22.
- Both of these records have a distribution flag set to "Y" to indicate that this is a new entry in the distribution table for this user and that all related records to this "Y" record must be extracted if the modify employee is not the synchronizing employee and if the modify date of the record is earlier than the synchronizing employee's last synchronization date.
- the exemplary sql statement set forth above will pick up records that have not been modified in server database since a given client's last synchronization date, but which require selection because they are now related to the client based upon a change in a distribution table.
- a similar statement is necessary for the Contact Table and every distribution relation table.
- DeleteList table An exemplary format of a DeleteList table in accordance with the present implementation of the invention can be as follows.
- a server extract process extracts DeleteList records that have been created since an cleint's last synchronization date and inserts them into the HDTF (server data transfer file).
- a client database apply process in accordance with a current implementation of the invention builds delete statements for each record in the DeleteList table using a format such as the following.
- An important requirement of the synchronization process of the present embodiment is to delete records on a client database that have not been deleted on the server database, but have been reassigned away from this employee.
- An earlier example set forth above involved deleting all the southwest company and contact records in marys' remote database because marys was taken off the southwest team.
- An additional requirement of the distribution table maintenance process is to build a list of records to be deleted on the client database based upon reassignments.
- the distribution table maintenance process when it finds a reassignment that eliminates a relationship, must traverse the database and find all related records and build an entry into the reassignment table for each record to be deleted. In this example the process would find all company records related to the southwest team and all contact and contact note records for those companies and insert the appropriate entries in the reassignment table.
- the format of the data structure for the reassignments is as follows.
- a server database extract process selects all records from the Reassignment Table for a synchronizing employee where the create date is later than the employee's (client database's) last synchronization date. For each record selected from the Reassignment Table, a DeleteList record format will be placed in the HDTF file, but not in the DeleteList Table on the server database.
- a client database apply process will process the reassign.
Abstract
Description
Claims
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP97938057A EP0979468A4 (en) | 1996-08-07 | 1997-07-30 | Synchronization of server database with client database using distribution tables |
AU40472/97A AU4047297A (en) | 1996-08-07 | 1997-07-30 | Synchronization of server database with client database using distribution tables |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/695,242 | 1996-08-07 | ||
US08/695,242 US5758355A (en) | 1996-08-07 | 1996-08-07 | Synchronization of server database with client database using distribution tables |
Publications (1)
Publication Number | Publication Date |
---|---|
WO1998006046A1 true WO1998006046A1 (en) | 1998-02-12 |
Family
ID=24792211
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US1997/013276 WO1998006046A1 (en) | 1996-08-07 | 1997-07-30 | Synchronization of server database with client database using distribution tables |
Country Status (4)
Country | Link |
---|---|
US (1) | US5758355A (en) |
EP (1) | EP0979468A4 (en) |
AU (1) | AU4047297A (en) |
WO (1) | WO1998006046A1 (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE202009007987U1 (en) * | 2009-06-05 | 2010-10-28 | Job Lizenz Gmbh & Co. Kg | Thermal release element for sprinklers, valves or the like. |
WO2011084987A1 (en) * | 2010-01-05 | 2011-07-14 | Siemens Product Lifecycle Management Software Inc. | Traversal-free rapid data transfer |
US9122740B2 (en) | 2012-03-13 | 2015-09-01 | Siemens Product Lifecycle Management Software Inc. | Bulk traversal of large data structures |
US9652495B2 (en) | 2012-03-13 | 2017-05-16 | Siemens Product Lifecycle Management Software Inc. | Traversal-free updates in large data structures |
Families Citing this family (262)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6047312A (en) * | 1995-07-07 | 2000-04-04 | Novell, Inc. | System for replicating and associating file types with application programs among plurality of partitions in a server |
GB9600823D0 (en) * | 1996-01-16 | 1996-03-20 | British Telecomm | Distributed processing |
US6501950B1 (en) | 1996-03-14 | 2002-12-31 | Bellsouth Intellectual Property Corporation | Systems and methods for monitoring data signals on a communications network |
US5857201A (en) * | 1996-06-18 | 1999-01-05 | Wright Strategies, Inc. | Enterprise connectivity to handheld devices |
US7013315B1 (en) * | 1996-11-13 | 2006-03-14 | Intellisync Corporation | Synchronization of databases with record sanitizing and intelligent comparison |
US6044381A (en) * | 1997-09-11 | 2000-03-28 | Puma Technology, Inc. | Using distributed history files in synchronizing databases |
US5943676A (en) * | 1996-11-13 | 1999-08-24 | Puma Technology, Inc. | Synchronization of recurring records in incompatible databases |
US6330568B1 (en) | 1996-11-13 | 2001-12-11 | Pumatech, Inc. | Synchronization of databases |
US6212529B1 (en) | 1996-11-13 | 2001-04-03 | Puma Technology, Inc. | Synchronization of databases using filters |
US6405218B1 (en) | 1996-11-13 | 2002-06-11 | Pumatech, Inc. | Synchronizing databases |
US6141664A (en) * | 1996-11-13 | 2000-10-31 | Puma Technology, Inc. | Synchronization of databases with date range |
US6023708A (en) * | 1997-05-29 | 2000-02-08 | Visto Corporation | System and method for using a global translator to synchronize workspace elements across a network |
US6708221B1 (en) * | 1996-12-13 | 2004-03-16 | Visto Corporation | System and method for globally and securely accessing unified information in a computer network |
US6085192A (en) * | 1997-04-11 | 2000-07-04 | Roampage, Inc. | System and method for securely synchronizing multiple copies of a workspace element in a network |
US20060195595A1 (en) | 2003-12-19 | 2006-08-31 | Mendez Daniel J | System and method for globally and securely accessing unified information in a computer network |
US7287271B1 (en) | 1997-04-08 | 2007-10-23 | Visto Corporation | System and method for enabling secure access to services in a computer network |
US6006238A (en) * | 1997-01-31 | 1999-12-21 | Network Computing Devices, Inc. | Method and apparatus for migrating/shadowing data between a server and its clients |
US6253228B1 (en) * | 1997-03-31 | 2001-06-26 | Apple Computer, Inc. | Method and apparatus for updating and synchronizing information between a client and a server |
US5961590A (en) * | 1997-04-11 | 1999-10-05 | Roampage, Inc. | System and method for synchronizing electronic mail between a client site and a central site |
US7490112B1 (en) * | 1997-04-15 | 2009-02-10 | Intellisync Corporation | System and methods for synchronizing information among disparate datasets |
US6308164B1 (en) * | 1997-04-28 | 2001-10-23 | Jeff Nummelin | Distributed project management system and method |
US5999947A (en) * | 1997-05-27 | 1999-12-07 | Arkona, Llc | Distributing database differences corresponding to database change events made to a database table located on a server computer |
US6219675B1 (en) * | 1997-06-05 | 2001-04-17 | Microsoft Corporation | Distribution of a centralized database |
US6505055B1 (en) | 1997-08-04 | 2003-01-07 | Starfish Software, Inc. | Camel-back digital organizer and communication protocol for a cellular phone device |
WO1999008209A1 (en) * | 1997-08-08 | 1999-02-18 | Bell Communications Research, Inc. | High performance asynchronous data replication |
US6633924B1 (en) | 1997-10-02 | 2003-10-14 | Charles Wu | Object synchronization between objects stores on different computers |
US6125369A (en) * | 1997-10-02 | 2000-09-26 | Microsoft Corporation | Continuous object sychronization between object stores on different computers |
US6275831B1 (en) | 1997-12-16 | 2001-08-14 | Starfish Software, Inc. | Data processing environment with methods providing contemporaneous synchronization of two or more clients |
US6295541B1 (en) | 1997-12-16 | 2001-09-25 | Starfish Software, Inc. | System and methods for synchronizing two or more datasets |
US6081806A (en) * | 1998-01-15 | 2000-06-27 | Inventec Corporation | Computer database synchronization method |
US6151606A (en) * | 1998-01-16 | 2000-11-21 | Visto Corporation | System and method for using a workspace data manager to access, manipulate and synchronize network data |
US6304881B1 (en) | 1998-03-03 | 2001-10-16 | Pumatech, Inc. | Remote data access and synchronization |
JP3966598B2 (en) * | 1998-03-04 | 2007-08-29 | 富士通株式会社 | Server selection system |
US6792435B1 (en) * | 1998-03-10 | 2004-09-14 | International Business Machines Corporation | Method and apparatus for recovering the definitions of dropped database objects |
US6170014B1 (en) * | 1998-03-25 | 2001-01-02 | Community Learning And Information Network | Computer architecture for managing courseware in a shared use operating environment |
US6925477B1 (en) | 1998-03-31 | 2005-08-02 | Intellisync Corporation | Transferring records between two databases |
US6658268B1 (en) | 1998-05-01 | 2003-12-02 | Motorola, Inc. | Enhanced companion digital organizer for a cellular phone device |
US6065051A (en) * | 1998-04-15 | 2000-05-16 | Hewlett-Packard Company | Apparatus and method for communication between multiple browsers |
US7072688B2 (en) * | 1998-05-01 | 2006-07-04 | Motorola, Inc. | Enhanced companion digital organizer for a cellular phone device |
US7209949B2 (en) | 1998-05-29 | 2007-04-24 | Research In Motion Limited | System and method for synchronizing information between a host system and a mobile data communication device |
US6189016B1 (en) * | 1998-06-12 | 2001-02-13 | Microsoft Corporation | Journaling ordered changes in a storage volume |
KR100331322B1 (en) * | 1998-06-22 | 2002-08-27 | 삼성전자 주식회사 | Recording medium and recording and / or editing device for storing additional information for supporting special functions between manufacturers and method |
US7085475B1 (en) * | 1998-06-22 | 2006-08-01 | Samsung Electronics Co., Ltd. | Method and apparatus for recording manufacturer information on a recording medium and for determining whether the manufacturer information is effective |
US6477545B1 (en) | 1998-10-28 | 2002-11-05 | Starfish Software, Inc. | System and methods for robust synchronization of datasets |
US6240416B1 (en) * | 1998-09-11 | 2001-05-29 | Ambeo, Inc. | Distributed metadata system and method |
US6449622B1 (en) | 1999-03-08 | 2002-09-10 | Starfish Software, Inc. | System and methods for synchronizing datasets when dataset changes may be received out of order |
US6460051B1 (en) | 1998-10-28 | 2002-10-01 | Starfish Software, Inc. | System and methods for synchronizing datasets in a communication environment having high-latency or other adverse characteristics |
US6553375B1 (en) * | 1998-11-25 | 2003-04-22 | International Business Machines Corporation | Method and apparatus for server based handheld application and database management |
US6516327B1 (en) * | 1998-12-24 | 2003-02-04 | International Business Machines Corporation | System and method for synchronizing data in multiple databases |
US6411961B1 (en) | 1999-01-15 | 2002-06-25 | Metaedge Corporation | Apparatus for providing a reverse star schema data model |
US6377934B1 (en) | 1999-01-15 | 2002-04-23 | Metaedge Corporation | Method for providing a reverse star schema data model |
GB9901005D0 (en) * | 1999-01-19 | 1999-03-10 | Ncr Int Inc | Data warehouse applications for networks of self-service machines |
US6470358B1 (en) * | 1999-01-22 | 2002-10-22 | Siemens Information And Communication Networks, Inc. | Remote synchronization with intelligent power management |
US6535892B1 (en) | 1999-03-08 | 2003-03-18 | Starfish Software, Inc. | System and methods for exchanging messages between a client and a server for synchronizing datasets |
US6728713B1 (en) * | 1999-03-30 | 2004-04-27 | Tivo, Inc. | Distributed database management system |
US7409546B2 (en) * | 1999-10-20 | 2008-08-05 | Tivo Inc. | Cryptographically signed filesystem |
US6487718B1 (en) * | 1999-03-31 | 2002-11-26 | International Business Machines Corporation | Method and apparatus for installing applications in a distributed data processing system |
US6308201B1 (en) * | 1999-04-08 | 2001-10-23 | Palm, Inc. | System and method for sharing data among a plurality of personal digital assistants |
US6549917B1 (en) * | 1999-04-29 | 2003-04-15 | Waveware Communications, Inc. | Synchronization of host computers and handheld remote computers |
US6430576B1 (en) * | 1999-05-10 | 2002-08-06 | Patrick Gates | Distributing and synchronizing objects |
JP2001076005A (en) * | 1999-06-30 | 2001-03-23 | Hitachi Ltd | Data base system |
US6401104B1 (en) * | 1999-07-03 | 2002-06-04 | Starfish Software, Inc. | System and methods for synchronizing datasets using cooperation among multiple synchronization engines |
US6389430B1 (en) * | 1999-07-07 | 2002-05-14 | Computer Associates Think, Inc. | Real-time database object statistics collection |
US6526438B1 (en) * | 1999-07-12 | 2003-02-25 | Divine, Inc. | Method for distributing information to subscribers over a network |
US6401103B1 (en) * | 1999-08-06 | 2002-06-04 | International Business Machines Corporation | Apparatus, method, and article of manufacture for client-side optimistic locking in a stateless environment |
US6671705B1 (en) * | 1999-08-17 | 2003-12-30 | Emc Corporation | Remote mirroring system, device, and method |
US6393434B1 (en) | 1999-09-14 | 2002-05-21 | International Business Machines Corporation | Method and system for synchronizing data using fine-grained synchronization plans |
AU7596500A (en) | 1999-09-20 | 2001-04-24 | Quintiles Transnational Corporation | System and method for analyzing de-identified health care data |
AU1074801A (en) * | 1999-10-05 | 2001-05-10 | Ejasent Inc. | Virtual endpoint |
US6917963B1 (en) * | 1999-10-05 | 2005-07-12 | Veritas Operating Corporation | Snapshot image for the application state of unshareable and shareable data |
EP1102191A3 (en) * | 1999-11-17 | 2002-06-12 | Nokia Corporation | Method and apparatus for reconciling data between devices |
US7013313B1 (en) | 1999-11-24 | 2006-03-14 | Pumatech, Inc. | System and methods for inheriting information into a dataset |
US6470350B1 (en) * | 1999-12-15 | 2002-10-22 | Unisys Corporation | Method and system for simulating a database table in response to a database query |
US6625621B2 (en) | 2000-01-04 | 2003-09-23 | Starfish Software, Inc. | System and methods for a fast and scalable synchronization server |
US6694336B1 (en) * | 2000-01-25 | 2004-02-17 | Fusionone, Inc. | Data transfer and synchronization system |
US8620286B2 (en) | 2004-02-27 | 2013-12-31 | Synchronoss Technologies, Inc. | Method and system for promoting and transferring licensed content and applications |
US8156074B1 (en) | 2000-01-26 | 2012-04-10 | Synchronoss Technologies, Inc. | Data transfer and synchronization system |
US6671757B1 (en) | 2000-01-26 | 2003-12-30 | Fusionone, Inc. | Data transfer and synchronization system |
US7505762B2 (en) | 2004-02-27 | 2009-03-17 | Fusionone, Inc. | Wireless telephone data backup system |
US7739334B1 (en) | 2000-03-17 | 2010-06-15 | Visto Corporation | System and method for automatically forwarding email and email events via a computer network to a server computer |
US6842769B1 (en) * | 2000-05-05 | 2005-01-11 | Interland, Inc. | Automatically configured network server |
US7013316B1 (en) * | 2000-07-13 | 2006-03-14 | Microsoft Corporation | System and method for synchronizing multiple database files |
US7143194B1 (en) * | 2000-07-13 | 2006-11-28 | Microsoft Corporation | System and method for optimizing the data transfer between mirrored databases stored on both a client and server computer |
US7895334B1 (en) | 2000-07-19 | 2011-02-22 | Fusionone, Inc. | Remote access communication architecture apparatus and method |
US8073954B1 (en) | 2000-07-19 | 2011-12-06 | Synchronoss Technologies, Inc. | Method and apparatus for a secure remote access system |
US7181478B1 (en) * | 2000-08-11 | 2007-02-20 | General Electric Company | Method and system for exporting flight data for long term storage |
US7596784B2 (en) * | 2000-09-12 | 2009-09-29 | Symantec Operating Corporation | Method system and apparatus for providing pay-per-use distributed computing resources |
DE10046319A1 (en) * | 2000-09-19 | 2002-04-04 | Siemens Ag | Server for distributed communications system has central synchronization device for synchronization of data between central databank and distributed communications devices |
US7225231B2 (en) * | 2000-09-20 | 2007-05-29 | Visto Corporation | System and method for transmitting workspace elements across a network |
US7111010B2 (en) | 2000-09-25 | 2006-09-19 | Hon Hai Precision Industry, Ltd. | Method and system for managing event attributes |
KR20020033275A (en) * | 2000-10-30 | 2002-05-06 | 정정호 | Synchronize push service method and system for synchronizing of a data file between a local terminal and a server |
US7818435B1 (en) | 2000-12-14 | 2010-10-19 | Fusionone, Inc. | Reverse proxy mechanism for retrieving electronic content associated with a local network |
US6959301B2 (en) * | 2001-01-04 | 2005-10-25 | Reuters Limited | Maintaining and reconstructing the history of database content modified by a series of events |
US6684224B2 (en) * | 2001-01-16 | 2004-01-27 | Chipdata, Inc. | Remote database update method and apparatus |
US6985915B2 (en) | 2001-02-28 | 2006-01-10 | Kiran Somalwar | Application independent write monitoring method for fast backup and synchronization of files |
US6847983B2 (en) | 2001-02-28 | 2005-01-25 | Kiran Somalwar | Application independent write monitoring method for fast backup and synchronization of open files |
US8615566B1 (en) | 2001-03-23 | 2013-12-24 | Synchronoss Technologies, Inc. | Apparatus and method for operational support of remote network systems |
US20040205045A1 (en) * | 2001-04-04 | 2004-10-14 | Li-Wen Chen | Method and system for decision support analysis |
US7359920B1 (en) | 2001-04-18 | 2008-04-15 | Intellisync Corporation | Communication protocol for synchronization of personal information management databases |
DE10218297A1 (en) * | 2001-05-11 | 2002-11-14 | Linde Ag | Protective gas containing helium for multi-wire welding or soldering, including tandem welding, of metal, e.g. low-alloy or high-alloy steel or aluminum in vehicle, car, rail, machine or container construction |
FI114417B (en) * | 2001-06-15 | 2004-10-15 | Nokia Corp | Select data for synchronization |
US6745212B2 (en) * | 2001-06-27 | 2004-06-01 | International Business Machines Corporation | Preferential caching of uncopied logical volumes in an IBM peer-to-peer virtual tape server |
US6778999B2 (en) * | 2001-10-12 | 2004-08-17 | International Business Machines Corporation | Method for distributing a set of objects in computer application |
WO2003036609A1 (en) * | 2001-10-24 | 2003-05-01 | Bea Systems, Inc. | Portal administration tool |
CA2467404A1 (en) * | 2001-11-15 | 2003-05-30 | Visto Corporation | System and methods for asychronous synchronization |
US7149516B2 (en) * | 2001-11-29 | 2006-12-12 | Motorola, Inc. | User controlled home location register |
US7305700B2 (en) | 2002-01-08 | 2007-12-04 | Seven Networks, Inc. | Secure transport for mobile communication network |
US20030172070A1 (en) * | 2002-03-06 | 2003-09-11 | Sawadsky Nicholas Justin | Synchronous peer-to-peer multipoint database synchronization |
AU2003218042A1 (en) * | 2002-03-08 | 2003-09-22 | Robert F. Snapp | A method for preventing improper correction of a database during an updating process |
US20040005892A1 (en) * | 2002-04-18 | 2004-01-08 | Arnaldo Mayer | System and method for managing parameter exchange between telecommunications operators |
AU2003246419A1 (en) * | 2002-06-20 | 2004-01-06 | Compagnie Ibm France | A system and method to re-synchronize client devices while refreshing them from a server |
US20080046592A1 (en) | 2002-06-26 | 2008-02-21 | Research In Motion Limited | System and Method for Pushing Information Between a Host System and a Mobile Data Communication Device |
AU2003250418A1 (en) * | 2002-09-09 | 2004-03-29 | Koninklijke Philips Electronics N.V. | A data network, user terminal and method for providing recommendations |
US7650364B2 (en) * | 2002-10-09 | 2010-01-19 | Hewlett-Packard Development Company, L.P. | Portable database system |
JP4393762B2 (en) * | 2002-12-19 | 2010-01-06 | 株式会社日立製作所 | Database processing method and apparatus and processing program therefor |
JP4290975B2 (en) * | 2002-12-19 | 2009-07-08 | 株式会社日立製作所 | Database processing method and apparatus, processing program therefor, disaster recovery method and system |
US8538840B2 (en) * | 2002-12-20 | 2013-09-17 | Siebel Systems, Inc. | Financial services data model |
US7856454B2 (en) | 2002-12-20 | 2010-12-21 | Siebel Systems, Inc. | Data model for business relationships |
US8468126B2 (en) | 2005-08-01 | 2013-06-18 | Seven Networks, Inc. | Publishing data in an information community |
US7853563B2 (en) | 2005-08-01 | 2010-12-14 | Seven Networks, Inc. | Universal data aggregation |
US7917468B2 (en) | 2005-08-01 | 2011-03-29 | Seven Networks, Inc. | Linking of personal information management data |
US8473399B2 (en) * | 2003-03-04 | 2013-06-25 | Siebel Systems, Inc. | Invoice data object for a common data object format |
US8392298B2 (en) * | 2003-03-04 | 2013-03-05 | Siebel Systems, Inc. | Invoice adjustment data object for a common data object format |
US8510179B2 (en) * | 2003-03-24 | 2013-08-13 | Siebel Systems, Inc. | Inventory transaction common object |
JP2006523353A (en) | 2003-03-24 | 2006-10-12 | シーベル システムズ,インコーポレイティド | Common common object |
US20070208577A1 (en) * | 2003-03-24 | 2007-09-06 | Leon Maria T B | Position common object |
US9704120B2 (en) * | 2003-03-24 | 2017-07-11 | Oracle International Corporation | Inventory balance common object |
US7904340B2 (en) * | 2003-03-24 | 2011-03-08 | Siebel Systems, Inc. | Methods and computer-readable medium for defining a product model |
US7912932B2 (en) * | 2003-03-24 | 2011-03-22 | Siebel Systems, Inc. | Service request common object |
US8489470B2 (en) * | 2003-03-24 | 2013-07-16 | Siebel Systems, Inc. | Inventory location common object |
US20070226037A1 (en) * | 2003-03-25 | 2007-09-27 | Shailendra Garg | Modeling of opportunity data |
JP4301849B2 (en) * | 2003-03-31 | 2009-07-22 | 株式会社日立製作所 | Information processing method and its execution system, its processing program, disaster recovery method and system, storage device for executing the processing, and its control processing method |
US7890091B2 (en) * | 2003-05-08 | 2011-02-15 | Good Technology, Inc. | Collaborative data and intelligent synchronization for mobile devices |
US7406499B2 (en) * | 2003-05-09 | 2008-07-29 | Microsoft Corporation | Architecture for partition computation and propagation of changes in data replication |
US7509352B1 (en) * | 2003-06-30 | 2009-03-24 | Microsoft Corporation | Method and apparatus for record synchronization with conflict resolution |
JP2005038354A (en) * | 2003-07-18 | 2005-02-10 | Sap Ag | Data transfer controller, data transfer control method, and data transfer control program |
WO2005010715A2 (en) | 2003-07-21 | 2005-02-03 | Fusionone, Inc. | Device message management system |
US7225208B2 (en) | 2003-09-30 | 2007-05-29 | Iron Mountain Incorporated | Systems and methods for backing up data files |
JP4129819B2 (en) * | 2003-10-06 | 2008-08-06 | インターナショナル・ビジネス・マシーンズ・コーポレーション | Database search system, search method thereof, and program |
US7634509B2 (en) * | 2003-11-07 | 2009-12-15 | Fusionone, Inc. | Personal information space management system and method |
GB2409545A (en) * | 2003-12-24 | 2005-06-29 | Nokia Corp | File synchronisation |
JP4452533B2 (en) | 2004-03-19 | 2010-04-21 | 株式会社日立製作所 | System and storage system |
US7342555B2 (en) * | 2004-04-30 | 2008-03-11 | Microsoft Corporation | Detecting low fidelity sync data |
US6944636B1 (en) * | 2004-04-30 | 2005-09-13 | Microsoft Corporation | Maintaining time-date information for syncing low fidelity devices |
EP1745380A4 (en) * | 2004-04-30 | 2008-06-04 | Microsoft Corp | Maintaining time-date information for syncing low fidelity devices |
RU2367008C2 (en) * | 2004-04-30 | 2009-09-10 | Майкрософт Корпорейшн | Supporting time and date information for synchronisation of devices with low data integrity |
US9542076B1 (en) | 2004-05-12 | 2017-01-10 | Synchronoss Technologies, Inc. | System for and method of updating a personal profile |
ES2585353T3 (en) | 2004-05-12 | 2016-10-05 | Synchronoss Technologies, Inc. | Advanced contact identification system |
US8112296B2 (en) * | 2004-05-21 | 2012-02-07 | Siebel Systems, Inc. | Modeling of job profile data |
US7865390B2 (en) * | 2004-05-21 | 2011-01-04 | Siebel Systems, Inc. | Modeling of employee performance result data |
JP4527605B2 (en) * | 2004-06-21 | 2010-08-18 | 三星エスディアイ株式会社 | Electrolytic solution for lithium ion secondary battery and lithium ion secondary battery including the same |
JP2006011535A (en) * | 2004-06-22 | 2006-01-12 | Sony Corp | Contents transfer device, contents transfer method, and computer program |
US7284021B2 (en) | 2004-06-28 | 2007-10-16 | Microsoft Corporation | Determining when a low fidelity property value has changed during a SYNC |
US7269609B2 (en) * | 2004-06-28 | 2007-09-11 | Microsoft Corporation | Preserving memory resources by limiting time-date information for a subset of properties |
US8904273B2 (en) * | 2004-07-02 | 2014-12-02 | International Business Machines Corporation | System and method of format specification |
US20060005112A1 (en) * | 2004-07-02 | 2006-01-05 | David Lilly | System and method of report layout |
US7333995B2 (en) * | 2004-07-02 | 2008-02-19 | Cognos, Incorporated | Very large dataset representation system and method |
EP1782271A1 (en) * | 2004-07-02 | 2007-05-09 | Cognos Incorporated | Very large dataset representation system and method |
US7818282B2 (en) * | 2004-07-02 | 2010-10-19 | International Business Machines Corporation | System and method for the support of multilingual applications |
US7567988B2 (en) * | 2004-07-16 | 2009-07-28 | Sap Ag | Synchronizing agent for multiple clients/applications on a computer system |
US7441271B2 (en) | 2004-10-20 | 2008-10-21 | Seven Networks | Method and apparatus for intercepting events in a communication system |
US8010082B2 (en) | 2004-10-20 | 2011-08-30 | Seven Networks, Inc. | Flexible billing architecture |
US7840528B2 (en) * | 2004-10-22 | 2010-11-23 | Research In Motion Limited | System and method for integrating continuous synchronization on a host handheld device |
US7933868B2 (en) * | 2004-11-04 | 2011-04-26 | Microsoft Corporation | Method and system for partition level cleanup of replication conflict metadata |
US7643818B2 (en) | 2004-11-22 | 2010-01-05 | Seven Networks, Inc. | E-mail messaging to/from a mobile terminal |
US7706781B2 (en) | 2004-11-22 | 2010-04-27 | Seven Networks International Oy | Data security in a mobile e-mail service |
FI117152B (en) | 2004-12-03 | 2006-06-30 | Seven Networks Internat Oy | E-mail service provisioning method for mobile terminal, involves using domain part and further parameters to generate new parameter set in list of setting parameter sets, if provisioning of e-mail service is successful |
WO2006061463A1 (en) | 2004-12-10 | 2006-06-15 | Seven Networks International Oy | Database synchronization |
CN101151841A (en) | 2004-12-23 | 2008-03-26 | 捷讯研究有限公司 | Systems and methods for continuous PIM synchronization between a host computer and a client handheld device |
FI120165B (en) | 2004-12-29 | 2009-07-15 | Seven Networks Internat Oy | Synchronization of a database through a mobile network |
US7877703B1 (en) | 2005-03-14 | 2011-01-25 | Seven Networks, Inc. | Intelligent rendering of information in a limited display environment |
US8438633B1 (en) | 2005-04-21 | 2013-05-07 | Seven Networks, Inc. | Flexible real-time inbox access |
US7796742B1 (en) | 2005-04-21 | 2010-09-14 | Seven Networks, Inc. | Systems and methods for simplified provisioning |
WO2006136661A1 (en) * | 2005-06-21 | 2006-12-28 | Seven Networks International Oy | Network-initiated data transfer in a mobile network |
WO2006136660A1 (en) * | 2005-06-21 | 2006-12-28 | Seven Networks International Oy | Maintaining an ip connection in a mobile network |
US8122034B2 (en) * | 2005-06-30 | 2012-02-21 | Veveo, Inc. | Method and system for incremental search with reduced text entry where the relevance of results is a dynamically computed function of user input search string character count |
US8069166B2 (en) | 2005-08-01 | 2011-11-29 | Seven Networks, Inc. | Managing user-to-user contact with inferred presence information |
US8731542B2 (en) | 2005-08-11 | 2014-05-20 | Seven Networks International Oy | Dynamic adjustment of keep-alive message intervals in a mobile network |
US7818344B2 (en) * | 2005-09-26 | 2010-10-19 | Bea Systems, Inc. | System and method for providing nested types for content management |
US20070073638A1 (en) * | 2005-09-26 | 2007-03-29 | Bea Systems, Inc. | System and method for using soft links to managed content |
US20070073784A1 (en) * | 2005-09-26 | 2007-03-29 | Bea Systems, Inc. | System and method for type inheritance for content management |
US20070073663A1 (en) * | 2005-09-26 | 2007-03-29 | Bea Systems, Inc. | System and method for providing full-text searching of managed content |
US7917537B2 (en) * | 2005-09-26 | 2011-03-29 | Oracle International Corporation | System and method for providing link property types for content management |
US8078588B2 (en) * | 2005-10-10 | 2011-12-13 | Oracle International Corporation | Recoverable execution |
US7529780B1 (en) | 2005-12-30 | 2009-05-05 | Google Inc. | Conflict management during data object synchronization between client and server |
US7769395B2 (en) | 2006-06-20 | 2010-08-03 | Seven Networks, Inc. | Location-based operations and messaging |
US7761424B2 (en) * | 2006-08-10 | 2010-07-20 | International Business Machines Corporation | Recording notations per file of changed blocks coherent with a draining agent |
JP4932390B2 (en) * | 2006-08-31 | 2012-05-16 | 株式会社日立製作所 | Virtualization system and area allocation control method |
US7627595B2 (en) * | 2006-12-06 | 2009-12-01 | Verizon Data Services Inc. | Apparatus, method, and computer program product for synchronizing data sources |
US9355273B2 (en) | 2006-12-18 | 2016-05-31 | Bank Of America, N.A., As Collateral Agent | System and method for the protection and de-identification of health care data |
US8693494B2 (en) | 2007-06-01 | 2014-04-08 | Seven Networks, Inc. | Polling |
US8805425B2 (en) | 2007-06-01 | 2014-08-12 | Seven Networks, Inc. | Integrated messaging |
US8788457B2 (en) * | 2007-09-21 | 2014-07-22 | International Business Machines Corporation | Ensuring that the archival data deleted in relational source table is already stored in relational target table |
US8572027B2 (en) * | 2007-09-21 | 2013-10-29 | International Business Machines Corporation | Performing synchronization among relational database tables with minimal contention |
US8112390B2 (en) * | 2007-12-07 | 2012-02-07 | Roche Diagnostics Operations, Inc. | Method and system for merging extensible data into a database using globally unique identifiers |
US8364181B2 (en) | 2007-12-10 | 2013-01-29 | Seven Networks, Inc. | Electronic-mail filtering for mobile devices |
US9002828B2 (en) | 2007-12-13 | 2015-04-07 | Seven Networks, Inc. | Predictive content delivery |
US8793305B2 (en) | 2007-12-13 | 2014-07-29 | Seven Networks, Inc. | Content delivery to a mobile device from a content service |
US8181111B1 (en) | 2007-12-31 | 2012-05-15 | Synchronoss Technologies, Inc. | System and method for providing social context to digital activity |
US8107921B2 (en) | 2008-01-11 | 2012-01-31 | Seven Networks, Inc. | Mobile virtual network operator |
US8862657B2 (en) | 2008-01-25 | 2014-10-14 | Seven Networks, Inc. | Policy based content service |
US20090193338A1 (en) | 2008-01-28 | 2009-07-30 | Trevor Fiatal | Reducing network and battery consumption during content delivery and playback |
US7991740B2 (en) * | 2008-03-04 | 2011-08-02 | Apple Inc. | Synchronization server process |
JP4942686B2 (en) * | 2008-03-18 | 2012-05-30 | 株式会社リコー | Network synchronization system and information processing apparatus |
US8787947B2 (en) | 2008-06-18 | 2014-07-22 | Seven Networks, Inc. | Application discovery on mobile devices |
US8078158B2 (en) | 2008-06-26 | 2011-12-13 | Seven Networks, Inc. | Provisioning applications for a mobile device |
US8620861B1 (en) | 2008-09-30 | 2013-12-31 | Google Inc. | Preserving file metadata during atomic save operations |
US9934240B2 (en) * | 2008-09-30 | 2018-04-03 | Google Llc | On demand access to client cached files |
US8909759B2 (en) | 2008-10-10 | 2014-12-09 | Seven Networks, Inc. | Bandwidth measurement |
US8918380B2 (en) * | 2009-07-09 | 2014-12-23 | Norsync Technology As | Methods, systems and devices for performing incremental updates of partial databases |
US8255006B1 (en) | 2009-11-10 | 2012-08-28 | Fusionone, Inc. | Event dependent notification system and method |
US9286369B2 (en) * | 2009-12-30 | 2016-03-15 | Symantec Corporation | Data replication across enterprise boundaries |
US9043731B2 (en) | 2010-03-30 | 2015-05-26 | Seven Networks, Inc. | 3D mobile user interface with configurable workspace management |
US8504530B2 (en) * | 2010-06-26 | 2013-08-06 | Asibo Inc. | Global information management system and method |
US9043433B2 (en) | 2010-07-26 | 2015-05-26 | Seven Networks, Inc. | Mobile network traffic coordination across multiple applications |
US8838783B2 (en) | 2010-07-26 | 2014-09-16 | Seven Networks, Inc. | Distributed caching for resource and mobile network traffic management |
JP5676762B2 (en) | 2010-07-26 | 2015-02-25 | セブン ネットワークス インコーポレイテッド | Mobile application traffic optimization |
US9077630B2 (en) | 2010-07-26 | 2015-07-07 | Seven Networks, Inc. | Distributed implementation of dynamic wireless traffic policy |
US8484314B2 (en) | 2010-11-01 | 2013-07-09 | Seven Networks, Inc. | Distributed caching in a wireless network of content delivered for a mobile application over a long-held request |
US9060032B2 (en) | 2010-11-01 | 2015-06-16 | Seven Networks, Inc. | Selective data compression by a distributed traffic management system to reduce mobile data traffic and signaling traffic |
WO2012060995A2 (en) | 2010-11-01 | 2012-05-10 | Michael Luna | Distributed caching in a wireless network of content delivered for a mobile application over a long-held request |
US8166164B1 (en) | 2010-11-01 | 2012-04-24 | Seven Networks, Inc. | Application and network-based long poll request detection and cacheability assessment therefor |
US8204953B2 (en) | 2010-11-01 | 2012-06-19 | Seven Networks, Inc. | Distributed system for cache defeat detection and caching of content addressed by identifiers intended to defeat cache |
US8943428B2 (en) | 2010-11-01 | 2015-01-27 | Synchronoss Technologies, Inc. | System for and method of field mapping |
US8843153B2 (en) | 2010-11-01 | 2014-09-23 | Seven Networks, Inc. | Mobile traffic categorization and policy for network use optimization while preserving user experience |
US9330196B2 (en) | 2010-11-01 | 2016-05-03 | Seven Networks, Llc | Wireless traffic management system cache optimization using http headers |
WO2012060996A2 (en) | 2010-11-01 | 2012-05-10 | Michael Luna | Caching adapted for mobile application behavior and network conditions |
WO2012061430A2 (en) | 2010-11-01 | 2012-05-10 | Michael Luna | Distributed management of keep-alive message signaling for mobile network resource conservation and optimization |
CN103404193B (en) | 2010-11-22 | 2018-06-05 | 七网络有限责任公司 | The connection that adjustment data transmission is established with the transmission being optimized for through wireless network |
EP2636268B1 (en) | 2010-11-22 | 2019-02-27 | Seven Networks, LLC | Optimization of resource polling intervals to satisfy mobile device requests |
EP2661697B1 (en) | 2011-01-07 | 2018-11-21 | Seven Networks, LLC | System and method for reduction of mobile network traffic used for domain name system (dns) queries |
US9084105B2 (en) | 2011-04-19 | 2015-07-14 | Seven Networks, Inc. | Device resources sharing for network resource conservation |
EP2702500B1 (en) | 2011-04-27 | 2017-07-19 | Seven Networks, LLC | Detecting and preserving state for satisfying application requests in a distributed proxy and cache system |
EP2621144B1 (en) | 2011-04-27 | 2014-06-25 | Seven Networks, Inc. | System and method for making requests on behalf of a mobile device based on atomic processes for mobile network traffic relief |
US9239800B2 (en) | 2011-07-27 | 2016-01-19 | Seven Networks, Llc | Automatic generation and distribution of policy information regarding malicious mobile traffic in a wireless network |
WO2013086214A1 (en) | 2011-12-06 | 2013-06-13 | Seven Networks, Inc. | A system of redundantly clustered machines to provide failover mechanisms for mobile traffic management and network resource conservation |
US8918503B2 (en) | 2011-12-06 | 2014-12-23 | Seven Networks, Inc. | Optimization of mobile traffic directed to private networks and operator configurability thereof |
EP2788889A4 (en) | 2011-12-07 | 2015-08-12 | Seven Networks Inc | Flexible and dynamic integration schemas of a traffic management system with various network operators for network traffic alleviation |
WO2013086447A1 (en) | 2011-12-07 | 2013-06-13 | Seven Networks, Inc. | Radio-awareness of mobile device for sending server-side control signals using a wireless network optimized transport protocol |
WO2013090212A1 (en) | 2011-12-14 | 2013-06-20 | Seven Networks, Inc. | Mobile network reporting and usage analytics system and method using aggregation of data in a distributed traffic optimization system |
WO2013090834A1 (en) | 2011-12-14 | 2013-06-20 | Seven Networks, Inc. | Operation modes for mobile traffic optimization and concurrent management of optimized and non-optimized traffic |
US8861354B2 (en) | 2011-12-14 | 2014-10-14 | Seven Networks, Inc. | Hierarchies and categories for management and deployment of policies for distributed wireless traffic optimization |
EP2801236A4 (en) | 2012-01-05 | 2015-10-21 | Seven Networks Inc | Detection and management of user interactions with foreground applications on a mobile device in distributed caching |
US9203864B2 (en) | 2012-02-02 | 2015-12-01 | Seven Networks, Llc | Dynamic categorization of applications for network access in a mobile network |
WO2013116852A1 (en) | 2012-02-03 | 2013-08-08 | Seven Networks, Inc. | User as an end point for profiling and optimizing the delivery of content and data in a wireless network |
US8812695B2 (en) | 2012-04-09 | 2014-08-19 | Seven Networks, Inc. | Method and system for management of a virtual network connection without heartbeat messages |
WO2013155208A1 (en) | 2012-04-10 | 2013-10-17 | Seven Networks, Inc. | Intelligent customer service/call center services enhanced using real-time and historical mobile application and traffic-related statistics collected by a distributed caching system in a mobile network |
WO2014011216A1 (en) | 2012-07-13 | 2014-01-16 | Seven Networks, Inc. | Dynamic bandwidth adjustment for browsing or streaming activity in a wireless network based on prediction of user behavior when interacting with mobile applications |
US9161258B2 (en) | 2012-10-24 | 2015-10-13 | Seven Networks, Llc | Optimized and selective management of policy deployment to mobile clients in a congested network to prevent further aggravation of network congestion |
US9307493B2 (en) | 2012-12-20 | 2016-04-05 | Seven Networks, Llc | Systems and methods for application management of mobile device radio state promotion and demotion |
US9241314B2 (en) | 2013-01-23 | 2016-01-19 | Seven Networks, Llc | Mobile device with application or context aware fast dormancy |
US8874761B2 (en) | 2013-01-25 | 2014-10-28 | Seven Networks, Inc. | Signaling optimization in a wireless network for traffic utilizing proprietary and non-proprietary protocols |
US9326185B2 (en) | 2013-03-11 | 2016-04-26 | Seven Networks, Llc | Mobile network congestion recognition for optimization of mobile traffic |
US9065765B2 (en) | 2013-07-22 | 2015-06-23 | Seven Networks, Inc. | Proxy server associated with a mobile carrier for enhancing mobile traffic management in a mobile network |
US10242082B2 (en) * | 2014-12-12 | 2019-03-26 | Microsoft Technology Licensing, Llc | Context-driven multi-user communication |
US10303782B1 (en) | 2014-12-29 | 2019-05-28 | Veritas Technologies Llc | Method to allow multi-read access for exclusive access of virtual disks by using a virtualized copy of the disk |
CN104573100B (en) * | 2015-01-29 | 2017-11-14 | 无锡江南计算技术研究所 | A kind of distributed data base synchronous method with independent increment mark |
US10277672B2 (en) | 2015-04-17 | 2019-04-30 | Zuora, Inc. | System and method for real-time cloud data synchronization using a database binary log |
US10007585B2 (en) * | 2015-09-21 | 2018-06-26 | TigerIT Americas, LLC | Fault-tolerant methods, systems and architectures for data storage, retrieval and distribution |
CN106611001A (en) * | 2015-10-26 | 2017-05-03 | 中兴通讯股份有限公司 | Method, device and system for checking consistency of data in database tables in virtual machines |
US11868494B1 (en) * | 2018-11-26 | 2024-01-09 | Amazon Technologies, Inc. | Synchronization of access management tags between databases |
US11321285B2 (en) | 2020-10-01 | 2022-05-03 | Bank Of America Corporation | Automatic database script generation for copying data between relational databases |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5499367A (en) * | 1991-11-15 | 1996-03-12 | Oracle Corporation | System for database integrity with multiple logs assigned to client subsets |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4945474A (en) * | 1988-04-08 | 1990-07-31 | Internatinal Business Machines Corporation | Method for restoring a database after I/O error employing write-ahead logging protocols |
US5129082A (en) * | 1990-03-27 | 1992-07-07 | Sun Microsystems, Inc. | Method and apparatus for searching database component files to retrieve information from modified files |
US5530855A (en) * | 1992-10-13 | 1996-06-25 | International Business Machines Corporation | Replicating a database by the sequential application of hierarchically sorted log records |
US5404508A (en) * | 1992-12-03 | 1995-04-04 | Unisys Corporation | Data base backup and recovery system and method |
US5455946A (en) * | 1993-05-21 | 1995-10-03 | International Business Machines Corporation | Method and means for archiving modifiable pages in a log based transaction management system |
US5613113A (en) * | 1993-10-08 | 1997-03-18 | International Business Machines Corporation | Consistent recreation of events from activity logs |
US5499359A (en) * | 1994-01-18 | 1996-03-12 | Borland International, Inc. | Methods for improved referential integrity in a relational database management system |
US5434994A (en) * | 1994-05-23 | 1995-07-18 | International Business Machines Corporation | System and method for maintaining replicated data coherency in a data processing system |
EP0724223B1 (en) * | 1995-01-24 | 2001-07-25 | Compaq Computer Corporation | Remote duplicate database facility with database replication support for online line DDL operations |
US5592530A (en) * | 1995-01-25 | 1997-01-07 | Inet, Inc. | Telephone switch dual monitors |
-
1996
- 1996-08-07 US US08/695,242 patent/US5758355A/en not_active Expired - Lifetime
-
1997
- 1997-07-30 AU AU40472/97A patent/AU4047297A/en not_active Abandoned
- 1997-07-30 WO PCT/US1997/013276 patent/WO1998006046A1/en not_active Application Discontinuation
- 1997-07-30 EP EP97938057A patent/EP0979468A4/en not_active Withdrawn
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5499367A (en) * | 1991-11-15 | 1996-03-12 | Oracle Corporation | System for database integrity with multiple logs assigned to client subsets |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE202009007987U1 (en) * | 2009-06-05 | 2010-10-28 | Job Lizenz Gmbh & Co. Kg | Thermal release element for sprinklers, valves or the like. |
WO2011084987A1 (en) * | 2010-01-05 | 2011-07-14 | Siemens Product Lifecycle Management Software Inc. | Traversal-free rapid data transfer |
US8332358B2 (en) | 2010-01-05 | 2012-12-11 | Siemens Product Lifecycle Management Software Inc. | Traversal-free rapid data transfer |
US9122740B2 (en) | 2012-03-13 | 2015-09-01 | Siemens Product Lifecycle Management Software Inc. | Bulk traversal of large data structures |
US9652495B2 (en) | 2012-03-13 | 2017-05-16 | Siemens Product Lifecycle Management Software Inc. | Traversal-free updates in large data structures |
Also Published As
Publication number | Publication date |
---|---|
AU4047297A (en) | 1998-02-25 |
EP0979468A4 (en) | 2000-08-02 |
EP0979468A1 (en) | 2000-02-16 |
US5758355A (en) | 1998-05-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5758355A (en) | Synchronization of server database with client database using distribution tables | |
US6564215B1 (en) | Update support in database content management | |
US6119128A (en) | Recovering different types of objects with one pass of the log | |
US6161109A (en) | Accumulating changes in a database management system by copying the data object to the image copy if the data object identifier of the data object is greater than the image identifier of the image copy | |
EP3111347B1 (en) | Efficient methods and systems for consistent read in record-based multi-version concurrency control | |
AU2002314803B2 (en) | Synchronous change data capture in a relational database | |
US5613113A (en) | Consistent recreation of events from activity logs | |
US6714943B1 (en) | Method and mechanism for tracking dependencies for referential integrity constrained tables | |
US7970748B2 (en) | Systems and methods for reorganizing a database object | |
US8140495B2 (en) | Asynchronous database index maintenance | |
US7647354B2 (en) | High-performance change capture for data warehousing | |
US6480848B1 (en) | Extension of data definition language (DDL) capabilities for relational databases for applications issuing DML and DDL statements | |
US20030220935A1 (en) | Method of logical database snapshot for log-based replication | |
CN111259004B (en) | Method for indexing data in storage engine and related device | |
AU2002314803A1 (en) | Synchronous change data capture in a relational database | |
EP1480132B1 (en) | System and method for identifying and storing changes made to a table | |
US7657576B1 (en) | Asynchronous change capture for data warehousing | |
US20090182709A1 (en) | Dynamic preconditioning of a b+ tree | |
US7188124B2 (en) | Method, system, computer product for recovering dropped database table specifying one or more table spaces, recovering the table space being restored using the dropped table history data structure | |
US6275832B1 (en) | Providing transaction undo without logging | |
US6453322B1 (en) | Extension of data definition language (DDL) capabilities for relational databases for applications issuing multiple units of work | |
US6421677B1 (en) | Extension of data definition language (DDL) capabilities for relational databases for applications issuing DDL statements | |
US20020111927A1 (en) | System and method for enabling unified access to multiple types of data | |
Cisco | CiscoSecureACS Database Structure | |
Cisco | CiscoSecureACS Database Structure |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A1 Designated state(s): AL AM AT AU AZ BA BB BG BR BY CA CH CN CU CZ DE DK EE ES FI GB GE GH HU IL IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT UA UG US UZ VN YU ZW AM AZ BY KG KZ MD RU TJ TM |
|
AL | Designated countries for regional patents |
Kind code of ref document: A1 Designated state(s): GH KE LS MW SD SZ UG ZW AT BE CH DE DK ES FI FR GB GR IE IT LU MC NL |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
WWE | Wipo information: entry into national phase |
Ref document number: 1997938057 Country of ref document: EP |
|
NENP | Non-entry into the national phase |
Ref country code: CA |
|
NENP | Non-entry into the national phase |
Ref country code: JP Ref document number: 1998508018 Format of ref document f/p: F |
|
REG | Reference to national code |
Ref country code: DE Ref legal event code: 8642 |
|
WWP | Wipo information: published in national office |
Ref document number: 1997938057 Country of ref document: EP |
|
WWW | Wipo information: withdrawn in national office |
Ref document number: 1997938057 Country of ref document: EP |