Patents Represented by Attorney John A. Smart
  • Patent number: 6591269
    Abstract: A database system providing an efficient methodology for performing an online rebuild of a B+-tree index is described. From a high-level perspective, the method operates by copying the index rows to newly-allocated pages in the key order so that good space utilization and clustering are achieved. The old pages are deallocated during the process. This approach differs from the previously-published online index rebuild algorithms in two ways. First, it rebuilds multiple leaf pages and then propagates the changes to higher levels. Also, while propagating the leaf level changes to higher levels, level 1 pages (i.e., the level immediately above the leaf level) are reorganized, eliminating the need for a separate pass. The methodology provides high concurrency, does minimal amount of logging, has good performance and does not deadlock with other index operations. Performance study shows that the approach results in significant reduction in logging and CPU time.
    Type: Grant
    Filed: May 18, 2000
    Date of Patent: July 8, 2003
    Assignee: Sybase, Inc.
    Inventor: Nagavamsi Ponnekanti
  • Patent number: 6575376
    Abstract: An international postal address validation system is described. The system defines a grammar for the encoding of all required address fields (within an address) for a given country, so that the system can determine whether all address fields required for a country are present for a given international postal address. More particularly, the system stores information about: (1) Required address fields (i.e., metadata describing address fields and data that must be present in all addresses for a country), for error checking; (2) Address languages, for normalization; and (3) Address data, for validation. By providing a grammar that encodes information about the required address fields for a given country, and that takes into account the variety of different languages and character encodings that an address may appear in, the system provides international postal address validation even though certain addresses require application of country-specific requirements.
    Type: Grant
    Filed: February 16, 2001
    Date of Patent: June 10, 2003
    Assignee: Sybase, Inc.
    Inventor: Chun Pong Yu
  • Patent number: 6516310
    Abstract: A small-footprint relational database system providing a deterministic join enumeration methodology for left-deep processing trees is described. By providing a deterministic branch-and-bound join enumeration method for left-deep processing trees, the invention is able to efficiently optimize complex queries with high join degree by employing a novel approach to cost-based pruning of the search space. For each subquery, plan generation involves the following four distinct steps. First, the system adjusts predicate selectivities to account for disjuncts, Between predicates, and user estimates of selectivities. Next, the system constructs a join graph for the query that models inner and outer equijoin predicates, sargable single-variable predicates on single quantifiers, and Cartesian products. The system then enumerates join strategies and prune the search space using a branch-and-bound heuristic. Finally, the system recalls the cheapest strategy and constructs the detailed access plan for that strategy.
    Type: Grant
    Filed: December 6, 2000
    Date of Patent: February 4, 2003
    Assignee: Sybase, Inc.
    Inventor: Glenn Norman Paulley
  • Patent number: 6505055
    Abstract: A “Camel-Back” Digital Organizer (CDO) system is described that is designed to attach to a cellular phone in the same manner as an auxiliary battery, and to interface with the phone through contact points available in the phone's interface port. The CDO system is preferably implemented as an add-on component which can be easily attached and detached from a phone by a user and, once in place, can dramatically enhance the phone's functionality, converting the phone into a “smart” phone. The CDO unit includes a main housing supporting, on its back or upper surface, a set of input/navigation buttons and a display screen. The set of buttons comprise a circular pad or circular configuration of buttons, placed at the bevel end of the unit, which are designed as a directional navigation disc or “NaviDisc.” The NaviDisc provides for LEFT, RIGHT, UP, DOWN, and SELECT buttons (i.e., five buttons total).
    Type: Grant
    Filed: May 1, 1998
    Date of Patent: January 7, 2003
    Assignee: Starfish Software, Inc.
    Inventors: Philippe R. Kahn, Eric O. Bodnar
  • Patent number: 6496835
    Abstract: A rule-based methodology is described which supports automatic mapping of data fields between different data sets in a data processing environment. If a field cannot be mapped or matched based on name alone (e.g., an identical match), the methodology employs rules to determine a type for the field, based on the field's name. The determined type of the field is then used for matching. The methodology can be employed to match fields which appear dissimilar phonetically but are otherwise appropriate for matching. In the currently-preferred embodiment, rules are stated in form of: regular expression=type. Here, the regular expression member lists the text strings or substring(s) for the field. The rules are ordered in descending preference according to the likelihood that a given rule will correctly identify a field. In this mariner, the methodology allows the task of mapping fields from one data set to another to be entirely automated.
    Type: Grant
    Filed: February 6, 2001
    Date of Patent: December 17, 2002
    Assignee: Starfish Software, Inc.
    Inventors: Gwoho Liu, Eric O. Bodnar, Philippe R. Kahn
  • Patent number: 6493701
    Abstract: A database system implementing a methodology or technique that can be used to optimize processing of nested loop joins of three or more tables (n-ary NLJs for n>2) more efficiently is described. In implementation, upon encountering a failure condition (i.e., a given join condition does not hold true) from a join operator (scan child), context information (about the failure) is returned (to the n-ary nested-loop join operator) for indicating exactly which condition (i.e., join condition) failed. This information is tracked in a scan descriptor, which includes a “fail sarg” data field indicating exactly which particular search argument (“sarg”) failed. Based on this information, the system (operating through the n-ary nested-loop join operator) knows exactly which scan child to return back to (i.e., how far back to go in the join order to fetch the next row).
    Type: Grant
    Filed: July 5, 2001
    Date of Patent: December 10, 2002
    Assignee: Sybase, Inc.
    Inventor: Nagavamsi Ponnekanti
  • Patent number: 6490578
    Abstract: System and methods are described for improved indexing and processing (e.g., query processing) of date-based information. A date value may be viewed as comprising year (y), month (m), and day (d) components. A DateIndex index data structure is defined to comprise three distinct groups of bitmaps: one for years, another for months, and another for days, respectively. This index can be created on a column having a datatype of “date” (e.g., standard SQL datatype which stores date literals). A month group is defined to contain exactly 12 bitmaps (call them M[1], M[2], . . . , M[12]) to track rows meeting at a specified month range for a particular column. Each successive bitmap within the group stores a successively smaller subrange of possible month values (e.g., month 1-12, month 2-12, month 3-12, and so forth and so on). In a similar manner, bitmaps may be created for tracking day and year ranges.
    Type: Grant
    Filed: September 28, 2000
    Date of Patent: December 3, 2002
    Assignee: Sybase, Inc.
    Inventor: Neil A. Burkhard
  • Patent number: 6470360
    Abstract: A database system providing a methodology for optimized page allocation is described. During page allocation in the system, once an allocation page with free space has been located in the system's global allocation map or GAM (i.e., using routine page allocation steps), the page identifier for that allocation page is stored in a hint array, as part of that object's (i.e., table's) object descriptor or des. For a table undergoing a lot of splits (i.e., insert-intensive object), the system may store an array of allocation page “hints” (allocation page identifiers) in the des for that object (e.g., table). The array itself comprises a cache of slots (e.g., eight slots), each of which stores an allocation page identifier (“hint”) obtained from the GAM (from a GAM traversal occurring during the page allocation process) or is empty (i.e., has not been filled from the GAM and is therefore set to the initial value of null).
    Type: Grant
    Filed: December 20, 1999
    Date of Patent: October 22, 2002
    Assignee: Sybase, Inc.
    Inventor: Girish Vaitheeswaran
  • Patent number: 6470330
    Abstract: A database system with improved query execution performance is described. In order to achieve as much accuracy as possible by optimizing large block I/O related query plans, the database system implements a methodology employing two new statistical measures for use in a database server. The first statistical measure, called “Data Page Cluster Ratio” (DPCR), indicates the “packing” of data pages by measuring the “clustering” property of the data pages, i.e., how well clustered the consecutive data pages of a given relational table are in the extents. The ratio is measured for data pages accesses either via a scan of an index or via a scan of the table. The second statistical measure, called Index Page Cluster Ratio (IPCR), indicates the “packing” of index leaf pages by measuring the “clustering” property of index pages, i.e., how well clustered the consecutive index leaf pages of a given relational table's index are in the extents.
    Type: Grant
    Filed: November 2, 1999
    Date of Patent: October 22, 2002
    Assignee: Sybase, Inc.
    Inventors: Joydeep Das, Sudipto Rai Chowdhuri
  • Patent number: 6442686
    Abstract: A cryptographic-enabled messaging system providing a “Policy Management Agent” is described. The Policy Management Agent works in conjunction with a standard mail server, such as an SMTP (Simple Mail Transport Protocol) mail server, to ensure that incoming and outgoing e-mail adheres to the policies that are specified for a given site. Specifically, the Agent intercepts e-mail normally bound for the mail server and checks to make sure that it conforms with policies configured for one's site (e.g., corporate site). If the e-mail adheres to the policies for the site, it is forwarded to the mail server where it is routed to the intended recipient. If the e-mail does not adhere to the policies specified for the site, a message of one's choosing is sent to the client indicating that the e-mail was rejected. In an exemplary embodiment (e.g.
    Type: Grant
    Filed: September 21, 1998
    Date of Patent: August 27, 2002
    Assignee: Networks Associates Technology, Inc.
    Inventors: Mark James McArdle, Steven Blair Schoenfeld
  • Patent number: 6442584
    Abstract: A resource methodology is described which provides a framework for defining specific resource classes support for resource methods, and provides support for resource-independent commands, including those used in resource consolidation. A Resource Consolidation methodology of the present invention works by starting with an empty resource set, then iteratively extends the set in a minimal fashion. At the end of the iteration, the initial resource set comprises sufficient resources. An important component to this approach is a Minimal Extension method. This method provides a directed, acyclic graph methodology that takes two graphs as input and extends one (the “primary”) so as to include the other one (the “secondary”). For efficiency, resources in the secondary graph are shared with those in the primary graph wherever possible.
    Type: Grant
    Filed: May 15, 1998
    Date of Patent: August 27, 2002
    Assignee: Sybase, Inc.
    Inventors: Ratnakar Kolli, Marc Sugiyama, Garudapura S. Madhusudan, Steven Grady
  • Patent number: 6438559
    Abstract: A distributed (e.g., client/server) computing environment is described which implements protocol methodology improving the streaming of objects, such as for distributed applications. In particular, the methodology facilitates streaming of objects (e.g., Java objects) stored and managed remotely (e.g., objects stored and managed in relational databases) to clients in a highly efficient manner. The methodology may be implemented by extending an existing streaming methodology or protocol to include a class identifier approach for supporting object serialization. A Class ID (ACI) serialization is provided as a protocol for converting between a java object and a binary representation. ACI is intended for an environment in which all classes ever involved in any serialization are known by the environment (as is often the case). Each class known to the environment is represented by a compact numeric identifier, and it is this identifier alone that is used to represent the class description in the serialization.
    Type: Grant
    Filed: June 7, 1999
    Date of Patent: August 20, 2002
    Assignee: Sybase, Inc.
    Inventors: Shannon Ralph Normand White, James D. Graham
  • Patent number: 6417874
    Abstract: A portable computing device or “information appliance” having terse user input (e.g., limit set of keys) is provided with a user interface for navigating user data. Application programs, which are provided for user operation of the device, are implemented as separate modules controlled by a module selector. The module selector serves as a user interface or shell representing the top-level or “home” display presented to a user. The module selector presents the user with selection icons for navigating to different applications or modules of functionality. The user interface implements a “single-click” style of button operation, so that users can associate each button with a particular task for a given program context. In addition to the single-click style, “click consistency” is imposed for each button.
    Type: Grant
    Filed: December 22, 2000
    Date of Patent: July 9, 2002
    Assignee: Starfish Software, Inc.
    Inventor: Eric O. Bodnar
  • Patent number: 6363387
    Abstract: A Client/Server Database System with improved methods for enhancing concurrency using a “row update” bit and deferred locking is described. Data rows in the system are designed to include ROW_DELETE and ROW_UPDATE status bits. When a transaction updates a row, it sets the ROW_UPDATE bit. When a transaction inserts a row, neither the ROW_UPDATE nor the ROW_DELETE status bits are set. When a transaction deletes a row, it sets the ROW_DELETE bit but the contents of the data row are left intact. Methods are described for processing database transactions (e.g., in response to SQL queries) using these status bits or flags, together with deferred locking techniques, in a manner that reduces locking overhead and increase concurrency. The approach provides a particular performance advantage over systems that employ row-level locking.
    Type: Grant
    Filed: July 31, 1999
    Date of Patent: March 26, 2002
    Assignee: Sybase, Inc.
    Inventors: Nagavamsi Ponnekanti, Jameison B. Martin
  • Patent number: 6356946
    Abstract: A distributed (e.g., client/server) computing environment is described which implements protocol methodology simplifying the use of objects in distributed applications. In particular, the methodology facilitates streaming to clients executable objects (e.g., Java objects) stored and managed remotely (e.g., objects stored and managed in relational databases), so that the objects may be executed or otherwise manipulated locally at the clients. The methodology is implemented by extending an existing streaming protocol to support a “chunked” datatype; within a data stream, the system can have individual data items which are themselves streams of indeterminate length. This streaming data type is an undifferentiated data type or simply a “BLOB” (i.e., binary large object). Using the BLOB extension, the system provides a set of BLOB subtypes which take advantage of existing object streaming mechanism (e.g.
    Type: Grant
    Filed: January 19, 1999
    Date of Patent: March 12, 2002
    Assignee: Sybase Inc.
    Inventors: David Lyndon Clegg, Adarsh Ratan Pannu
  • Patent number: 6353826
    Abstract: Database system and methods are described for improving execution speed of database queries (e.g., for decision support). A multi-attribute selectivity optimization methodology is described that provides a more accurate estimate of the cost of a query execution plan, so that the predicted performance of the final execution plan will be more accurate. The densities by how much the selectivity deviates from a single attribute density and by how much the multi-attribute densities differ from one another are used as a basis for multi-selectivity estimates. The multi-attribute densities are used to scale estimates between extremes of total independence and total dependence. By taking into account how well attributes are correlated, the approach is able to provide more accurate multi-selectivity estimates. As a result, the database system can formulate better query plans and, thus, provide better performance.
    Type: Grant
    Filed: August 27, 1999
    Date of Patent: March 5, 2002
    Assignee: Sybase, Inc.
    Inventor: Edwin Anthony Seputis
  • Patent number: 6343362
    Abstract: A development system providing a Custom Attack Simulation Language (CASL) for testing networks is described. In particular, the development system implements methodology for facilitating development of network attack simulations. The system includes an editor or authoring system for creating a source code description or Scripts (i.e., CASL-syntax Script) of the simulation program under development. The Scripts, in turn, are “compiled” by a CASL compiler into a compiled CASL program, that may then be used to simulate attacks against a network. CASL makes it easier for users, particularly network and system administrators, to experiment with and learn about the way their networks operate. Since networks work by exchanging packets of information, CASL focuses on allowing users to read and write packets directly to and from the network using a high level programming language.
    Type: Grant
    Filed: January 21, 1999
    Date of Patent: January 29, 2002
    Assignee: Networks Associates, Inc.
    Inventors: Thomas Henry Ptacek, Timothy Nakula Newsham, Oliver Friedrichs
  • Patent number: 6341281
    Abstract: Database system and methods are described for improving execution speed of database queries (e.g., for decision support) by optimizing execution of nested queries or “subqueries,” which are commonly used in client/server database environments. In particular, the basic approach employed is to recognize the part of the subquery that is not related to the outer references and cache the result of that part after its first execution. Later, the result can be reused and combined with the result of the rest of the subquery that is changing for each iteration. Methods are employed to recognize the invariant part of a data flow tree, and to restructure the evaluation plan to reuse the stored intermediate result. An efficient method is used to teach an existing join optimizer to understand the invariant feature and thus allow it to be able to generate better join plans in the new context.
    Type: Grant
    Filed: April 2, 1999
    Date of Patent: January 22, 2002
    Assignee: Sybase, Inc.
    Inventors: Roger Dermot MacNicol, Steven A. Kirk, Randall George Bello, Jun Rao, Katherine Tsouya Yang
  • Patent number: 6341288
    Abstract: An “UltraLite” database development environment capable of creating a database application that is more portable across multiple devices, including ones having limited computational power, is described. The applications themselves can incorporate SQL statements and SQL cursors for use against data sources, including UltraLite databases. The UltraLite development environment generates code to process the SQL in the application. The application code and generated code are compiled and then linked with the UltraLite runtime library. The result is an UltraLite program that includes application logic and database logic together in a single program. The environment includes, at its core, an “Analyzer” which receives SQL from the pre-compiler and submits the SQL to an available database server (e.g., Sybase Adaptive Server Anywhere) for parsing and optimization. The Analyzer uses the database server's (i.e.
    Type: Grant
    Filed: July 29, 1998
    Date of Patent: January 22, 2002
    Assignee: Sybase, Inc.
    Inventors: David P. Yach, James D. Graham, Anthony F. Scian
  • Patent number: D457543
    Type: Grant
    Filed: May 10, 2001
    Date of Patent: May 21, 2002
    Assignee: LightSurf Technologies, Inc.
    Inventors: Robin Goran Petravic, Kurt Dammermann