CA2780003C - Consistency without ordering dependency - Google Patents
Consistency without ordering dependency Download PDFInfo
- Publication number
- CA2780003C CA2780003C CA2780003A CA2780003A CA2780003C CA 2780003 C CA2780003 C CA 2780003C CA 2780003 A CA2780003 A CA 2780003A CA 2780003 A CA2780003 A CA 2780003A CA 2780003 C CA2780003 C CA 2780003C
- Authority
- CA
- Canada
- Prior art keywords
- objects
- store
- logical
- write
- transaction
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/065—Replication mechanisms
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/466—Transaction processing
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Human Computer Interaction (AREA)
- Computer Security & Cryptography (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US12/635,725 US8433865B2 (en) | 2009-12-11 | 2009-12-11 | Consistency without ordering dependency |
| US12/635,725 | 2009-12-11 | ||
| PCT/US2010/056311 WO2011071656A2 (en) | 2009-12-11 | 2010-11-11 | Consistency without ordering dependency |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CA2780003A1 CA2780003A1 (en) | 2011-06-16 |
| CA2780003C true CA2780003C (en) | 2017-10-03 |
Family
ID=44144203
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CA2780003A Active CA2780003C (en) | 2009-12-11 | 2010-11-11 | Consistency without ordering dependency |
Country Status (9)
| Country | Link |
|---|---|
| US (3) | US8433865B2 (enExample) |
| EP (1) | EP2510434B1 (enExample) |
| JP (1) | JP5628341B2 (enExample) |
| KR (1) | KR101690824B1 (enExample) |
| CN (1) | CN102667720B (enExample) |
| AU (1) | AU2010328591B2 (enExample) |
| CA (1) | CA2780003C (enExample) |
| RU (1) | RU2560786C2 (enExample) |
| WO (1) | WO2011071656A2 (enExample) |
Families Citing this family (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8433865B2 (en) | 2009-12-11 | 2013-04-30 | Microsoft Corporation | Consistency without ordering dependency |
| US8793440B2 (en) | 2010-06-17 | 2014-07-29 | Microsoft Corporation | Error detection for files |
| US8776094B2 (en) | 2011-08-11 | 2014-07-08 | Microsoft Corporation | Runtime system |
| US20150032982A1 (en) * | 2013-07-26 | 2015-01-29 | Fusion-Io, Inc. | Systems and methods for storage consistency |
| US9715520B1 (en) * | 2013-12-20 | 2017-07-25 | Amazon Technologies, Inc. | Validity map-based tracking of user data updates |
| WO2015147817A1 (en) | 2014-03-26 | 2015-10-01 | Hewlett-Packard Development Company, L.P. | Nvm object |
| WO2015167603A1 (en) * | 2014-04-29 | 2015-11-05 | Hewlett-Packard Development Company, L.P. | Maintaining files in a retained file system |
| US10635504B2 (en) | 2014-10-16 | 2020-04-28 | Microsoft Technology Licensing, Llc | API versioning independent of product releases |
| US10346091B2 (en) | 2016-03-31 | 2019-07-09 | Intel Corporation | Fabric resiliency support for atomic writes of many store operations to remote nodes |
| US10346284B1 (en) * | 2018-01-11 | 2019-07-09 | Microsoft Technology Licensing, Llc | Feature usage prediction using shell application feature telemetry |
| US11068351B2 (en) * | 2018-11-19 | 2021-07-20 | International Business Machines Corporation | Data consistency when switching from primary to backup data storage |
| US12235961B1 (en) * | 2022-05-04 | 2025-02-25 | Seagate Technology Llc | Malware mitigating storage controller |
Family Cites Families (50)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP0394173A3 (en) * | 1989-04-17 | 1993-10-27 | International Business Machines Corporation | High concurrency manager of open files |
| US5371885A (en) | 1989-08-29 | 1994-12-06 | Microsoft Corporation | High performance file system |
| JPH0540682A (ja) * | 1990-06-08 | 1993-02-19 | Internatl Business Mach Corp <Ibm> | アトミシテイを有する記憶装置の高可用性耐故障再配置 |
| US5964835A (en) | 1992-12-17 | 1999-10-12 | Tandem Computers Incorporated | Storage access validation to data messages using partial storage address data indexed entries containing permissible address range validation for message source |
| US5594863A (en) | 1995-06-26 | 1997-01-14 | Novell, Inc. | Method and apparatus for network file recovery |
| CA2199675C (en) | 1996-05-08 | 2002-03-26 | John C. Goodwin, Iii | System and method for managing electronic price label overlays |
| US6883063B2 (en) * | 1998-06-30 | 2005-04-19 | Emc Corporation | Method and apparatus for initializing logical objects in a data storage system |
| US6393540B1 (en) * | 1998-06-30 | 2002-05-21 | Emc Corporation | Moving a logical object from a set of source locations to a set of destination locations using a single command |
| US6542909B1 (en) * | 1998-06-30 | 2003-04-01 | Emc Corporation | System for determining mapping of logical objects in a computer system |
| US6269431B1 (en) * | 1998-08-13 | 2001-07-31 | Emc Corporation | Virtual storage and block level direct access of secondary storage for recovery of backup data |
| US6920537B2 (en) * | 1998-12-31 | 2005-07-19 | Emc Corporation | Apparatus and methods for copying, backing up and restoring logical objects in a computer storage system by transferring blocks out of order or in parallel |
| US6629264B1 (en) * | 2000-03-30 | 2003-09-30 | Hewlett-Packard Development Company, L.P. | Controller-based remote copy system with logical unit grouping |
| US6643672B1 (en) | 2000-07-31 | 2003-11-04 | Hewlett-Packard Development Company, Lp. | Method and apparatus for asynchronous file writes in a distributed file system |
| US6925476B1 (en) | 2000-08-17 | 2005-08-02 | Fusionone, Inc. | Updating application data including adding first change log to aggreagate change log comprising summary of changes |
| US6928555B1 (en) | 2000-09-18 | 2005-08-09 | Networks Associates Technology, Inc. | Method and apparatus for minimizing file scanning by anti-virus programs |
| US6687805B1 (en) * | 2000-10-30 | 2004-02-03 | Hewlett-Packard Development Company, L.P. | Method and system for logical-object-to-physical-location translation and physical separation of logical objects |
| US7730213B2 (en) * | 2000-12-18 | 2010-06-01 | Oracle America, Inc. | Object-based storage device with improved reliability and fast crash recovery |
| US6643612B1 (en) | 2001-06-28 | 2003-11-04 | Atrica Ireland Limited | Mechanism and protocol for per connection based service level agreement measurement |
| US7072915B2 (en) * | 2002-01-22 | 2006-07-04 | International Business Machines Corporation | Copy method supplementing outboard data copy with previously instituted copy-on-write logical snapshot to create duplicate consistent with source data as of designated time |
| JP2003223350A (ja) * | 2002-01-29 | 2003-08-08 | Ricoh Co Ltd | データベースシステム |
| US7334124B2 (en) | 2002-07-22 | 2008-02-19 | Vormetric, Inc. | Logical access block processing protocol for transparent secure file storage |
| US7020746B2 (en) * | 2003-01-28 | 2006-03-28 | Microsoft Corporation | Method and system for an atomically updated, central cache memory |
| US7322029B2 (en) | 2003-05-08 | 2008-01-22 | American Megatrends, Inc. | Method and system for recovering program code in a computer system |
| US7440966B2 (en) | 2004-02-12 | 2008-10-21 | International Business Machines Corporation | Method and apparatus for file system snapshot persistence |
| WO2005114487A2 (en) | 2004-05-21 | 2005-12-01 | Computer Associates Think, Inc. | Method and apparatus for updating a database using table staging and queued relocation and deletion |
| JP4104586B2 (ja) * | 2004-09-30 | 2008-06-18 | 株式会社東芝 | ファイル管理機能を備えたファイルシステム及びファイル管理方法 |
| JP4956922B2 (ja) * | 2004-10-27 | 2012-06-20 | ソニー株式会社 | 記憶装置 |
| US7464124B2 (en) | 2004-11-19 | 2008-12-09 | International Business Machines Corporation | Method for autonomic data caching and copying on a storage area network aware file system using copy services |
| US20060129745A1 (en) * | 2004-12-11 | 2006-06-15 | Gunther Thiel | Process and appliance for data processing and computer program product |
| US7617259B1 (en) | 2004-12-31 | 2009-11-10 | Symantec Operating Corporation | System and method for managing redundant storage consistency at a file system level |
| CN1936853B (zh) | 2005-09-22 | 2010-05-05 | 康佳集团股份有限公司 | 嵌入式设备的数据掉电保护和修复方法 |
| AU2006331932B2 (en) * | 2005-12-19 | 2012-09-06 | Commvault Systems, Inc. | Systems and methods for performing data replication |
| US7620721B2 (en) | 2006-02-28 | 2009-11-17 | Microsoft Corporation | Pre-existing content replication |
| US7552148B2 (en) | 2006-02-28 | 2009-06-23 | Microsoft Corporation | Shutdown recovery |
| US7730351B2 (en) | 2006-05-15 | 2010-06-01 | Oracle America, Inc. | Per file dirty region logging |
| JP2007316944A (ja) * | 2006-05-25 | 2007-12-06 | Toshiba Corp | データ処理装置、データ処理方法、およびデータ処理プログラム |
| RU57929U1 (ru) * | 2006-07-10 | 2006-10-27 | Сергей Васильевич Городилов | Устройство для защищенного хранения информации |
| US20080077590A1 (en) | 2006-09-22 | 2008-03-27 | Honeywell International Inc. | Efficient journaling and recovery mechanism for embedded flash file systems |
| EP2075706B1 (en) | 2006-10-20 | 2010-12-15 | Fujitsu Limited | Memory device and refresh adjusting method |
| US7840752B2 (en) | 2006-10-30 | 2010-11-23 | Microsoft Corporation | Dynamic database memory management policies |
| WO2008127458A2 (en) * | 2006-12-06 | 2008-10-23 | Fusion Multisystems, Inc. (Dba Fusion-Io) | Apparatus, system, and method for a shared, front-end, distributed raid |
| CN101051324A (zh) | 2007-05-23 | 2007-10-10 | 中兴通讯股份有限公司 | 一种内存数据库的事务管理方法 |
| JP2008293218A (ja) | 2007-05-23 | 2008-12-04 | Nec Corp | ファイル管理システム、ファイル管理方法、ファイル管理プログラム |
| WO2009004620A2 (en) * | 2007-07-03 | 2009-01-08 | Xeround Systems Ltd. | Method and system for data storage and management |
| US8732386B2 (en) * | 2008-03-20 | 2014-05-20 | Sandisk Enterprise IP LLC. | Sharing data fabric for coherent-distributed caching of multi-node shared-distributed flash memory |
| JP5386111B2 (ja) * | 2008-05-22 | 2014-01-15 | 株式会社日立ソリューションズ | ファイルシステムの記録方法 |
| US8433865B2 (en) * | 2009-12-11 | 2013-04-30 | Microsoft Corporation | Consistency without ordering dependency |
| US8224780B2 (en) * | 2010-06-15 | 2012-07-17 | Microsoft Corporation | Checkpoints for a file system |
| US8793440B2 (en) | 2010-06-17 | 2014-07-29 | Microsoft Corporation | Error detection for files |
| US9411634B2 (en) * | 2010-06-21 | 2016-08-09 | Microsoft Technology Licensing, Llc | Action framework in software transactional memory |
-
2009
- 2009-12-11 US US12/635,725 patent/US8433865B2/en not_active Expired - Fee Related
-
2010
- 2010-11-11 RU RU2012129205/08A patent/RU2560786C2/ru not_active IP Right Cessation
- 2010-11-11 CA CA2780003A patent/CA2780003C/en active Active
- 2010-11-11 JP JP2012543128A patent/JP5628341B2/ja not_active Expired - Fee Related
- 2010-11-11 CN CN201080056154.2A patent/CN102667720B/zh not_active Expired - Fee Related
- 2010-11-11 WO PCT/US2010/056311 patent/WO2011071656A2/en not_active Ceased
- 2010-11-11 EP EP10836396.1A patent/EP2510434B1/en not_active Not-in-force
- 2010-11-11 AU AU2010328591A patent/AU2010328591B2/en not_active Ceased
- 2010-11-11 KR KR1020127017771A patent/KR101690824B1/ko not_active Expired - Fee Related
-
2013
- 2013-04-29 US US13/872,896 patent/US8996829B2/en active Active
-
2015
- 2015-03-25 US US14/668,628 patent/US9430160B2/en active Active
Also Published As
| Publication number | Publication date |
|---|---|
| RU2012129205A (ru) | 2014-01-27 |
| CN102667720A (zh) | 2012-09-12 |
| CN102667720B (zh) | 2016-06-01 |
| US20130311733A1 (en) | 2013-11-21 |
| AU2010328591A1 (en) | 2012-05-31 |
| JP5628341B2 (ja) | 2014-11-19 |
| US20110145527A1 (en) | 2011-06-16 |
| WO2011071656A2 (en) | 2011-06-16 |
| WO2011071656A3 (en) | 2011-09-09 |
| RU2560786C2 (ru) | 2015-08-20 |
| JP2013513862A (ja) | 2013-04-22 |
| CA2780003A1 (en) | 2011-06-16 |
| EP2510434A2 (en) | 2012-10-17 |
| EP2510434B1 (en) | 2019-09-25 |
| KR101690824B1 (ko) | 2017-01-09 |
| US20150199143A1 (en) | 2015-07-16 |
| AU2010328591B2 (en) | 2014-04-10 |
| US8433865B2 (en) | 2013-04-30 |
| US9430160B2 (en) | 2016-08-30 |
| KR20120104302A (ko) | 2012-09-20 |
| US8996829B2 (en) | 2015-03-31 |
| EP2510434A4 (en) | 2017-01-25 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CA2780003C (en) | Consistency without ordering dependency | |
| EP2583202B1 (en) | Checkpoints for a file system | |
| US9448869B2 (en) | Error detection for files | |
| KR20130139883A (ko) | 오프로드 판독 및 기록 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| EEER | Examination request |
Effective date: 20151028 |