Please enable JavaScript to use this page!

AllTalks site logo
πŸ”

A deep dive into a database engine internals

In this talk, Oren Eini, founder of RavenDB, is going to take apart a database engine on stage. We are going to inspect all the different pieces that make for an industrial-grade database engine, from the way the data is laid out on disk to how the database is ensuring that transactions are durable. We'll explore algorithms such as B+Tree, write-ahead logs, discuss concurrency strategies and how different features of the database work together to achieve the end goals.


YaTalks

41 min

Под ΠΊΠ°ΠΏΠΎΡ‚ΠΎΠΌ Ρ€ΠΎΠ±ΠΎΡ‚Π°-доставщика

Π”ΠΌΠΈΡ‚Ρ€ΠΈΠΉ Π”ΠΎΠ±Ρ€Ρ‹Π½ΠΈΠ½

МногиС ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Π·Π°Π½ΠΈΠΌΠ°ΡŽΡ‚ΡΡ Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΡ‚Π΅Ρ…Π½ΠΈΠΊΠΎΠΉ ΠΈ Ρ€ΠΎΠ±ΠΎΡ‚ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ, ΠΎΠ΄Π½Π°ΠΊΠΎ Π² Π·Π°Π΄Π°Ρ‡Π΅ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ послСднСй ΠΌΠΈΠ»ΠΈ ΠΏΠΎΠΊΠ° Π½Π΅Ρ‚ явного Π»ΠΈΠ΄Π΅Ρ€Π°, ΠΊΠ°ΠΊ Π½Π΅Ρ‚ ΠΈ общСпринятого стандарта, ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰Π΅Π³ΠΎ, ΠΊΠ°ΠΊ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ ΠΈ …

YaTalks

32 min

Π‘ΠΎΠ»ΡŒΡˆΠΎΠΉ Ρ‚Π°Π±Π»Π΅Ρ‚ΠΎΡ‡Π½Ρ‹ΠΉ Π²Π·Ρ€Ρ‹Π²

АндрСй Π€ΠΎΠΌΠΈΡ‡Π΅Π²

БоврСмСнная распрСдСлённая Π‘Π”, ΠΊΠ°ΠΊ ΠΈ сама ВсСлСнная, состоит ΠΈΠ· ΠΌΠ΅Π»ΡŒΡ‡Π°ΠΉΡˆΠΈΡ… частиц. Из частиц, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΡ‹ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌ Ρ‚Π°Π±Π»Π΅Ρ‚ΠΊΠ°ΠΌΠΈ, строится пСтабайтная всСлСнная Π΄Π°Π½Π½Ρ‹Ρ… Π² Yandex Database. Π’Π°Π±Π»Π΅Ρ‚ΠΊΠΈ Ρ€Π΅ΡˆΠ°ΡŽΡ‚ …

Oracle OpenWorld Europe

37 min

Winning the War on Database Complexity

Daphne Koller

For decades, data management has been costly and slow moving. Learn how new technologies will finally eliminate the sources of data management complexity, leading to dramatically lower costs, higher …

YaTalks

39 min

БСрвис Π½Π° userver: Ρ‡Ρ‚ΠΎ снаруТи ΠΈ Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ΄ ΠΊΠ°ΠΏΠΎΡ‚ΠΎΠΌ

Антон ΠŸΠΎΠ»ΡƒΡ…ΠΈΠ½

РассказываСм ΠΎ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ΅ ЯндСкс Go ΠΈ Π΅Π³ΠΎ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅ΠΌ устройствС. Π”ΠΎΠΊΠ»Π°Π΄ Π±ΡƒΠ΄Π΅Ρ‚ интСрСсСн людям, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ хотят Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ Π² устройствС ΠΊΠΎΡ€ΡƒΡ‚ΠΈΠ½ΠΎΠ²Ρ‹Ρ… Π΄Π²ΠΈΠΆΠΊΠΎΠ² ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ асинхронных Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΎΠ². Π’Ρ‹ ΡƒΠ·Π½Π°Π΅Ρ‚Π΅:…

YaTalks

32 min

ClickHouse: настоящСС ΠΈ Π±ΡƒΠ΄ΡƒΡ‰Π΅Π΅

АлСксСй Миловидов

Π”ΠΎΠΊΠ»Π°Π΄ посвящён основным ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ°ΠΌ ΠΈ цСлям развития ClickHouse: ΠΎΡ‚Π»ΠΈΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ Ρ‡Π΅Ρ€Ρ‚Π°ΠΌ ΠΈ прСимущСствам систСмы, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΡ‹ ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΠ΅ΠΌ Ρ€Π°Π·Π²ΠΈΠ²Π°Ρ‚ΡŒ. Π’Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ нСдостатках ΠΈ нСудобствах, Π½Π°Π΄ которыми…

C++ Russia

58 min

Concurrency and parallelism in C++17 and C++20/23

Rainer Grimm

What do threads, atomic variables, mutexes, and conditional variables have in common? They are the basic building blocks of any concurrent application in C++, which are a big challenge even for the e…

ITeaConf

55 min

Is it time to re-sync?

АндрСй ΠŸΠ΅Ρ‡ΠΊΡƒΡ€ΠΎΠ²

Π‘ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρ‹ ΠΊΡ€ΠΎΡŽΡ‚ Π² сСбС мноТСство Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹Ρ… ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΉ ΠΈ особСнностСй Ρ€Π°Π±ΠΎΡ‚Ρ‹ ЦП ΠΈ памяти, ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π²Π°ΠΆΠ½ΠΎ ΠΏΡ€ΠΈ написании ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡ‚ΠΎΡ‡Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Π½Π° любом языкС, Π² Ρ‚ΠΎΠΌ числС ΠΈ Golang.…

C++ Russia

51 min

Π­Π²ΠΎΠ»ΡŽΡ†ΠΈΡ мСтапрограммирования: ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ со списками Ρ‚ΠΈΠΏΠΎΠ²

ОлСг Π€Π°Ρ‚Ρ…ΠΈΠ΅Π²

Π“Π»ΡƒΠ±ΠΎΠΊΠΈΠΉ рассказ ΠΎ ΠΌΠ΅Ρ‚Π°ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Π² рСтроспСктивС. ΠžΠ±ΡΡƒΠ΄ΠΈΠΌ ΠΎΠ±Ρ‰ΠΈΠ΅ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Ρ‹ Π² ΠΌΠ΅Ρ‚Π°ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΏΠ΅Ρ€Π΅ΠΉΠ΄Ρ‘ΠΌ ΠΊ спискам Ρ‚ΠΈΠΏΠΎΠ². По шагам напишСм Π½Π΅Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ со списками т…

C++ Siberia

51 min

ΠžΠ±Π·ΠΎΡ€ C++ ΠΊΠΎΠ΄Π° Π³Π»Π°Π·Π°ΠΌΠΈ ΠΏΠ°Ρ€Π°Π½ΠΎΠΈΠΊΠ°

Π€ΠΈΠ»ΠΈΠΏΠΏ Π₯Π°Π½Π΄Π΅Π»ΡŒΡΠ½Ρ†

Код языка C++ ΠΏΠΎΠ΄ΠΎΠ±Π΅Π½ ΠΌΠΈΠ½Π½ΠΎΠΌΡƒ полю. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ качСствСнный Π²Π½ΠΈΠΌΠ°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ code-review ΠΊΡ€Π°ΠΉΠ½Π΅ ΠΏΠΎΠ»Π΅Π·Π΅Π½. Π­Ρ‚ΠΎΡ‚ Π΄ΠΎΠΊΠ»Π°Π΄ ΡƒΠ»ΡƒΡ‡ΡˆΠΈΡ‚ ваши Π½Π°Π²Ρ‹ΠΊΠΈ Π² этом Π½Π΅Π»Ρ‘Π³ΠΊΠΎΠΌ Π΄Π΅Π»Π΅. ΠœΡ‹ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΠ°Ρ‚Ρ‚Π΅Ρ€Π½Π°Ρ… ошибок, ΠΎ ко…

JSConf Budapest

21 min

Algorithms and Their Habitat

Vitalii Bobrov

Algorithms are mysterious beasts that hard to catch in the source code. However, well-chosen data structures and efficient algorithms applied to a web app is a key to performance. I want to show how …

DotNext

71 min

gRPC Π² .NET β€” Ρ€Π΅Ρ†Π΅ΠΏΡ‚Ρ‹ ΡΡ‡Π°ΡΡ‚ΡŒΡ

ΠœΠΈΡ…Π°ΠΈΠ» ΠšΡƒΠ·Π½Π΅Ρ†ΠΎΠ²

ΠœΠ°ΡΡΠΎΠ²Ρ‹ΠΉ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ ΠΎΡ‚ ΠΌΠΎΠ½ΠΎΠ»ΠΈΡ‚ΠΎΠ² ΠΊ микросСрвисам Ρ€Π΅ΡˆΠ°Π΅Ρ‚ ΠΎΠ΄Π½ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹, Π½ΠΎ создаёт Π΄Ρ€ΡƒΠ³ΠΈΠ΅ β€” взаимодСйствиС сСрвисов сущСствСнно слоТнСС ΠΈ Π΄ΠΎΡ€ΠΎΠΆΠ΅, Ρ‡Π΅ΠΌ взаимодСйствиС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π² памяти. Частично ΡƒΠΏΡ€ΠΎΡΡ‚ΠΈΡ‚ΡŒ …

HolyJS

72 min

CΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΉ бэкСнд для Ρ„Ρ€ΠΎΠ½Ρ‚Π΅Π½Π΄Π° Π½Π° Node.js

АндрСй ΠœΠ΅Π»ΠΈΡ…ΠΎΠ²

Π‘ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΉ Ρ„Ρ€ΠΎΠ½Ρ‚Π΅Π½Π΄ β€” это Π±ΠΎΠ³Π°Ρ‚ΠΎΠ΅ клиСнтскоС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΎΠΏΠ΅Ρ€ΠΈΡ€ΡƒΡŽΡ‰Π΅Π΅ развСсистым Π½Π°Π±ΠΎΡ€ΠΎΠΌ Π΄Π°Π½Π½Ρ‹Ρ…. Однако, ΠΎΡΡ‚Π°Π²Π°ΡΡΡŒ Π² ΠΏΠ°Ρ€Π°Π΄ΠΈΠ³ΠΌΠ΅ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ Β«ΠΊΠ»ΠΈΠ΅Π½Ρ‚-сСрвСр», Ρ‚Π°ΠΊΠΈΠ΅ прилоТСния всё Π΅Ρ‰Ρ‘ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ сСрвСрног…

C++ Russia

58 min

ABI compatibility is not a MAJOR problem

Javier GarcΓ­a Sogo

Too often, C++ developers tend to ignore ABI compatibility problems and think that incompatibilities are limited to changes in the interface of the library motivated by new features or bugs. However,…

ITeaConf

25 min

ΠžΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΡΡ‚ΡŒ: процСссы, Ρ€Π°ΠΊΡ‚ΠΎΡ€Ρ‹, ΠΏΠΎΡ‚ΠΎΠΊΠΈ ΠΈ Ρ„Π°ΠΉΠ±Π΅Ρ€Ρ‹

Π•Π²Π³Π΅Π½ΠΈΠΉ Π Π°Ρ‰Π΅ΠΏΠΊΠΈΠ½

ΠœΡ‹ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ Π² Ruby Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ с ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΠΈΠ·ΠΌΠΎΠΌ ΠΈ ΠΊΠΎΠ½ΠΊΡƒΡ€Π΅Π½Ρ‚Π½ΠΎΡΡ‚ΡŒΡŽ: ΠΎ Π΄Π°Π²Π½ΠΎ извСстных Π²Π΅Ρ‰Π°Ρ… (процСссы ΠΈ ΠΏΠΎΡ‚ΠΎΠΊΠΈ) ΠΈ ΠΎ Π½ΠΎΠ²Ρ‹Ρ… (Ρ€Π°ΠΊΡ‚ΠΎΡ€Ρ‹ ΠΈ асинхронныС Ρ„Π°ΠΉΠ±Π΅Ρ€Ρ‹).

ITeaConf

33 min

Π—Π°Π³Π°Π΄ΠΊΠΈ JPA ΠΈ ΠΈΡ… Ρ€Π°Π·ΠΎΠ±Π»Π°Ρ‡Π΅Π½ΠΈΠ΅

АндрСй БСляСв

ΠŸΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΏΡ€ΠΎ JPA ΠΈ Ρ‚ΠΎΠ½ΠΊΠΈΠ΅ ΠΌΠΎΠΌΠ΅Π½Ρ‚Ρ‹, связанныС с этим Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΎΠΌ. НачнСм с простых ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ²: ΠΊΠΎΠ³Π΄Π° получаСтся N+1 запрос ΠΈ Π² ΠΊΠ°ΠΊΠΎΠΌ случаС Lazy Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Ρ‚Π°ΠΊ, ΠΊΠ°ΠΊ ΠΈΠ½Ρ‚ΡƒΠΈΡ‚ΠΈΠ²Π½ΠΎ оТидаСтся. Π”Π°Π»ΡŒΡˆΠ΅ уг…

YaTalks

62 min

99,99: Ρ‡Ρ‚ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ваш сСрвис стал Π½Π°Π΄Ρ‘ΠΆΠ½Ρ‹ΠΌ

Π”ΠΌΠΈΡ‚Ρ€ΠΈΠΉ Носов, Π•Π²Π³Π΅Π½ΠΈΠΉ Росинский, АлСксандр АфСнов, НарСк ВатСвосян

ΠŸΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ космичСской ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΈ отказоустойчивости. БСрвисы со ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ 99.99. Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π»ΠΈ это? Если Π΄Π°, Ρ‚ΠΎ ΠΊΠ°ΠΊ это Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ Π² Ρ€Π°Π·Π½Ρ‹Ρ… компаниях. Нас с Π²Π°ΠΌΠΈ ΠΆΠ΄Ρ‘Ρ‚ дискуссия ΠΎ Ρ‚ΠΎΠΌ: Как …

C++ Russia

60 min

Initialisation in modern C++

Timur Doumler

Initialisation semantics is widely regarded as one of the most difficult aspects of the C++ language. We have many different kinds of initialisation and many different syntaxes for it, and they inter…

Joker

59 min

Concurrent Garbage collectors: ZGC & Shenandoah

Simone Bordet

Java 11/12 introduced two new Garbage Collectors: ZGC and Shenandoah. The main objective of these two new GCs is to reduce GC pauses to only few milliseconds (and possibly under a millisecond), there…

YaTalks

28 min

DDoS-Π°Ρ‚Π°ΠΊΠ° MΔ“ris ΠΈ ΠΊΠ°ΠΊ ЯндСкс Π΅Ρ‘ ΠΏΠ΅Ρ€Π΅ΠΆΠΈΠ»

Π”ΠΌΠΈΡ‚Ρ€ΠΈΠΉ Носов

ΠšΠ°ΠΆΠ΅Ρ‚ΡΡ, Ρ‡Ρ‚ΠΎ ΡƒΠΆΠ΅ всС ΡΠ»Ρ‹ΡˆΠ°Π»ΠΈ ΠΎ самой ΠΌΠ°ΡΡˆΡ‚Π°Π±Π½ΠΎΠΉ DDoS-Π°Ρ‚Π°ΠΊΠ΅ Π² истории ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π° β€” MΔ“ris. ΠžΡ‡Π΅Π½ΡŒ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π² этой истории ΠΏΠΎΠΊΠ° Π΅Ρ‰Ρ‘ ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ Β«ΠΏΠΎΠ΄ Π³Ρ€ΠΈΡ„ΠΎΠΌ сСкрСтно». Но сСйчас ΠΌΡ‹ Π³ΠΎΡ‚ΠΎΠ²Ρ‹ ΠΏΠΎΠ΄Π΅Π»ΠΈΡ‚ΡŒΡΡ большой час…