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

В чем разница между реляционными и нереляционными БД с точки зрения масштабирования

Реляционные БД (SQL) вертикально масштабируются - добавляют мощности серверу (CPU, RAM). Поддерживают ACID, сложные JOIN-запросы, но при больших нагрузках могут стать узким местом. Пример: PostgreSQL, MySQL.

Нереляционные БД (NoSQL) горизонтально масштабируются - добавляют новые серверы. Быстрее работают с большими объемами данных, но жертвуют согласованностью (CAP-теорема). Примеры: MongoDB (документная), Redis (ключ-значение).

python
# SQL запрос с JOIN
cursor.execute("""
    SELECT users.name, orders.total 
    FROM users
    JOIN orders ON users.id = orders.user_id
""")

# NoSQL запрос (MongoDB)
db.orders.aggregate([
    {"$lookup": {
        "from": "users", 
        "localField": "user_id",
        "foreignField": "_id",
        "as": "user"
    }}
])

NoSQL лучше для больших данных и высокой нагрузки, SQL - для сложных транзакций.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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