SCALABLE CONFLICT DETECTION IN TRANSACTION MANAGEMENT

    公开(公告)号:US20170220617A1

    公开(公告)日:2017-08-03

    申请号:US15012250

    申请日:2016-02-01

    Applicant: Yahoo! Inc.

    CPC classification number: G06F16/2329

    Abstract: Multi-thread systems and methods are described for concurrently handling requests to commit data updates to a database by a plurality of data transactions. The database preferably supports multi-versioning and the data transactions are preferably isolated by snapshot isolation. In one embodiment, concurrent and lock-free handling of requests to commit data updates includes performing two types of concurrent data conflict detection. A transaction proceeds to commit only if it passes both types of conflict detection. The first type of conflict detection is based on a hash map between data keys and their commit timestamps whereas the second type of conflict detection is based on a log that keeps track of the status of transactions whose requests to commit are actively being processed. In another embodiment, concurrent conflict detection for data items in concurrent transactions is broken down into buckets and locks are used for accessing each bucket. These systems and methods maintain transactional integrity to database while improving throughput by maximizing concurrency of data commits in a multi-thread environment.

    METHOD AND SYSTEM FOR CONCURRENCY CONTROL IN LOG-STRUCTURED MERGE DATA STORES
    2.
    发明申请
    METHOD AND SYSTEM FOR CONCURRENCY CONTROL IN LOG-STRUCTURED MERGE DATA STORES 审中-公开
    在结构化的MERGE数据存储中进行同步控制的方法和系统

    公开(公告)号:US20160179865A1

    公开(公告)日:2016-06-23

    申请号:US14573183

    申请日:2014-12-17

    Applicant: Yahoo! Inc.

    CPC classification number: G06F16/2343 G06F9/52

    Abstract: The present teaching relates to concurrency control in log-structured merge (LSM) data stores. In one example, a call is received from a thread for writing a value to a key of LSM components. A shared mode lock is set on the LSM components in response to the call. The value is written to the key once the shared mode lock is set on the LSM components. The shared mode lock is released from the LSM components after the value is written to the key.

    Abstract translation: 本教程涉及日志结构合并(LSM)数据存储中的并发控制。 在一个示例中,从用于将值写入LSM组件的键的线程接收到呼叫。 响应于该呼叫,在LSM组件上设置共享模式锁定。 一旦在LSM组件上设置了共享模式锁定,该值将被写入密钥。 将值写入密钥后,共享模式锁将从LSM组件释放。

    Automatic lock removal method for scalable synchronization in dynamic data structures

    公开(公告)号:US10078653B2

    公开(公告)日:2018-09-18

    申请号:US14741247

    申请日:2015-06-16

    Applicant: Yahoo! Inc.

    CPC classification number: G06F16/2343 G06F8/71 G06F16/2365

    Abstract: In one embodiment, a set of lock and unlock instructions in a read phase of a computer-readable program is replaced with a first set of tracking instructions, wherein the first set of tracking instructions track a set of locked objects identifying objects that would have been locked by executing the set of lock and unlock instructions. A second set of tracking instructions is inserted into the read phase of the computer-readable program, wherein the second set of tracking instructions track a set of read objects indicating versions of objects that are read. Validation instructions are inserted into the computer-readable program, wherein the validation instructions validate that the versions of objects in the set of read objects have not changed since they were last read and lock the set of locked objects that would have been locked upon completing execution of the set of lock and unlock instructions. Update instructions are added to an update phase of the computer-readable program, where the update instructions increment a current version of an object each time a value of the object is updated or a lock of the object is released.

    AUTOMATIC LOCK REMOVAL METHOD FOR SCALABLE SYNCHRONIZATION IN DYNAMIC DATA STRUCTURES
    5.
    发明申请
    AUTOMATIC LOCK REMOVAL METHOD FOR SCALABLE SYNCHRONIZATION IN DYNAMIC DATA STRUCTURES 审中-公开
    用于动态数据结构中可伸缩同步的自动锁定移除方法

    公开(公告)号:US20160371318A1

    公开(公告)日:2016-12-22

    申请号:US14741247

    申请日:2015-06-16

    Applicant: Yahoo! Inc.

    CPC classification number: G06F17/30362 G06F8/71 G06F17/30371

    Abstract: In one embodiment, a set of lock and unlock instructions in a read phase of a computer-readable program is replaced with a first set of tracking instructions, wherein the first set of tracking instructions track a set of locked objects identifying objects that would have been locked by executing the set of lock and unlock instructions. A second set of tracking instructions is inserted into the read phase of the computer-readable program, wherein the second set of tracking instructions track a set of read objects indicating versions of objects that are read. Validation instructions are inserted into the computer-readable program, wherein the validation instructions validate that the versions of objects in the set of read objects have not changed since they were last read and lock the set of locked objects that would have been locked upon completing execution of the set of lock and unlock instructions. Update instructions are added to an update phase of the computer-readable program, where the update instructions increment a current version of an object each time a value of the object is updated or a lock of the object is released.

    Abstract translation: 在一个实施例中,计算机可读程序的读取阶段中的一组锁定和解锁指令被替换为第一组跟踪指令,其中第一组跟踪指令跟踪一组锁定对象,该对锁定对象标识将被 通过执行锁定和解锁指令来锁定。 第二组跟踪指令被插入到计算机可读程序的读取阶段,其中第二组跟踪指令跟踪一组读取对象,指示所读取的对象的版本。 验证指令被插入到计算机可读程序中,其中验证指令验证读取对象集合中的对象的版本自上次读取以来没有改变,并且锁定在完成执行时被锁定的一组锁定对象 的锁定和解锁指令集。 更新指令被添加到计算机可读程序的更新阶段,其中更新指令在对象的值被更新或对象的锁释放时递增对象的当前版本。

Patent Agency Ranking