Patents by Inventor John Mark Morris

John Mark Morris has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 11023437
    Abstract: Data can be stored based on one or more indications and one or more other storage criteria. The indications can effectively indicate or identify a storage level for storing data in a multi-storage system. The indications, however, need not be the only basis for storing the data object in a multi-storage system as one or more other storage criteria can also be considered. As a result, the indication can be used to effectively influence data storage but other storage criteria can be used as well to prevent adverse effects caused by undue influence and to ensure the overall efficiency of the system. Also, the one or more other storage criteria can be evaluated or revaluated on a continual basis.
    Type: Grant
    Filed: April 28, 2017
    Date of Patent: June 1, 2021
    Assignee: Teradata US, Inc.
    Inventor: John Mark Morris
  • Patent number: 10891290
    Abstract: Search spaces for obtaining query execution plans for a query are identified. The search spaces are subdivided into sub-search spaces. Searches are initiated within the sub search spaces and plan costs for competing query execution plans are noted along with search costs associated with continuing to search the sub-search spaces. A decision is made based on the plan costs and search costs for utilizing search resources as to when to terminate the searching and to select the then-existing lowest cost query execution plan as an optimal query execution plan for executing the query.
    Type: Grant
    Filed: December 22, 2017
    Date of Patent: January 12, 2021
    Assignee: Teradata US, Inc.
    Inventors: John Mark Morris, Bhashyam Ramesh, Donald Raymond Pederson, Kuorong Chiang
  • Patent number: 10366057
    Abstract: Data or one or more operations can be provided, based on one or more characteristics associated with the data and/or operations, to a designated computing group or pool of computing resources designated for handling the data and/or operations with the particular data characteristic(s). The designated computing group can, for example, be one of multiple computing groups in the same system or device. As such, all of the computing groups can still function together in the same system or device, for example, in parallel. However, each one of the multiple computing groups can, for example, be defined or predefined to include one or more computing resources that are more suitable for storing and/or processing data with one or more data characteristics or handle operations with one or more determined characteristics.
    Type: Grant
    Filed: May 24, 2013
    Date of Patent: July 30, 2019
    Assignee: Teradata US, Inc.
    Inventors: John Mark Morris, Donald Raymond Pederson, Douglas P. Brown
  • Publication number: 20190197163
    Abstract: Search spaces for obtaining query execution plans for a query are identified. The search spaces are subdivided into sub-search spaces. Searches are initiated within the sub search spaces and plan costs for competing query execution plans are noted along with search costs associated with continuing to search the sub-search spaces. A decision is made based on the plan costs and search costs for utilizing search resources as to when to terminate the searching and to select the then-existing lowest cost query execution plan as an optimal query execution plan for executing the query.
    Type: Application
    Filed: December 22, 2017
    Publication date: June 27, 2019
    Inventors: John Mark Morris, Bhashyam Ramesh, Donald Raymond Pederson, Kuorong Chiang
  • Publication number: 20190188298
    Abstract: A function reference for a function is identified in a query. A plurality of processing environments that can provide the function is identified. Function costs for the function to process in the processing environments are obtained. Input data transfer costs are acquired for providing input data identified in the query to each of the functions. A specific one of the functions from a specific processing environment is selected based on the function costs and the input data transfer costs. A query execution plan for executing the query with the specific function is generated. The query execution plan is provided to a database engine for execution.
    Type: Application
    Filed: December 20, 2017
    Publication date: June 20, 2019
    Inventors: John Mark Morris, Bhashyam Ramesh
  • Patent number: 10089208
    Abstract: A data store system may include a storage array comprising a plurality of storage devices configured to store data. The data store may further include a processor array comprising a plurality of processors. The processor array may be in communication with the storage array. The processor array may receive workloads to be performed on the data. The processor may further process the workloads at a processing resource usage level of processing resources that is less than maximum available processing resources. The processing resource usage level may be associated with completion of at least a predetermined number of received workloads in accordance with the level of performance that is less than a total number of received workloads. The processor may further process the workloads at the processing resource level in response to presence of predetermined operating conditions. A method and computer-readable medium may also be implemented.
    Type: Grant
    Filed: March 14, 2014
    Date of Patent: October 2, 2018
    Assignee: Teradata US, Inc.
    Inventors: John Mark Morris, Anita Richards, Douglas P. Brown
  • Patent number: 9766933
    Abstract: Computing capacity of a computing environment can be managed by controlling it associated processing capacity based on a target (or desired) capacity. In addition, fine-grained control over the processing capacity can be exercised. For example, a computing system can change the processing capacity (e.g., processing rate) of at least one processor operating based on a target capacity. The computing system may also be operable to change the processing capacity based on a measured processing capacity (e.g., a measured average of various processing rates of a processor taken over a period of time when a processor may have been operating at different processing rates over that period). By way of example, the processing rate of a processor can be switched between 1/8 and 2/8 of a maximum processing rate to achieve virtually any effective processing rates between them.
    Type: Grant
    Filed: December 2, 2011
    Date of Patent: September 19, 2017
    Assignee: Teradata US, Inc.
    Inventors: John Mark Morris, P. Keith Muller, Douglas P. Brown
  • Publication number: 20170228406
    Abstract: Data can be stored based on one or more indications and one or more other storage criteria. The indications can effectively indicate or identify a storage level for storing data in a multi-storage system. The indications, however, need not be the only basis for storing the data object in a multi-storage system as one or more other storage criteria can also be considered. As a result, the indication can be used to effectively influence data storage but other storage criteria can be used as well to prevent adverse effects caused by undue influence and to ensure the overall efficiency of the system. Also, the one or more other storage criteria can be evaluated or revaluated on a continual basis.
    Type: Application
    Filed: April 28, 2017
    Publication date: August 10, 2017
    Applicant: Teradata US. Inc.
    Inventor: John Mark Morris
  • Patent number: 9652482
    Abstract: Data can be stored based on one or more indications and one or more other storage criteria. The indications can effectively indicate or identify a storage level for storing data in a multi-storage system. The indications, however, need not be the only basis for storing the data object in a multi-storage system as one or more other storage criteria can also be considered. As a result, the indication can be used to effectively influence data storage but other storage criteria can be used as well to prevent adverse effects caused by undue influence and to ensure the overall efficiency of the system. Also, the one or more other storage criteria can be evaluated or reevaluated on a continual basis.
    Type: Grant
    Filed: August 16, 2013
    Date of Patent: May 16, 2017
    Assignee: Teradata US, Inc.
    Inventor: John Mark Morris
  • Patent number: 9489310
    Abstract: A system, method, and computer-readable medium that facilitate efficient use of cache memory in a massively parallel processing system are provided. A residency time of a data block to be stored in cache memory or a disk drive is estimated. A metric is calculated for the data block as a function of the residency time. The metric may further be calculated as a function of the data block size. One or more data blocks stored in cache memory are evaluated by comparing a respective metric of the one or more data blocks with the metric of the data block to be stored. A determination is then made to either store the data block on the disk drive or flush the one or more data blocks from the cache memory and store the data block in the cache memory. In this manner, the cache memory may be more efficiently utilized by storing smaller data blocks with lesser residency times by flushing larger data blocks with significant residency times from the cache memory.
    Type: Grant
    Filed: November 8, 2013
    Date of Patent: November 8, 2016
    Assignee: Teradata US, Inc.
    Inventors: Douglas Brown, John Mark Morris
  • Patent number: 9418092
    Abstract: A system includes a multi-system database management system having a plurality of database systems. An index selection subsystem combines sets of query information from respective ones of the plurality of database systems into a workload. The index selection subsystem then generates candidate indexes from the workload, and selects recommended indexes from the candidate indexes based on one or more criteria.
    Type: Grant
    Filed: May 24, 2013
    Date of Patent: August 16, 2016
    Assignee: Teradata US, Inc.
    Inventors: John Mark Morris, Douglas P. Brown
  • Publication number: 20160162547
    Abstract: One or more assignments (e.g., one or more maps) can be used for assigning data to processing units of a database system with multiple processing. In other words, assignments can be provided as a more effective solution for assigning data to the processing units of database systems that can operate with multiple processing units. Generally, an assignment can be used to assign data to the processing units for processing, virtually in any desired manner (e.g., virtually any desired function). By way of example, maps can associate data to containers (e.g., buckets) and associate the containers to processing units of database system with multiple processing units.
    Type: Application
    Filed: April 27, 2015
    Publication date: June 9, 2016
    Applicant: Teradata US, Inc.
    Inventor: John Mark Morris
  • Patent number: 9116929
    Abstract: A system and method for managing one or more database systems, wherein the database systems perform database queries to retrieve data stored by the database systems. One or more regulators are used for managing the database systems, wherein the regulators monitor workload priority influenced data temperature in order to allocate resources for the systems. The data temperature is a measure of physical accesses to logical data, and the workload priority is used to further define data temperature, in order to optimize data storage placement and data access decisions.
    Type: Grant
    Filed: March 12, 2007
    Date of Patent: August 25, 2015
    Assignee: Teradata US, Inc.
    Inventors: John Mark Morris, Anita Richards, Douglas P. Brown
  • Patent number: 8924441
    Abstract: A technique for use in performing snap imaging of a plurality of data objects and associated metadata involves placing the plurality of data objects in a consistent state. While the data objects are in a consistent state, a copy is created of the metadata associated with the plurality of data objects. The data objects are then taken out of the consistent state. The temperature value associated with one or more of the data objects is/are compared with a threshold value. A copy is created of at least some of the data objects for which the associated temperature value exceeds the threshold value.
    Type: Grant
    Filed: September 6, 2006
    Date of Patent: December 30, 2014
    Assignee: Teradata US, Inc.
    Inventor: John Mark Morris
  • Patent number: 8886614
    Abstract: A join plan creates an intermediate table from two or more database tables within a database. In doing so, at least one projected and compressible column within one of the database tables is identified, where the column contains data values to which the application of a compression data transformation results in a reduction in the size of the data values. The frequency of occurrences of at least some unique values in the compressible column is identified, and then the two or more database tables are joined. The results of the join are then stored in the intermediate table such that the compression data transformation is applied to at least some of the unique values in the compressible column for which the frequency has been identified.
    Type: Grant
    Filed: November 27, 2006
    Date of Patent: November 11, 2014
    Assignee: Teradata US, Inc.
    Inventors: John Mark Morris, Todd A Walter
  • Patent number: 8849795
    Abstract: Optimizing the execution of a query in a multi-database system includes identifying a region within a table, the table being referenced in the query. The region is stored on data-storage devices on first and second system databases in the multi-database system. A first access plan for the query is developed, the first access plan comprising accessing the version of the region stored on the first system database. A second access plan for the query is developed, the second access plan comprising accessing the version of the region stored on the second system database. A selection is made between the first access plan and the second access plan to execute the query. The query is executed using the selected access plan to produce a result.
    Type: Grant
    Filed: October 12, 2011
    Date of Patent: September 30, 2014
    Assignee: Teradata US, Inc.
    Inventors: Douglas Brown, John Mark Morris
  • Patent number: 8799267
    Abstract: There is provided a method, a system and a machine readable medium to optimize storage allocation in a database management system. The method comprises receiving a processing step at a step processing module of an access module processor from a dispatcher module. The method further comprises determining whether a fast access storage flag is set in the processing step, the fast access storage flag indicating use of an intermediate file in fast access storage to store one or more redistributed data rows of a table of a database that is distributed across one or more storage devices of the database management system; Yet further the method comprises selectively allocating a free fast access storage data block to the intermediate file from a fast access storage pool based on the determination that the fast access storage flag is set. Lastly, the method comprises writing a redistributed data row from the one or more redistributed data rows to the allocated fast access storage data block.
    Type: Grant
    Filed: July 16, 2007
    Date of Patent: August 5, 2014
    Assignee: Teradata US, Inc.
    Inventors: Gregory Howard Milby, John Mark Morris
  • Publication number: 20140188947
    Abstract: Data can be stored based on one or more indications and one or more other storage criteria. The indications can effectively indicate or identify a storage level for storing data in a multi-storage system. The indications, however, need not be the only basis for storing the data object in a multi-storage system as one or more other storage criteria can also be considered. As a result, the indication can be used to effectively influence data storage but other storage criteria can be used as well to prevent adverse effects caused by undue influence and to ensure the overall efficiency of the system. Also, the one or more other storage criteria can be evaluated or reevaluated on a continual basis.
    Type: Application
    Filed: August 16, 2013
    Publication date: July 3, 2014
    Applicant: Teradata Corporation
    Inventor: John Mark Morris
  • Publication number: 20140188884
    Abstract: Data or one or more operations can be provided, based on one or more characteristics associated with the data and/or operations, to a designated computing group or pool of computing resources designated for handling the data and/or operations with the particular data characteristic(s). The designated computing group can, for example, be one of multiple computing groups in the same system or device. As such, all of the computing groups can still function together in the same system or device, for example, in parallel. However, each one of the multiple computing groups can, for example, be defined or predefined to include one or more computing resources that are more suitable for storing and/or processing data with one or more data characteristics or handle operations with one or more determined characteristics.
    Type: Application
    Filed: May 24, 2013
    Publication date: July 3, 2014
    Applicant: Teradata Corporation
    Inventors: John Mark Morris, Donald Raymond Pederson, Douglas P. Brown
  • Publication number: 20140181406
    Abstract: A system, method, and computer-readable medium that facilitate efficient use of cache memory in a massively parallel processing system are provided. A residency time of a data block to be stored in cache memory or a disk drive is estimated. A metric is calculated for the data block as a function of the residency time. The metric may further be calculated as a function of the data block size. One or more data blocks stored in cache memory are evaluated by comparing a respective metric of the one or more data blocks with the metric of the data block to be stored. A determination is then made to either store the data block on the disk drive or flush the one or more data blocks from the cache memory and store the data block in the cache memory. In this manner, the cache memory may be more efficiently utilized by storing smaller data blocks with lesser residency times by flushing larger data blocks with significant residency times from the cache memory.
    Type: Application
    Filed: November 8, 2013
    Publication date: June 26, 2014
    Applicant: Teradata Corporation
    Inventors: Douglas Brown, John Mark Morris