Как HBase выполняет обновления со скоростью передачи данных на диск, а не со скоростью поиска на диске?

Я читаю книгу HBase: The Definitive Guide, в которой упоминается, что в то время как традиционные реляционные базы данных выполняют обновления/удаления со скоростью поиска (B-деревья), HBase выполняет обновления/удаления со скоростью передачи (LSM-деревья).

Я знаю, как работают LSM-деревья, но не понимаю, почему автор утверждает, что обновления происходят со скоростью передачи. Когда клиент выполняет определенную операцию обновления, соответствующая запись будет записана в хранилище памяти в памяти, а также будет запись, которая будет добавлена ​​в WAL. Периодически memstore будет объединяться с HFiles, хранящимися на диске.

Как это означает, что HBase выполняет обновления/удаления со скоростью передачи?


person davuinci    schedule 20.01.2020    source источник


Ответы (1)


HBase выполняет обновления и удаления при объединении нескольких LSM-деревьев в одно (сжатие хранилища памяти) или при сжатии файлов (объединение нескольких H-файлов в один) до тех пор, пока не сохранится несколько версий одной и той же записи.

Парадигма базы данных скорости переноса в данном случае означает, что все обновления применяются только при переносе даты на новое место.

person Lyashko Kirill    schedule 20.01.2020