В чем преимущество профессиональной базы данных (MySQL) перед моей системой?

У меня есть веб-сайт, и мне нужно хранить данные о клиентах, поэтому я создал следующую систему:

Я создал на своем сервере папку, которую назвал базой данных . В нем я создал папку под названием customers . В этой папке я сохранил несколько файлов JSON, помеченных идентификатором клиента. В файлах JSON я сохранил данные клиентов.

Вот небольшая иллюстрация системы:

database -> customers  ->  customer_14.json 
                          ->  customer_15.json
                          -> ...
                                         

Я посчитал, что система на самом деле неплохая, и это было очень легко реализовать. Но когда я показал это своему другу, он сказал, что я должен использовать MySQL вместо этой системы. Он сказал, что мой был медленным, небезопасным и ненадежным.

Теперь мне интересно, в чем преимущества профессиональной базы данных, такой как MySQL , перед этой системой? Есть ли вообще?

0
задан 29 August 2021 в 10:41
1 ответ

Во-первых, существует множество различных баз данных. Если вам нужно хранить документы JSON, база данных документов, такая как MongoDB, может быть лучшим выбором, чем реляционная база данных.

MySQL — это традиционная реляционная база данных SQL.

Если у вас есть реляционные данные, это, безусловно, хорошо; это упрощает описание отношений и поиск данных.

Если вы, однако, храните документы JSON, которые не имеют никакого отношения к каким-либо внешним данным, это не имеет особого смысла — вот почему у нас есть базы данных документов, такие как MongoDB.

Базы данных документов могут предоставлять такие инструменты, как поиск, хранение и индексирование. Это означает, что они, вероятно, будут иметь лучшую производительность, чем ваша реализация на основе файловой системы. Кроме того, они могут быть распределенными, иметь варианты резервирования, блокировки и другие функции, которые могут иметь значение или не иметь значения.

Однако, если вы реализовали реляционные данные в документах JSON, по мере роста вашей системы вас ждут большие неприятности. Одним из аспектов нормализации является обеспечение того, чтобы данные присутствовали только в одном месте и не дублировались. Это упрощает обновление и ведение записей — что сложно, если одна и та же информация хранится в тысячах разных мест — возможно, в разных форматах.

Вкратце: если у вас есть 5 документов и один пользователь, это не имеет большого значения. Но базы данных обеспечивают масштабируемость и унифицированный метод доступа по сети, что упрощает масштабирование и совместное использование данных между различными приложениями.

На ваш вопрос нет однозначного ответа; это зависит от того, как вы используете данные. Но средний ответ заключается в том, что люди используют системы баз данных, потому что они упрощают работу, а не потому, что они глупы или любят дополнительную сложность.

0
ответ дан 29 August 2021 в 11:05

Теги

Похожие вопросы