Patents Assigned to Sybase
  • Patent number: 6321234
    Abstract: A SQL database server system having an enhanced logging system is described. The logging system implements a “private log cache” (PLC) for reducing the contention on the system's “log” resource (which is protected by a log semaphore). An area of memory private to a user's task is set aside as a PLC—a cache where log records are built and stored before being posted to the log. Each PLC may hold multiple log records for a single transaction before they are flushed to the log (page chain) through the log semaphore. When a transaction commits or the memory fills with log records, the PLC associated with the transaction is flushed to the log. Because the log records for a complete transaction are immediately transferred through the log semaphore, contention on the log semaphore decreases. Contention alleviated by the PLC dramatically increases transaction throughput of the database server system.
    Type: Grant
    Filed: November 8, 1996
    Date of Patent: November 20, 2001
    Assignee: Sybase, Inc.
    Inventor: Daniel Debrunner
  • Patent number: 6266666
    Abstract: A Component Transaction Server (CTS) is described, which provides a framework for deploying the middle-tier logic of distributed component-based applications. The CTS simplifies the creation and administration of Internet applications that service thousands of simultaneous clients. The CTS components, which execute on the middle-tier between end-user client applications and remote databases, provide efficient management of client sessions, security, threads, third-tier database connections, and transaction flow, without requiring specialized knowledge on the part of the component developer. The system's scalability and platform independence allows one to develop application on inexpensive uniprocessor machines, then deploy the application on an enterprise-grade multiprocessor server. In its Result Set module, the CTS provides tabular result sets, thus making the environment very desirable for business applications. In most component-based systems, a component interface returns an object.
    Type: Grant
    Filed: September 8, 1998
    Date of Patent: July 24, 2001
    Assignee: SYBASE, Inc.
    Inventors: Evan Ireland, David W. Van Couvering
  • Patent number: 6233726
    Abstract: A visual development environment is described which provides drag-and-drop code editing methodology, using Reference Card and Parameter Wizard methodologies. A Reference Card provides quick information on the most important classes and member functions, within one's code. During a session, the user may use the Reference Card to select an action that the user wants to perform. The user can search through a hierarchy of actions or perform a text search to locate the desired action, then open the Parameter Wizard to create the code (e.g., C++ code) required to perform that action. The Reference Card also provides help on all the items listed. The Parameter Wizard, which operates in conjunction with the Reference Card, guides the user through the construction of function calls. This is particularly useful for complicated functions or for functions with which the user is unfamiliar. The Parameter Wizard helps the user construct a function call by showing what argument values are required.
    Type: Grant
    Filed: May 7, 1997
    Date of Patent: May 15, 2001
    Assignee: Sybase, Inc.
    Inventors: Ivan Thomas Bowman, Geno Coschi, Robert Veitch
  • Patent number: 6112024
    Abstract: An "Object Cycle" versioning system having an Object Cycle Server is described. The server communicates over a wire or a network for providing versioning services to multiple clients. During a user session, a user invokes operation of the system from within the development environment of the particular client being used. From the perspective of the Object Cycle Server, each client is simply "a client" (without regard to proprietary nature) which desires to store "an object." The Object Cycle Server, in turn, maps the object into a meta model which serves as a container for facilitating version control. With the model, therefore, operations supported by the system for versioning will execute correctly even if the objects are stored in a format other than a relational database, such as an object-oriented database, a file server, or other storage system. The model separates out the name of an object from where the object itself is actually stored.
    Type: Grant
    Filed: October 2, 1996
    Date of Patent: August 29, 2000
    Assignee: Sybase, Inc.
    Inventors: Kenneth Almond, Robert Wait, Atul Thombre, Richung Shaw
  • Patent number: 6061763
    Abstract: Computer systems and computer implemented methods are provided for managing memory in a database management system. The computer memory is partitioned into a plurality of buffer caches, each of which is separately addressable. One buffer cache is set aside as a default buffer cache, while the other buffer caches are reserved for specific data objects meeting certain predefined criteria. Those objects meeting the predefined criteria are stored in reserved buffer caches where they are likely to remain for a relatively long period of time (in comparison to data objects stored in the default buffer caches). A buffer cache may have a plurality of memory pools, each of which contains multiple storage blocks. The storage blocks in a given memory pool are identically sized, while the storage blocks in one memory pool are sized differently from the storage blocks in another memory pool.
    Type: Grant
    Filed: September 19, 1997
    Date of Patent: May 9, 2000
    Assignee: Sybase, Inc.
    Inventors: David S. Rubin, Robert E. Mihalyi, David A. Marshall
  • Patent number: 6014674
    Abstract: A relational database system providing improved data structures and methods which operate for translating log records is described. A table of translation functions or methods (pointers) is provided, one per "logop" (i.e., log operation) record type. The logop, which is a single byte value, can be used as an index into the table. During times when a log incompatibility state exists in a database, a Log Compatibility module is invoked for performing appropriate translations. In the client's stack space, hidden from client code, a buffer is provided in which a reformatted log record can be stored. An appropriate translate method installed for the current logop is called; it procures a pointer to that buffer, and reformats the log record into that space. The system returns to the client a pointer to a reformatted log record in its own stack space, with the client largely unaware of the issue.
    Type: Grant
    Filed: November 13, 1997
    Date of Patent: January 11, 2000
    Assignee: Sybase, Inc.
    Inventor: Scott E. McCargar
  • Patent number: 6012054
    Abstract: Database system and methods are described for improving execution speed of database queries (e.g., for decision support) by provides methods employing spline histograms for improving the determination of selectivity estimates. The general approach improves histogram-based cost estimates as follows. The constant associated with a predicate (e.g., in r.a>5, the constant is "5") is used to do a binary search in an array of histogram boundary values, for determining a particular histogram cell. Once a cell has been found, the system employs interpolation to find out how much of the cell has been selected. Once this interpolation value is found, it is used with a cell weighting and a spline value or weighting to estimate the selectivity of the predicate value, which takes into account how data values are distributed within the cell. As a result of increased accuracy of estimates, the system can formulate better query plans and, thus, provides better performance.
    Type: Grant
    Filed: October 23, 1997
    Date of Patent: January 4, 2000
    Assignee: Sybase, Inc.
    Inventor: Edwin Anthony Seputis
  • Patent number: 6006230
    Abstract: A database client/server development system providing support for remote sessions with user-created application objects is described. When a user desires to create a "remoteable" object from a user object, the user assigns a proxy name or alias, thereby providing a mechanism to differentiate the real (local) version of the object from a remote version of that object. When the user creates the proxy, the system generates all of the interface definitions for the object (i.e., to access its internal functionality) which are capable of being proxied (i.e., "proxiable"). A given object can reside locally, remotely, or both; the proxy mechanism allows the application to resolve at runtime which version of the object to invoke. When the user's final application is deployed, the proxy object is deployed at the client machine for use at the client for accessing the real version at the server. If desired, an application can be deployed with a real copy of the object, in addition to the proxy.
    Type: Grant
    Filed: January 29, 1997
    Date of Patent: December 21, 1999
    Assignee: Sybase, Inc.
    Inventors: Patrick B. Ludwig, Scott P. Marlow
  • Patent number: 5953524
    Abstract: A multimedia application development system including an authoring environment and a runtime module for executing applications developed in the authoring environment is described. The system allows creation of customized objects (e.g., custom controls), by creating a user-defined class or "UDC." Typically, a UDC is created from one or more existing classes, inheriting, at least in part, behavior and functionality of those existing classes. The system provides methods where actual binding of properties and methods to an object instance of a class is deferred until runtime. With specific regard to UDC-created objects, the behaviors of parent classes are not bound to object instances at compile time. Instead, these behaviors are "late bound" by fetching them from the parent classes at runtime, on an "as needed" basis. Further, "which" particular parent classes are actually employed for this purpose at runtime can be altered, thereby providing further flexibility to the system.
    Type: Grant
    Filed: November 22, 1996
    Date of Patent: September 14, 1999
    Assignee: Sybase, Inc.
    Inventors: Peihuan Meng, Steven M. Barrington
  • Patent number: 5950188
    Abstract: A Client/Server Database system is described which includes a Database Server providing methods for executing system-created internal command statements (e.g., SQL statements), such as those which ordinarily are submitted to the server by various Clients. The Database Server is modified so that it can be its own "user," thus removing the fundamental schism which had existed in prior systems. The system is allowed to issue SQL commands to itself and, thus, can do anything that either the system or the user can do. The methodology is particularly useful for carrying out upgrades. The system can now set flags that are not accessible to users. Unlike a standalone "utility" approach, however, authentication is assured. Here, the system is assured that a known user--itself--has issued the command. As a result, it is no longer necessary to expose "dangerous" system functions to users.
    Type: Grant
    Filed: November 19, 1996
    Date of Patent: September 7, 1999
    Assignee: Sybase, Inc.
    Inventor: Elton P. Wildermuth
  • Patent number: 5937401
    Abstract: A Client/Server Database system is described which includes a Database Server providing methods eliminating duplicates from an ordered tuple stream (e.g., resulting from a query involving a database "join"), without the need for performing an expensive sort operation. Specifically, the system provides a "filter" which eliminates duplicates without having to perform a sort. The filter, which is implemented as an optimization at the level of the query processor, comprises two basic pieces. The first piece, INIT.sub.-- FILTER, simply serves to initialize the filter--that is, the piece sets a flag that forces the filter to pass the first tuple encountered and to construct a first key from it. The second piece, FILTER, serves as the actual filter, when the system scans the tuple stream. If the current tuple has the same key as the preceding tuple, then the current tuple is thrown away. Otherwise, the current tuple is passed and a new key is constructed from it. The positions of both INIT.sub.
    Type: Grant
    Filed: November 27, 1996
    Date of Patent: August 10, 1999
    Assignee: Sybase, Inc.
    Inventor: Richard Hillegas
  • Patent number: 5937415
    Abstract: A Client/Server Database System with improved methods for performing database queries, particularly DSS-type queries, is described. The system includes one or more Clients (e.g., Terminals or PCs) connected via a Network to a Server. In general operation, Clients store data in and retrieve data from one or more database tables resident on the Server by submitting SQL commands, some of which specify "queries"--criteria for selecting particular records of a table. The system implements a "Data Pipeline" feature for programming replication of data from one database to another in client applications. Specifically, a pipeline object and SQL SELECT statement are built using a Pipeline Painter. The Data Pipeline lets a user (developer) easily move data from a high-end database server (e.g., Sybase) to a local database (Watcom SQL), all without the user having to issue SQL commands. The pipeline object facilitates moving data from one database management system to another, or between databases of the same type.
    Type: Grant
    Filed: December 11, 1996
    Date of Patent: August 10, 1999
    Assignee: Sybase, Inc.
    Inventors: Kim A. Sheffield, Alan L. Preston
  • Patent number: 5925100
    Abstract: A client/server system is described incorporating methods for managing object availability through semantic object "load sets." By associating a particular "load set" with each object which might be requested by a client, improved object fetching and cache management is provided. Methods are described for managing object fetching and discarding on a per object basis, not on a per page basis. Each "semantic object" is packaged in a "storable," which incorporates dependency lists indicating the context in which the object is to be used (i.e., with which dependent objects). Additionally, a program developer can specify that the set of behaviors is defined at runtime, using "prefetch" primitives provided by the system. This allows an executing application to prefetch objects based on the then-existing dynamics of the system. With this approach, object availability in a distributed object environment (e.g., Internet) is improved.
    Type: Grant
    Filed: March 21, 1996
    Date of Patent: July 20, 1999
    Assignee: Sybase, Inc.
    Inventors: Raymond G. Drewry, David George, Dirk Epperson
  • Patent number: 5924091
    Abstract: System and methods are described for improved sorting of information records. The system provides radix sorting on native data types--that is, without the resource-expensive approach of converting data types into character representations. A correct interpretation of a group of bits under examination is provided by the system at the point of examination by a radixsort engine. "Sort plan" information is provided to the radixsort engine instructing it how a particular set of bits should be interpreted for purposes of comparison. The knowledge includes a "comparison type" for a set of bits under exam. This is employed by the engine to determine an appropriate "weighting" of each group of bits--how each group should be treated at the point of comparison. The engine itself operates generically: it simply operates on the set of bits as specified by the sort plan entries, regardless of the particular data types which comprise the bits or the one or more keys from which the bits are derived.
    Type: Grant
    Filed: August 28, 1996
    Date of Patent: July 13, 1999
    Assignee: Sybase, Inc.
    Inventor: Neil A. Burkhard
  • Patent number: 5918225
    Abstract: A Client/Server Database System with improved methods for performing database queries, particularly DSS-type queries, is described. The system includes one or more Clients (e.g., Terminals or PCs) connected via a Network to a Server. In general operation, Clients store data in and retrieve data from one or more database tables resident on the Server by submitting SQL commands, some of which specify "queries"--criteria for selecting particular records of a table. The system implements methods for storing data vertically (i.e., by column), instead of horizontally (i.e., by row) as is traditionally done. Each column comprises a plurality of "cells" (i.e., column value for a record), which are arranged on a data page in a contiguous fashion. The system builds the value lookup table for tracking unique values in the cells. As additional unique values are inserted into the column of the user's table (i.e.
    Type: Grant
    Filed: March 20, 1997
    Date of Patent: June 29, 1999
    Assignee: Sybase, Inc.
    Inventors: Peter W. White, Clark D. French, Yong Min Chen, David Yach
  • Patent number: 5900877
    Abstract: A method and apparatus for providing multi-layered graphical user interface controls is described. The user interface controls are comprised of several graphic control layers, each having a transparent region and an opaque region. User input actions over a transparent region is effective to tunnel the user input action to the next graphic control layer until the user input action is determined to occur over an opaque region of a subsequent graphic control layer. In one embodiment, the present invention includes push button and radio button controls. In other embodiments, the present invention includes check boxes, sliders and lists. In a preferred embodiment, the present invention includes backout behavior in which a selection action over an opaque region followed by motion into a transparent region is effective to cause the appearance of the graphic control layer to change from an activated appearance to an deactivated appearance without tunneling the input action to the next graphic control layer.
    Type: Grant
    Filed: May 15, 1995
    Date of Patent: May 4, 1999
    Assignee: Sybase, Inc.
    Inventors: Scott D. Weiss, David P. Davis
  • Patent number: 5852821
    Abstract: A server performing an indexing method of data management to create and maintain indexes more efficiently than existing indexing approaches is described. The server is disposed between an application program and a DBMS and is coupled to a data base located within the DBMS. The data base has an ordered set of data values stored in memory. Each data value has a bit pattern and an identifier associated therewith. The server creates a plurality of bit vectors such that the number of bit vectors created equals the longest length bit pattern for the values. The server accesses one of the values stored in the data base. Each bit of the bit pattern for the value is then assigned by the server to a unique position in successive bit vectors. The bits are assigned to identical unique positions in each of the successive bit vectors. The server repeats the above-described accessing and assigning steps for each remaining value of the set to form an index of bit vectors for the values.
    Type: Grant
    Filed: June 25, 1997
    Date of Patent: December 22, 1998
    Assignee: Sybase, Inc.
    Inventors: Yong Min Chen, Steven A. Kirk, Peter W. White, Clark D. French
  • Patent number: 5842196
    Abstract: Database system and methods are described for updating records, such as are commonly used in a relational database environment. Updates are carried out in a manner which allows a substantial portion of the work to be performed in direct mode (when possible), thereby avoiding the inefficiency of re-reading records. In this fashion, a scenario which requires deferred updating can, in accordance with the present invention, be treated mostly as a direct update, with minimal deferred updating. Given a query involving an "unsafe" unique index (i.e., query includes update to key field), for instance, the present invention provides a method whereby each data row is updated in direct mode. In conjunction with this, the corresponding index row is deleted in direct mode. The system will not insert an index row at this point, however. Instead, updating of the index is deferred. The index is inserted later during the deferred or default mode.
    Type: Grant
    Filed: April 3, 1996
    Date of Patent: November 24, 1998
    Assignee: Sybase, Inc.
    Inventors: Sunil Agarwal, Vasudha Krishnaswamy
  • Patent number: 5838980
    Abstract: Compilation and virtual machine arrangement and process for translating source code including pre-runtime executable instruction into compiled code having enhanced runtime effectiveness. The source code is formatted in accordance with a user determined and pre-runtime modifiable language definition. The source code is compiled by a generalized compiler and includes executable language specific structure constructs or instructions which pass through the generalized compiler in unexecuted form. The instructions are then executed in a virtual machine which produces compiled code of reduced size, which renders runtime execution of the compiled code of increased effectiveness.
    Type: Grant
    Filed: June 25, 1997
    Date of Patent: November 17, 1998
    Assignee: Sybase, Inc.
    Inventors: Juan Guillen, James M. Leask
  • Patent number: 5832508
    Abstract: A SQL database server system having an enhanced logging system is described. The logging system implements a "private log cache" (PLC) for reducing the contention on the system's "log" resource (which is protected by a log semaphore). An area of memory private to a user's task is set aside as a PLC--a cache where log records are built and stored before being posted to the log. Each PLC may hold multiple log records for a single transaction before they are flushed to the log (page chain) through the log semaphore. When a transaction commits or the memory fills with log records, the PLC associated with the transaction is flushed to the log. Also described is improved log deallocation methodology provided by the system which alleviates the needs to read each of the log pages to be deallocated, as was conventionally required. The operation to do the deallocation occurs at the allocation page, not at the individual pages (which are to be deallocated).
    Type: Grant
    Filed: November 14, 1996
    Date of Patent: November 3, 1998
    Assignee: Sybase, Inc.
    Inventors: Andrew P. Sherman, Scott E. McCargar