会员体验
专利管家(专利管理)
工作空间(专利管理)
风险监控(情报监控)
数据分析(专利分析)
侵权分析(诉讼无效)
联系我们
交流群
官方交流:
QQ群: 891211   
微信请扫码    >>>
现在联系顾问~
热词
    • 3. 发明授权
    • Method and apparatus for implementing parallel operations in a database
management system
    • 在数据库管理系统中实现并行操作的方法和装置
    • US5857180A
    • 1999-01-05
    • US898080
    • 1997-07-21
    • Gary HallmarkDaniel Leary
    • Gary HallmarkDaniel Leary
    • G06F9/46G06F17/30
    • G06F9/466Y10S707/99932Y10S707/99933Y10S707/99934Y10S707/99935
    • The present invention implements parallel processing in a Database Management System. The present invention provides the ability to locate transaction and recovery information at one location and eliminates the need for read locks and two-phased commits. The present invention provides the ability to dynamically partition row sources for parallel processing. Parallelism is based on the ability to parallelize a row source, the partitioning requirements of consecutive row sources and the entire row source tree, and any specification in the SQL statement. A Query Coordinator assumes control of the processing of a entire query and can execute serial row sources. Additional threads of control, Query Server, execute a parallel operators. Parallel operators are called data flow operators (DFOs). A DFO is represented as structured query language (SQL) statements and can be executed concurrently by multiple processes, or query slaves. A central scheduling mechanism, a data flow scheduler, controls a parallelized portion of an execution plan, and can become invisible for serial execution. Table queues are used to partition and transport rows between sets of processes. Node linkages provide the ability to divide the plan into independent lists that can each be executed by a set of query slaves. The present invention maintains a bit vector that is used by a subsequent producer to determine whether any rows need to be produced to its consumers. The present uses states and a count of the slaves that have reached these states to perform its scheduling tasks.
    • 本发明在数据库管理系统中实现并行处理。 本发明提供了在一个位置定位事务和恢复信息的能力,并且消除了对读锁定和两阶段提交的需要。 本发明提供了动态分割用于并行处理的行源的能力。 并行性基于并行化源的能力,连续行源和整行行树的分区要求以及SQL语句中的任何规范。 查询协调器假定对整个查询的处理进行控制,并且可以执行串行源。 控制的附加线程,Query Server,执行一个并行运算符。 并行运算符称为数据流操作符(DFO)。 DFO表示为结构化查询语言(SQL)语句,可以由多个进程或查询从属并发执行。 中央调度机制,数据流调度器,控制执行计划的并行化部分,并且可以变得不可见用于串行执行。 表队列用于在进程集之间分区和传输行。 节点链接提供将计划划分为独立列表的能力,每个列表可以由一组查询从属单元执行。 本发明保持由后续生产者使用的位向量,以确定是否需要向其消费者生产任何行。 目前使用状态和已经到达这些状态的从站的计数来执行其调度任务。
    • 4. 再颁专利
    • Method and apparatus for implementing parallel operations in a database management system
    • 在数据库管理系统中实现并行操作的方法和装置
    • USRE42664E1
    • 2011-08-30
    • US09757399
    • 2001-01-05
    • Gary HallmarkDaniel Leary
    • Gary HallmarkDaniel Leary
    • G06F17/00G06F15/16
    • G06F9/466Y10S707/99932Y10S707/99933Y10S707/99934Y10S707/99935
    • The present invention implements parallel processing in a Database Management System. The present invention provides the ability to locate transaction and recovery information at one location and eliminates the need for read locks and two-phased commits. The present invention provides the ability to dynamically partition row sources for parallel processing. Parallelism is based on the ability to parallelize a row source, the partitioning requirements of consecutive row sources and the entire row source tree, and any specification in the SQL statement. A Query Coordinator assumes control of the processing of a entire query and can execute serial row sources. Additional threads of control, Query Server, execute a parallel operators. Parallel operators are called data flow operators (DFOs). A DFO is represented as structured query language (SQL) statements and can be executed concurrently by multiple processes, or query slaves. A central scheduling mechanism, a data flow scheduler, controls a parallelized portion of an execution plan, and can become invisible for serial execution. Table queues are used to partition and transport rows between sets of processes. Node linkages provide the ability to divide the plan into independent lists that can each be executed by a set of query slaves. The present invention maintains a bit vector that is used by a subsequent producer to determine whether any rows need to be produced to its consumers. The present uses states and a count of the slaves that have reached these states to perform its scheduling tasks.
    • 本发明在数据库管理系统中实现并行处理。 本发明提供了在一个位置定位事务和恢复信息的能力,并且消除了对读锁定和两阶段提交的需要。 本发明提供了动态分割用于并行处理的行源的能力。 并行性基于并行化源的能力,连续行源和整行行树的分区要求以及SQL语句中的任何规范。 查询协调器假定对整个查询的处理进行控制,并且可以执行串行源。 控制的附加线程,Query Server,执行一个并行运算符。 并行运算符称为数据流操作符(DFO)。 DFO表示为结构化查询语言(SQL)语句,可以由多个进程或查询从属并发执行。 中央调度机制,数据流调度器,控制执行计划的并行化部分,并且可以变得不可见用于串行执行。 表队列用于在进程集之间分区和传输行。 节点链接提供将计划划分为独立列表的能力,每个列表可以由一组查询从属单元执行。 本发明保持由后续生产者使用的位向量,以确定是否需要向其消费者生产任何行。 目前使用状态和已经到达这些状态的从站的计数来执行其调度任务。
    • 5. 发明授权
    • Preserving consistency of passively-replicated non-deterministic objects
    • 保持被动复制非确定性对象的一致性
    • US06574750B1
    • 2003-06-03
    • US09478946
    • 2000-01-06
    • Pascal FelberGary Hallmark
    • Pascal FelberGary Hallmark
    • G06F1100
    • G06F11/1474G06F11/202G06F11/2097Y10S707/99953
    • Techniques are provided for executing an operation in which a client invokes a replicated object. According to one technique, a primary replica of a replicated object receives a first request from a client, wherein the first request includes a request identifier. Rather than immediately attempting to process the request, the primary replica determines whether a record exists that corresponds to the request identifier. If a record exists that corresponds to the request identifier, then the primary replica responds to the first request with a reply associated with the record. If no record exists that corresponds to the request identifier, then the primary replica performs the steps of: starting a transaction; as part of the transaction, processing the request; as part of the transaction, storing a record associated with the request identifier and a reply to the request; committing the transaction; and delivering the reply to the client. The client may itself be a replicated object. If the client is nondeterministic, then the transaction initiated by the primary replica may be a nested transaction relative to a transaction executed by the client, or be executed as part of the same transaction as the client. If the transaction executed by the primary replica is executed as part of the same transaction as the client, then a savepoint may be established before the primary replica processes the request, so that a failure will not necessarily require all processing performed by the client to be rolled back.
    • 提供了用于执行客户端调用复制对象的操作的技术。 根据一种技术,复制对象的主要副本从客户端接收第一请求,其中第一请求包括请求标识符。 主副本不是立即尝试处理请求,而是确定是否存在与请求标识符相对应的记录。 如果存在与请求标识符相对应的记录,则主副本使用与记录相关联的回复来响应第一请求。 如果没有与请求标识符相对应的记录,则主副本执行以下步骤:启动事务; 作为交易的一部分,处理请求; 作为交易的一部分,存储与请求标识符相关联的记录和对请求的回复; 交易交易; 并将答复交给客户。 客户端本身可能是一个复制对象。 如果客户端是非确定性的,则由主副本发起的事务可能是相对于由客户端执行的事务的嵌套事务,或者作为与客户端相同事务的一部分执行。 如果主副本执行的事务作为与客户端相同的事务的一部分执行,则可以在主副本处理该请求之前建立保存点,从而不一定要求客户端执行的所有处理 回滚。
    • 7. 发明授权
    • Using overlapping partitions of data for query optimization
    • 使用重叠的数据分区进行查询优化
    • US6014656A
    • 2000-01-11
    • US673714
    • 1996-06-21
    • Gary HallmarkRobert J. Jenkins
    • Gary HallmarkRobert J. Jenkins
    • G06F17/30
    • G06F17/30486G06F17/30492Y10S707/99932Y10S707/99933Y10S707/99934Y10S707/99935Y10S707/99938
    • A method and apparatus for executing queries on a set of data that has been partitioned into a plurality of partitions based on a partitioning key is provided. A query is received that includes a reference to a second key. The second key is not part of the partitioning key but has a predetermined correlation with the partitioning key. This second key is referred to as an overlapping partition key. A subset of the plurality of partitions is selected to be scanned based on the reference to the second key and the predetermined correlation with the partitioning key. The query is then executed by scanning only those partitions of the plurality of partitions that belong to the subset of partitions. The overlapping partition key provides for reduced query execution time even when the partitioning key is not directly involved in the query. Specifically, the overlapping partition key permits a partial table scan in situations that would require a fill table scan with partitioning alone.
    • 提供了一种用于基于划分键对已经被分割成多个分区的一组数据执行查询的方法和装置。 接收到包含对第二个键的引用的查询。 第二个键不是分区键的一部分,而是与分区键具有预定的相关性。 该第二个键被称为重叠的分区键。 基于对第二密钥的引用和与分区密钥的预定相关性,选择多个分区的子集进行扫描。 然后通过仅扫描属于分区子集的多个分区的那些分区来执行查询。 即使分区键不直接涉及查询,重叠的分区键也可减少查询执行时间。 具体来说,重叠分区键允许在需要单独分区的填充表扫描的情况下进行部分表扫描。
    • 10. 发明授权
    • Method and apparatus for distributing work granules among processes based on the location of data accessed in the work granules
    • 基于在工作颗粒中访问的数据的位置,在工艺中分配工作颗粒的方法和装置
    • US06505227B1
    • 2003-01-07
    • US09238670
    • 1999-01-26
    • Ravi Prem MirchandaneyGary Hallmark
    • Ravi Prem MirchandaneyGary Hallmark
    • G06F900
    • G06F9/5027
    • A method and apparatus for distributing work granules of a parent task among processes running on various nodes in a multi-processing computer system is provided. The parent task is divided into work granules of varying sizes based on the location of the data that must be accessed to perform the work granules. At least one process on each of the nodes that will be assisting in the execution of the parent task is initially assigned a work granule based on efficiency considerations. Such efficiency considerations may include, for example, the location of the data to be accessed relative to the process, the current I/O load of the devices on which data to be accessed is stored, and the relative sizes of the various work granules. When a process completes the work granule assigned to it, the process is assigned one of the remaining unassigned work granules. Again the work granule assignment is made based on efficiency considerations. This process continues until all of the work granules have been completed.
    • 提供了一种用于在多处理计算机系统中的各种节点上运行的进程中分派父任务的工作颗粒的方法和装置。 基于必须访问的数据的位置来执行工作颗粒,父任务被划分成不同大小的工作颗粒。 在协助执行父任务的每个节点上的至少一个进程最初基于效率考虑分配工作颗粒。 这样的效率考虑可以包括例如要访问的数据相对于过程的位置,存储要访问的数据的设备的当前I / O负载以及各种工作颗粒的相对大小。 当一个过程完成分配给它的工作颗粒时,该过程被分配剩余的未分配的工作颗粒之一。 再次,工作颗粒分配是基于效率考虑。 该过程一直持续到所有的工作颗粒已经完成。