Коли ви готуєтесь до інтерв'ю на посаду SDE, бази даних часто є ключовою темою. Ось список поширених запитань по базах даних, SQL та NoSQL, організований для вашого швидкого ознайомлення! 📃
Загальні запитання по базах даних 📊
- Поясніть різницю між SQL та NoSQL базами даних.
- Які переваги та недоліки реляційних баз даних? 🌄
- Що таке нормалізація бази даних? Поясніть її типи (1NF, 2NF, 3NF, BCNF).
- Поясніть денормалізацію бази даних та коли вона використовується. ➕➖
- Яка різниця між первинним ключем, зовнішнім ключем та унікальним ключем? 🗒
- Що таке транзакції в базі даних і які властивості ACID? 🥐
- Поясніть концепцію індексації в базах даних та її типи (наприклад, кластеризовані та не кластеризовані). 🔄
- Що таке блокування в базі даних? Поясніть типи, такі як спільне блокування, ексклюзивне блокування тощо. 🔒
- Яка різниця між OLTP (Online Transaction Processing) та OLAP (Online Analytical Processing)?
- Поясніть теорему CAP у розподілених базах даних. ⚖️
- Що таке шардінг у базі даних? Як це працює? 🏦
SQL-специфічні запитання 🔢
- Напишіть SQL-запит для знаходження другої найвищої зарплати в таблиці. 💎
- Як ви оптимізуєте SQL-запит? Обговоріть техніки, такі як індексація, переробка запитів тощо. 📈
- Яка різниця між WHERE та HAVING? 🔀
- Поясніть різницю між INNER JOIN, LEFT JOIN, RIGHT JOIN та FULL OUTER JOIN з прикладами. ➕➖
- Яка різниця між DELETE, TRUNCATE та DROP? ♻️
- Поясніть клаузи GROUP BY та ORDER BY з прикладами. 🗃️
- Що таке збережені процедури, функції та тригери в SQL? Як вони відрізняються? 🔐
- Як ви обробляєте дублікати рядків у SQL? Напишіть запит для видалення дублікатів. 🔠
- Поясніть концепцію уявлень у SQL та коли їх слід використовувати. 🔗
- Що таке корельований підзапит? Як він відрізняється від звичайного підзапиту? 🤔
- Яка різниця між UNION та UNION ALL? ➕➖
NoSQL-специфічні запитання 🔁
- Що таке NoSQL і чому він використовується? Наведіть приклади NoSQL баз даних. 🤖
- Поясніть різні типи NoSQL баз даних (наприклад, на основі документів, ключ-значення, колонкові, графові). 🔹
- Яка різниця між MongoDB та MySQL (або іншою реляційною базою даних)? 🔖⚛️
- Як моделювання даних відрізняється в NoSQL базах даних порівняно з реляційними базами даних? 🔡
- Що таке остаточна узгодженість в NoSQL базах даних? Як це відрізняється від сильної узгодженості? 🌐
- Як MongoDB обробляє індексацію та запити? 🔍
- Що таке replica set у MongoDB? Як він забезпечує високу доступність? 🏡
- Поясніть концепцію партиціювання в Cassandra або інших NoSQL базах даних. 🌐
- Яка різниця між базами даних без схеми та базами даних з схемою? 🔨
- Як ви б вирішили, чи використовувати SQL чи NoSQL для конкретного проекту? 🤔
Запитання на основі сценаріїв/практичні запитання 📊🔧
- Спроектуйте схему бази даних для платформи електронної комерції. Поясніть свої рішення щодо дизайну. 🛍️
- Як би ви спроектували систему для обробки мільйонів запитів на читання та запис за секунду? ⏳💡
- Як ви підтримуєте узгодженість даних у розподілених базах даних? ⚖️
- Якщо таблиця має мільйони рядків, як би ви ефективно витягували дані за допомогою SQL? 🌐🏋️♂️
- Як би ви спроектували масштабовану базу даних для соціальної мережі? 📲✨
- Як би ви мігрували реляційну базу даних в NoSQL базу даних? Які труднощі могли б виникнути? 🔧
- Поясніть, як кешування (наприклад, за допомогою Redis) використовується для покращення продуктивності бази даних. ⌚⚡
Ці запитання охоплюють основні теми по базах даних, які ви ймовірно зустрінете на інтерв'ю SDE. Практикуйтесь у вирішенні подібних завдань і розумійте основні концепції, щоб виділитись! 📚🔄
Чи хочете ви, щоб я розширив якісь з цих запитань або надав приклади рішень? 😊
Перекладено з: Most Frequently Asked Database, SQL, and NoSQL Questions in SDE Interviews 🌐