Storing and Moving Data in a Distributed Storage System
    3.
    发明申请
    Storing and Moving Data in a Distributed Storage System 有权
    在分布式存储系统中存储和移动数据

    公开(公告)号:US20130346540A1

    公开(公告)日:2013-12-26

    申请号:US13899495

    申请日:2013-05-21

    Applicant: Google Inc.

    CPC classification number: H04L67/1097

    Abstract: A system, computer-readable storage medium storing at least one program, and a computer-implemented method for identifying a storage group in a distributed storage system into which data is to be stored is presented. A data structure including information relating to storage groups in a distributed storage system is maintained, where a respective entry in the data structure for a respective storage group includes placement metrics for the respective storage group. A request to identify a storage group into which data is to be stored is received from a computer system. The data structure is used to determine an identifier for a storage group whose placement metrics satisfy a selection criterion. The identifier for the storage group whose placement metrics satisfy the selection criterion is returned to the computer system.

    Abstract translation: 呈现存储至少一个程序的系统,计算机可读存储介质和用于识别要存储数据的分布式存储系统中的存储组的计算机实现的方法。 维护包括与分布式存储系统中的存储组有关的信息的数据结构,其中相应存储组的数据结构中的相应条目包括各个存储组的布局度量。 从计算机系统接收到识别要存储数据的存储组的请求。 数据结构用于确定其布局度量满足选择标准的存储组的标识符。 其位置指标满足选择标准的存储组的标识符返回给计算机系统。

    Pipelining Paxos State Machines
    4.
    发明申请
    Pipelining Paxos State Machines 审中-公开
    Paxos国家机器管道

    公开(公告)号:US20160132581A1

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

    申请号:US14988535

    申请日:2016-01-05

    Applicant: Google Inc.

    Abstract: Paxos transactions are pipelined in a distributed database formed by a plurality of replica servers. A leader server is selected by consensus of the replicas, and receives a lock on leadership for an epoch. The leader gets Paxos log numbers for the current epoch, which are greater than the numbers allocated in previous epochs. The leader receives database write requests, and assigns a Paxos number to each request. The leader constructs a proposed transaction for each request, which includes the assigned Paxos number and incorporates the request. The leader transmits the proposed transactions to the replicas. Two or more write requests that access distinct objects in the database can proceed simultaneously. The leader commits a proposed transaction to the database after receiving a plurality of confirmations for the proposed transaction from the replicas. After all the Paxos numbers have been assigned, inter-epoch tasks are performed before beginning a subsequent epoch.

    Abstract translation: Paxos事务在由多个副本服务器形成的分布式数据库中流水线化。 一个领导服务器是通过副本的共识来选择的,并获得了一个时代的领导锁。 领导者获取当前时代的Paxos日志号,大于前几个时期分配的数字。 领导者接收数据库写请求,并为每个请求分配一个Paxos号。 领导者为每个请求构建一个提议的事务,其中包括分配的Paxos号并包含请求。 领导将拟议的交易传送给副本。 访问数据库中不同对象的两个或多个写入请求可以同时进行。 领导者在从副本收到拟议交易的多个确认书后,向数据库提交交易。 在所有Paxos号码被分配之后,在开始后续时期之前执行时代间任务。

    Time reservations for ensuring consistent reads in a distributed database without logging

    公开(公告)号:US10783133B1

    公开(公告)日:2020-09-22

    申请号:US15631646

    申请日:2017-06-23

    Applicant: Google Inc.

    Abstract: The subject matter described herein provides techniques to ensure that queries of a distributed database observe a consistent read of the database without locking or logging. In this regard, next-write timestamps uniquely identify a set of write transactions whose updates can be observed by reads. By publishing the next-write timestamps from within an extendable time lease and tracking a “safe timestamp,” the database queries can be executed without logging read operations or blocking future write transactions, and clients issuing the queries at the “safe timestamp” observe a consistent view of the database as it exists on or before that timestamp. Aspects of this disclosure also provide for extensions, done cheaply and without the need for logging, to the range of timestamps at which read transactions can be executed.

    REDUCING COMMIT WAIT IN A DISTRIBUTED MULTIVERSION DATABASE BY READING THE CLOCK EARLIER

    公开(公告)号:US20180329739A1

    公开(公告)日:2018-11-15

    申请号:US15649920

    申请日:2017-07-14

    Applicant: Google Inc.

    Abstract: In a distributed system where a client's call to commit a transaction occurs outside the transaction's lock-hold interval, computation of timestamp information for the transaction is moved to a client library, while ensuring that no conflicting reads or writes are performed between a time of the computation and acquiring all locks for the transaction. The transaction is committed in phases, with each phase being initiated by the client library. Timestamp information is added to the locks to ensure that timestamps are generated during lock-hold intervals. An increased number of network messages is thereby overlapped with a commit wait period in which a write in a distributed database is delayed in time to ensure concurrency in the database.

    Systems and Methods for Increasing Database Access Concurrency

    公开(公告)号:US20170357674A1

    公开(公告)日:2017-12-14

    申请号:US15665273

    申请日:2017-07-31

    Applicant: GOOGLE INC.

    CPC classification number: G06F16/211 G06F16/2322 G06F16/2329

    Abstract: The various embodiments described herein include methods, devices, and systems for reading and writing data from a database table. In one aspect, a method of reading and writing data from a database table, includes: (1) initiating a write transaction to write data to a first non-key column of a row of the database table, the database table having a plurality of rows, each row comprising a primary key and a plurality of non-key columns; (2) locking the first non-key column; and (3) in accordance with a determination that the second non-key column is not locked, initiating a read transaction to read data from the second non-key column, where initiation of the read transaction occurs prior to completion of the write transaction.

    System and method for performing operations on target servers
    9.
    发明授权
    System and method for performing operations on target servers 有权
    在目标服务器上执行操作的系统和方法

    公开(公告)号:US09256506B1

    公开(公告)日:2016-02-09

    申请号:US13908996

    申请日:2013-06-03

    Applicant: Google Inc.

    CPC classification number: G06F11/3055 G06F11/3006 G06F11/3089

    Abstract: A system, computer-readable storage medium storing at least one program, and a computer-implemented method for performing operations on target servers is presented. A request including an operation is received. A set of target servers associated with the operation is identified. The following request processing operations are performed until a predetermined termination condition has been satisfied: a target server in the set of target servers to which the request has not been issued and whose health metrics satisfy health criteria is identified, the request to perform the operation is issued to the target server, and when the request to perform the operation fails at the target server, health metrics for the target server are updated to indicate that the request to perform the operation failed at the target server and health check operation is scheduled to be performed with respect to the target server.

    Abstract translation: 提出了存储至少一个程序的系统,计算机可读存储介质和用于在目标服务器上执行操作的计算机实现的方法。 接收到包含操作的请求。 识别与操作相关联的一组目标服务器。 执行以下请求处理操作,直到已经满足预定的终止条件:识别出尚未发出请求的目标服务器集合中的目标服务器,并且识别出其健康度量满足健康标准,执行该操作的请求是 发出到目标服务器,当目标服务器执行操作失败的请求时,更新目标服务器的健康指标,以指示执行操作的请求在目标服务器发生故障,并且健康检查操作计划为 对目标服务器执行。

    Systems and Methods of Increasing Database Access Concurrency Using Granular Timestamps
    10.
    发明申请
    Systems and Methods of Increasing Database Access Concurrency Using Granular Timestamps 有权
    使用粒度时间戳增加数据库访问并发的系统和方法

    公开(公告)号:US20140006458A1

    公开(公告)日:2014-01-02

    申请号:US13909928

    申请日:2013-06-04

    Applicant: Google Inc.

    CPC classification number: G06F17/30292 G06F17/30353 G06F17/30356

    Abstract: A method reads and writes data from a database table. Each row in the table has a primary key and multiple non-key columns. Each non-key column has one or more column values, and each column value has an associated timestamp that identifies when the column value was stored. The timestamps associated with the column values in each non-key column provide a unique order for the column values. A read transaction is initiated to read from a first non-key column of a first row. A write transaction is in progress that is updating a second non-key column of the first row, where the second non-key column is distinct from the first non-key column. The write transaction holds a lock on the second non-key column of the first row. The method concurrently reads the data from the first non-key column and writes a new column value to the second non-key column.

    Abstract translation: 一种方法从数据库表读取和写入数据。 表中的每一行都有一个主键和多个非键列。 每个非键列都有一个或多个列值,每个列值都具有相关联的时间戳记,用于标识列值存储的时间。 与每个非键列中的列值相关联的时间戳为列值提供唯一的顺序。 开始读取事务以从第一行的第一非键列读取。 正在进行正在更新第一行的第二非键列的写事务,其中第二非密钥列与第一非密钥列不同。 写事务在第一行的第二个非键列上保存一个锁。 该方法同时从第一个非密钥列读取数据,并将新的列值写入第二个非密钥列。

Patent Agency Ranking