Встречается на собеседованиях • сегодня

Какие проблемы бывают у баз данных

  1. Проблемы производительности:

    • Медленные запросы из-за отсутствия индексов, неправильных JOIN или больших данных.
    • Блокировки (deadlocks) при конкурентном доступе.
  2. Проблемы масштабируемости:

    • Вертикальное масштабирование (увеличение ресурсов сервера) ограничено.
    • Горизонтальное (шардинг) сложно реализовать без потерь.
  1. Целостность данных:

    • Потеря данных при сбоях (требуются транзакции и бэкапы).
    • Некорректные связи (например, нарушение FOREIGN KEY).
  2. Репликация и согласованность:

    • Задержки в репликации (eventual consistency).
    • Конфликты при multi-master репликации.
  3. Безопасность:

    • SQL-инъекции.
    • Неправильные права доступа (например, избыточные привилегии).

Пример блокировки в SQLite:

python
import sqlite3
conn = sqlite3.connect("test.db")
cursor = conn.cursor()
cursor.execute("BEGIN TRANSACTION")
cursor.execute("UPDATE users SET balance = 100 WHERE id = 1")  # Блокировка
# Другой поток не сможет изменить эту запись до COMMIT/ROLLBACK
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы