Limbo: асинхронная SQLite для бессерверных вычислений

Исследователи создали Limbo – переписанную на Rust версию SQLite, использующую io_uring для асинхронного ввода/вывода. Это позволяет избежать блокировки потока приложения во время дисковых операций. Архитектура Limbo перестроена на уровнях виртуальной машины и B-дерева, заменяя синхронные инструкции байт-кода на асинхронные аналоги.
Limbo: асинхронная SQLite для бессерверных вычислений
Изображение носит иллюстративный характер

При тестировании в мультиарендной бессерверной среде Limbo продемонстрировала 100-кратное снижение задержки при p999 по сравнению с оригинальной SQLite. Этот результат достигается за счет параллельного выполнения вычислительных задач и задач ввода/вывода, уменьшая конкуренцию за ресурсы.

Несмотря на значительное ускорение, есть вопросы о совместимости Limbo с SQL и SQLite. Важно отметить, что гарантия порядка записи при асинхронном I/O требует особого внимания для обеспечения целостности данных. Необходимо дальнейшее изучение баланса между асинхронностью и транзакционностью.

Следует учитывать, что большая часть выигрыша в скорости Limbo достигается при высоких перцентилях задержки (p999), тогда как при p90 и p99 производительность практически равна SQLite. Также не ясно, насколько результаты эксперимента зависят от неполной реализации транзакций в Limbo.


Новое на сайте

19192Почему внедрение команд операционной системы в FileZen заставило CISA требовать... 19191Могут ли безобидные текстовые промпты для нейросетей стать самым разрушительным... 19190Как 9 древних правил Конфуция помогают обрести эмоциональный интеллект и победить стресс... 19189Почему экономика, а не высокие идеалы, стала истинным двигателем сопротивления в... 19188Критическая уязвимость в решениях BeyondTrust спровоцировала глобальную волну кражи... 19187Эволюция угроз: атака на цепочку поставок ИИ-ассистента Cline CLI через уязвимость... 19186Как фальшивая проверка Cloudflare в кампании ClickFix скрыто внедряет новый троян... 19185Почему гендерно-нейтральные корпоративные политики становятся главным инструментом... 19184Как искусственный интеллект уничтожил временной зазор между обнаружением уязвимости и... 19183Банковский троян Massiv маскируется под IPTV для захвата контроля над Android 19182Как шпионская кампания CRESCENTHARVEST использует социальную инженерию для кражи данных... 19181Как критическая уязвимость в телефонах Grandstream открывает хакерам доступ к... 19180Почему операционная непрерывность становится единственным ответом на перманентную... 19179Критические уязвимости в популярных расширениях VS Code угрожают миллионам разработчиков 19178Как внедрить интеллектуальные рабочие процессы и почему 88% проектов ИИ терпят неудачу?
Ссылка