F2023 #09 - Index Concurrency Control (CMU Intro to Database Systems)

preview_player
Показать описание

15-445/645 Intro to Database Systems (Fall 2023)
Carnegie Mellon University
Рекомендации по теме
Комментарии
Автор

being from India. Hearing about a professor who carries a kinef in bus for travelling is as fascinating story.

Avinashk-gqpl
Автор

In a scenario where threads kill themselves to avoid deadlock, what if two threads try to write to a B+ Tree? Thread 1 (T1) wants to update elements with indices greater than 1, and thread 2 (T2) wants to update elements with indices less than 4. T1 finishes updating elements in that node and tries to acquire the write latch that T2 currently holds. Then, T1 terminates itself and starts over. Now, T2 finishes updating elements in the node and tries to acquire T1's latch (meanwhile, T1 has already started over and acquired the latch but hasn't finished updating all the elements). As a result, T2 terminates itself and starts over. Will this situation repeat indefinitely, with none of them being able to finish their job?

aaronwang
Автор

How do you know if a node is safe if the key sizes are variable? The parent node may have enough space to accommodate a promotion from a split below, or not if the key size is quite large, I'm not sure if its possible to know the maximum possible key size beforehand?

cherloire
Автор

I heard the Alicloud's polarDB implemented a modified version of B+Tree, someone call it PolarIndex.

myrondai