|
|
|
|
|
для: FatBoy
(28.01.2006 в 12:20)
| | А я вот наоборот, с базами знаком поближе, чем с файлами, и ничего там сложного нет, по-моему.
Файлы сложнее :)) | |
|
|
|
|
|
|
|
для: Drago
(24.01.2006 в 08:58)
| | Я точно также боялся этих самых баз данных, но потихоньку начинаю вьезжать что это такое. ДА! согласен файлы понятнее-привычнее, но желательно знать и то и другое, тогда не будет стоять вопроса "что лучше" - тогда будет ответ следовать из вопроса "для чего это нужно". Однозначно для каких-то вещей файлы лучше, для каких-то базы данных. | |
|
|
|
|
|
|
|
для: cheops
(24.01.2006 в 22:50)
| | "возрастает многократно, как впрочем и скорость разработки"
Издение второе. Под редакцией Loki:) | |
|
|
|
|
|
|
|
для: cheops
(24.01.2006 в 22:50)
| | Спасибо за разъяснения. Осталось раздобыть хостинг с базой данных и перейдем к ее изучению. :) | |
|
|
|
|
|
|
|
для: Loki
(24.01.2006 в 14:07)
| | Ну ради красного словца изменил немного смысл :))) | |
|
|
|
|
|
|
|
для: cheops
(24.01.2006 в 13:49)
| | >возрастает многократно, как впрочем и время разработки
а может время все-таки уменьшается?:) | |
|
|
|
|
|
|
|
для: Drago
(24.01.2006 в 08:58)
| | Процитирую сам себя :))) из http://www.softtime.ru/forum/read.php?id_forum=3&id_theme=1926:
База данных это следующий уровень абстракции данных по сравнению с файловой системой. По аналогии, это как переход от кодов к ассемблеру, когда не требуется запоминать много разных видов копирования и все они выполняются одной командой (машина сама определяет из контекста какой код нужно применить) или переход от ассемблера к языку высокого уровня, когда масса рутинных операций объединяются в конструкции языка.
Отсюда достоинства и недостатки. Многостраничный код при работах с файлами, часто можно заменить одной строкой при работе с базой данных. Читабильность программ возрастает многократно, как впрочем и время разработки, а количество глюков в программе падает. Можно сосредосточится на логике и не заботиться о реализации.
База данных проигрывает в скрости тем же плоским файлам, но так как PHP - интерпретатор, всё съедается неповоротливостью самого языка. Поэтому получить преимущество в скорости над базой данных, разработанной на С вряд ли получится. Кроме того, это преимущество можно получить только при записи и чтении, при операциях поиска база данных делает всех, так как она специально под это заточена. Можно сделать быстрый поиск и на файлах, но объём работы и сложность кода приблизит его к структуре базы данных - лучше воспользоваться готовым кодом, созданным и отточенным профессионалами в течении десятилетий, чем в течении нескольких лет делать свою собственную кривенькую базу на файлах.
Кроме того, проблемы одновременного доступа к файлам нескольких сотен человек решаются достаточно сложно - необходимо продумать гибкую схему управления файлами http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=1870, базы данных спроектированы и предназначены для многопользовательского режима.
Поэтому всегда когда имеется возможность использовать базу данных, её следует использовать (если, конечно, не стоит задача разработки поисковой системы типа Google, а у вас не хватает несколько сотен серверов :).
Пожалуй существует одно исключение, базу данных не стоит использовать для хранения объёмных файлов - их лучше хранить на диске, так как они в большинстве случаев не перезаписываются, то одновременное обращение к ним нескольких пользователей не приведёт к проблемам, а большие массивы данных замедляют работу базы данных (ну это ко всему применительно, не только к базе данных).
PS Вообще когда я в первый раз познакомился с базами данных, я сразу понял, что с меня свалился огромный камень, так как отныне у меня освободится 50% времени при разработки приложений как на С, так и на PHP и Perl. | |
|
|
|
|
|
|
|
для: Drago
(24.01.2006 в 08:58)
| | Будет уступать по объему кода и затраченному на него времени. А если вам данные и обрабатывать нужно, то еще и по скорости. | |
|
|
|
|
|
|
|
для: P@Sol
(24.01.2006 в 09:11)
| | тут наврено нужно расуждать исходя из задач.. какие данные вы будете хранить.. наприме если это данные по настройке, то их удобней будет хранить в файле. Допустим я зачастую в файле ххранил структуру основного меню. Если нужно хранить информацию и потом выборочно вытягиваь из нее определенные данные то лучше использовать БД, намного удобнее и быстрее будет работать... не придеться продумывать как оптимальнее устроить поиск по вашей файловой базе. Тем более если объемы будут большИми это особенно будет ощутимым. MySQL - это таже файловая БД, максимально оптимизированная для работы с данными. | |
|
|
|
|
|