WO2009033713A1 - Computer-implemented database system - Google Patents
Computer-implemented database system Download PDFInfo
- Publication number
- WO2009033713A1 WO2009033713A1 PCT/EP2008/007576 EP2008007576W WO2009033713A1 WO 2009033713 A1 WO2009033713 A1 WO 2009033713A1 EP 2008007576 W EP2008007576 W EP 2008007576W WO 2009033713 A1 WO2009033713 A1 WO 2009033713A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- clipboard
- data space
- information record
- retrieving
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/25—Integrating or interfacing systems involving database management systems
- G06F16/252—Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
Definitions
- a computer-implemented database caching system in a network comprised of several node computers each comprising at least one data retrieving application.
- the system comprises a highly available, persistent data base system including one or more data bases for storing the data to be retrieved, said one or more data bases having a minimum access time and a non-persistent physical shared memory system comprising: a data space system, separate and distinct from said data bases, and being organized as one or more data space system segments (clipboards) and having a minimum access time which is lower than the minimum access time of said data bases; an address space for a data space manager for managing the data space system; and multiple address spaces for clipboard users for retrieving data stored in the clipboards based on a retrieving demand from a database application.
- the data space manager is adapted to provide link indications to the clipboard users, wherein the link indications allow connecting the address spaces of the clipboard users with the address space of the data space manager and to thereby enable a cross memory communication between the address spaces of the clipboard users and the data space manager.
- the data space manager is further adapted to act as a service provider for the clipboard users in cross memory communication related to the retrieval of data from one or more clipboards.
- a clipboard service module is adapted to implement a clipboard service for retrieving, upon a call by one of the database applications, a certain information record.
- the clipboard service comprises the functionality of sending a retrieving demand for said demanded information record to said data space system.
- said demanded information record can be retrieved from said data space system, then pasting said demanded information record out of said data space system; and providing said demanded information record to said database application. If said demanded information record cannot be retrieved from said data space system, then retrieving said demanded information record from said data bases; providing said demanded information record to said application software program; copying said demanded information record to said data space system, and an expiration period is attributed to said information record indicating when the information record expires.
- a persistent data base system is usually hosted on a mainframe or other types of computers like central data centers which provide high availability.
- High availability can be measured in fully functional uptime or in downtime. If measured in uptime, an uptime of 99.999% is the guaranteed minimum needed. If measured in downtime, 0.001% is the maximum downtime tolerated for such highly available central data centers.
- To access information in such central data centers via SQL calls is relatively time-consuming and processor capacity intensive.
- the present concept is in particularly useful and its use is most noticeable when a data space in the data space system is provided for information data that is often-times read but relatively rarely modified. Significant speed gains are achievable by accessing this information data via the computer software program module from the data space system having shared memory instead of reading this information data from a data base system in the central data centers via SQL calls.
- Information data particularly suited for being held in / read-out from the afore-described data space system are data records that do not change too often (e.g. one time per day), but is required to be read out a large number of times.
- Data records like calendar data, time zone data, number of decimal positions of currency conversion rates, reference data, network resource configuration data, or the like, meet this categorization.
- the data spaces of the data space system may be used to store heavily used, but comparatively rarely changed data. Significant execution speed gains are achieved by accessing these data kept in shared memory instead of reading from a persistent data base system.
- the computer software data space manager program may be executed as a started task on every logical partition.
- the computer software data space manager program can establish a so called cross memory environment to allow other address spaces to effect synchronous cross memory communication.
- a cross memory environment can be described by tables and linkages that connect a service provider's address space to a user's address space and by tables and linkages that provide the necessary authorization for the service provider.
- the cross memory environment also encompasses program call numbers used to initiate cross memory communication.
- the user requests are handled by program call routines within the computer software data space manager address space. The information needed to call these program call routines is provided to the users by programs that allow to share data between two programs running under the same task, or between two or more tasks or address spaces.
- the data space manager may be adapted to create a clipboard on request of one of the data retrieving applications.
- the data space manager is adapted to provide a clipboard access indication to one of the clipboard services, and the clipboard service is adapted to access the clipboard based on the clipboard access indication instead of using the cross memory communication.
- the clipboard service may be adapted to perform a cross memory communication by initiating a call of a program call routine within the address space of the data space manager.
- a parameter profile comprising the name of said data space system segment, and an expiration period after which an entry expires, and/or a key length for retrieving an information record, and/or a maximum record length of a data space system segment, and/or a maximum number of records to keep in a data space system segment may be provided by the clipboard service to the data space manager.
- the clipboard service can be programmed and be suited to, prior to providing said demanded information record pasted out of said data space system to the application software program, examining said expiration period entry attributed to said data space system segment from which the information record is to be retrieved, and, if said expiration period entry has expired, then not to provide said information record from said data space system segment to said application software program.
- the clipboard service can also be adapted to effect on the data space system one or more of the following requests: create data space segment, and copy data space segment, and activate data space segment, and clear data space segment, and list data space segment(s), and put data to passive data space segment, and get data from data space segment and put data to active data space segment, and search information record in data space segment.
- the information needed to configure a data space segment is the clipboard name (e.g. max. 8 characters), the time, e.g. in minutes, after which an entry in this clipboard expires, the length of the key (e.g. max. 256 characters), the maximum length of an information data record in a data space segment, (e.g. max.
- the maximum number of records per clipboard is dependent on: the requirements of the application software program, the maximum record length, and the maximum size of a data space.
- the range for the maximum number of records per clipboard can go from 1 to over one million.
- the clipboard service can utilise the computer software program data space manager to provide an easier interface to the data space segments for application programs.
- Main functions of the clipboard service to access the clipboards may be copy, paste and refresh.
- the application software program can copy some data with an expiration time, identified by a key and a clipboard name, to a non-persistent Storage.
- the paste-function the application software program can paste some data, identified by a key and a clipboard name, from a non-persistent storage.
- the refresh-function the application software program can set all entries within a clipboard have a certain name on all logical partition present in the system to the status invalid.
- the refresh counter which is another item within the clipboard header, is incremented by one. This value also is stored in the header of every clipboard entry during a copy request. Therefore, these two values can be compared during a paste request. If both values, the one in the clipboard header and the one from the clipboard entry, are identical, no refresh has been carried out since the last copy of this clipboard entry (i.e. the data record). If a refresh has not been carried out, the complete field must be compared.
- an application program applies for or requests a data space segment.
- Requested data space segments are initialized at the time the entire system is (re)started.
- the relevant information of all configured clipboards is held within an extended common service area.
- the common service area contains pageable and fixed data areas that are addressable by all active virtual storage address spaces.
- the common service area normally contains data referenced by a number of system address spaces, enabling address spaces to communicate by referencing the same piece of common service area data.
- the clipboard service uses the data space manager mainly to create a data space and to put header information into it.
- the data space manager returns to the clipboard service an access list entry token.
- the access list entry token identifies the access list entry that points to the data space just created.
- the clipboard service therefore can access the data space segment with the access list entry token returned by the data space manager, rather than accessing it via cross memory communication. This technique is faster because no time-consuming switching of the address space is necessary.
- the database caching system comprises a highly available, persistent data base system including one or more data bases for storing the data to be retrieved, said one or more data bases having a minimum access time; and a non- persistent physical shared memory system comprising: a data space system, separate and distinct from said data bases, and being organized as one or more data space system seg- ments (clipboards) and having a minimum access time which is lower than the minimum access time of said data bases; an address space for a data space manager for managing the data space system; and multiple address spaces for clipboard users for retrieving data stored in the clipboards based on a retrieving demand from a database application.
- the method comprises the steps of providing, by the data space manager, link indications to the clipboard users, wherein the link indications allow connecting the address spaces of the clipboard users with the address space of the data space manager and to thereby enable a cross memory communication between the address spaces of the clipboard users and the data space manager, acting, by the data space manager, as a service provider for the clipboard users in cross memory communication related to the retrieval of data from one or more clipboards; retrieving, by a clipboard service, upon a call by one of the database applications (ASP), a certain information record.
- the clipboard service comprises the functionality of sending a retrieving demand for a demanded information record to a data space system.
- the demanded information record can be retrieved from the data space system, then pasting the demanded information record out of the data space system and providing it to a application software program. If the demanded information record cannot be retrieved from the data space system, then retrieving the demanded information record from a data base, and providing it to the application software program, and copying, the demanded, retrieved information record to the data space system, and attributing an expiration period entry to the information record indicating when the information record expires.
- the method may comprise the further step of creating, by the data space manager, a clipboard on request of one of the data retrieving applications.
- the method comprises the steps of providing, by the data space manager, a clipboard access indication to one of the clipboard services, and accessing, by the clipboard service, the clipboard based on the clipboard access indication instead of using the cross memory communication.
- the method may further comprise the step of performing, by the clipboard service, a cross memory communication by initiating a call of a program call routine within the address space of the data space manager.
- a computer program product which is designed to execute any one of the methods described herein when executed in a computer or a computer network.
- Fig. Ia is a schematic illustration of a prior art network architecture including a data base.
- Fig. Ib is a schematic illustration of a network architecture including a data base and a data space used for avoiding to access the data base by providing a data space segment from where the information data is retrieved instead.
- Fig. 2a is a schematic illustration of a prior art procedure to access a data base.
- Fig. 2b is a schematic illustration of an approach avoiding to access a data base by providing a data space segment from where the information data is retrieved instead.
- Fig. 3 is a schematic illustration of an overview of cross memory communication.
- Fig. 4 is a schematic illustration of a data space structure.
- a data space is intended to denote a range of contiguous (physical or virtual) storage addresses that a program may directly manipulate, e.g. via assembler instructions.
- the maximum size of a data space is generally system-dependent; a typical maximum size may be a few Gigabytes.
- An address space is intended to denote an area of contiguous virtual addresses available to a program and its data.
- An address space may relate to system code and data as well as user code and data.
- Fig. Ia depicts a network comprised of several node computers 10a, ... 10c and a plurality of application program components hosted on respective servers ASP having access to a highly available, persistent data base system DBS.
- the application program components can (di ⁇ rectly or indirectly) effect accesses to one or more data bases DBl, DB2 hosted / managed by the data base system mainframe DBS through SQL calls, as outlined in the schematic of Hg. 2a.
- the data bases DBl, DB2 can be organized in a SAN (Storage Area Network), or the like, or otherwise and have a predetermined minimum access time.
- SAN Storage Area Network
- Rg. Ib also depicts a network comprised of several node computers 10a, ... 10c and a plurality of application program components hosted on respective servers ASP having access to a highly available, persistent data base system DBS.
- the application program components can (directly or indirectly) effect reading, writing and/or mutating accesses to one or more data bases DBl, DB2 hosted / managed by the data base system mainframe DBS through SQL calls, as outlined in the schematic of Fig. 2b.
- the data bases DBl, DB2 also can be organized in a SAN (Storage Area Network) or the like, and have a predetermined minimum access time.
- SAN Storage Area Network
- Ib is a data space system DSl, DS2 in Fig. Ib.
- This data space system DSl, DS2 is separate and distinct from the data bases DBl, DB2 and is organized as one or more data space system segments or Clipboards.
- the data space system DSl, DS2 has a minimum access time - especially when reading from it - which is lower than the minimum access time of the data bases DBl, DB2.
- Fig. 3 illustrates in more detail implementation and use of the data space system DSl, DS2.
- a data space manager DSM
- DSM data space manager
- the logical partition is implemented on a non-persistent physical shared memory system (not shown) such as, e.g., a hard disk or several hard disks.
- a non-persistent physical shared memory system such as, e.g., a hard disk or several hard disks.
- the data spaces for the above- described data space system (indicated as "Active Data space” in Fig. 3) may be used to store heavily used, but comparatively rarely changed data such as, e.g. timezone data or other reference data.
- the data space manager is provided in order to manage (create, initialize, maintain, use) the one or more data spaces in the partition.
- the DSM may, e.g., run as a task or process on the logical partition. There may be one DSM per logical or physical partition.
- the DSM provides link indications (also referred to as 'cross memory environment 1 CME herein) to the clipboard users, wherein the link indications allow connecting the address spaces of the clipboard users with the address space of the data space manager and to thereby enable a cross memory communication (CMC) between the address spaces of the clipboard users and the data space manager.
- CMC cross memory communication
- the DSM may establish the cross memory environment at startup and/or may perform a re- establishment of the CME during operation. After establishment, the CME allows a synchronous CMC between the clipboard users in their address spaces and the DSM in its separate address space.
- the synchronous CMC enables the DSM to act as a service provider and to provide services synchronously to multiple clipboard users.
- the clipboard user issues a program call (PC) instruction. If the DSM acting as a service provider for the clipboard user in the CMC has established the CME correctly, the PC instruction transfers control to the DSM, more precisely a specifically adapted PC routine in the DSM.
- the PC routine provides the requested service, e.g. creating a data space (clipboard), and then returns control to the clipboard user.
- two program call routines PCROl and PCR02 may be provided within the DMS address space to handle clipboard user requests.
- the information required to call these routines may be provided in a shared storage area such that the information is accessible by any of the clipboard users.
- PCROl may handle data space requests such as create, copy, activate, clear, list.
- PCR02 may handle requests such as get, put active, and search data.
- a DSM user interface may be provided for use by the clipboard users, the user interface operating to route any user request to an appropriate one of the PC routines.
- the user interface may for example also ensure that calls are serialized or queued if this is required by the corresponding PC routine, e.g. by PCROl. If no queuing is required, a PC routine, e.g. PCR02, may be called by multiple clipboard users at a time in parallel.
- a Clipboard Service (see Rg. 2b) may be provided by the system depicted in Rg. Ib for use by the data retrieving applications ASP.
- the clipboard service acts to retrieve data, by using the above-described DSM, as requested by the applications.
- the clipboard service essentially provides the functions copy, paste and refresh.
- the application has to apply for a clipboard. All requested clipboards may be initialized by a batch program at system startup. From then on, information on existing clipboards may be held in a common service area, which may contain pageable and fixed data areas that are addressable by all active virtual storage address spa- ces.
- the common service area may contain data referenced by a number of system address spaces, which enables programs in address spaces to communicate by referencing the same piece of data in the common service area.
- the clipboard service may use the DSM only to create a data space and to put some header information into it (and thereby create a clipboard).
- the DSM may be adapted to return a clipboard access indication to one of the clipboard services.
- the clipboard service may then access the clipboard based on the clipboard access indication instead of using the cross memory communication.
- the clipboard address indication may be an address list entry token in an access list, which identifies an access list entry that points to the particular data space.
- the clipboard service may then use the token instead of using a CMC user request. This technique is faster, as no address space switch is required.
- the clipboard service when initiated by an application software program ASP to obtain a certain information record from the data base system DBS, the clipboard service may comprise one or more of the following functionalities:
- a retrieving demand for the demanded information record is sent to the data space system DSl, DS2.
- a return status of the function call may be indicated by the value of a status identifier RESULT-RCl.
- the status identifier is set to 'successful', the demanded information record can be retrieved from the data space system DSl, DS2. Then the demanded information record is pasted out of the data space system DSl, DS2 and provided to the application software program ASP. If the status identifier RESULT-RCl is set to ⁇ not successful', the demanded information record has to be retrieved from the data bases DBl, DB2 and provided to the application software program ASP.
- the demanded, retrieved information record is copied to the data space system DSl, DS2.
- An expiration period entry is attributed to said data space system segments, i.e. the clipboards maintained in the data space system indicating when an information record held therein expires.
- the clipboard Service Before the clipboard Service can be used by an application, it has to order a clipboard Profile. There are 5 parameters needed to configure a clipboard:
- the copybook CCRCFACD has to be inserted within the working-storage of the calling module.
- This copybook contains the module name of the Clipboard Service.
- the Parameter SVC-STD is passed as the first argument on the Clipboard Service Call. It contains, among others, a RESULT-RCl status field. This field is checked only in a Clipboard- Paste function to check if a record was returned or not. After all other functions (e.g. Clipboard-Refresh or Clipboard-Copy), the return status does not need to be checked. If a check is necessary, a RESULT-RC2 field explains the reason if RESULT-RCl is 4.
- the Parameter CCRCBAPI is passed as the second argument on the Clipboard Service call. The contents of its individual fields are explained in the following sections.
- the Parameter User-Record is passed as the third argument on the functions Clipboard-Copy and Clipboard-Paste. The data within this User-Record will be written to, or read from the Clipboard - depending on the function. This argument can be omitted in a Clipboard-Refresh call.
- the function Clipboard-Paste-Size can be used by programs with dynamic buffer allocation. As the size of a Clipboard record can be unknown, the program first can retrieve the size of a Clipboard record, allocate space for the data and thereafter call the function ClipBoard-Paste with the size returned on the call before. Its calling sequence can be as follows:
- API Application Program Interface
- the clipboard services includes the following:
- the copybook CCRCFACD is copied to the working-storage of the module which seeks to use the clipboard Service.
- the copybook CCRCBAPI is used on all calls of the clipboard Service as the second Parameter. If the RESULT-RCl field is zero, the function call was successful. There is no need to check the RESULT-RC2 field after calling a clipboard function.
- Rg. 4 a schematic illustration of a data space layout is shown.
- the various information data records are organized as linked records lists. This could be time zone data regarding the time zones around the globe. As an example, in a certain operation period, the data regarding these time zones could have been accessed in the Clipboard under the name GNKTIMEZ as shown below.
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
A computer-implemented database caching system is proposed for a network comprised of several node computers each comprising at least one data retrieving application. The system comprises a highly available, persistent data base system including one or more data bases for storing the data to be retrieved, said one or more data bases having a minimum access time; a non-persistent physical shared memory system comprising a data space system, separate and distinct from said data bases and being organized as one or more data space system segments (clipboards) and having a minimum access time which is lower than the minimum access time of said data bases; an address space for a data space manager for managing the data space system; and multiple address spaces for clipboard users for retrieving data stored in the clipboards based on a retrieving demand from a database application.
Description
Computer-implemented database system
Description
Background
Many organizations base their business on networked computers, in which numerous computer software application programs, which are executed / called by users, access the resources (hardware or software or infrastructure) of a network of computers via middleware, operating systems, and other computer program components. There exist organisation models where practically all of the data relevant for carrying out the business is maintained in one or more of highly available electronic data bases managed by one or more data base engines. Access to such data bases is e.g. effected through SQL calls (Standard Query Language calls). In large entities (public administrations, financial institutions, insurance companies, etc.) this can amount to millions of SQL calls per day to be carried out during the normal operation in the computer data bases of that entity. Depending on the implemented architecture of the computer network and the structure of the data repository containing the data bases these SQL calls can cause a significant share of computer processing load. Effecting such SQL calls requires the necessary data processing capacities (i.e. CPU time) which are then not available for other tasks.
Problem
It is an ever-present requirement to maintain low response times of data bases and to optimally employ the required resources (hardware or software or infrastructure) of the computer network.
Solution
To contribute to the solution of this problem, a computer-implemented database caching system is provided in a network comprised of several node computers each comprising at least one data retrieving application. The system comprises a highly available, persistent data base system including one or more data bases for storing the data to be retrieved, said one or more data bases having a minimum access time and a non-persistent physical shared memory system comprising: a data space system, separate and distinct from said data bases, and being organized as one or more data space system segments (clipboards) and having a minimum access time which is lower than the minimum access time of said data bases; an address space for a data space manager for managing the data space system; and
multiple address spaces for clipboard users for retrieving data stored in the clipboards based on a retrieving demand from a database application.
The data space manager is adapted to provide link indications to the clipboard users, wherein the link indications allow connecting the address spaces of the clipboard users with the address space of the data space manager and to thereby enable a cross memory communication between the address spaces of the clipboard users and the data space manager. The data space manager is further adapted to act as a service provider for the clipboard users in cross memory communication related to the retrieval of data from one or more clipboards. A clipboard service module is adapted to implement a clipboard service for retrieving, upon a call by one of the database applications, a certain information record. The clipboard service comprises the functionality of sending a retrieving demand for said demanded information record to said data space system. If said demanded information record can be retrieved from said data space system, then pasting said demanded information record out of said data space system; and providing said demanded information record to said database application. If said demanded information record cannot be retrieved from said data space system, then retrieving said demanded information record from said data bases; providing said demanded information record to said application software program; copying said demanded information record to said data space system, and an expiration period is attributed to said information record indicating when the information record expires.
A persistent data base system is usually hosted on a mainframe or other types of computers like central data centers which provide high availability. High availability can be measured in fully functional uptime or in downtime. If measured in uptime, an uptime of 99.999% is the guaranteed minimum needed. If measured in downtime, 0.001% is the maximum downtime tolerated for such highly available central data centers. To access information in such central data centers via SQL calls is relatively time-consuming and processor capacity intensive. The present concept is in particularly useful and its use is most noticeable when a data space in the data space system is provided for information data that is often-times read but relatively rarely modified. Significant speed gains are achievable by accessing this information data via the computer software program module from the data space system having shared memory instead of reading this information data from a data base system in the central data centers via SQL calls.
Information data particularly suited for being held in / read-out from the afore-described data space system are data records that do not change too often (e.g. one time per day), but is required to be read out a large number of times. Data records like calendar data, time zone data, number of decimal positions of currency conversion rates, reference data, network resource configuration data, or the like, meet this categorization.
The data spaces of the data space system may be used to store heavily used, but comparatively rarely changed data. Significant execution speed gains are achieved by accessing these data kept in shared memory instead of reading from a persistent data base system.
In an computer network environment offering multiple logical partitions, the computer software data space manager program may be executed as a started task on every logical partition. On start-up, the computer software data space manager program can establish a so called cross memory environment to allow other address spaces to effect synchronous cross memory communication. A cross memory environment can be described by tables and linkages that connect a service provider's address space to a user's address space and by tables and linkages that provide the necessary authorization for the service provider. The cross memory environment also encompasses program call numbers used to initiate cross memory communication. The user requests are handled by program call routines within the computer software data space manager address space. The information needed to call these program call routines is provided to the users by programs that allow to share data between two programs running under the same task, or between two or more tasks or address spaces.
The data space manager may be adapted to create a clipboard on request of one of the data retrieving applications. In some implementations, the data space manager is adapted to provide a clipboard access indication to one of the clipboard services, and the clipboard service is adapted to access the clipboard based on the clipboard access indication instead of using the cross memory communication.
The clipboard service may be adapted to perform a cross memory communication by initiating a call of a program call routine within the address space of the data space manager.
For configuring said clipboards, a parameter profile comprising the name of said data space system segment, and an expiration period after which an entry expires, and/or a key length for retrieving an information record, and/or a maximum record length of a data space system segment, and/or a maximum number of records to keep in a data space system segment may be provided by the clipboard service to the data space manager.
The clipboard service can be programmed and be suited to, prior to providing said demanded information record pasted out of said data space system to the application software program, examining said expiration period entry attributed to said data space system segment from which the information record is to be retrieved, and, if said expiration period entry has expired, then not to provide said information record from said data space system segment to said application software program.
The clipboard service can also be adapted to effect on the data space system one or more of the following requests: create data space segment, and copy data space segment, and activate data space segment, and clear data space segment, and list data space segment(s), and put data to passive data space segment, and get data from data space segment and put data to active data space segment, and search information record in data space segment. The information needed to configure a data space segment is the clipboard name (e.g. max. 8 characters), the time, e.g. in minutes, after which an entry in this clipboard expires, the length of the key (e.g. max. 256 characters), the maximum length of an information data record in a data space segment, (e.g. max. l'048'576 bytes), and the number of records to keep in a data space segment. The maximum number of records per clipboard is dependent on: the requirements of the application software program, the maximum record length, and the maximum size of a data space. The range for the maximum number of records per clipboard can go from 1 to over one million. These five items (clipboard name, expiration time in minutes after which an entry expires, key length, max. length of a clipboard record, max. number of records to keep in a clipboard) form - amongst others - the header of each data space segment, that is the clipboard header.
The clipboard service can utilise the computer software program data space manager to provide an easier interface to the data space segments for application programs. Main functions of the clipboard service to access the clipboards may be copy, paste and refresh. With the copy-function, the application software program can copy some data with an expiration time, identified by a key and a clipboard name, to a non-persistent Storage. With
the paste-function, the application software program can paste some data, identified by a key and a clipboard name, from a non-persistent storage. With the refresh-function, the application software program can set all entries within a clipboard have a certain name on all logical partition present in the system to the status invalid.
On a refresh request from a user, the refresh counter, which is another item within the clipboard header, is incremented by one. This value also is stored in the header of every clipboard entry during a copy request. Therefore, these two values can be compared during a paste request. If both values, the one in the clipboard header and the one from the clipboard entry, are identical, no refresh has been carried out since the last copy of this clipboard entry (i.e. the data record). If a refresh has not been carried out, the complete field must be compared.
In one implementation, prior to using the clipboards, an application program applies for or requests a data space segment. Requested data space segments are initialized at the time the entire system is (re)started. The relevant information of all configured clipboards is held within an extended common service area. The common service area contains pageable and fixed data areas that are addressable by all active virtual storage address spaces. The common service area normally contains data referenced by a number of system address spaces, enabling address spaces to communicate by referencing the same piece of common service area data. The clipboard service uses the data space manager mainly to create a data space and to put header information into it. The data space manager returns to the clipboard service an access list entry token. The access list entry token identifies the access list entry that points to the data space just created. The clipboard service therefore can access the data space segment with the access list entry token returned by the data space manager, rather than accessing it via cross memory communication. This technique is faster because no time-consuming switching of the address space is necessary.
To further contribute to a solution of the above-described problem, it is proposed a method for database caching in a network comprised of several node computers each comprising at least one data retrieving application. The database caching system comprises a highly available, persistent data base system including one or more data bases for storing the data to be retrieved, said one or more data bases having a minimum access time; and a non- persistent physical shared memory system comprising: a data space system, separate and distinct from said data bases, and being organized as one or more data space system seg-
ments (clipboards) and having a minimum access time which is lower than the minimum access time of said data bases; an address space for a data space manager for managing the data space system; and multiple address spaces for clipboard users for retrieving data stored in the clipboards based on a retrieving demand from a database application.
The method comprises the steps of providing, by the data space manager, link indications to the clipboard users, wherein the link indications allow connecting the address spaces of the clipboard users with the address space of the data space manager and to thereby enable a cross memory communication between the address spaces of the clipboard users and the data space manager, acting, by the data space manager, as a service provider for the clipboard users in cross memory communication related to the retrieval of data from one or more clipboards; retrieving, by a clipboard service, upon a call by one of the database applications (ASP), a certain information record. The clipboard service comprises the functionality of sending a retrieving demand for a demanded information record to a data space system. If the demanded information record can be retrieved from the data space system, then pasting the demanded information record out of the data space system and providing it to a application software program. If the demanded information record cannot be retrieved from the data space system, then retrieving the demanded information record from a data base, and providing it to the application software program, and copying, the demanded, retrieved information record to the data space system, and attributing an expiration period entry to the information record indicating when the information record expires.
The method may comprise the further step of creating, by the data space manager, a clipboard on request of one of the data retrieving applications. In one implementatio, the method comprises the steps of providing, by the data space manager, a clipboard access indication to one of the clipboard services, and accessing, by the clipboard service, the clipboard based on the clipboard access indication instead of using the cross memory communication.
The method may further comprise the step of performing, by the clipboard service, a cross memory communication by initiating a call of a program call routine within the address space of the data space manager.
To still further contribute to a solution of the above-described problem, a computer program
product is proposed, which is designed to execute any one of the methods described herein when executed in a computer or a computer network.
Further details, possible modifications or alternatives, details and improvements become evident in the claims and/or in connection with the description of the drawings.
Brief description of the drawings
Fig. Ia is a schematic illustration of a prior art network architecture including a data base.
Fig. Ib is a schematic illustration of a network architecture including a data base and a data space used for avoiding to access the data base by providing a data space segment from where the information data is retrieved instead.
Fig. 2a is a schematic illustration of a prior art procedure to access a data base.
Fig. 2b is a schematic illustration of an approach avoiding to access a data base by providing a data space segment from where the information data is retrieved instead.
Fig. 3 is a schematic illustration of an overview of cross memory communication.
Fig. 4 is a schematic illustration of a data space structure.
Detailed description of the drawings
The terms 'data space1 and 'address space1 are used with particular meanings herein. A data space is intended to denote a range of contiguous (physical or virtual) storage addresses that a program may directly manipulate, e.g. via assembler instructions. The maximum size of a data space is generally system-dependent; a typical maximum size may be a few Gigabytes. An address space is intended to denote an area of contiguous virtual addresses available to a program and its data. An address space may relate to system code and data as well as user code and data.
Fig. Ia depicts a network comprised of several node computers 10a, ... 10c and a plurality of application program components hosted on respective servers ASP having access to a highly available, persistent data base system DBS. The application program components can (di¬ rectly or indirectly) effect accesses to one or more data bases DBl, DB2 hosted / managed by the data base system mainframe DBS through SQL calls, as outlined in the schematic of
Hg. 2a. The data bases DBl, DB2 can be organized in a SAN (Storage Area Network), or the like, or otherwise and have a predetermined minimum access time.
Correspondingly, Rg. Ib also depicts a network comprised of several node computers 10a, ... 10c and a plurality of application program components hosted on respective servers ASP having access to a highly available, persistent data base system DBS. The application program components can (directly or indirectly) effect reading, writing and/or mutating accesses to one or more data bases DBl, DB2 hosted / managed by the data base system mainframe DBS through SQL calls, as outlined in the schematic of Fig. 2b. The data bases DBl, DB2 also can be organized in a SAN (Storage Area Network) or the like, and have a predetermined minimum access time. A structural main difference between the system shown in Fig. Ia and the system of Fig. Ib is a data space system DSl, DS2 in Fig. Ib. This data space system DSl, DS2 is separate and distinct from the data bases DBl, DB2 and is organized as one or more data space system segments or Clipboards. The data space system DSl, DS2 has a minimum access time - especially when reading from it - which is lower than the minimum access time of the data bases DBl, DB2.
Fig. 3 illustrates in more detail implementation and use of the data space system DSl, DS2. Besides the data spaces, in a logical partition a plurality of address spaces are provided: An address space for a data space manager (DSM) for managing the data space system and multiple address spaces 1, 2, ... for clipboard users for retrieving data stored in the clipboards based on a retrieving demand from a database application.
The logical partition is implemented on a non-persistent physical shared memory system (not shown) such as, e.g., a hard disk or several hard disks. The data spaces for the above- described data space system (indicated as "Active Data space" in Fig. 3) may be used to store heavily used, but comparatively rarely changed data such as, e.g. timezone data or other reference data.
The data space manager (DSM) is provided in order to manage (create, initialize, maintain, use) the one or more data spaces in the partition. The DSM may, e.g., run as a task or process on the logical partition. There may be one DSM per logical or physical partition. The DSM provides link indications (also referred to as 'cross memory environment1 CME herein) to the clipboard users, wherein the link indications allow connecting the address spaces of the clipboard users with the address space of the data space manager and to thereby enable a
cross memory communication (CMC) between the address spaces of the clipboard users and the data space manager.
The DSM may establish the cross memory environment at startup and/or may perform a re- establishment of the CME during operation. After establishment, the CME allows a synchronous CMC between the clipboard users in their address spaces and the DSM in its separate address space. The synchronous CMC enables the DSM to act as a service provider and to provide services synchronously to multiple clipboard users. As part of the CMC, the clipboard user issues a program call (PC) instruction. If the DSM acting as a service provider for the clipboard user in the CMC has established the CME correctly, the PC instruction transfers control to the DSM, more precisely a specifically adapted PC routine in the DSM. The PC routine provides the requested service, e.g. creating a data space (clipboard), and then returns control to the clipboard user.
As exemplarily illustrated in Fig. 3, two program call routines PCROl and PCR02 may be provided within the DMS address space to handle clipboard user requests. The information required to call these routines may be provided in a shared storage area such that the information is accessible by any of the clipboard users. As an example, PCROl may handle data space requests such as create, copy, activate, clear, list. PCR02 may handle requests such as get, put active, and search data.
In some embodiments one may want to hide the CME before the clipboard users, in this case, a DSM user interface may be provided for use by the clipboard users, the user interface operating to route any user request to an appropriate one of the PC routines. The user interface may for example also ensure that calls are serialized or queued if this is required by the corresponding PC routine, e.g. by PCROl. If no queuing is required, a PC routine, e.g. PCR02, may be called by multiple clipboard users at a time in parallel. A Clipboard Service (see Rg. 2b) may be provided by the system depicted in Rg. Ib for use by the data retrieving applications ASP. The clipboard service acts to retrieve data, by using the above-described DSM, as requested by the applications. In the embodiment described here, the clipboard service essentially provides the functions copy, paste and refresh. In order to use the clipboard service, the application has to apply for a clipboard. All requested clipboards may be initialized by a batch program at system startup. From then on, information on existing clipboards may be held in a common service area, which may contain pageable and fixed data areas that are addressable by all active virtual storage address spa-
ces. The common service area may contain data referenced by a number of system address spaces, which enables programs in address spaces to communicate by referencing the same piece of data in the common service area.
In one embodiment, the clipboard service may use the DSM only to create a data space and to put some header information into it (and thereby create a clipboard). The DSM may be adapted to return a clipboard access indication to one of the clipboard services. The clipboard service may then access the clipboard based on the clipboard access indication instead of using the cross memory communication. As a concrete example, the clipboard address indication may be an address list entry token in an access list, which identifies an access list entry that points to the particular data space. The clipboard service may then use the token instead of using a CMC user request. This technique is faster, as no address space switch is required.
In more detail, when initiated by an application software program ASP to obtain a certain information record from the data base system DBS, the clipboard service may comprise one or more of the following functionalities:
A retrieving demand for the demanded information record is sent to the data space system DSl, DS2. A return status of the function call may be indicated by the value of a status identifier RESULT-RCl. In case the status identifier is set to 'successful', the demanded information record can be retrieved from the data space system DSl, DS2. Then the demanded information record is pasted out of the data space system DSl, DS2 and provided to the application software program ASP. If the status identifier RESULT-RCl is set to λnot successful', the demanded information record has to be retrieved from the data bases DBl, DB2 and provided to the application software program ASP. Additionally, the demanded, retrieved information record is copied to the data space system DSl, DS2. An expiration period entry is attributed to said data space system segments, i.e. the clipboards maintained in the data space system indicating when an information record held therein expires.
Before the clipboard Service can be used by an application, it has to order a clipboard Profile. There are 5 parameters needed to configure a clipboard:
- clipboard name : Name of the clipboard (max. 8 characters)
- Expiration : Time in minutes after which an entry expires
- Key length : Length of the key (max. 256 characters)
- Max. Record length : Maximum length of a clipboard record (max. lGigabyte)
- Max. num. of records : Number of records to keep in a clipboard
To call the Clipboard Service, the copybook CCRCFACD has to be inserted within the working-storage of the calling module. This copybook contains the module name of the Clipboard Service.
All Clipboard Service functions can be called the following way (in COBOL):
MOVE dipboardlMame TO clipboard-Name
SET clipboard-xyz TO TRUE
MOVE ClipRecKey TO clipboard-Rec-Key
MOVE LENGTH OF clipboard-Record
TO clipboard-Rec-Len CALL clipboard USING SVC-STD clipboard-API clipboard-Record IF RESULT-RCl = 0
* Success ELSE
* Not Found (if clipboard-Paste) END-IF
If the Clipboard Service is not initialized or the requested Clipboard-Name is not configured, a non-zero status will be returned in the status-field RESULT-RCl.
The Parameter SVC-STD is passed as the first argument on the Clipboard Service Call. It contains, among others, a RESULT-RCl status field. This field is checked only in a Clipboard- Paste function to check if a record was returned or not. After all other functions (e.g. Clipboard-Refresh or Clipboard-Copy), the return status does not need to be checked. If a check is necessary, a RESULT-RC2 field explains the reason if RESULT-RCl is 4.
The Parameter CCRCBAPI is passed as the second argument on the Clipboard Service call. The contents of its individual fields are explained in the following sections.
The Parameter User-Record is passed as the third argument on the functions Clipboard-Copy and Clipboard-Paste. The data within this User-Record will be written to, or read from the Clipboard - depending on the function. This argument can be omitted in a Clipboard-Refresh call.
The following sections describe all the Clipboard Service functions in detail.
With the ClipBoard-Copy function, the record "User-Record" will be copied to the Clipboard named "name", with a key of "key". Its calling sequence can be as follows:
MOVE name TO ClipBoard-Name
SET ClipBoard-Copy TO TRUE
MOVE key TO ClipBoard-Rec-Key
MOVE LENGTH OF User-Record
TO ClipBoard-Rec-Len CALL ClipBoard USING SVC-STD
CCRCBAPI
User-Record
With the Clipboard-Paste function, the record "User-Record" will be read from the Clipboard named "name", with a key of "key". If the record can not found within the Clipboard, a nonzero status (i.e. not 'successfulO will be returned in RESULT-RCl and the record is to be retrieved from the data bases DBl, DB2 and copied afterwards to the Clipboard. Its calling sequence can be as follows:
MOVE name TO Clipboard-Name
SET Clipboard-Paste TO TRUE
MOVE key TO Clipboard-Rec-Key
MOVE LENGTH OF User-Record
TO Clipboard-Rec-Len CALL Clipboard USING SVC-STD
CCRCBAPI
User-Record
If the RESULT-RCl is zero, the requested User-Record with a key of 'key' was retrieved from the Clipboard named 'name1. There are no other checks needed after a Clipboard-Paste call.
With the Clipboard-Refresh function, all Clipboard entries of the Clipboard named 'name' will be invalidated. The refresh is done asynchronously and is done on all logical partitions of a system. Its calling sequence can be as follows:
MOVE name TO ClipBoard-Name
SET Clipboard-Refresh TO TRUE
CALL Clipboard USING SVC-STD
CCRCBAPI OMΠTED
The function Clipboard-Paste-Size can be used by programs with dynamic buffer allocation. As the size of a Clipboard record can be unknown, the program first can retrieve the size of a Clipboard record, allocate space for the data and thereafter call the function ClipBoard-Paste with the size returned on the call before. Its calling sequence can be as follows:
MOVE name TO Clipboard-Name
SET Clipboard-Paste-Size TO TRUE MOVE key TO Clipboard-Rec-Key
CALL Clipboard USING SVC-STD
CCRCBAPI OMΓΠΈD
*
IF RESULT-RCl = 0
*
* Allocate buffer for the ClipBoard Data
*
* Get record from the Clipboard
SET Clipboard-Paste TO TRUE
CALL Clipboard USING SVC-STD
CCRCBAPI allocated_buffer
*
ELSE
*
* Get and copy record to Clipboard
*
END-IF
If the RESULT-RCl is zero, the size of the Clipboard record with a key of 'key' is returned from the Clipboard named 'name1 in field Clipboard-Rec-Len. There are no other checks needed after a ClipBoard-Paste-Size call.
Summarizing, the Application Program Interface (API) can be as follows:
01 Clipboard-API.
05 clipboard PIC X(08).
05 clipboard-Function PIC S9(08) BINARY.
88 clipboard-Copy VALUE 1.
88 clipboard-Paste VALUE 2.
88 clipboard-Refresh VALUE 3.
88 clipboard-Paste-Size VALUE 102.
05 dipboard-Rec-Key PIC X(256).
05 clipboard-Rec-Len PIC S9(08) BINARY.
*
* The copybook CCRCFACD is needed to get the Name to call
* The clipboard services includes the following:
*
77 clipboard PIC X(08) VALUE 1CCRCBOOl1.
The copybook CCRCFACD is copied to the working-storage of the module which seeks to use the clipboard Service. The copybook CCRCBAPI is used on all calls of the clipboard Service as the second Parameter.
If the RESULT-RCl field is zero, the function call was successful. There is no need to check the RESULT-RC2 field after calling a clipboard function.
While in Fig. Ib there are shown two data spaces DSl, DS2, their number can be significantly larger. Also, the number of highly available, persistent data base systems DBS and their data bases DBl, DB2 can be increased.
In Rg. 4, a schematic illustration of a data space layout is shown. Evidently, the various information data records are organized as linked records lists. This could be time zone data regarding the time zones around the globe. As an example, in a certain operation period, the data regarding these time zones could have been accessed in the Clipboard under the name GNKTIMEZ as shown below.
In an actual computer network, employing the above-described methodology yielded a reduction of more than 600 million SQL calls per day which resulted in a reduction of almost eight hours CPU time per day.
Claims
1. A computer-implemented database caching system in a network comprised of several node computers each comprising at least one data retrieving application, the system comprising:
• a highly available, persistent data base system (DBS) including one or more data bases (DBl, DB2) for storing the data to be retrieved, said one or more data bases (DBl, DB2) having a minimum access time; and
• a non-persistent physical shared memory system comprising:
- a data space system (DSl ... DSm), separate and distinct from said data bases (DBl, DB2), and being organized as one or more data space system segments ("clipboards") and having a minimum access time which is lower than the minimum access time of said data bases (DBl, DB2);
- an address space for a data space manager for managing the data space system; and
- multiple address spaces for clipboard users for retrieving data stored in the clipboards based on a retrieving demand from a database application, wherein the data space manager is adapted to provide link indications to the clipboard users, wherein the link indications allow connecting the address spaces of the clipboard users with the address space of the data space manager and to thereby enable a cross memory communication between the address spaces of the clipboard users and the data space manager, and the data space manager is adapted to act as a service provider for the clipboard users in cross memory communication related to the retrieval of data from one or more clipboards;
• a clipboard service module adapted to implement a clipboard service for retrieving, upon a call by one of the database applications (ASP), a certain information record, the clipboard service comprising the functionality of
- sending a retrieving demand for said demanded information record to said data space system (DSl ... DSm), and
- if said demanded information record can be retrieved from said data space system (DSl ... DSm), then
■ pasting said demanded information record out of said data space system (DSl ... DSm);
■ providing said demanded information record to said database application (ASP); and if said demanded information record cannot be retrieved from said data space system, then
■ retrieving said demanded information record from said data bases,
■ providing said demanded information record to said application software program (ASP); and
■ copying said demanded information record to said data space system (DSl ... DSm), and
■ an expiration period is attributed to said information record indicating when the information record expires.
2. The database caching system according to claim 1, wherein the data space manager is further adapted to create a clipboard on request of one of the data retrieving applications.
3. The database caching system according to claim 1 or 2, wherein the data space manager is adapted to provide a clipboard access indication to one of the clipboard services, and the clipboard service is adapted to access the clipboard based on the clipboard access indication instead of using the cross memory communication.
4. The database caching system according to any one of the preceding claims, wherein the clipboard service is adapted to perform a cross memory communication by initiating a call of a program call routine within the address space of the data space manager.
5. The database caching system according to any one of the preceding claims, wherein said clipboard service is adapted to, prior to providing said demanded information record pasted out of said data space system (DSl ... DSm) to the application (ASP), • examining said expiration period entry attributed to said data space system segment(s) from which the information record is to be retrieved from said data space system (DSl ... DSm), and, - if said expiration period entry has expired, then - not to provide said information record from said data space system (DSl ... DSm) to said application software program (ASP).
6. The database caching system according to any one of the preceding claims, wherein said clipboard service is adapted to effect on the data space system (DSl ... DSm) one or more of the following requests: i. create data space segment, and ii. copy data space segment, and iii. activate data space segment, and iv. clear data space segment, and v. list data space segment(s), and vi. put data to passive data space segment, and vii. get data from data space segment, and viii. put data to active data space segment, and ix. search information record in data space segment.
7. A method for database caching in a network comprised of several node computers each comprising at least one data retrieving application, wherein the database caching system comprises
• a highly available, persistent data base system (DBS) including one or more data bases (DBl, DB2) for storing the data to be retrieved, said one or more data bases (DBl, DB2) having a minimum access time;
• a non-persistent physical shared memory system comprising:
- a data space system (DSl ... DSm), separate and distinct from said data bases (DBl, DB2), and being organized as one or more data space system segments ("clipboards") and having a minimum access time which is lower than the minimum access time of said data bases (DBl, DB2);
- an address space for a data space manager for managing the data space system; and
- multiple address spaces for clipboard users for retrieving data stored in the clipboards based on a retrieving demand from a database application; the method comprising the following steps:
- providing, by the data space manager, link indications to the clipboard users, wherein the link indications allow connecting the address spaces of the clipboard users with the address space of the data space manager and to thereby enable a cross memory communication between the address spaces of the clipboard users and the data space manager,
- acting, by the data space manager, as a service provider for the clipboard users in cross memory communication related to the retrieval of data from one or more clipboards;
- retrieving, by a clipboard service, upon a call by one of the database applications (ASP), a certain information record, wherein the clipboard service comprises the functionality of
- sending a retrieving demand for a demanded information record to a data space system,
- if the demanded information record can be retrieved from the data space system, then
■ pasting the demanded information record out of the data space system and
■ providing it to a application software program, and
- if the demanded information record cannot be retrieved from the data space system, then
■ retrieving the demanded information record from a data base, and
■ providing it to the application software program, and
■ copying, the demanded, retrieved information record to the data space system, and
■ attributing an expiration period entry to the information record indicating when the information record expires.
8. The method according to claim 7, comprising the further step of creating, by the data space manager, a clipboard on request of one of the data retrieving applications.
9. The method according to claim 7 or 8, comprising the steps of providing, by the data space manager, a clipboard access indication to one of the clipboard services, and accessing, by the clipboard service, the clipboard based on the clipboard access indication instead of using the cross memory communication.
10. The method according to any one of claims 7 to 9, further comprising the step of performing, by the clipboard service, a cross memory communication by initiating a call of a program call routine within the address space of the data space manager.
11. The method according to any of claims 7 to 10, comprising the following steps performed by the clipboard service:
• providing said demanded information record pasted out of said data space system (DSl ... DSm) to the application software program (ASP),
• examining said expiration period entry attributed to said data space system segment(s) from which the information record is to be retrieved from said data space system (DSl ... DSm), and,
- if said expiration period entry has expired, then
- not to provide said information record from said data space system (DSl ... DSm) to said application software program (ASP).
12. The method according to any of claims 7 to 11, comprising the following steps: effecting, by the clipboard service, on the data space system (DSl ... DSm) one or more of the following requests:
- create data space segment, and
- copy data space segment, and
- activate data space segment, and
- clear data space segment, and
- list data space segment(s), and
- put data to passive data space segment, and
- get data from data space segment, and put data to active data space segment, and
- search information record in data space segment.
13. A computer program product, which is designed to execute any one of the methods according to the preceding claims 7 to 12 when executed in a computer or a computer network.
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP07018098A EP2037376A1 (en) | 2007-09-14 | 2007-09-14 | Computer-implemented database system |
EP07018098.9 | 2007-09-14 | ||
US11/907,784 US20090077006A1 (en) | 2007-09-14 | 2007-10-17 | Computer-implemented database systems and related methods |
US11/907,784 | 2007-10-17 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2009033713A1 true WO2009033713A1 (en) | 2009-03-19 |
Family
ID=39939733
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/EP2008/007576 WO2009033713A1 (en) | 2007-09-14 | 2008-09-12 | Computer-implemented database system |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2009033713A1 (en) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6009271A (en) * | 1996-10-28 | 1999-12-28 | Bmc Software, Inc. | Method of retrieving data from a relational database |
-
2008
- 2008-09-12 WO PCT/EP2008/007576 patent/WO2009033713A1/en active Application Filing
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6009271A (en) * | 1996-10-28 | 1999-12-28 | Bmc Software, Inc. | Method of retrieving data from a relational database |
Non-Patent Citations (8)
Title |
---|
CARPENTER T ET AL: "Client-server caching with expiration timestamps", DISTRIBUTED AND PARALLEL DATABASES KLUWER ACADEMIC PUBLISHERS NETHERLANDS, vol. 10, no. 1, July 2001 (2001-07-01), pages 5 - 22, XP002461596, ISSN: 0926-8782, Retrieved from the Internet <URL:http://www.springerlink.com/content/v1475067565815p2/fulltext.pdf> [retrieved on 20071205] * |
GOPALAN ET AL: "Caching with Expiration Times", PROCEEDINGS OF THE THIRTEENTH ANNUAL ACM-SIAM SYMPOSIUM ON DISCRETE ALGORITHMS, 2002, San Francisco, California , USA, XP002461588 * |
HOU Y T ET AL: "On expiration-based hierarchical caching systems", IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS IEEE USA, vol. 22, no. 1, January 2004 (2004-01-01), pages 134 - 150, XP002461584, ISSN: 0733-8716 * |
JEONG-JOON LEE ET AL: "An update-risk based approach to TTL estimation in Web caching", WISE 2002. PROCEEDINGS OF THE THIRD INTERNATIONAL CONFERENCE ON WEB INFORMATION SYSTEMS ENGINEERING IEEE COMPUT. SCI LOS ALAMITOS, CA, USA, 2002, pages 21 - 29, XP002461603, ISBN: 0-7695-1766-8, Retrieved from the Internet <URL:http://ieeexplore.ieee.org/search/wrapper.jsp?arnumber=1181640> [retrieved on 20070705] * |
JIA WANG: "A survey of Web caching schemes for the Internet", COMPUTER COMMUNICATION REVIEW ACM USA, vol. 29, no. 5, October 1999 (1999-10-01), pages 36 - 46, XP002461589, ISSN: 0146-4833, Retrieved from the Internet <URL:http://www.sigcomm.org/ccr/archive/1999/oct99/Jia_Wang2.pdf> [retrieved on 20071204] * |
SHAPIRO M ET AL: "Managing databases with binary large objects", MASS STORAGE SYSTEMS, 1999. 16TH IEEE SYMPOSIUM ON SAN DIEGO, CA, USA 15-18 MARCH 1999, PISCATAWAY, NJ, USA,IEEE, US, 15 March 1999 (1999-03-15), pages 185 - 193, XP010376278, ISBN: 978-0-7695-0204-5 * |
SWITHINBANK P ET AL: "Mastering DynaCache in WebSphere Commerce (IBM REDBOOKS)", December 2006, IBM CORPORATION, INTERNATIONAL TECHNICAL SUPPORT ORGANIZATION, US, XP002461569 * |
WESSELS D: "Intelligent caching for world-wide web objects", MASTER OF SCIENCE THESIS, UNIVERSITY OF COLORADO, 1995, Colorado, USA, XP002461592, Retrieved from the Internet <URL:http://citeseer.ist.psu.edu/cache/papers/cs/7155/http:zSzzSzwww.ircache.netzSz~wesselszSzPaperszSztlen-thesis.pdf/wessels95intelligent.pdf> [retrieved on 20071204] * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6523032B1 (en) | Servicing database requests using read-only database servers coupled to a master database server | |
US11093148B1 (en) | Accelerated volumes | |
US20200097489A1 (en) | Different hierarchies of resource data objects for managing system resources | |
US7349970B2 (en) | Workload management of stateful program entities | |
US7831772B2 (en) | System and methodology providing multiple heterogeneous buffer caches | |
US7096213B2 (en) | Persistent key-value repository with a pluggable architecture to abstract physical storage | |
US7103763B2 (en) | Storage and access of configuration data in nonvolatile memory of a logically-partitioned computer | |
US7203696B2 (en) | Dynamic registry partitioning | |
US10191663B1 (en) | Using data store accelerator intermediary nodes and write control settings to identify write propagation nodes | |
EP3465447B1 (en) | Multitier cache framework | |
US11409781B1 (en) | Direct storage loading for adding data to a database | |
US11347413B2 (en) | Opportunistic storage service | |
CN110263047B (en) | Data center node distribution method, device and system and computer equipment | |
US11386072B1 (en) | Automatic consistency for database write forwarding | |
US10855637B2 (en) | Architecture for large data management in communication applications through multiple mailboxes | |
CN118043800A (en) | System and method for providing cross-microservice query optimization | |
US6732137B1 (en) | Performance optimization for data sharing across batch sequential processes and on-line transaction processes | |
US8856068B2 (en) | Replicating modifications of a directory | |
Chang et al. | Integration and optimization of multiple big data processing platforms | |
US11816073B1 (en) | Asynchronously forwarding database commands | |
CN113204520A (en) | Remote sensing data rapid concurrent read-write method based on distributed file system | |
WO2024198872A1 (en) | Data management system, and data updating method and apparatus | |
EP2037376A1 (en) | Computer-implemented database system | |
WO2009033713A1 (en) | Computer-implemented database system | |
LU501203B1 (en) | Dynamic storage resiliency |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 08802128 Country of ref document: EP Kind code of ref document: A1 |
|
DPE1 | Request for preliminary examination filed after expiration of 19th month from priority date (pct application filed from 20040101) | ||
DPE1 | Request for preliminary examination filed after expiration of 19th month from priority date (pct application filed from 20040101) | ||
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 08802128 Country of ref document: EP Kind code of ref document: A1 |