bookmate game
Клеппман М. .

Высоконагруженные приложения. Программирование, масштабирование, поддержка

Notify me when the book’s added
To read this book, upload an EPUB or FB2 file to Bookmate. How do I upload a book?
  • Андрейhas quoted3 years ago
    Представьте, что транзакция записала какие-то данные в базу, но еще не была зафиксирована или была прервана. Может ли другая транзакция увидеть эти незафиксированные данные? Если да, то такая операция чтения называется «грязной» (dirty read)
  • Андрейhas quoted3 years ago
    В реплицируемой БД сохраняемость может означать, что данные были успешно скопированы на некоторое количество узлов. Для обеспечения гарантии сохраняемости база должна дожидаться завершения этих операций записи или репликаций, прежде чем сообщать об успешной фиксации транзакции.
  • Андрейhas quoted3 years ago
    Сохраня­емость (durability) — обязательство базы не терять записанных (успешно зафиксированных) транзакций данных, даже в случае сбоя аппаратного обеспечения или фатального сбоя самой БД.
  • Андрейhas quoted3 years ago
    идея согласованности зависит от точки зрения приложения на инварианты, и формулировать транзакции таким образом, чтобы сохранялась согласованность, — обязанность приложения. База данных не в состоянии это гарантировать, так как не сможет помешать записать «плохие» данные, наруша­ющие условия инвариантов.
  • Андрейhas quoted3 years ago
    В контексте ACID под согласованностью понимается то, что база данных находится, с точки зрения приложения, в «хорошем состоянии».
  • Андрейhas quoted3 years ago
    Возможность прервать транзакцию при ошибке и игнорировать все ее операции записи — отличительная черта атомарности ACID.
  • Windrushfarerhas quoted3 years ago
    Как правило, LSM-деревья обычно быстрее при записи, а B-деревья — при чтении
  • Windrushfarerhas quoted3 years ago
    Одна из страниц назначается корнем B-дерева, с него начинается любой поиск ключа в индексе. Данная страница содержит несколько ключей и ссылок на дочерние страницы. Каждая из них отвечает за непрерывный диапазон ключей, а ключи, располагающиеся между ссылками, указывают на расположение границ этих диапазонов.
  • Windrushfarerhas quoted3 years ago
    B-деревья разбивают БД на блоки или страницы фиксированного размера, обычно 4 Кбайт (иногда больше), и читают/записывают по одной странице за раз. Такая конструкция лучше подходит для нижележащего аппаратного обеспечения, поскольку диски тоже разбиваются на блоки фиксированного размера.
  • Windrushfarerhas quoted3 years ago
    Несмотря на множество нюансов, основная идея LSM-деревьев — применение каскада SS-таблиц, объединяемых в фоновом режиме, — проста и эффективна. Она хорошо работает даже в случае, когда размер набора данных значительно превышает доступный объем оперативной памяти. То, что данные хранятся в отсортированном виде, дает возможность эффективно выполнять запросы по диапазонам
fb2epub
Drag & drop your files (not more than 5 at once)