Як ви вирішите, яку базу даних використовувати?


31

Мені справді не подобається назва "NoSQL", тому що вона не дуже описова. Він каже мені , що бази даних НЕ де я більше зацікавлений в тому, що бази даних є . Я дійсно думаю, що ця категорія дійсно включає декілька категорій баз даних. Я просто намагаюся отримати загальне уявлення про те, яка робота кожної конкретної бази даних є найкращим інструментом.

Кілька припущень, які я хотів би зробити (і просив би вас зробити):

  1. Припустимо, що у вас є можливість найняти будь-яку кількість геніальних інженерів, які однаково досвідчені з усіма технологіями баз даних, що коли-небудь існували.
  2. Припустимо, у вас є технічна інфраструктура для підтримки будь-якої даної бази даних (включаючи доступні сервери та системні адміністратори, які можуть підтримувати цю базу даних).
  3. Припустимо, що кожна база даних має найкращу можливу підтримку безкоштовно.
  4. Припустимо, у вас 100-відсотковий внесок від менеджменту.
  5. Припустимо, у вас є нескінченна кількість грошей, щоб кинути цю проблему.

Тепер я розумію, що вищенаведені припущення усувають безліч обґрунтованих міркувань, пов'язаних із вибором бази даних, але я зосереджуюсь на тому, щоб визначити, яка база даних найкраще підходить для роботи на чисто технічному рівні. Отже, з огляду на вищезазначені припущення, питання: для яких завдань кожна база даних (включаючи SQL і NoSQL) найкращий інструмент і чому?


Будь-який шанс ви можете вибрати два приклади цієї бази даних та яку би їх категорію?
JeffO

Відповіді:


6

Реляційні бази даних (SQL) чудово підходять для даних, що базова модель залишається стабільною. Багато реалізацій вже деякий час існують (Oracle, DB2, SqlServer) і є стабільними та безпечними. Крім того, знайти досвідчених людей для їх управління дуже просто - і адміністратори бази даних є обов'язковими! Програмістам не слід мати справу з дозволами, налаштуваннями та налаштуваннями. Вони повинні мати можливість зосередитись на програмуванні та нехай адміністратори турбуються про збереження бази даних. Реляційні бази даних також відносно прості в запиті, і існує багато інструментів, які допомагають знайти дані з них.


5

SQL

Реляційний об'єкт. Стабільні сервери з точним контролем зерна над дозволами.

NoSQL

Гнучке зберігання. Висока масштабованість та здібність до загострення.


1

Про це в цій статті є дуже хороша інформація: Кассандра проти МонгоДБ проти КушДБ проти Редіс проти Ріак проти ХБасзе проти Мембасса проти порівняння Neo4j :

Хоча бази даних SQL є шалено корисними інструментами, їх монополія приблизно ~ 15 років закінчується. І це був просто час: я навіть не можу порахувати речі, які були примушені до реляційних баз даних, але ніколи насправді їх не вміщував.
Але відмінності між базами даних NoSQL набагато більше, ніж це було колись між однією базою даних SQL та іншою. Це означає, що на архітекторів програмного забезпечення більша відповідальність вибирати відповідну для проекту вже на початку.
У цьому світлі ось зіставлення Cassandra, Mongodb, CouchDB, Redis, Riak, Membase, Neo4j та HBase [...]


-3

Я думаю, це не дуже добре питання, наприклад, який тип транспортних засобів хороший? Bugatti, BWM, автомобіль, міні-машина, поїзд, локомотив, літак?
це залежить від вашої ситуації,

для невеликої роботи, яка не має великих даних, sqlight може бути корисним.
для компанії, яка використовує продукт Microsoft, MSSQL - це добре.
для веб-розробки MySql дуже простий у використанні.
для банків, Oracle або couchbase (якщо вирішувати питання транзакцій).
для невеликої роботи з великою кількістю даних MongoDB - це добре.
для компанії з величезними даними та лише одним видом таблиці, Кассандра.
для компанії з величезними даними, Couchbase.
для hadoop екосистеми, HBase.
для графіка, зображення, в пам'яті, ...


5
Мені цікаво, чому ви порекомендуєте MySQL для магазину Microsoft через сервер Sql?
Бекуз

я виправдав це, я мав на увазі Mssql.
Хоссен Ватані
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.