RU2008137135A - Управление параллельным выполнением в системе планирования ресурсов предприятия - Google Patents
Управление параллельным выполнением в системе планирования ресурсов предприятия Download PDFInfo
- Publication number
- RU2008137135A RU2008137135A RU2008137135/09A RU2008137135A RU2008137135A RU 2008137135 A RU2008137135 A RU 2008137135A RU 2008137135/09 A RU2008137135/09 A RU 2008137135/09A RU 2008137135 A RU2008137135 A RU 2008137135A RU 2008137135 A RU2008137135 A RU 2008137135A
- Authority
- RU
- Russia
- Prior art keywords
- data
- version
- identification
- transaction
- row
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2308—Concurrency control
- G06F16/2336—Pessimistic concurrency control approaches, e.g. locking or multiple versions without time stamps
- G06F16/2343—Locking methods, e.g. distributed locking or locking implementation details
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2308—Concurrency control
- G06F16/2315—Optimistic concurrency control
- G06F16/2329—Optimistic concurrency control using versioning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07C—TIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
- G07C15/00—Generating random numbers; Lottery apparatus
- G07C15/005—Generating random numbers; Lottery apparatus with dispensing of lottery tickets
Abstract
1. Способ управления параллельным выполнением в системе планирования ресурсов предприятия, содержащей базу данных, выполненную с возможностью содержания данных в таблице, имеющей множество строк, способ, содержащий этапы, на которых: ! принимают запрос записи из запрашивающего приложения для обновления данных в пределах строки первой таблицы во время первой транзакции с данными, в которой строка содержит первую идентификацию версии, уникально идентифицирующую версию обновляемых данных (302); ! сравнивают первую идентификацию версии обновляемых данных со второй идентификацией версии, уникально идентифицирующей версию данных в пределах строки, когда данные выбирают в ответ на предыдущий запрос чтения во время первой транзакции с данными (408); и ! выполняют отброс исключения, если первая идентификация версии не соответствует второй идентификации версии (412). ! 2. Способ по п.1, дополнительно содержащий этапы, на которых: ! блокируют данные из запроса записи второй транзакции с данными для предотвращения обновления второй транзакции с данными в пределах строки, если первая идентификация версии соответствует второй идентификации версии (416); ! обновляют данные в пределах строки (416); ! фиксируют первую транзакцию с данными (418); ! убирают блокирование данных (420); и ! генерируют третью идентификацию версии, которая уникально идентифицирует версию обновленных данных. ! 3. Способ по п.2, дополнительно содержащий этап, на котором: разрешают чтение данных в пределах строки первой таблицы в ответ на запрос чтения из запрашивающего приложения во время второй транзакции с данными, в то время как данные заблокированы для запроса за�
Claims (20)
1. Способ управления параллельным выполнением в системе планирования ресурсов предприятия, содержащей базу данных, выполненную с возможностью содержания данных в таблице, имеющей множество строк, способ, содержащий этапы, на которых:
принимают запрос записи из запрашивающего приложения для обновления данных в пределах строки первой таблицы во время первой транзакции с данными, в которой строка содержит первую идентификацию версии, уникально идентифицирующую версию обновляемых данных (302);
сравнивают первую идентификацию версии обновляемых данных со второй идентификацией версии, уникально идентифицирующей версию данных в пределах строки, когда данные выбирают в ответ на предыдущий запрос чтения во время первой транзакции с данными (408); и
выполняют отброс исключения, если первая идентификация версии не соответствует второй идентификации версии (412).
2. Способ по п.1, дополнительно содержащий этапы, на которых:
блокируют данные из запроса записи второй транзакции с данными для предотвращения обновления второй транзакции с данными в пределах строки, если первая идентификация версии соответствует второй идентификации версии (416);
обновляют данные в пределах строки (416);
фиксируют первую транзакцию с данными (418);
убирают блокирование данных (420); и
генерируют третью идентификацию версии, которая уникально идентифицирует версию обновленных данных.
3. Способ по п.2, дополнительно содержащий этап, на котором: разрешают чтение данных в пределах строки первой таблицы в ответ на запрос чтения из запрашивающего приложения во время второй транзакции с данными, в то время как данные заблокированы для запроса записи.
4. Способ по п.1, дополнительно содержащий этапы, на которых:
производят выборку данных в ответ на запрос чтения из запрашивающего приложения для данных в течение первой транзакции с данными;
сохраняют идентификацию первой версии, которая уникально идентифицирует выбранные данные;
разрешают вторую транзакцию с данными для обновления данных; и
генерируют идентификацию второй версии, которая уникально идентифицирует обновленные данные второй транзакции с данными, причем обновленные данные второй транзакции с данными содержат данные, обновленные во время первой транзакции с данными.
5. Способ по п.1, в котором отбрасывание исключения содержит этап, на котором: отбрасывают исключение в код приложения запрашивающего приложения (412).
6. Способ по п.1, в котором запрос на запись генерируют из оператора обновления запрашивающего приложения, заключенного в пределах первого блока попытки, и в котором обработка исключения в пределах первой транзакции с данными содержит этапы, на которых:
захватывают исключение в пределах блока захвата блока попытки (602);
повторно считывают идентификацию второй версии из строки (612); и
повторно пытаются сравнить идентификацию первой версии с идентификацией второй версии (612).
7. Способ по п.6, в котором первый блок попытки вложен во второй блок попытки, причем способ дополнительно содержит обработку исключения в пределах первой транзакции с данными, содержащую этапы, на которых:
перемещают исполнение обработки обратно во второй блок попытки, если повторная попытка сравнения идентификации первой версии с идентификацией второй версии в пределах блока захвата первого блока попытки приводит к отбросу исключения (614); и
пытаются обработать исключение в пределах второго блока попытки (612).
8. Способ по п.6, в котором обработка первой транзакции с данными содержит этап, на котором: прекращают первую транзакцию с данными, если повторная попытка сравнения идентификации первой версии с идентификацией второй версии в пределах блока захвата первого блока попытки приводит к отбросу исключения, и если первый блок попытки не вложен во второй блок попытки (604), (606).
9. Способ по п.1, в котором первая транзакция с данными вложена во вторую транзакцию с данными, в которой обработка исключения в первой транзакции с данными содержит: перемещают исполнение обработки обратно во вторую транзакцию с данными (608), (610).
10. Способ по п.1, в котором идентификация первой версии содержит одно из следующего: случайное число, основанное на обновленных данных, или случайное число, основанное на первом случайном исходном числе, и в котором номер идентификации второй версии содержит одно из следующего: случайное число, основанное на данных, когда данные выбирают в ответ на предыдущий запрос чтения в течение первой транзакции с данными, или случайное число основано на втором случайном исходном числе.
11. Способ по п.1, в котором данные в пределах строки второй таблицы зависят от обновляемых данных, причем способ дополнительно содержит этапы, на которых:
блокируют данные в пределах строки первой таблицы из запроса записи второй транзакции с данными для предотвращения обновления данных в строке первой таблицы со стороны второй транзакции с данными, если данные, находящиеся в строке второй таблицы данных, рассчитывают из данных в пределах строки первой таблицы (806);
блокируют данные в пределах строки второй таблицы из запроса на запись второй транзакции с данными для предотвращения обновления данных в строке второй таблицы со стороны второй транзакции с данными (806);
производят выборку данных в пределах строки первой таблицы (808);
обновляют данные в пределах строки первой таблицы (808);
определяют данные в пределах строки второй таблицы на основе, по меньшей мере, части обновленных данных в пределах строки первой таблицы (810);
обновляют данные в пределах строки второй таблицы (812);
фиксируют первую транзакцию с данными (814); и
высвобождают блокировки для данных в пределах строк первой и второй таблиц (814).
12. Способ по п.1, дополнительно содержащий этапы, на которых:
обновляют данные без сравнения идентификации первой и второй версии, если запрос записи содержит обновление для предоставления нового значения для данных в пределах строки первой таблицы, соответственно зависящей от существующего значения данных в пределах строки первой таблицы (710);
генерируют идентификацию третьей версии (704);
определяют разность между идентификацией второй версии и идентификацией третьей версии (706); и
вырабатывают обновление для установки идентификации версии, которая уникально идентифицирует версию обновленных данных как значение идентификации второй версии плюс разность (708).
13. Машиночитаемый носитель, имеющий машиноисполняемые инструкции, для реализации способа управления параллельным выполнением между множеством транзакций с данными для данных в пределах первой строки первой таблицы, причем машиноисполняемые инструкции содержат инструкции для:
сравнения первой версии значения идентификации и второй версии значения идентификации, в котором значение идентификации первой версии уникально идентифицирует версию данных из первой строки во время запроса на считывание первой транзакции с данными, и в котором вторая идентификация версии уникально идентифицирует версию данных из первой строки во время запроса записи первой транзакции с данными (410);
отбрасывания исключения, если первая идентификация версии не соответствует второй идентификации версии (412); и
обработки исключения в пределах первой транзакции с данными, если первая таблица разрешена для оптимистичного управления параллельным выполнением (414).
14. Машиночитаемый носитель, имеющий машиноисполняемые инструкции по п.13, в котором запрос записи генерируют из оператора обновления запрашивающего приложения, и в котором оператор обновления содержит перезапись оптимистичного управления параллельным выполнением, если первая таблица будет установлена для оптимистичного управления параллельным выполнением, причем машиноисполняемые инструкции дополнительно содержат инструкции для блокирования первой строки первой таблицы от каких-либо запросов чтения операции записи или запросов записи из запрашивающего приложения во время второй транзакции с данными, в которой блокировку удерживают в течение длительности первой транзакции с данными (312).
15. Машиночитаемый носитель, содержащий машиноисполняемые инструкции по п.13, в котором запрос записи генерируют из оператора обновления запрашивающего приложения, и в котором оператор обновления содержит подсказку на обновление для обеспечения возможности пессимистичного блокирования, причем выполняемые компьютером инструкции дополнительно содержат инструкции, которые запрещают подсказку на обновление для обеспечения возможности пессимистичного блокирования, если разрешено оптимистичное управление параллельным выполнением для первой таблицы (310).
16. Машиночитаемый носитель, имеющий машиноисполняемые инструкции по п.13, дополнительно содержащий этап, на котором: выполняют пессимистичное блокирование элемента данных в течение длительности транзакции с данными, если оптимистичное управление параллельным выполнением не разрешено для первой таблицы (312), в котором пессимистичное блокирование содержит этапы, на которых:
блокируют первую строку для каких-либо запросов чтения и запросов записи из запрашивающего приложения во время второй транзакции с данными (312); и
обновляют первую строку без сравнения идентификации первой версии с идентификацией второй версии (316).
17. Машиночитаемый носитель, имеющий машиноисполняемые инструкции по п.13, в котором запрос записи генерируют из оператора на обновление запрашивающего приложения, заключенного в первый блок попытки, и в котором обработка исключения в пределах первой транзакции с данными содержит этапы, на которых:
захватывают исключение в пределах блока захвата блока попытки (602);
повторно считывают идентификацию второй версии из строки (612); и
выполняют повторную попытку сравнения идентификации первой версии с идентификацией второй версии (612).
18. Компьютер, выполненный с возможностью участия в сети планирования ресурсов предприятия, содержащий:
сетевое устройство (170), (172) связи, предназначенное для приема данных через сеть;
память (130), (140), (150), в которой содержатся машиночитаемые инструкции; и
процессор (120), предназначенный для исполнения машиночитаемых инструкций, выполняющих способ, содержащий этапы, на которых:
принимают запрос чтения из запрашивающего приложения для чтения первой строки первой таблицы, содержащейся в базе данных, в течение первой транзакции с данными (302);
сохраняют первую идентификацию версии, которая уникально идентифицирует версию данных, считанных из первой строки (302);
принимают запрос записи из запрашивающего приложения для обновления первой строки во время первой транзакции с данными (302);
сравнивают идентификацию первой версии с идентификацией второй версии, которая уникально идентифицирует версию данных из первой строки, когда принимают первый запрос записи (410);
отбрасывают исключения в запрашивающее приложение, если идентификация первой версии не соответствует идентификации второй версии (412); и
обрабатывают исключения в пределах первой транзакции с данными (414).
19. Компьютер по п.18, в котором инструкции для обработки исключения в пределах первой транзакции с данными содержат инструкции для:
повторного считывания идентификации второй версии из строки (612); и
выполнения повторной попытки сравнения идентификации первой версии с идентификацией второй версии (612).
20. Компьютер по п.18, в котором запрос записи генерируют из оператора обновления запрашивающего приложения, включенного в пределы первого блока попытки, и в котором инструкции на обработку исключения в пределах первой транзакции с данными содержат инструкции для:
перемещения исключения обработки назад ко второму блоку попытки и обработки исключения в пределах второго блока попытки, если первый блок попытки заключен во второй блок попытки, и если обработка исключения в пределах первого блока попытки приводит к отбрасыванию исключения (608), (610), (612), (614); и
прекращают первую транзакцию с данными, если первый блок попытки не заключен во второй блок попытки, и если обработка исключения в пределах первого блока попытки приводит к отбрасыванию исключения (604), (606).
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/378,890 US7933881B2 (en) | 2006-03-17 | 2006-03-17 | Concurrency control within an enterprise resource planning system |
US11/378,890 | 2006-03-17 |
Publications (2)
Publication Number | Publication Date |
---|---|
RU2008137135A true RU2008137135A (ru) | 2010-03-27 |
RU2417427C2 RU2417427C2 (ru) | 2011-04-27 |
Family
ID=38519162
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2008137135/08A RU2417427C2 (ru) | 2006-03-17 | 2007-01-16 | Управление параллельным выполнением в системе планирования ресурсов предприятия |
Country Status (7)
Country | Link |
---|---|
US (1) | US7933881B2 (ru) |
EP (1) | EP2011045A1 (ru) |
KR (1) | KR20080106431A (ru) |
CN (1) | CN101405735B (ru) |
BR (1) | BRPI0708732A2 (ru) |
RU (1) | RU2417427C2 (ru) |
WO (1) | WO2007108859A1 (ru) |
Families Citing this family (48)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7818740B2 (en) * | 2006-05-05 | 2010-10-19 | Microsoft Corporation | Techniques to perform gradual upgrades |
US7571165B2 (en) * | 2006-09-28 | 2009-08-04 | Sap Ag | Method and system for providing locking behavior |
US8041692B2 (en) * | 2007-04-09 | 2011-10-18 | Hewlett-Packard Development Company, L.P. | System and method for processing concurrent file system write requests |
US8091094B2 (en) | 2007-10-10 | 2012-01-03 | Sap Ag | Methods and systems for ambistateful backend control |
US7895172B2 (en) * | 2008-02-19 | 2011-02-22 | Yahoo! Inc. | System and method for writing data dependent upon multiple reads in a distributed database |
US8914341B2 (en) * | 2008-07-03 | 2014-12-16 | Tripwire, Inc. | Method and apparatus for continuous compliance assessment |
US8073778B2 (en) * | 2008-09-11 | 2011-12-06 | Linden Research, Inc. | Scalable distributed transaction manager for multi-host transactions |
US8332443B2 (en) * | 2008-12-19 | 2012-12-11 | Microsoft Corporation | Masterless distributed batch scheduling engine |
US8719845B2 (en) | 2010-05-19 | 2014-05-06 | Microsoft Corporation | Sharing and synchronization of objects |
US8768902B2 (en) | 2010-06-11 | 2014-07-01 | Microsoft Corporation | Unified concurrent changes to data, schema, and application |
US8386421B2 (en) | 2010-06-28 | 2013-02-26 | Microsoft Corporation | Concurrency control for confluent trees |
US8412689B2 (en) * | 2010-07-07 | 2013-04-02 | Microsoft Corporation | Shared log-structured multi-version transactional datastore with metadata to enable melding trees |
CN102456017A (zh) * | 2010-10-18 | 2012-05-16 | 北京市金蝶政务软件有限公司 | 存储数据的方法和装置 |
US9848106B2 (en) | 2010-12-21 | 2017-12-19 | Microsoft Technology Licensing, Llc | Intelligent gameplay photo capture |
US9003519B2 (en) * | 2011-05-16 | 2015-04-07 | At&T Intellectual Property I, L.P. | Verifying transactions using out-of-band devices |
CN102436633A (zh) * | 2011-11-30 | 2012-05-02 | 华为技术有限公司 | 数据管理方法及系统、数据库系统 |
US9110940B2 (en) | 2012-02-29 | 2015-08-18 | Red Hat, Inc. | Supporting transactions in distributed environments using a local copy of remote transaction data and optimistic locking |
US8832050B2 (en) * | 2012-03-09 | 2014-09-09 | Hewlett-Packard Development Company, L.P. | Validation of distributed balanced trees |
US9774676B2 (en) | 2012-05-21 | 2017-09-26 | Google Inc. | Storing and moving data in a distributed storage system |
WO2013184712A2 (en) * | 2012-06-04 | 2013-12-12 | Google Inc. | Systems and methods of increasing database access concurrency using granular timestamps |
US9659038B2 (en) | 2012-06-04 | 2017-05-23 | Google Inc. | Efficient snapshot read of a database in a distributed storage system |
US9449006B2 (en) | 2012-06-04 | 2016-09-20 | Google Inc. | Method and system for deleting obsolete files from a file system |
US9230000B1 (en) | 2012-06-04 | 2016-01-05 | Google Inc. | Pipelining Paxos state machines |
US20140067480A1 (en) * | 2012-09-05 | 2014-03-06 | Rocket Software, Inc. | Systems and methods for enterprise-level context management |
CN104239357B (zh) * | 2013-06-21 | 2019-01-18 | Sap欧洲公司 | 用于数据库事务的并发请求处理 |
US9659050B2 (en) | 2013-08-06 | 2017-05-23 | Sybase, Inc. | Delta store giving row-level versioning semantics to a non-row-level versioning underlying store |
US9489409B2 (en) | 2013-10-17 | 2016-11-08 | Sybase, Inc. | Rollover strategies in a N-bit dictionary compressed column store |
US10282228B2 (en) * | 2014-06-26 | 2019-05-07 | Amazon Technologies, Inc. | Log-based transaction constraint management |
CN104573833A (zh) * | 2014-12-31 | 2015-04-29 | 普天新能源有限责任公司 | 一种充电预约方法 |
US9679003B2 (en) * | 2015-01-07 | 2017-06-13 | International Business Machines Corporation | Rendezvous-based optimistic concurrency control |
US10489374B2 (en) | 2015-06-01 | 2019-11-26 | International Business Machines Corporation | In-place updates with concurrent reads in a decomposed state |
US9514046B1 (en) | 2015-06-10 | 2016-12-06 | International Business Machines Corporation | Dynamic detection and software correction of incorrect lock and atomic update hint bits |
US9921953B2 (en) | 2015-09-09 | 2018-03-20 | International Business Machines Corporation | Dynamic detection and correction of incorrect lock and atomic update hint bits |
JP2017078981A (ja) * | 2015-10-21 | 2017-04-27 | 富士通株式会社 | 排他切り替えプログラム及び排他切り替え方法 |
WO2017131784A1 (en) * | 2016-01-29 | 2017-08-03 | Hewlett Packard Enterprise Development Lp | Hybrid concurrency control |
CN106921646B (zh) * | 2016-07-26 | 2020-11-20 | 创新先进技术有限公司 | 业务处理方法及装置 |
CN106919640A (zh) * | 2016-11-16 | 2017-07-04 | 阿里巴巴集团控股有限公司 | 一种业务处理方法和装置 |
CN106776052B (zh) * | 2016-12-07 | 2019-12-10 | 金蝶软件(中国)有限公司 | 共享资源访问方法和装置 |
US10810188B2 (en) * | 2017-11-29 | 2020-10-20 | Teradata Us, Inc. | Load committed isolation processing |
US11423003B2 (en) * | 2017-12-11 | 2022-08-23 | Micro Focus Llc | Optimistic concurrency control for database transactions |
CN108769260B (zh) * | 2018-06-29 | 2020-10-16 | 苏州浪潮智能科技有限公司 | 一种集群升级过程中事件处理方法及其装置 |
US11023445B2 (en) * | 2018-07-24 | 2021-06-01 | Sap Se | Optimistic concurrency for collaborative applications |
US11640383B2 (en) * | 2018-11-15 | 2023-05-02 | Huawei Technologies Co., Ltd. | Systems and methods for managing a shared database |
FR3090929B1 (fr) * | 2018-12-20 | 2021-07-02 | Amadeus Sas | Actualisation de multiples enregistrements de données |
US11347713B2 (en) * | 2019-09-27 | 2022-05-31 | Salesforce.Com, Inc. | Version-based table locking |
CN110765143B (zh) * | 2019-10-10 | 2022-08-02 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置、服务器和存储介质 |
CN115098228B (zh) * | 2021-05-19 | 2023-04-14 | 腾讯科技(深圳)有限公司 | 事务处理方法、装置、计算机设备及存储介质 |
US11880388B2 (en) * | 2022-06-13 | 2024-01-23 | Snowflake Inc. | Hybrid table secondary index for lookups, unique checks, and referential integrity constraints |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5263156A (en) * | 1990-12-20 | 1993-11-16 | Bell Communications Research, Inc. | Parallel, distributed optimistic concurrency control certification using hardware filtering |
US5857197A (en) * | 1997-03-20 | 1999-01-05 | Thought Inc. | System and method for accessing data stores as objects |
US5920857A (en) * | 1997-08-04 | 1999-07-06 | Naphtali Rishe | Efficient optimistic concurrency control and lazy queries for B-trees and other database structures |
US6125371A (en) * | 1997-08-19 | 2000-09-26 | Lucent Technologies, Inc. | System and method for aging versions of data in a main memory database |
US6249803B1 (en) * | 1997-12-18 | 2001-06-19 | Sun Microsystems, Inc. | Method and apparatus for executing code during method invocation |
US6240413B1 (en) * | 1997-12-22 | 2001-05-29 | Sun Microsystems, Inc. | Fine-grained consistency mechanism for optimistic concurrency control using lock groups |
US6195685B1 (en) * | 1998-05-22 | 2001-02-27 | International Business Machines Corporation | Flexible event sharing, batching, and state consistency mechanisms for interactive applications |
US6338086B1 (en) * | 1998-06-11 | 2002-01-08 | Placeware, Inc. | Collaborative object architecture |
US6363387B1 (en) * | 1998-10-20 | 2002-03-26 | Sybase, Inc. | Database system providing methodology for enhancing concurrency using row update bit and deferred locking |
US6636242B2 (en) * | 1999-08-31 | 2003-10-21 | Accenture Llp | View configurer in a presentation services patterns environment |
US6598041B1 (en) * | 2000-09-07 | 2003-07-22 | International Business Machines Corporation | Method, system, and program for processing modifications to data in tables in a database system |
US6681226B2 (en) * | 2001-01-30 | 2004-01-20 | Gemstone Systems, Inc. | Selective pessimistic locking for a concurrently updateable database |
US6928582B2 (en) * | 2002-01-04 | 2005-08-09 | Intel Corporation | Method for fast exception handling |
US7139690B2 (en) * | 2002-07-22 | 2006-11-21 | Microsoft Corporation | Object-level conflict detection in an object-relational database system |
US7827135B2 (en) * | 2002-12-31 | 2010-11-02 | International Business Machines Corporation | Method and apparatus for relaxed transactional isolation in a client-server caching architecture |
US7290015B1 (en) * | 2003-10-02 | 2007-10-30 | Progress Software Corporation | High availability via data services |
US7599908B2 (en) * | 2005-11-18 | 2009-10-06 | Sap Ag | Logical locking for Java Data Objects |
-
2006
- 2006-03-17 US US11/378,890 patent/US7933881B2/en not_active Expired - Fee Related
-
2007
- 2007-01-16 RU RU2008137135/08A patent/RU2417427C2/ru not_active IP Right Cessation
- 2007-01-16 BR BRPI0708732-2A patent/BRPI0708732A2/pt not_active IP Right Cessation
- 2007-01-16 KR KR1020087022484A patent/KR20080106431A/ko not_active Application Discontinuation
- 2007-01-16 CN CN2007800094223A patent/CN101405735B/zh not_active Expired - Fee Related
- 2007-01-16 WO PCT/US2007/001021 patent/WO2007108859A1/en active Application Filing
- 2007-01-16 EP EP07716630A patent/EP2011045A1/en not_active Withdrawn
Also Published As
Publication number | Publication date |
---|---|
WO2007108859A1 (en) | 2007-09-27 |
KR20080106431A (ko) | 2008-12-05 |
CN101405735A (zh) | 2009-04-08 |
RU2417427C2 (ru) | 2011-04-27 |
US20070219999A1 (en) | 2007-09-20 |
EP2011045A1 (en) | 2009-01-07 |
US7933881B2 (en) | 2011-04-26 |
BRPI0708732A2 (pt) | 2011-06-14 |
CN101405735B (zh) | 2011-12-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2008137135A (ru) | Управление параллельным выполнением в системе планирования ресурсов предприятия | |
JP6724039B2 (ja) | 分散型コンピューティングシステムにおけるデータベーストランザクションの処理 | |
Tu et al. | Speedy transactions in multicore in-memory databases | |
Kim et al. | Ermia: Fast memory-optimized database system for heterogeneous workloads | |
US7873612B2 (en) | Atomically moving list elements between lists using read-copy update | |
JP7038710B2 (ja) | データ管理方法及びシステム | |
EP0455440B1 (en) | Method of operating a data processing system to perform database transactions | |
US6879981B2 (en) | Sharing live data with a non cooperative DBMS | |
US20110302143A1 (en) | Multi-version concurrency with ordered timestamps | |
US8407195B2 (en) | Efficient multi-version locking for main memory databases | |
US20170308565A1 (en) | Locking concurrent commands in a database management system | |
US20070050429A1 (en) | Time-range locking for temporal database and branched-and-temporal databases | |
US20100242043A1 (en) | Computer-Implemented Systems For Resource Level Locking Without Resource Level Locks | |
JPH0679285B2 (ja) | トランザクション処理方法およびシステム | |
US20070118523A1 (en) | Logical locking for Java Data Objects | |
CN109033359A (zh) | 一种多进程安全访问sqlite的方法 | |
US20050203904A1 (en) | System and method for measuring latch contention | |
US7752399B2 (en) | Exclusion control method and information processing apparatus | |
US20120323873A1 (en) | Managing Concurrent Access to Data in Database Sytem | |
US7558794B2 (en) | Database system and method with assigned locks | |
US7617180B1 (en) | Efficient lock management | |
Zhang et al. | Brief announcement: on enhancing concurrency in distributed transactional memory | |
Kostrzewa et al. | Performance aspect of the in-memory databases accessed via JDBC | |
CN112035509A (zh) | 医疗缓存数据的查询方法、装置、设备及存储介质 | |
Zhou et al. | Decentralizing MVCC by Leveraging Visibility |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | The patent is invalid due to non-payment of fees |
Effective date: 20130117 |