WO2002005116A2 - Automatic database replication server and methods - Google Patents

Automatic database replication server and methods Download PDF

Info

Publication number
WO2002005116A2
WO2002005116A2 PCT/US2001/021075 US0121075W WO0205116A2 WO 2002005116 A2 WO2002005116 A2 WO 2002005116A2 US 0121075 W US0121075 W US 0121075W WO 0205116 A2 WO0205116 A2 WO 0205116A2
Authority
WO
WIPO (PCT)
Prior art keywords
database
information
custom
master
databases
Prior art date
Application number
PCT/US2001/021075
Other languages
French (fr)
Other versions
WO2002005116A3 (en
Inventor
Ohaness Kuftedjian
Wen Chung Cheng
Original Assignee
Telefonaktiebolaget Lm Ericsson (Publ)
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 Telefonaktiebolaget Lm Ericsson (Publ) filed Critical Telefonaktiebolaget Lm Ericsson (Publ)
Priority to AU2001271775A priority Critical patent/AU2001271775A1/en
Publication of WO2002005116A2 publication Critical patent/WO2002005116A2/en
Publication of WO2002005116A3 publication Critical patent/WO2002005116A3/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor

Definitions

  • the present invention is directed, in general, to information storage systems, and, more specifically, to systems and methods for automatically replicating database information.
  • databases may store, for example, telephone directory information, such as a telephone subscriber's name, address, and telephone number.
  • telephone directory information such as a telephone subscriber's name, address, and telephone number.
  • separate databases are used to store directory information for different calling areas, based on area codes or metropolitan areas.
  • a search for a directory listing for that subscriber must be independently performed on each database to locate the listing.
  • processing delays may be encountered in establishing and retrieving directory information from remote database servers.
  • databases are used to store other types of information, such as customer purchasing history or other information relating to an individual's or business' commercial activities.
  • Databases can also store data related to personal interests in various topical information, such as political, financial, or sports news.
  • a particular database most often only contains a limited amount of information related to an individual or business; i.e., the whole of the information available for a particular individual or business may be distributed among multiple remote databases.
  • a subscription database is queried to obtain custom attributes associated with each of a plurality of custom database information subscriptions.
  • the custom attributes for each database information subscription include a) the identification of one or more master subscription databases, and b) at least one operation to be performed on the one or more master subscription databases to create a custom information database.
  • the operation(s) to be performed can include merging database information from two or more master subscription databases, partitioning database information contained in one or more master subscription databases, and filtering database information from one or more master subscription databases.
  • the operations identified by the custom attributes for each custom database information subscription are used to generate custom information databases containing preferred database information stored in the master subscription databases.
  • the merging, partitioning and filtering operations specified in the custom attributes can be defined on a record or record field basis. For example, complete records from two or more master subscription databases can be merged or, alternatively, one or more fields from records in a first master subscription database can be merged with other fields in records in a second master subscription database.
  • generation of a custom information database is performed by i) creating a local database for storing the custom database information; ii) establishing a connection to each of the master subscription databases identified by the custom attributes; iii) retrieving and processing master database records from each of the master subscription databases to yield custom database records according to the operation(s) identified by the custom attributes; and iv) storing the custom database records in the local database.
  • the custom database information stored in the local database is published to a remote database; a remote database can be, for example, a database stored on a system at the custom database information subscriber's physical location.
  • a database information server can be a general or specific purpose computing system operative to perform the software-definable processes disclosed herein.
  • An exemplary database information server includes a processor, volatile memory, and a non-volatile media for storing a software- definable process.
  • the processor and volatile memory are operative to retrieve and execute the software-definable process to query a subscription database to obtain custom attributes associated with each of a plurality of custom directory information subscriptions.
  • the operations identified by the custom attributes, described hereinabove, for each custom directory information subscription are executed by the processor to generate custom information databases containing preferred directory information stored in the master subscription databases.
  • FIGURE 1 illustrates an exemplary system for automatic database replication to generate a custom information database according to the principles of the present invention
  • FIGURE 2 illustrates an exemplary application of the principles of the present invention to automatically generate a custom information database
  • FIGURES 3-a and 3-b illustrate an exemplary method for automatically replicating database information to generate a custom information database according to the principles of the present invention
  • FIGURE 4 illustrates a block schematic of an exemplary database replication server and illustrative custom attribute operations for automatically replicating database information to generate a custom information database according to the principles of the present invention.
  • Database replication is the process of creating and managing duplicate versions of a database.
  • a replication process not only copies a database, but can also synchronizes a set of replicas so that changes made to one replica are reflected in all the others.
  • the beauty of replication is that it enables many users to work with their own local copy of a database but have the database updated as if they were working on a single, centralized database.
  • replication is often the most efficient method of database access.
  • database replication can solve many inefficiency problems associated with remote database access, a single database may not contain all of the information desired by a user. For this reason, it may be necessary for a user to manually access multiple databases to retrieve and manage the information required in a particular situation - which presents another form of inefficiency.
  • the present invention is directed to solving the inefficiencies associated with remote database access, as well as providing an automatic means of generating a database containing desired information from many different remote databases.
  • a Database Information Server 120 includes a processor, volatile memory, such as random access memory (RAM), and a non-volatile media, such as a magnetic storage device, for storing a software-definable process.
  • volatile memory such as random access memory (RAM)
  • non-volatile media such as a magnetic storage device
  • the processor and volatile memory are operative to retrieve and execute the software-definable process.
  • the Database Replication Server 120 has access to one or more Master Subscription Databases 130, such as databases A, B and C.
  • the Master Subscription Databases 130 can be locally connected to the Database Replication Server 120 or, more typically, are stored on one or more remote systems accessible via a network, such as the Internet.
  • the data stored in the Master Subscription Databases 130 can be of any type; in particular, the principles of the present invention are advantageously applied to databases containing directory information.
  • a "directory" is broadly defined to include a collection of alphabetical or classified lists, such as a listing of telephone subscriber names and their associated telephone numbers and addresses.
  • a "directory” can also be a listing of customers, and can include, for example, a history of each of customer's previous purchases.
  • information is logically organized into records, and each record contains predefined fields that store related information.
  • a record can be associated with a telephone subscriber, and contain an address field and a telephone number field.
  • a database, or each record within such database can also have associated attributes that define, or limit, access to, or modification of, the database or individual records therein.
  • the Database Replication Server 120 also has access to a Subscription Database 110.
  • the Subscription Database 110 can be queried by the Database Replication Server 120 to obtain custom attributes associated with each of a plurality of custom database information subscriptions; the custom attributes for each subscription are stored in a database record (or "subscription record") 115.
  • the custom attributes for each custom database information subscription include: a) the identification of one or more Master Subscription Databases 130, and b) at least one operation to be performed on the one or more Master Subscription Databases 130 to create a custom information database 140.
  • the operation(s) to be performed can include merging database information from two or more Master Subscription Databases 130, partitioning database information contained in one or more Master Subscription Databases 130, and filtering database information from one or more Master Subscription Databases 130.
  • the operations identified by the custom attributes for each custom database information subscription are used to generate custom information databases 140 containing preferred database information stored in the Master Subscription Databases 130.
  • a subscription can contain custom attributes that instruct the Database Replication Server 120 to automatically generate one or more Custom Information Databases 140 containing merged database information (140-A) from two or more Master Subscription Databases (i.e., A+B+C, A+B, A+C, and B+C).
  • the custom attributes can instruct the Database Replication Server 120 to automatically partition one or more of the Master Subscription Databases 130. Partitioning of databases provides multiple independent replicas (140-B) of the Master Subscription Databases 130, and allows for different users to simultaneously access and manipulate the database information, while providing both security and privacy between such users.
  • the custom attributes can also specify a filter to be applied to the database records in a Master Subscription Database 130; a filter can be used, for example, to instruct the Database Replication Server 120 to replicate only a subset of the records in a Master Subscription Database 130, such as records in which a zip code field matches a predefined value.
  • a particularly advantageous feature of the present invention is the generation of Custom Information Databases 140-C containing both merged and partitioned database information from Master Subscription Databases 130; e.g., A'+C is a merged directory containing records from a partitioned replica of Master Subscription Database A and records from Master Subscription Database C.
  • A'+C is a merged directory containing records from a partitioned replica of Master Subscription Database A and records from Master Subscription Database C.
  • FIGURE 2 illustrates an exemplary application of the principles of the present invention to automatically generate a Custom Information Database 240.
  • Database Replication Server 220 accesses a Subscription Database 110 (see FIGURE 1) to obtain custom attributes associated with a custom database information subscription; the custom attributes for the subscription are stored in a database record (or "subscription record") 215.
  • a Master Subscription Database 230-A contains records that include fields for the name and purchase history information (i.e., "Last,” “Total,” and “Average” purchase values) for customers.
  • Exemplary Master Subscription Database 230-B contains records that include fields for name, address, and area code (AC) and telephone number; i.e., the general information contained in telephone directories.
  • AC area code
  • the subscriber associated with Custom Information Database 240 desires to create a database that includes records for each customer in Master Subscription Database 230-A that has made purchases totaling greater than $500; the subscriber also desires to include the address, AC and telephone number for each of those customers.
  • the desired information is not available in any single database, and thus the Custom Information Database 240 must be created from multiple Master Subscription Databases (I.e., Master Subscription Databases 230-A and 230-B).
  • the exemplary custom attributes in Subscription Record 215 include an instruction for Database Replication Server 220 to filter Master Subscription Database 230-A for records in which a customer's Total Purchases exceeds $500.
  • the result of this operation can be stored in an intermediate database Ai; as used herein, an "intermediate" database is a database created to hold database records that are intended to undergo further operations during the creation of a Custom Information Database.
  • the intermediate database Ai would include the records 1 and 2 from Master Subscription Database 230-A.
  • the exemplary custom attributes in Subscription Record 215 also include an instruction for Database Replication Server 220 to partition Master Subscription Database 230-B; the result of this operation is intermediate database B'.
  • the exemplary custom attributes in Subscription Record 215 include an instruction for Database Replication Server 220 to merge the address, AC and telephone number fields from each record in intermediate database B' for which there is a corresponding record in intermediate database Ai; i.e., add the address, AC and telephone number fields to each record in intermediate database Ai to create Custom Information Database 240.
  • the resulting Custom Information Database 240 comprises the desired records of all customers having a purchase total greater than $500, including the address, AC and telephone number for each of those customers.
  • the custom attributes identified in a Subscription Record can be provided in many different formats; a selected format is a function of the specific implementation of the associated Database Replication Server.
  • the custom attributes can be identified by preselected codes, or instruction codes, that can be used as input to predefined software functions provided by the Database Replication Server.
  • an instruction code "MERGE (X, Y')" could be interpreted by the Database Replication Server to partition a Master Subscription Database Y, and then merge with a Master Subscription Database X
  • a custom attribute "FILTER(X, Average, >500) could be used as an instruction code to direct a Database Replication Server to filter all records from Master Subscription Database X in which an "Average" field has a value greater than 500.
  • the custom attributes identified in a Subscription Record can be in a direct form of software instructions executable by the Database Replication Server, or in a form of scripting language that can be interpreted by the Database Replication Server to perform the desired operations on each designated Master Subscription Database.
  • FIGURE 1 illustrated is an exemplary method 300 for automatically replicating database information according to the principles of the present invention.
  • the method 300 can be implemented as a software-defined process, executable by a general or specific purpose computer to perform the operations, or steps, illustrated. Although illustrated as a series of consecutive steps, those skilled in the art will recognize that the exemplary method 300 merely illustrates the principles of the present invention, and that other alternative, yet substantially equivalent, operations can be used to accomplish an equivalent result.
  • Step 310 it is determined whether there are any custom database information subscriptions.
  • the Database Replication Server 120 can perform this step through a query of the Subscription Database 110. If there are no custom database information subscriptions, the method 300 is terminated. If a custom database information subscription does exist, the custom attributes are retrieved in Step 320. As noted previously, custom attributes can include the identification of one or more Master Subscription Databases 30, and one or more operations to be performed on the identified Master Subscription Databases 130 to create a Custom Information Database 140. For each Master Subscription Database 130 identified by the custom attributes, a connection is established thereto in Step 330. If a Master Subscription Database 130 is physically remote from the Database Replication Server 120, a connection thereto can be established using conventional, or proprietary, network protocols using methods known to those skilled in the art.
  • the method 300 then creates one or more local databases (Step 340) for storing a replica of each of the Master Subscription Databases 130 identified by the custom attributes.
  • Step 360 it is determined whether the custom attributes specify the need for merging, partitioning, or filtering operations on the identified Master Subscription Databases 130. If not, the method 300 can be terminated, or, in particularly embodiments, the local databases can be published (Step 365). Rather than allowing a user direct access to the local databases, a copy of the local databases can be stored in a location accessible to the user; such location can be on a remote server.
  • Step 370 it is determined from the custom attributes whether the custom database information subscription requires a partition operation.
  • Step 375 a partitioned copy of the identified Master Subscription Database 130 is created (Step 375). Regardless of the need for partitioning, it is also determined whether the custom database information subscription requires a merging operation (Step 380). If so, the identified databases are merged (Step 285); the merged databases can be stored in a local database and/or in a publication database. In addition to merging and partitioning operations, the custom attributes can also identify one or more filtering operations to be performed on a database (Step 380). If a filtering operation is identified, the local copy of the identified Master Subscription Database 130 is filtered using the specified criteria (Step 395); the resulting database can be stored in a local database and/or in a publication database.
  • FIGURES 3-a and 3-b illustrates a block schematic of an exemplary database replication server 420 and illustrative custom attribute operations 401 and 402 for automatically replicating database information to generate a custom information database 440 according to the principles of the present invention.
  • a Database Replication Server can be a general, or specific, purpose computing system operative to perform the software-definable processes disclosed herein; the architecture and operation of general and specific purpose computers are known to those skilled in the art and, thus, a detailed description herein is not necessary to an understanding of the present invention.
  • a Database Information Server 420 includes a processor 421 , volatile memory 422, such as random access memory (RAM), and a non-volatile media 423, such as a magnetic storage device, for storing a software-definable process, such as the exemplary process illustrated in FIGURES 3-a and 3-b.
  • the processor 421 and volatile memory 422 are operative to retrieve and execute the software-definable process from the non-volatile media 423, and to access a Subscription Database 410.
  • a Subscription Database 410 can be queried by the Database Replication Server 420 to obtain custom attributes associated with each of a plurality of custom database information subscriptions.
  • the custom attributes for each custom database information subscription include: a) the identification of one or more
  • the identified operations are performed by the Database Replication Server 420 to generate one or more Custom Information Databases 440.
  • FIGURE 4 also illustrates two custom attribute operations examples (401, 402).
  • the examples 401 and 402 illustrate how different operations can be combined to generate a Custom Information Database containing desired database information from two Master Subscription Databases.
  • a merge operation is performed on Master Subscription Databases 430-A and 430-B to generate an Intermediate Database 43-A/B.
  • a filter operation is then performed on Intermediate Database 435-A/B to extract the desired database information, which is stored in Custom Information Database 440-A/B.
  • the example 402 performs independent filter operations on Master Subscription Databases 430-C and 430-D, the results of which are stored in Intermediate Databases 435-C and 435-D, respectively.
  • a merge operation is then performed on Intermediate Databases 435-C and 435-D to combine the database information into the desired Custom Information Database 440-C/D.
  • Examples operations 401 and 402 are merely illustrative of the principles of the present invention, and that the possible combinations of operations that can be identified using custom attributes to define a desired Custom Information Database are essentially limitless.
  • the present invention provides significant advantages to the art of information systems, and, more specifically, to the art of database replication.
  • the principles of automatic merging, partitioning and filtering of replicated databases can provide a user the capability to automatically create and organize database information tailored to the specific user's needs.
  • the automatic partitioning of such replicated databases provides enhanced security and privacy of the information stored in such databases.

Abstract

Systems and methods for automatically replicating database information. A subscription database (110) is queried by a database replication server (120) to obtain custom attributes defined in a plurality of custom database information subscriptions (115). The custom attributes for each database information subscription (115) include: (a) the identification of one or more master subscription databases (130), and (b) at least one operation to be performed on the one or more master subscription database to create a custom information database. The operation(s) to be performed can include merging database information contained in records (135) from two or more master subscription databases (130), partitioning database information contained in one or more master subscription databases (130). The operations identified by the custom attributes for each custom database information subscription (115) are used to automatically generate custom information databases (140) containing preferred database information from the master subscription databases (130).

Description

AUTOMATIC DATABASE REPLICATION SERVER AND METHODS
TECHNICAL FIELD OF THE INVENTION
The present invention is directed, in general, to information storage systems, and, more specifically, to systems and methods for automatically replicating database information.
BACKGROUND OF THE INVENTION
The Information Revolution is now at the point at which the Industrial Revolution was in the early 1820s, about forty years after James Watt's improved steam engine (first installed in 1776) was first applied, in 1785, to an industrial operation - the spinning of cotton. And the steam engine was to the first Industrial Revolution what the computer has been to the Information Revolution -- its trigger, but above all its symbol. Almost everybody today believes that nothing in economic history has ever moved as fast as, or had a greater impact than, the Information Revolution. But although the computer has provided the motive power behind the Information Revolution, it is the cargo moved through the power of computers, information, which truly provides benefits.
Much of the valuable information available through the Internet, or any network of computers, is stored in databases. Such databases may store, for example, telephone directory information, such as a telephone subscriber's name, address, and telephone number. Typically, separate databases are used to store directory information for different calling areas, based on area codes or metropolitan areas. Thus, if a subscriber's calling area is unknown, a search for a directory listing for that subscriber must be independently performed on each database to locate the listing. In addition, because such calling area databases may be physically remote, processing delays may be encountered in establishing and retrieving directory information from remote database servers.
In addition to telephone directory information, databases are used to store other types of information, such as customer purchasing history or other information relating to an individual's or business' commercial activities. Databases can also store data related to personal interests in various topical information, such as political, financial, or sports news. In addition to these various databases often being physically remote, a particular database most often only contains a limited amount of information related to an individual or business; i.e., the whole of the information available for a particular individual or business may be distributed among multiple remote databases.
Although the Information Revolution has brought about the general availability of vast amounts of information, the tools for finding and managing such information are still evolving. The tools available to search through tremendous amounts of information often require submitting multiple queries to many different databases. Accordingly, there is a need in the art for systems and methods to combine information from multiple databases according to a user's specific requirements. Preferably, such systems and methods should provide for the automatic creation of databases customized to meet a user's particular parameters.
SUMMARY OF THE INVENTION
To address the above-discussed deficiencies of the prior art, the present invention relates to systems and methods for automatically replicating database information. In the exemplary embodiments described in detail hereinafter, a subscription database is queried to obtain custom attributes associated with each of a plurality of custom database information subscriptions. The custom attributes for each database information subscription include a) the identification of one or more master subscription databases, and b) at least one operation to be performed on the one or more master subscription databases to create a custom information database. The operation(s) to be performed can include merging database information from two or more master subscription databases, partitioning database information contained in one or more master subscription databases, and filtering database information from one or more master subscription databases. The operations identified by the custom attributes for each custom database information subscription are used to generate custom information databases containing preferred database information stored in the master subscription databases.
The merging, partitioning and filtering operations specified in the custom attributes can be defined on a record or record field basis. For example, complete records from two or more master subscription databases can be merged or, alternatively, one or more fields from records in a first master subscription database can be merged with other fields in records in a second master subscription database.
In one exemplary embodiment, generation of a custom information database is performed by i) creating a local database for storing the custom database information; ii) establishing a connection to each of the master subscription databases identified by the custom attributes; iii) retrieving and processing master database records from each of the master subscription databases to yield custom database records according to the operation(s) identified by the custom attributes; and iv) storing the custom database records in the local database. In some embodiments, the custom database information stored in the local database is published to a remote database; a remote database can be, for example, a database stored on a system at the custom database information subscriber's physical location. An exemplary database replication server for automatically replicating database information, according to the principles of the present invention, is also described hereinafter. A database information server can be a general or specific purpose computing system operative to perform the software-definable processes disclosed herein. An exemplary database information server includes a processor, volatile memory, and a non-volatile media for storing a software- definable process. The processor and volatile memory are operative to retrieve and execute the software-definable process to query a subscription database to obtain custom attributes associated with each of a plurality of custom directory information subscriptions. The operations identified by the custom attributes, described hereinabove, for each custom directory information subscription are executed by the processor to generate custom information databases containing preferred directory information stored in the master subscription databases.
The foregoing has outlined, rather broadly, the principles of the present invention so that those skilled in the art may better understand the detailed description of the exemplary embodiments that follow. Those skilled in the art should appreciate that they can readily use the disclosed conception and exemplary embodiments as a basis for designing or modifying other structures and methods for carrying out the same purposes of the present invention. Those skilled in the art should also realize that such equivalent constructions do not depart from the spirit and scope of the invention in its broadest form, as defined by the claims provided hereinafter.
BRIEF DESCRIPTION OF THE DRAWINGS
For a more complete understanding of the present invention, reference is now made to the following detailed description taken in conjunction with the accompanying drawings, in which:
FIGURE 1 illustrates an exemplary system for automatic database replication to generate a custom information database according to the principles of the present invention; FIGURE 2 illustrates an exemplary application of the principles of the present invention to automatically generate a custom information database; FIGURES 3-a and 3-b illustrate an exemplary method for automatically replicating database information to generate a custom information database according to the principles of the present invention; and FIGURE 4 illustrates a block schematic of an exemplary database replication server and illustrative custom attribute operations for automatically replicating database information to generate a custom information database according to the principles of the present invention. DETAILED DESCRIPTION
Database replication is the process of creating and managing duplicate versions of a database. A replication process not only copies a database, but can also synchronizes a set of replicas so that changes made to one replica are reflected in all the others. The beauty of replication is that it enables many users to work with their own local copy of a database but have the database updated as if they were working on a single, centralized database. For database applications where users are geographically widely distributed, replication is often the most efficient method of database access. Although database replication can solve many inefficiency problems associated with remote database access, a single database may not contain all of the information desired by a user. For this reason, it may be necessary for a user to manually access multiple databases to retrieve and manage the information required in a particular situation - which presents another form of inefficiency. The present invention is directed to solving the inefficiencies associated with remote database access, as well as providing an automatic means of generating a database containing desired information from many different remote databases.
Referring to FIGURE 1 , illustrated is an exemplary system 100 for automatic database information replication according to the principles of the present invention. The core of the system is embodied in a Database Replication Server 120 and a Subscription Database 110. The Database Replication Server 120 can be a general, or specific, purpose computing system operative to perform the software-definable processes described hereinafter; the architecture and operation of general and specific purpose computers are known to those skilled in the art and, thus, a detailed description herein is not necessary to an understanding of the present invention. In general, a Database Information Server 120 includes a processor, volatile memory, such as random access memory (RAM), and a non-volatile media, such as a magnetic storage device, for storing a software-definable process. The processor and volatile memory are operative to retrieve and execute the software-definable process. The Database Replication Server 120 has access to one or more Master Subscription Databases 130, such as databases A, B and C. The Master Subscription Databases 130 can be locally connected to the Database Replication Server 120 or, more typically, are stored on one or more remote systems accessible via a network, such as the Internet. The data stored in the Master Subscription Databases 130 can be of any type; in particular, the principles of the present invention are advantageously applied to databases containing directory information. As used herein, a "directory" is broadly defined to include a collection of alphabetical or classified lists, such as a listing of telephone subscriber names and their associated telephone numbers and addresses. A "directory" can also be a listing of customers, and can include, for example, a history of each of customer's previous purchases. Within a database, information is logically organized into records, and each record contains predefined fields that store related information. For example, a record can be associated with a telephone subscriber, and contain an address field and a telephone number field. A database, or each record within such database, can also have associated attributes that define, or limit, access to, or modification of, the database or individual records therein.
According to the principles of the present invention, the Database Replication Server 120 also has access to a Subscription Database 110. The Subscription Database 110 can be queried by the Database Replication Server 120 to obtain custom attributes associated with each of a plurality of custom database information subscriptions; the custom attributes for each subscription are stored in a database record (or "subscription record") 115. The custom attributes for each custom database information subscription include: a) the identification of one or more Master Subscription Databases 130, and b) at least one operation to be performed on the one or more Master Subscription Databases 130 to create a custom information database 140. The operation(s) to be performed can include merging database information from two or more Master Subscription Databases 130, partitioning database information contained in one or more Master Subscription Databases 130, and filtering database information from one or more Master Subscription Databases 130. The operations identified by the custom attributes for each custom database information subscription are used to generate custom information databases 140 containing preferred database information stored in the Master Subscription Databases 130.
As illustrated in FIGURE 1 , a subscription can contain custom attributes that instruct the Database Replication Server 120 to automatically generate one or more Custom Information Databases 140 containing merged database information (140-A) from two or more Master Subscription Databases (i.e., A+B+C, A+B, A+C, and B+C). In addition, the custom attributes can instruct the Database Replication Server 120 to automatically partition one or more of the Master Subscription Databases 130. Partitioning of databases provides multiple independent replicas (140-B) of the Master Subscription Databases 130, and allows for different users to simultaneously access and manipulate the database information, while providing both security and privacy between such users. The custom attributes can also specify a filter to be applied to the database records in a Master Subscription Database 130; a filter can be used, for example, to instruct the Database Replication Server 120 to replicate only a subset of the records in a Master Subscription Database 130, such as records in which a zip code field matches a predefined value.
A particularly advantageous feature of the present invention is the generation of Custom Information Databases 140-C containing both merged and partitioned database information from Master Subscription Databases 130; e.g., A'+C is a merged directory containing records from a partitioned replica of Master Subscription Database A and records from Master Subscription Database C. The possible combinations, and advantages, of merged / partitioned directories are essentially limitless.
Reference is now made to FIGURE 2, which illustrates an exemplary application of the principles of the present invention to automatically generate a Custom Information Database 240. Database Replication Server 220 accesses a Subscription Database 110 (see FIGURE 1) to obtain custom attributes associated with a custom database information subscription; the custom attributes for the subscription are stored in a database record (or "subscription record") 215. In the example illustrated in FIGURE 2, a Master Subscription Database 230-A contains records that include fields for the name and purchase history information (i.e., "Last," "Total," and "Average" purchase values) for customers. Exemplary Master Subscription Database 230-B contains records that include fields for name, address, and area code (AC) and telephone number; i.e., the general information contained in telephone directories.
According to the example in FIGURE 2, the subscriber associated with Custom Information Database 240 desires to create a database that includes records for each customer in Master Subscription Database 230-A that has made purchases totaling greater than $500; the subscriber also desires to include the address, AC and telephone number for each of those customers. The desired information is not available in any single database, and thus the Custom Information Database 240 must be created from multiple Master Subscription Databases (I.e., Master Subscription Databases 230-A and 230-B).
In order to create the Custom Information Database 240, the exemplary custom attributes in Subscription Record 215 include an instruction for Database Replication Server 220 to filter Master Subscription Database 230-A for records in which a customer's Total Purchases exceeds $500. The result of this operation can be stored in an intermediate database Ai; as used herein, an "intermediate" database is a database created to hold database records that are intended to undergo further operations during the creation of a Custom Information Database. In the example provided in FIGURE 2, the intermediate database Ai would include the records 1 and 2 from Master Subscription Database 230-A. The exemplary custom attributes in Subscription Record 215 also include an instruction for Database Replication Server 220 to partition Master Subscription Database 230-B; the result of this operation is intermediate database B'. Finally, the exemplary custom attributes in Subscription Record 215 include an instruction for Database Replication Server 220 to merge the address, AC and telephone number fields from each record in intermediate database B' for which there is a corresponding record in intermediate database Ai; i.e., add the address, AC and telephone number fields to each record in intermediate database Ai to create Custom Information Database 240. As illustrated, the resulting Custom Information Database 240 comprises the desired records of all customers having a purchase total greater than $500, including the address, AC and telephone number for each of those customers.
Although illustrated in FIGURE 2 as a series of textual instructions, the custom attributes identified in a Subscription Record can be provided in many different formats; a selected format is a function of the specific implementation of the associated Database Replication Server. First, the custom attributes can be identified by preselected codes, or instruction codes, that can be used as input to predefined software functions provided by the Database Replication Server. For example, an instruction code "MERGE (X, Y')" could be interpreted by the Database Replication Server to partition a Master Subscription Database Y, and then merge with a Master Subscription Database X Similarly, a custom attribute "FILTER(X, Average, >500) could be used as an instruction code to direct a Database Replication Server to filter all records from Master Subscription Database X in which an "Average" field has a value greater than 500. As an alternative to using codes, or instruction codes, as custom attributes that are used as input to predefined software functions provided by a Database Replication Server, the custom attributes identified in a Subscription Record can be in a direct form of software instructions executable by the Database Replication Server, or in a form of scripting language that can be interpreted by the Database Replication Server to perform the desired operations on each designated Master Subscription Database. Those skilled in the art are familiar with the use of various coding and scripting techniques to perform desired operations within a computing system, and a detailed description is unnecessary to an understanding of the invention disclosed herein; all such embodiments, however, are intended to be within the scope of the claims recited hereinafter. Turning now to FIGURES 3-a and 3-b, with continuing reference to
FIGURE 1, illustrated is an exemplary method 300 for automatically replicating database information according to the principles of the present invention. The method 300 can be implemented as a software-defined process, executable by a general or specific purpose computer to perform the operations, or steps, illustrated. Although illustrated as a series of consecutive steps, those skilled in the art will recognize that the exemplary method 300 merely illustrates the principles of the present invention, and that other alternative, yet substantially equivalent, operations can be used to accomplish an equivalent result.
Initially, in Step 310, it is determined whether there are any custom database information subscriptions. The Database Replication Server 120 can perform this step through a query of the Subscription Database 110. If there are no custom database information subscriptions, the method 300 is terminated. If a custom database information subscription does exist, the custom attributes are retrieved in Step 320. As noted previously, custom attributes can include the identification of one or more Master Subscription Databases 30, and one or more operations to be performed on the identified Master Subscription Databases 130 to create a Custom Information Database 140. For each Master Subscription Database 130 identified by the custom attributes, a connection is established thereto in Step 330. If a Master Subscription Database 130 is physically remote from the Database Replication Server 120, a connection thereto can be established using conventional, or proprietary, network protocols using methods known to those skilled in the art.
In an exemplary embodiment, the method 300 then creates one or more local databases (Step 340) for storing a replica of each of the Master Subscription Databases 130 identified by the custom attributes. Next, in Step 360, it is determined whether the custom attributes specify the need for merging, partitioning, or filtering operations on the identified Master Subscription Databases 130. If not, the method 300 can be terminated, or, in particularly embodiments, the local databases can be published (Step 365). Rather than allowing a user direct access to the local databases, a copy of the local databases can be stored in a location accessible to the user; such location can be on a remote server. Next, in Step 370, it is determined from the custom attributes whether the custom database information subscription requires a partition operation. If so, a partitioned copy of the identified Master Subscription Database 130 is created (Step 375). Regardless of the need for partitioning, it is also determined whether the custom database information subscription requires a merging operation (Step 380). If so, the identified databases are merged (Step 285); the merged databases can be stored in a local database and/or in a publication database. In addition to merging and partitioning operations, the custom attributes can also identify one or more filtering operations to be performed on a database (Step 380). If a filtering operation is identified, the local copy of the identified Master Subscription Database 130 is filtered using the specified criteria (Step 395); the resulting database can be stored in a local database and/or in a publication database.
The exemplary method illustrated in FIGURES 3-a and 3-b is repeated for each custom database information subscription (identified in Subscription Records 115). Once the necessary local databases and/or publication databases are established, conventional methods can be used to maintain any desired synchronization of data stored in the local and/or publication databases with the Master Subscription Databases 130. Finally, reference is made to FIGURE 4, which illustrates a block schematic of an exemplary database replication server 420 and illustrative custom attribute operations 401 and 402 for automatically replicating database information to generate a custom information database 440 according to the principles of the present invention. As previously noted, a Database Replication Server can be a general, or specific, purpose computing system operative to perform the software-definable processes disclosed herein; the architecture and operation of general and specific purpose computers are known to those skilled in the art and, thus, a detailed description herein is not necessary to an understanding of the present invention. In general, as shown in FIGURE 4, a Database Information Server 420 includes a processor 421 , volatile memory 422, such as random access memory (RAM), and a non-volatile media 423, such as a magnetic storage device, for storing a software-definable process, such as the exemplary process illustrated in FIGURES 3-a and 3-b. The processor 421 and volatile memory 422 are operative to retrieve and execute the software-definable process from the non-volatile media 423, and to access a Subscription Database 410. Although illustrated as a discrete element separate from Database Replication Server 420, those skilled in the art will recognize that the contents of the Subscription Database can be stored internal to Database Replication Server 420 in the non-volatile media 423. The Subscription Database 410 can be queried by the Database Replication Server 420 to obtain custom attributes associated with each of a plurality of custom database information subscriptions.
As described hereinabove, the custom attributes for each custom database information subscription include: a) the identification of one or more
Master Subscription Databases, and b) at least one operation to be performed on the one or more Master Subscription Databases to create a custom information database. The identified operations are performed by the Database Replication Server 420 to generate one or more Custom Information Databases 440.
FIGURE 4 also illustrates two custom attribute operations examples (401, 402). The examples 401 and 402 illustrate how different operations can be combined to generate a Custom Information Database containing desired database information from two Master Subscription Databases. In example 401 , a merge operation is performed on Master Subscription Databases 430-A and 430-B to generate an Intermediate Database 43-A/B. A filter operation is then performed on Intermediate Database 435-A/B to extract the desired database information, which is stored in Custom Information Database 440-A/B. The example 402 performs independent filter operations on Master Subscription Databases 430-C and 430-D, the results of which are stored in Intermediate Databases 435-C and 435-D, respectively. A merge operation is then performed on Intermediate Databases 435-C and 435-D to combine the database information into the desired Custom Information Database 440-C/D. Those skilled in the art will recognize that the example operations 401 and 402 are merely illustrative of the principles of the present invention, and that the possible combinations of operations that can be identified using custom attributes to define a desired Custom Information Database are essentially limitless.
The present invention provides significant advantages to the art of information systems, and, more specifically, to the art of database replication. The principles of automatic merging, partitioning and filtering of replicated databases can provide a user the capability to automatically create and organize database information tailored to the specific user's needs. Furthermore, the automatic partitioning of such replicated databases provides enhanced security and privacy of the information stored in such databases. Of particular advantage, however, are the efficiencies gained through the ability to conduct a single search, or query, of an automatically generated Custom Information Database 140, rather than the need to conduct multiple searches over multiple Master Subscription Databases 130 in order to obtain the desired information. Although the present invention has been described in detail, those skilled in the art will conceive of various changes, substitutions and alterations to the exemplary embodiments described herein without departing from the spirit and scope of the invention in its broadest form. The exemplary embodiments presented herein illustrate the principles of the invention and are not intended to be exhaustive or to limit the invention to the form disclosed; it is intended that the scope of the invention be defined by the claims appended hereto, and their equivalents.

Claims

WHAT IS CLAIMED IS:
1. A method for automatically replicating database information, said method comprising the steps of: querying a subscription database to obtain custom attributes associated with each of a plurality of custom database information subscriptions, said custom attributes for each database information subscription including: a) the identification of one or more master subscription databases, and, b) at least one operation to be performed on said one or more master subscription databases to create a custom information database, said at least one operation being selectable from the group consisting of: i) merging database information from two or more of said master subscription databases, ii) partitioning database information contained in one or more of said master subscription databases, and iii) filtering database information from one or more of said master subscription databases; automatically generating a custom information database for each of said custom database information subscriptions by performing said at least one operation on said database information stored in said one or more master subscription databases.
2. The method recited in Claim 1 , wherein said merging, partitioning and filtering operations are definable on a record or record field basis.
3. The method recited in Claim 1 , wherein said step of generating said custom information database associated with each custom database information subscription comprises the steps of: creating a local database for storing said custom database information; establishing a connection to each of said master subscription databases identified by the custom attributes; retrieving and processing master database records from each of said master subscription databases to yield custom database records according to said at least one operation identified by said custom attributes; and storing said custom database records in said local database.
4. The method recited in Claim 3, wherein said step of generating further comprises the step of publishing said custom database information in a remote database.
5. The method recited in Claim 1 , wherein said step of generating said custom information database comprises the steps of: creating a partitioned database containing a subset of the database records stored in a first one of said master subscription databases; and merging said partitioned database with a second one of said master subscription databases to yield said custom information database.
6. The method recited in Claim 1 , wherein said step of generating said custom information database comprises the steps of: creating a merged database containing database records stored in first and second ones of said master subscription databases; and filtering selected records from said merged database to yield said custom information database.
7. The method recited in Claim 1 , wherein said step of generating said custom information database comprises the steps of: filtering selected records from a first one of said master subscription databases; filtering selected records from a second one of said master subscription databases; and merging said selected records filtered from said first and second master subscription databases to yield said custom information database.
8. The method recited in Claim 1 , wherein said master subscription databases comprise records including data selected from the group consisting of: telephone information; address information; and historical account information.
9. A database replication server for automatically replicating database information, said database information server comprising: a processor; volatile memory; and a non-volatile media for storing a software-definable process, said processor and volatile memory being operative to retrieve and execute said software- definable process to perform the acts of: querying a subscription database to obtain custom attributes associated with each of a plurality of custom database information subscriptions, said custom attributes for each custom database information subscription including: a) the identification of one or more master subscription databases, and, b) at least one operation to be performed on said one or more master subscription databases to create a custom information database, said at least one operation being selectable from the group consisting of: i) merging database information from two or more of said master subscription databases, ii) partitioning database information contained in one or more of said master subscription databases, and iii) filtering database information from one or more of said master subscription databases; and automatically generating a custom information database for each of said custom database information subscriptions by performing said at least one operation on said database information stored in said one or more master subscription databases.
10. The database replication server recited in Claim 9, wherein said merging, partitioning and filtering operations are definable on a record or record field basis
11. The database replication server recited in Claim 9, wherein said act of generating said custom information database associated with each custom database information subscription comprises the acts of: creating a local database for storing said custom database information; establishing a connection to each of said master subscription databases identified by the custom directory attributes; retrieving and processing master database records from each of said master subscription databases to yield custom database records according to said at least one operation identified by said custom attributes; and storing said custom database records in said local database.
12. The database replication server recited in Claim 11 , wherein said act of generating further comprises the step of publishing said custom database information in a remote database.
13. The database replication server recited in Claim 9, wherein said act of generating said custom information database comprises the acts of: creating a partitioned database containing a subset of the database records stored in a first one of said master subscription databases; and merging said partitioned database with a second one of said master subscription databases to yield said custom information database.
14. The database replication server recited in Claim 11 , wherein said act of generating said custom information database comprises the acts of: creating a merged database containing database records stored in first and second ones of said master subscription databases; and filtering selected records from said merged database to yield said custom information database.
15. The database replication server recited in Claim 9, wherein said act of generating said custom information database comprises the acts of: filtering selected records from a first one of said master subscription databases; filtering selected records from a second one of said master subscription databases; and merging said selected records filtered from said first and second master subscription databases to yield said custom information database.
16. The database replication server recited in Claim 9, wherein said master subscription databases comprise records including data selected from the group consisting of: telephone information; address information; and historical account information.
PCT/US2001/021075 2000-07-06 2001-07-02 Automatic database replication server and methods WO2002005116A2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU2001271775A AU2001271775A1 (en) 2000-07-06 2001-07-02 Automatic database replication server and methods

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US61109900A 2000-07-06 2000-07-06
US09/611,099 2000-07-06

Publications (2)

Publication Number Publication Date
WO2002005116A2 true WO2002005116A2 (en) 2002-01-17
WO2002005116A3 WO2002005116A3 (en) 2004-01-08

Family

ID=24447619

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2001/021075 WO2002005116A2 (en) 2000-07-06 2001-07-02 Automatic database replication server and methods

Country Status (2)

Country Link
AU (1) AU2001271775A1 (en)
WO (1) WO2002005116A2 (en)

Cited By (65)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005020102A1 (en) 2003-08-14 2005-03-03 Oracle International Corporation Automatic and dynamic provisioning of databases
US7020656B1 (en) 2002-05-08 2006-03-28 Oracle International Corporation Partition exchange loading technique for fast addition of data to a data warehousing system
US7043491B1 (en) 2002-05-08 2006-05-09 Oracle International Corporation Partition exchange technique for operating a data warehousing system
US7343585B1 (en) 2002-01-30 2008-03-11 Oracle International Corporation Operator approach for generic dataflow designs
US7415522B2 (en) 2003-08-14 2008-08-19 Oracle International Corporation Extensible framework for transferring session state
US7437460B2 (en) 2003-08-14 2008-10-14 Oracle International Corporation Service placement for enforcing performance and availability levels in a multi-node system
US7437459B2 (en) 2003-08-14 2008-10-14 Oracle International Corporation Calculation of service performance grades in a multi-node environment that hosts the services
US7441033B2 (en) 2003-08-14 2008-10-21 Oracle International Corporation On demand node and server instance allocation and de-allocation
US7516221B2 (en) 2003-08-14 2009-04-07 Oracle International Corporation Hierarchical management of the dynamic allocation of resources in a multi-node system
US7526409B2 (en) 2005-10-07 2009-04-28 Oracle International Corporation Automatic performance statistical comparison between two periods
US7552171B2 (en) 2003-08-14 2009-06-23 Oracle International Corporation Incremental run-time session balancing in a multi-node system
US7571173B2 (en) 2004-05-14 2009-08-04 Oracle International Corporation Cross-platform transportable database
US7610314B2 (en) 2005-10-07 2009-10-27 Oracle International Corporation Online tablespace recovery for export
US7664847B2 (en) 2003-08-14 2010-02-16 Oracle International Corporation Managing workload by service
US7680793B2 (en) 2005-10-07 2010-03-16 Oracle International Corporation Commit-time ordered message queue supporting arbitrary read and dequeue patterns from multiple subscribers
US7747717B2 (en) 2003-08-14 2010-06-29 Oracle International Corporation Fast application notification in a clustered computing system
US7779418B2 (en) 2004-12-30 2010-08-17 Oracle International Corporation Publisher flow control and bounded guaranteed delivery for message queues
US7818386B2 (en) 2004-12-30 2010-10-19 Oracle International Corporation Repeatable message streams for message queues in distributed systems
US7853579B2 (en) 2003-08-14 2010-12-14 Oracle International Corporation Methods, systems and software for identifying and managing database work
US7953860B2 (en) 2003-08-14 2011-05-31 Oracle International Corporation Fast reorganization of connections in response to an event in a clustered computing system
US8196150B2 (en) 2005-10-07 2012-06-05 Oracle International Corporation Event locality using queue services
US8311974B2 (en) 2004-02-20 2012-11-13 Oracle International Corporation Modularized extraction, transformation, and loading for a database
US8365193B2 (en) 2003-08-14 2013-01-29 Oracle International Corporation Recoverable asynchronous message driven processing in a multi-node system
US8374966B1 (en) 2002-08-01 2013-02-12 Oracle International Corporation In memory streaming with disk backup and recovery of messages captured from a database redo stream
US8554806B2 (en) 2004-05-14 2013-10-08 Oracle International Corporation Cross platform transportable tablespaces
US8606744B1 (en) 2001-09-28 2013-12-10 Oracle International Corporation Parallel transfer of data from one or more external sources into a database system
US8909599B2 (en) 2006-11-16 2014-12-09 Oracle International Corporation Efficient migration of binary XML across databases
US9031860B2 (en) 2009-10-09 2015-05-12 Visa U.S.A. Inc. Systems and methods to aggregate demand
US9152664B2 (en) 2007-04-13 2015-10-06 Video B Holdings Limited Partition management system
US9489424B2 (en) 2004-12-20 2016-11-08 Oracle International Corporation Cursor pre-fetching
US9679299B2 (en) 2010-09-03 2017-06-13 Visa International Service Association Systems and methods to provide real-time offers via a cooperative database
US9691085B2 (en) 2015-04-30 2017-06-27 Visa International Service Association Systems and methods of natural language processing and statistical analysis to identify matching categories
US9697520B2 (en) 2010-03-22 2017-07-04 Visa U.S.A. Inc. Merchant configured advertised incentives funded through statement credits
US9760905B2 (en) 2010-08-02 2017-09-12 Visa International Service Association Systems and methods to optimize media presentations using a camera
US9799078B2 (en) 2010-03-19 2017-10-24 Visa U.S.A. Inc. Systems and methods to enhance search data with transaction based data
US9841282B2 (en) 2009-07-27 2017-12-12 Visa U.S.A. Inc. Successive offer communications with an offer recipient
US9947020B2 (en) 2009-10-19 2018-04-17 Visa U.S.A. Inc. Systems and methods to provide intelligent analytics to cardholders and merchants
US10007915B2 (en) 2011-01-24 2018-06-26 Visa International Service Association Systems and methods to facilitate loyalty reward transactions
US10055745B2 (en) 2010-09-21 2018-08-21 Visa International Service Association Systems and methods to modify interaction rules during run time
US10055128B2 (en) 2010-01-20 2018-08-21 Oracle International Corporation Hybrid binary XML storage model for efficient XML processing
US10089630B2 (en) 2010-04-23 2018-10-02 Visa U.S.A. Inc. Systems and methods to provide offers to travelers
US10223707B2 (en) 2011-08-19 2019-03-05 Visa International Service Association Systems and methods to communicate offer options via messaging in real time with processing of payment transaction
US10290018B2 (en) 2011-11-09 2019-05-14 Visa International Service Association Systems and methods to communicate with users via social networking sites
US10339554B2 (en) 2010-06-04 2019-07-02 Visa International Service Association Systems and methods to provide messages in real-time with transaction processing
US10354267B2 (en) 2009-07-27 2019-07-16 Visa International Service Association Systems and methods to provide and adjust offers
US10354268B2 (en) 2014-05-15 2019-07-16 Visa International Service Association Systems and methods to organize and consolidate data for improved data storage and processing
US10360591B2 (en) 2011-09-20 2019-07-23 Visa International Service Association Systems and methods to process referrals in offer campaigns
US10360627B2 (en) 2012-12-13 2019-07-23 Visa International Service Association Systems and methods to provide account features via web based user interfaces
US10380617B2 (en) 2011-09-29 2019-08-13 Visa International Service Association Systems and methods to provide a user interface to control an offer campaign
US10419379B2 (en) 2014-04-07 2019-09-17 Visa International Service Association Systems and methods to program a computing system to process related events via workflows configured using a graphical user interface
US10438226B2 (en) 2014-07-23 2019-10-08 Visa International Service Association Systems and methods of using a communication network to coordinate processing among a plurality of separate computing systems
US10438299B2 (en) 2011-03-15 2019-10-08 Visa International Service Association Systems and methods to combine transaction terminal location data and social networking check-in
US10475060B2 (en) 2010-11-04 2019-11-12 Visa International Service Association Systems and methods to reward user interactions
US10474653B2 (en) 2016-09-30 2019-11-12 Oracle International Corporation Flexible in-memory column store placement
US10489754B2 (en) 2013-11-11 2019-11-26 Visa International Service Association Systems and methods to facilitate the redemption of offer benefits in a form of third party statement credits
US10497022B2 (en) 2012-01-20 2019-12-03 Visa International Service Association Systems and methods to present and process offers
US10540217B2 (en) 2016-09-16 2020-01-21 Oracle International Corporation Message cache sizing
US10546332B2 (en) 2010-09-21 2020-01-28 Visa International Service Association Systems and methods to program operations for interaction with users
US10650398B2 (en) 2014-06-16 2020-05-12 Visa International Service Association Communication systems and methods to transmit data among a plurality of computing systems in processing benefit redemption
US10672018B2 (en) 2012-03-07 2020-06-02 Visa International Service Association Systems and methods to process offers via mobile devices
US10977666B2 (en) 2010-08-06 2021-04-13 Visa International Service Association Systems and methods to rank and select triggers for real-time offers
US11004092B2 (en) 2009-11-24 2021-05-11 Visa U.S.A. Inc. Systems and methods for multi-channel offer redemption
US11210669B2 (en) 2014-10-24 2021-12-28 Visa International Service Association Systems and methods to set up an operation at a computer system connected with a plurality of computer systems via a computer network using a round trip communication of an identifier of the operation
US11556500B2 (en) 2017-09-29 2023-01-17 Oracle International Corporation Session templates
US11936739B2 (en) 2019-09-12 2024-03-19 Oracle International Corporation Automated reset of session state

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9176772B2 (en) 2005-02-11 2015-11-03 Oracle International Corporation Suspending and resuming of sessions
US9342835B2 (en) 2009-10-09 2016-05-17 Visa U.S.A Systems and methods to deliver targeted advertisements to audience
US8595058B2 (en) 2009-10-15 2013-11-26 Visa U.S.A. Systems and methods to match identifiers
US9477967B2 (en) 2010-09-21 2016-10-25 Visa International Service Association Systems and methods to process an offer campaign based on ineligibility

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5835757A (en) * 1994-03-30 1998-11-10 Siemens Telecom Networks Distributed database management system for servicing application requests in a telecommunications switching system
US5924096A (en) * 1997-10-15 1999-07-13 Novell, Inc. Distributed database using indexed into tags to tracks events according to type, update cache, create virtual update log on demand

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5835757A (en) * 1994-03-30 1998-11-10 Siemens Telecom Networks Distributed database management system for servicing application requests in a telecommunications switching system
US5924096A (en) * 1997-10-15 1999-07-13 Novell, Inc. Distributed database using indexed into tags to tracks events according to type, update cache, create virtual update log on demand

Cited By (92)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8606744B1 (en) 2001-09-28 2013-12-10 Oracle International Corporation Parallel transfer of data from one or more external sources into a database system
US7343585B1 (en) 2002-01-30 2008-03-11 Oracle International Corporation Operator approach for generic dataflow designs
US7020656B1 (en) 2002-05-08 2006-03-28 Oracle International Corporation Partition exchange loading technique for fast addition of data to a data warehousing system
US7043491B1 (en) 2002-05-08 2006-05-09 Oracle International Corporation Partition exchange technique for operating a data warehousing system
US8374966B1 (en) 2002-08-01 2013-02-12 Oracle International Corporation In memory streaming with disk backup and recovery of messages captured from a database redo stream
US7664847B2 (en) 2003-08-14 2010-02-16 Oracle International Corporation Managing workload by service
US8365193B2 (en) 2003-08-14 2013-01-29 Oracle International Corporation Recoverable asynchronous message driven processing in a multi-node system
US7441033B2 (en) 2003-08-14 2008-10-21 Oracle International Corporation On demand node and server instance allocation and de-allocation
US7516221B2 (en) 2003-08-14 2009-04-07 Oracle International Corporation Hierarchical management of the dynamic allocation of resources in a multi-node system
WO2005020102A1 (en) 2003-08-14 2005-03-03 Oracle International Corporation Automatic and dynamic provisioning of databases
US7552171B2 (en) 2003-08-14 2009-06-23 Oracle International Corporation Incremental run-time session balancing in a multi-node system
US7552218B2 (en) 2003-08-14 2009-06-23 Oracle International Corporation Transparent session migration across servers
US7437459B2 (en) 2003-08-14 2008-10-14 Oracle International Corporation Calculation of service performance grades in a multi-node environment that hosts the services
US7415522B2 (en) 2003-08-14 2008-08-19 Oracle International Corporation Extensible framework for transferring session state
US7953860B2 (en) 2003-08-14 2011-05-31 Oracle International Corporation Fast reorganization of connections in response to an event in a clustered computing system
US7437460B2 (en) 2003-08-14 2008-10-14 Oracle International Corporation Service placement for enforcing performance and availability levels in a multi-node system
US7747754B2 (en) 2003-08-14 2010-06-29 Oracle International Corporation Transparent migration of stateless sessions across servers
US7747717B2 (en) 2003-08-14 2010-06-29 Oracle International Corporation Fast application notification in a clustered computing system
US7930344B2 (en) 2003-08-14 2011-04-19 Oracle International Corporation Incremental run-time session balancing in a multi-node system
US8161085B2 (en) 2003-08-14 2012-04-17 Oracle International Corporation Automatic and dynamic provisioning of databases
US7853579B2 (en) 2003-08-14 2010-12-14 Oracle International Corporation Methods, systems and software for identifying and managing database work
US7873684B2 (en) 2003-08-14 2011-01-18 Oracle International Corporation Automatic and dynamic provisioning of databases
AU2004267742B2 (en) * 2003-08-14 2011-04-07 Oracle International Corporation Automatic and dynamic provisioning of databases
US8311974B2 (en) 2004-02-20 2012-11-13 Oracle International Corporation Modularized extraction, transformation, and loading for a database
US7571173B2 (en) 2004-05-14 2009-08-04 Oracle International Corporation Cross-platform transportable database
US8554806B2 (en) 2004-05-14 2013-10-08 Oracle International Corporation Cross platform transportable tablespaces
US9489424B2 (en) 2004-12-20 2016-11-08 Oracle International Corporation Cursor pre-fetching
US7818386B2 (en) 2004-12-30 2010-10-19 Oracle International Corporation Repeatable message streams for message queues in distributed systems
US7779418B2 (en) 2004-12-30 2010-08-17 Oracle International Corporation Publisher flow control and bounded guaranteed delivery for message queues
US8397244B2 (en) 2004-12-30 2013-03-12 Oracle International Corporation Publisher flow control and bounded guaranteed delivery for message queues
US7610314B2 (en) 2005-10-07 2009-10-27 Oracle International Corporation Online tablespace recovery for export
US7526409B2 (en) 2005-10-07 2009-04-28 Oracle International Corporation Automatic performance statistical comparison between two periods
US7680793B2 (en) 2005-10-07 2010-03-16 Oracle International Corporation Commit-time ordered message queue supporting arbitrary read and dequeue patterns from multiple subscribers
US8196150B2 (en) 2005-10-07 2012-06-05 Oracle International Corporation Event locality using queue services
US8909599B2 (en) 2006-11-16 2014-12-09 Oracle International Corporation Efficient migration of binary XML across databases
US9152664B2 (en) 2007-04-13 2015-10-06 Video B Holdings Limited Partition management system
US10354267B2 (en) 2009-07-27 2019-07-16 Visa International Service Association Systems and methods to provide and adjust offers
US9909879B2 (en) 2009-07-27 2018-03-06 Visa U.S.A. Inc. Successive offer communications with an offer recipient
US9841282B2 (en) 2009-07-27 2017-12-12 Visa U.S.A. Inc. Successive offer communications with an offer recipient
US9031860B2 (en) 2009-10-09 2015-05-12 Visa U.S.A. Inc. Systems and methods to aggregate demand
US10607244B2 (en) 2009-10-19 2020-03-31 Visa U.S.A. Inc. Systems and methods to provide intelligent analytics to cardholders and merchants
US9947020B2 (en) 2009-10-19 2018-04-17 Visa U.S.A. Inc. Systems and methods to provide intelligent analytics to cardholders and merchants
US11004092B2 (en) 2009-11-24 2021-05-11 Visa U.S.A. Inc. Systems and methods for multi-channel offer redemption
US11017411B2 (en) 2009-11-24 2021-05-25 Visa U.S.A. Inc. Systems and methods for multi-channel offer redemption
US10055128B2 (en) 2010-01-20 2018-08-21 Oracle International Corporation Hybrid binary XML storage model for efficient XML processing
US10191656B2 (en) 2010-01-20 2019-01-29 Oracle International Corporation Hybrid binary XML storage model for efficient XML processing
US9953373B2 (en) 2010-03-19 2018-04-24 Visa U.S.A. Inc. Systems and methods to enhance search data with transaction based data
US9799078B2 (en) 2010-03-19 2017-10-24 Visa U.S.A. Inc. Systems and methods to enhance search data with transaction based data
US11017482B2 (en) 2010-03-19 2021-05-25 Visa U.S.A. Inc. Systems and methods to enhance search data with transaction based data
US9697520B2 (en) 2010-03-22 2017-07-04 Visa U.S.A. Inc. Merchant configured advertised incentives funded through statement credits
US10902420B2 (en) 2010-03-22 2021-01-26 Visa International Service Association Merchant configured advertised incentives funded through statement credits
US10354250B2 (en) 2010-03-22 2019-07-16 Visa International Service Association Merchant configured advertised incentives funded through statement credits
US10089630B2 (en) 2010-04-23 2018-10-02 Visa U.S.A. Inc. Systems and methods to provide offers to travelers
US10339554B2 (en) 2010-06-04 2019-07-02 Visa International Service Association Systems and methods to provide messages in real-time with transaction processing
US9760905B2 (en) 2010-08-02 2017-09-12 Visa International Service Association Systems and methods to optimize media presentations using a camera
US10430823B2 (en) 2010-08-02 2019-10-01 Visa International Service Association Systems and methods to optimize media presentations using a camera
US10977666B2 (en) 2010-08-06 2021-04-13 Visa International Service Association Systems and methods to rank and select triggers for real-time offers
US9990643B2 (en) 2010-09-03 2018-06-05 Visa International Service Association Systems and methods to provide real-time offers via a cooperative database
US9679299B2 (en) 2010-09-03 2017-06-13 Visa International Service Association Systems and methods to provide real-time offers via a cooperative database
US10055745B2 (en) 2010-09-21 2018-08-21 Visa International Service Association Systems and methods to modify interaction rules during run time
US10546332B2 (en) 2010-09-21 2020-01-28 Visa International Service Association Systems and methods to program operations for interaction with users
US11151585B2 (en) 2010-09-21 2021-10-19 Visa International Service Association Systems and methods to modify interaction rules during run time
US10475060B2 (en) 2010-11-04 2019-11-12 Visa International Service Association Systems and methods to reward user interactions
US10007915B2 (en) 2011-01-24 2018-06-26 Visa International Service Association Systems and methods to facilitate loyalty reward transactions
US10438299B2 (en) 2011-03-15 2019-10-08 Visa International Service Association Systems and methods to combine transaction terminal location data and social networking check-in
US10223707B2 (en) 2011-08-19 2019-03-05 Visa International Service Association Systems and methods to communicate offer options via messaging in real time with processing of payment transaction
US10628842B2 (en) 2011-08-19 2020-04-21 Visa International Service Association Systems and methods to communicate offer options via messaging in real time with processing of payment transaction
US10360591B2 (en) 2011-09-20 2019-07-23 Visa International Service Association Systems and methods to process referrals in offer campaigns
US10956924B2 (en) 2011-09-29 2021-03-23 Visa International Service Association Systems and methods to provide a user interface to control an offer campaign
US10380617B2 (en) 2011-09-29 2019-08-13 Visa International Service Association Systems and methods to provide a user interface to control an offer campaign
US10290018B2 (en) 2011-11-09 2019-05-14 Visa International Service Association Systems and methods to communicate with users via social networking sites
US10853842B2 (en) 2011-11-09 2020-12-01 Visa International Service Association Systems and methods to communicate with users via social networking sites
US10497022B2 (en) 2012-01-20 2019-12-03 Visa International Service Association Systems and methods to present and process offers
US11037197B2 (en) 2012-01-20 2021-06-15 Visa International Service Association Systems and methods to present and process offers
US10672018B2 (en) 2012-03-07 2020-06-02 Visa International Service Association Systems and methods to process offers via mobile devices
US10360627B2 (en) 2012-12-13 2019-07-23 Visa International Service Association Systems and methods to provide account features via web based user interfaces
US11900449B2 (en) 2012-12-13 2024-02-13 Visa International Service Association Systems and methods to provide account features via web based user interfaces
US11132744B2 (en) 2012-12-13 2021-09-28 Visa International Service Association Systems and methods to provide account features via web based user interfaces
US10909508B2 (en) 2013-11-11 2021-02-02 Visa International Service Association Systems and methods to facilitate the redemption of offer benefits in a form of third party statement credits
US10489754B2 (en) 2013-11-11 2019-11-26 Visa International Service Association Systems and methods to facilitate the redemption of offer benefits in a form of third party statement credits
US10419379B2 (en) 2014-04-07 2019-09-17 Visa International Service Association Systems and methods to program a computing system to process related events via workflows configured using a graphical user interface
US11640620B2 (en) 2014-05-15 2023-05-02 Visa International Service Association Systems and methods to organize and consolidate data for improved data storage and processing
US10354268B2 (en) 2014-05-15 2019-07-16 Visa International Service Association Systems and methods to organize and consolidate data for improved data storage and processing
US10650398B2 (en) 2014-06-16 2020-05-12 Visa International Service Association Communication systems and methods to transmit data among a plurality of computing systems in processing benefit redemption
US10438226B2 (en) 2014-07-23 2019-10-08 Visa International Service Association Systems and methods of using a communication network to coordinate processing among a plurality of separate computing systems
US11055734B2 (en) 2014-07-23 2021-07-06 Visa International Service Association Systems and methods of using a communication network to coordinate processing among a plurality of separate computing systems
US11210669B2 (en) 2014-10-24 2021-12-28 Visa International Service Association Systems and methods to set up an operation at a computer system connected with a plurality of computer systems via a computer network using a round trip communication of an identifier of the operation
US9691085B2 (en) 2015-04-30 2017-06-27 Visa International Service Association Systems and methods of natural language processing and statistical analysis to identify matching categories
US10540217B2 (en) 2016-09-16 2020-01-21 Oracle International Corporation Message cache sizing
US10474653B2 (en) 2016-09-30 2019-11-12 Oracle International Corporation Flexible in-memory column store placement
US11556500B2 (en) 2017-09-29 2023-01-17 Oracle International Corporation Session templates
US11936739B2 (en) 2019-09-12 2024-03-19 Oracle International Corporation Automated reset of session state

Also Published As

Publication number Publication date
AU2001271775A1 (en) 2002-01-21
WO2002005116A3 (en) 2004-01-08

Similar Documents

Publication Publication Date Title
WO2002005116A2 (en) Automatic database replication server and methods
US5649181A (en) Method and apparatus for indexing database columns with bit vectors
US7243110B2 (en) Searchable archive
CN102945242B (en) The management method of data, system and computer system
US6081805A (en) Pass-through architecture via hash techniques to remove duplicate query results
US5519855A (en) Summary catalogs
US6745177B2 (en) Method and system for retrieving data from multiple data sources using a search routing database
CN100541486C (en) The result that the function of data is used carries out structured index
US6122644A (en) System for halloween protection in a database system
US20040139046A1 (en) Data organization in a fast query system
JPH0628231A (en) Method for storage and maintenance of data- base to be entered into computer system and database management system
EP1204938A1 (en) System for accessing database tables mapped into memory for high performance data retrieval
US7617206B1 (en) Method for analyzing status of specialized tank files which store and handle large objects
Faloutsos Signature files: An integrated access method for text and attributes, suitable for optical disk storage
KR100226447B1 (en) Method for creating meta data and processor load data for mobile switching center
US20060230054A1 (en) On-line organization of data sets
JPH09198396A (en) Document retrieval device
JP3630830B2 (en) Semi-custom database system
JP3166675B2 (en) Transaction search processor by time specification
Zabback et al. Office documents on a database kernel—filing, retrieval, and archiving
Kona et al. Partitioned approach to association rule mining over multiple databases
JP2608170B2 (en) Related database processing device
Motzkin et al. A generalized database directory for nondense attributes
JPH01282634A (en) Data base device
JP2502262B2 (en) Network database access method

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG US UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: JP