摘要:
A system of the present invention includes a relational database management system (RDBMS). Methods are described for maintaining integrity between "design documents," which may be creating under different operating systems, and one or more information tables of the system. The system provides each field of a table with a unique ID ("field ID") for tracking the field regardless of restructuring changes which may be made to the table by various clients. Corresponding field IDs are stored with the fields of design documents, thereby permitting the system to maintain a link between a design document and its table. Upon a restructure of a table, the dependent design documents may be appropriately updated by their respective clients. Methods are also described for improved storage of free-form or "memo" data. In a preferred embodiment, memo data are stored in a separate file comprised of variable-length storage blocks. Methods are described for allocating storage space in the blocks and sub-allocating storage space within a block. For increased efficiency, the system maintains a sorted "free list" of free storage blocks.
摘要:
A database system providing high performance database versioning is described. In a database system employing a transaction log, a method for restoring databases to a consistent version including creating a cache view of a shared cache and performing undo or redo operations on the cache view only when a log sequence number falls within a certain range.
摘要:
A database system providing high performance database versioning is described. In one embodiment, for example, in a database system employing a transaction log, an improved method of the present invention is described for restoring databases to a consistent version, the method comprises steps of: providing a shared cache storing database blocks for use by multiple databases; for a read-only transaction of a given database, creating a cache view of the shared cache using the given database's transaction log, the cache view comprising particular database blocks of the shared cache that record a view of a particular version of the database at a given point in time; creating a shadow cache for storing any database blocks that overflow the cache view; and in conjunction with the cache view and the shadow cache, preserving a logical undo operation for the read-only transaction of the given database, so as to allow the given database to be restored to a transactionally consistent version upon starting the read-only transaction.
摘要:
A database system providing high performance database versioning is described. In a database system employing a transaction log, a method for restoring databases to a consistent version comprises steps of: providing a shared cache storing database blocks for use by multiple databases; for a read-only transaction of a given database, creating a cache view of the shared cache using the given database's transaction log, the cache view comprising particular database blocks of the shared cache that record a view of a particular version of the database at a given point in time; creating a shadow cache for storing any database blocks that overflow the cache view; and in conjunction with the cache view and the shadow cache, preserving a logical undo operation for the read-only transaction of the given database, so as to allow the given database to be restored to a transactionally consistent version.
摘要:
A multi-user computer system having methods which provide improved file management by reading an additional amount in a single I/O (Input/Output) operation during file processing is described. A method for storing and retrieving a plurality of information files includes storing the plurality of information files as a single disk file, where the disk file includes at least one storage block of a uniform size for each of the information files. The information files themselves may be of a variable file size. Within the single disk file, the method stores a directory of entries about the information files, each entry describing a location for one of the information files. The method provides steps for retrieving a desired information file by locating a storage block having the desired information file. The steps include reading from the storage block an amount of data equal to the file size of the information file plus an additional amount, in a single I/O operation. In this manner, the method improves system performance by reducing the total number of I/O operations required for file processing.
摘要:
A development system having a monitor/profiler tool for monitoring functions in natively compiled software programs is described. According to the present invention, the monitor/profiler tool is constructed to work directly on a natively compiled software application which only have debugging info. Unlike prior approaches, the monitor/profiler tool does not require a special compile or link phase for the application under exam. The tool can monitor any function in software application which has debug info, thus relieving program developers from the burden of maintaining two ways of building an application. The developer can simply use the same executable for both development and function analysis.
摘要:
A Java-based rapid application development (RAD) environment for creating applications providing named-based programmatic access to information from columns in databases is described. For increasing the efficiency by which named-based references to database columns are processed by application programs, the system provides methodology for rapid lookups of column names, using a reference cache storing 32-bit references to immutable strings (e.g., Java strings). The reference cache is preferably constructed as a least-recently allocated cache, thereby allowing allocation to occur in a round-robin fashion, with the oldest item allocated being the first item bumped from cache when the cache overflows. Each cache entry stores a reference (e.g., four-byte pointer or handle to a string) and an ordinal entry (i.e. the corresponding database ordinal). As a reference to a particular database column occurs during execution of a program, the reference cache fills with a reference to that column name as well as the corresponding column ordinal. Accordingly, program execution proceeds with comparison of existing items in the cache, using a sequence of rapid, in-line comparisons involving simple data types (e.g., 32-bit references for the column name string). This approach minimizes the need to perform hash lookups or string comparison operations.
摘要:
A computer system having concurrently shared objects or resources is described. An exemplary embodiment includes a multi-user database management system having information tables and related objects stored in shared directories on a file server. A plurality of lock types, including directory lock, full lock, write lock, prevent full lock, and prevent write lock, are provided for controlling concurrent access. Methods are described for managing locks by creating a special lock file for each shared directory that is accessed. The lock file stores at least one logical lock file having locking or concurrency information specific to a family of related members. The logical lock file itself includes a plurality of entries for specifying concurrency information of associated family members. A shared object or resource is accessed according to the information retrieved from the corresponding logical lock file.
摘要:
A system of the present invention includes a relational database management system (RDBMS). Methods are described for maintaining integrity between "design documents," which may be creating under different operating systems, and one or more information tables of the system. The system provides each field of a table with a unique ID ("field ID") for tracking the field regardless of restructuring changes which may be made to the table by various clients. Corresponding field IDs are stored with the fields of design documents, thereby permitting the system to maintain a link between a design document and its table. Upon a restructure of a table, the dependent design documents may be appropriately updated by their respective clients. Methods are also described for improved storage of free-form or "memo" data. In a preferred embodiment, memo data are stored in a separate file comprised of variable-length storage blocks. Methods are described for allocating storage space in the blocks and sub-allocating storage space within a block. For increased efficiency, the system maintains a sorted "free list" of free storage blocks.