Инструменты пользователя

Инструменты сайта


базы_данных

Вопросы и ответы при собеседовании по теме Базы данных

Вопросы

  • Что такое реляционные базы данных?
  • Что такое базовые операции для отношений?
  • Что такое целостность и последовательность?
  • Что такое КИСЛОТА?
  • Что такое проекция?
  • Что такое операция `SELECT`? Можем ли мы использовать возвращаемое значение `SELECT` как новую обычную таблицу?
  • Каковы следующие части операции SELECT: LIMIT, OFFSET, ORDER BY, GROUP BY?
  • Как вы можете сгруппировать правила в блоке WHERE?
  • Что такое операция JOIN? В чем разница между INNER, LEFT, RIGHT и FULL OUTER JOIN?
  • Что такое операции INSERT, UPDATE и DELETE? Какие данные можно вернуть в качестве результатов для таких операций?
  • Что такое теорема CAP?
    • Работает ли это в реальном мире?
    • Какая комбинация гарантий CAP не встречается на практике?
  • Что такое индексы?
    • Как индексы влияют на эффективность запросов?
    • Каковы плюсы и минусы добавления индекса?
  • Что такое представления в Postgresql?
  • Что такое последовательности в Postgresql?
  • Что такое операция VACUUM в Postgresql?
  • Что такое команда `EXPLAIN`?
    • Что добавляют к команде `ANALYZE` и` BUFFERS`?
    • Почему ожидаемая стоимость и фактический результат могут отличаться?
    • Почему результаты `EXPLAIN` имеют древовидную структуру и каковы узлы?
    • Почему части узлов «стоимость» и «время» имеют структуру диапазона? Что такое начало, а что конец?
    • Что такое сканирование «Seq», «Index», «Только индекс» и «Bitmap»?
      • Как выбор планировщика влияет на потребление компьютерных ресурсов?
      • Когда `Seq Scan` будет лучшим выбором?
    • Как `Sort`,` Limit` и `HashAggregate` описаны в выходных данных` EXPLAIN`?
    • Что такое «вложенный цикл», «объединение слиянием» и «хэш-соединение»?
      • Какая операция самая эффективная?
      • Стоит ли доверять выбору планировщика в 100% случаев?
    • Что означают `Result` и` Materialize` в EXPLAIN?
  • Почему `count (*)` обычно быстрее, чем `count (specific_row)`, а `SELECT reltuples FROM pg_class` даже быстрее?

Ссылки

базы_данных.txt · Последнее изменение: 2020/09/04 09:58 — oleg