IP Library Granted Patent US 8,918,365
Granted Patent B2
US 8,918,365 · App. 13/328,600 · Granted Dec 23, 2014

Dedicating disks to reading or writing

Inventors: Rich Skrenta (San Carlos, CA); Bryn Robert Dole (Sunnyvale, CA); Michael Markson (San Francisco, CA); Keith Peters (San Francisco, CA); Robert Michael Saliba (San Francisco, CA); Robert N. Truel (San Carlos, CA); Gregory B. Lindahl (Sunnyvale, CA)
Assignee: Blekko, Inc.
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,918,365
App. No.
13/328,600
Granted
Dec 23, 2014
Kind
B2
Abstract

A method of increasing the speed of disk reading and writing operations in a database by using nodes of memory and processors where the memory stores programs to be executed by the processors. The data in the database is separated into one or more buckets and at least two replicas of each bucket of data are stored in different storage devices of the nodes. Determining a subset of storage devices that will be dedicated to writing, while keeping at least one replica of each bucket dedicated to reading and dedicating at least a substantial portion of the remaining storage devices to reading.

Claims (30)

1. A method of increasing the speed of disk reading and writing operations in a database system comprising:

at the database system having one or more nodes comprising one or more processors and memory, the memory of the one or more nodes storing one or more programs to be executed by the one or more processors,

wherein the data in the database is partitioned into one or more buckets and at least two replicas of each bucket of data are stored in different storage devices of the one or more nodes;

determining a subset of storage devices that will be dedicated to writing, while keeping at least one replica of each bucket dedicated to reading;

dedicating at least a substantial portion of the remaining storage devices to reading, wherein designating at least one bucket for writing comprises:

determining a loop ranging from which one or more nodes have been written to least recently, to which one or more nodes have been written to most recently;

determining which buckets of each of the one or more nodes in the loop need read operations; and

if none of the buckets on the respective one or more nodes need read operations, designating the node to operate a set of write operations.

2. The method of claim 1 , further comprising,

generating a map that identifies which of the one or more buckets of the one or more nodes are available for reading and which of the one or more buckets of the one or more nodes are available for writing;

distributing the map to the one or more nodes; and

using this map locally within each node to inform each bucket whether it should be reading or writing.

3. The method of claim 2 , further comprising, generating a replacement map after every predetermined time period and distributing the replacement map to the one or more nodes.

4. The method of claim 3 , wherein the one or more nodes are synchronized by a respective clock, and the replacement map is adopted when the respective clocks of the one or more nodes reaches an N secondary boundary.

5. The method of claim 1 , wherein designating at least one bucket for writing includes determining buckets for writing based on the elapsed time since the last write event on the respective bucket.

6. A method of increasing the speed of disk reading and writing operations in a database system comprising:

at the database system having one or more nodes comprising one or more processors and memory, the memory of the one or more nodes storing one or more programs to be executed by the one or more processors,

wherein the data in the database is partitioned into one or more buckets and at least two replicas of each bucket of data are stored in different storage devices of the one or more nodes;

determining a subset of storage devices that will be dedicated to writing, while keeping at least one replica of each bucket dedicated to reading;

dedicating at least a substantial portion of the remaining storage devices to reading, wherein designating at least one bucket for writing comprises:

organizing the one or more buckets into a plurality of zones; and

rotating write only operations through each of the plurality of zones,

wherein at least one of the plurality of zones containing one replication of the at least two replications of data is designated read only operations.

7. The method of claim 6 , further comprising,

generating a map that identifies which of the one or more buckets of the one or more nodes are available for reading and which of the one or more buckets of the one or more nodes are available for writing;

distributing the map to the one or more nodes; and

using this map locally within each node to inform each bucket whether it should be reading or writing.

8. The method of claim 7 , further comprising, generating a replacement map after every predetermined time period and distributing the replacement map to the one or more nodes.

9. The method of claim 8 , wherein the one or more nodes are synchronized by a respective clock, and the replacement map is adopted when the respective clocks of the one or more nodes reaches an N secondary boundary.

10. The method of claim 6 , wherein designating at least one bucket for writing includes determining buckets for writing based on the elapsed time since the last write event on the respective bucket.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 19, 2015
From: BLEKKO, INC.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 035671/0719 →
RELEASE OF SECURITY INTEREST Recorded Jan 29, 2015
From: VENTURE LENDING & LEASING VI, INC.
To: BLEKKO, INC.
Reel/Frame 034842/0216 →
SECURITY AGREEMENT Recorded Jun 4, 2013
From: BLEKKO, INC.
To: VENTURE LENDING & LEASING VI, INC.
Reel/Frame 030548/0079 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 6, 2012
From: SKRENTA, RICH; DOLE, BRYN ROBERT; MARKSON, MICHAEL; PETERS, KEITH; SALIBA, ROBERT MICHAEL; TRUEL, ROBERT N.; LINDAHL, GREGORY B.
To: BLEKKO, INC.
Reel/Frame 027815/0806 →
Continuity (3)
Continuation PCTUS2010039395 · Jun 21, 2010
Provisional Application 61218889 · Jun 19, 2009
Related Publication 20130159251A1 · Jun 20, 2013