Клеппман М. .

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

Сообщить о появлении
Загрузите файл EPUB или FB2 на Букмейт — и начинайте читать книгу бесплатно. Как загрузить книгу?
  • Андрейцитирует3 года назад
    Представьте, что транзакция записала какие-то данные в базу, но еще не была зафиксирована или была прервана. Может ли другая транзакция увидеть эти незафиксированные данные? Если да, то такая операция чтения называется «грязной» (dirty read)
  • Андрейцитирует3 года назад
    В реплицируемой БД сохраняемость может означать, что данные были успешно скопированы на некоторое количество узлов. Для обеспечения гарантии сохраняемости база должна дожидаться завершения этих операций записи или репликаций, прежде чем сообщать об успешной фиксации транзакции.
  • Андрейцитирует3 года назад
    Сохраня­емость (durability) — обязательство базы не терять записанных (успешно зафиксированных) транзакций данных, даже в случае сбоя аппаратного обеспечения или фатального сбоя самой БД.
  • Андрейцитирует3 года назад
    идея согласованности зависит от точки зрения приложения на инварианты, и формулировать транзакции таким образом, чтобы сохранялась согласованность, — обязанность приложения. База данных не в состоянии это гарантировать, так как не сможет помешать записать «плохие» данные, наруша­ющие условия инвариантов.
  • Андрейцитирует3 года назад
    В контексте ACID под согласованностью понимается то, что база данных находится, с точки зрения приложения, в «хорошем состоянии».
  • Андрейцитирует3 года назад
    Возможность прервать транзакцию при ошибке и игнорировать все ее операции записи — отличительная черта атомарности ACID.
  • Windrushfarerцитирует3 года назад
    Как правило, LSM-деревья обычно быстрее при записи, а B-деревья — при чтении
  • Windrushfarerцитирует3 года назад
    Одна из страниц назначается корнем B-дерева, с него начинается любой поиск ключа в индексе. Данная страница содержит несколько ключей и ссылок на дочерние страницы. Каждая из них отвечает за непрерывный диапазон ключей, а ключи, располагающиеся между ссылками, указывают на расположение границ этих диапазонов.
  • Windrushfarerцитирует3 года назад
    B-деревья разбивают БД на блоки или страницы фиксированного размера, обычно 4 Кбайт (иногда больше), и читают/записывают по одной странице за раз. Такая конструкция лучше подходит для нижележащего аппаратного обеспечения, поскольку диски тоже разбиваются на блоки фиксированного размера.
  • Windrushfarerцитирует3 года назад
    Несмотря на множество нюансов, основная идея LSM-деревьев — применение каскада SS-таблиц, объединяемых в фоновом режиме, — проста и эффективна. Она хорошо работает даже в случае, когда размер набора данных значительно превышает доступный объем оперативной памяти. То, что данные хранятся в отсортированном виде, дает возможность эффективно выполнять запросы по диапазонам
fb2epub
Перетащите файлы сюда, не более 5 за один раз