Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Что лучше - база MYSOL? или без базы?
 
 автор: Вова56647   (04.02.2005 в 04:33)
 
 

Вопрос такой:
А какие вообще, преимущества или "худшества" даёт использование серверской базы MySOL, или наоборот, не использование этой базы, а хранение данных в своих папках? Интересно чисто Ваше мнение, рождённое на Вашей богатой практике.

   
 
 автор: cheops   (04.02.2005 в 07:59)   письмо автору
 
   для: Вова56647   (04.02.2005 в 04:33)
 

База данных это следующий уровень абстракции данных по сравнению с файловой системой. По аналогии, это как переход от кодов к ассемблеру, когда не требуется запоминать много разных видов копирования и все они выполняются одной командой (машина сама определяет из контекста какой код нужно применить) или переход от ассемблера к языку высокого уровня, когда масса рутинных операций объединяются в конструкции языка.
Отсюда достоинства и недостатки. Многостраничный код при работах с файлами, часто можно заменить одной строкой при работе с базой данных. Читабильность программ возрастает многократно, как впрочем и время разработки, а количество глюков в программе падает. Можно сосредосточится на логике и не заботиться о реализации.
База данных проигрывает в скрости тем же плоским файлам, но так как PHP - интерпретатор, всё съедается неповоротливостью самого языка. Поэтому получить преимущество в скорости над базой данных, разработанной на С вряд ли получится. Кроме того, это преимущество можно получить только при записи и чтении, при операциях поиска база данных делает всех, так как она специально под это заточена. Можно сделать быстрый поиск и на файлах, но объём работы и сложность кода приблизит его к структуре базы данных - лучше воспользоваться готовым кодом, созданным и отточенным профессионалами в течении десятилетий, чем в течении нескольких лет делать свою собственную кривенькую базу на файлах.
Кроме того, проблемы одновременного доступа к файлам нескольких сотен человек решаются достаточно сложно - необходимо продумать гибкую схему управления файлами http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=1870, базы данных спроектированы и предназначены для многопользовательского режима.
Поэтому всегда когда имеется возможность использовать базу данных, её следует использовать (если, конечно, не стоит задача разработки поисковой системы типа Google, а у вас не хватает несколько сотен серверов :).
Пожалуй существует одно исключение, базу данных не стоит использовать для хранения объёмных файлов - их лучше хранить на диске, так как они в большинстве случаев не перезаписываются, то одновременное обращение к ним нескольких пользователей не приведёт к проблемам, а большие массивы данных замедляют работу базы данных (ну это ко всему применительно, не только к базе данных).

PS Вообще когда я в первый раз познакомился с базами данных, я сразу понял, что с меня свалился огромный камень, так как отныне у меня освободится 50% времени при разработки приложений как на С, так и на PHP и Perl.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования