Быстрые транзакции в многопроцессорных базах данных, хранящих данные в памяти

Speedy transactions in multicore in-memory databases
Samuel Madden, Barbara Liskov, Stephen Tu, Wenting Zheng, Eddie Kohler
2013-10-08

тест TPC-Cоперативные базы данныхмасштабируемость на многоядерных системахоптимистический контроль параллелизмасериализуемость
Silo — это новая база данных, хранящая данные в памяти, которая обеспечивает высокую производительность и масштабируемость на современных многопроцессорных машинах. Silo с самого начала проектировалась для эффективного использования системной памяти и кэш-памяти. Например, она устраняет все централизованные точки конкуренции, включая централизованное назначение идентификаторов транзакций. Ключевой вклад Silo заключается в протоколе фиксации на основе оптимистического управления конкурентным доступом, который обеспечивает сериализуемость, избегая всех записей в разделяемую память для записей, которые только считывались. Хотя это может показаться усложняющим обеспечение последовательного порядка, корректное журналирование и восстановление обеспечиваются связыванием периодически обновляемых эпох с протоколом фиксации. Silo предоставляет те же гарантии, что и любая сериализуемая база данных, без ненужных узких мест масштабируемости и существенной дополнительной задержки. Silo достигает почти 700 000 транзакций в секунду на стандартной смеси рабочих нагрузок TPC-C на машине с 32 ядрами, а также демонстрирует почти линейную масштабируемость. В пересчёте на одно ядро этот показатель в несколько раз выше ранее опубликованных результатов.
1
Её протокол фиксации на основе оптимистического управления параллелизмом обеспечивает сериализуемость без записей в общую память для записей, которые только читались.
2
Связывание периодически обновляемых эпох с протоколом фиксации обеспечивает корректное журналирование и восстановление несмотря на децентрализованный процесс фиксации.
3
Silo достигает почти 700 000 транзакций в секунду при стандартной рабочей нагрузке TPC-C на 32 ядрах, демонстрируя почти линейную масштабируемость и производительность на ядро в несколько раз выше ранее опубликованных результатов.
4
Silo устраняет централизованные точки конкуренции, включая централизованное назначение идентификаторов транзакций, повышая масштабируемость.
5
Silo — это база данных в памяти, разработанная для эффективного использования системной памяти и кэшей на современных многоядерных машинах.

Silo — база данных в оперативной памяти, работающая на современных многоядерных машинах

Масштабируемость, пропускная способность транзакций и протокол фиксации на основе сериализуемого оптимистического управления конкурентным доступом в Silo, включая устранение централизованных точек конкуренции и записей в разделяемую память для записей, доступных только для чтения

Publication Details
Publication Date
2013-10-08
Journal
Publisher
ISSN
Access Type
Author Information
Authors
Samuel Madden
Barbara Liskov
Stephen Tu
Wenting Zheng
Eddie Kohler
Explore further
Open the scid.ai AI chat with a ready-made request: it will find papers on a similar topic and help build a literature review.
Find similar papers in the chat
Make a presentation
100%