TGViewer
YeaHub Tech YeaHub Tech @yeahub_tech · 412 subscribers
Post #426 54
🧑‍💻 Подборка из 5 вопросов для Golang разработчиков

1. Чем REPEATABLE READ отличается от SERIALIZABLE?
REPEATABLE READ гарантирует, что данные, прочитанные в транзакции, не изменятся при повторном чтении. Однако он не защищает от логических аномалий при сложных условиях. SERIALIZABLE обеспечивает максимально строгую изоляцию, как если бы транзакции выполнялись строго последовательно. Это достигается ценой возможных ошибок сериализации и повторных попыток транзакций.

2. В чём разница между B-Tree и Hash-индексом и почему Hash-индексы не поддерживают операции больше/меньше?
B-Tree индекс хранит данные в отсортированном виде, поэтому поддерживает диапазонные запросы. Hash-индекс использует хэш-функцию и не хранит порядок значений. Из-за этого он подходит только для точного поиска по равенству. Операции больше или меньше требуют упорядоченности, которой у Hash-индекса нет. Поэтому такие запросы он не поддерживает.

3. В каких случаях стоит использовать COPY вместо INSERT в Postgres?
COPY стоит использовать при массовой загрузке данных. Он работает значительно быстрее INSERT, потому что минимизирует накладные расходы и сетевые round-trip.

4. В чём суть уровня изоляции SERIALIZABLE?
SERIALIZABLE — самый строгий уровень изоляции транзакций. Он гарантирует, что результат параллельного выполнения транзакций эквивалентен их последовательному выполнению. Это устраняет все виды аномалий чтения. Цена за это — снижение производительности и возможные ошибки сериализации. Используется редко и осознанно.

5. Почему PostgreSQL может не использовать индекс и предпочесть Seq Scan?
PostgreSQL выбирает план выполнения на основе оценки стоимости, а не наличия индекса. Если планировщик считает, что последовательное сканирование будет дешевле, он выберет Seq Scan. Это часто происходит при выборке большого процента строк. Также причиной могут быть устаревшие статистики или неподходящий тип индекса.

#transaction #isolation #btree #index #hash #postgres #copy #insert #serializable #query #planner
  • 🔥 1
More from @yeahub_tech
  1. Oct 7, 2026#course #начинающие 📚 Твой Golang Твой Golang — это идеальный старт для освоения языка. П…
  2. Oct 5, 2026🧑‍💻 Вопросы с собесов для Node.js Разработчика 1. Как использовать Service Workers для р…
  3. Oct 2, 2026#Собес #transaction #propagation #required 🤔 Что такое propagation у транзакций и какие т…
  4. Oct 1, 2026#book #book 📚 Библия C#. 6-е изд. Автор: Михаил Фленов Это настольная книга программиста,…
  5. Sep 30, 2026#repository #books 📚 Коллекция официальных электронных книг от Unity Сайт представляет со…
  6. Sep 28, 2026🧑‍💻 5 сложных вопросов для Python разработчиков 1. Что такое абстрактный метод? Абстракт…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →