Модераторы: skyboy, MoLeX, Aliance, ksnk

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Файлы, или SQL? 
:(
    Опции темы
Zerony
Дата 11.4.2011, 19:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 89
Регистрация: 21.12.2008

Репутация: нет
Всего: нет



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

Движок предназначен для сателлитов, то есть все виды работы с файлами - примитивные,а именно - открыть и вывести. Больше ничего не надо было. 

Противники утверждали, что мол SQL сделали почти Боги, и он быстрее. Кто был прав? 
Рад был бы услышать полный, развернутый ответ. Заранее спасибо. 
PM MAIL   Вверх
gta4kv
Дата 11.4.2011, 19:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Walking around mad.
***


Профиль
Группа: Завсегдатай
Сообщений: 1868
Регистрация: 25.7.2006

Репутация: 21
Всего: 91



именно файлы файлы или sqllite?
PM MAIL   Вверх
ancad
Дата 11.4.2011, 19:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 20.1.2009

Репутация: нет
Всего: нет



Если данных мало, то и разницы в реализации не заметишь.
PM MAIL   Вверх
ksnk
Дата 11.4.2011, 19:38 (ссылка) |    (голосов:4) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 96
Всего: 386



Zerony, Ну, если по секрету, то sql база тоже работает на файлах.
Если кто-то там пытается на php парсить sql запрос и утверждает, что у него получится быстрее, чем у mysql - он скорее всего заблуждается. А если запросы в "базу" удастся свести к простому чтению из файла по смещению - почему бы и нет. Особенно если файлы удастся разместить в памяти.
Задача, для которой сделана "база на файлах" никак не определена, так что конкретного ответа получить не получится.


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
KLeonid
Дата 13.4.2011, 10:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Entropy
*


Профиль
Группа: Участник
Сообщений: 51
Регистрация: 5.7.2007
Где: Shpongleland

Репутация: 1
Всего: 1



Для высокой производительности лучше использовать noSQL СУБД. Они позволяют юзать SQL там, где это необходимо.
PM MAIL   Вверх
WolfAlone
Дата 13.4.2011, 13:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


В экстазе
***


Профиль
Группа: Завсегдатай
Сообщений: 1010
Регистрация: 16.9.2008
Где: Рай

Репутация: 1
Всего: 5



Полностью согласен с KLeonid.

В рамках вышеуказанного вопроса, могу добавить от себя то, что приложения имеют обыкновение иногда расширяться. Когда приложение работает в рамках стандартной, годами отточенной технологии (то есть работа с данными контролируется проверенным, общепризнанным движком БД) - это гораздо лучше, оказывается в последствии, нежели чем изобретать что-то, что уже изобретено. Такое приложение проще доработать в случае необходимости, и так далее. Особенно, учитывая то, что компьютерные ресурсы всё дешевеют и дешевеют...

К тому же, в том же MySQL есть достаточно быстрые типы таблиц, которые прекрасно подходят (на мой взгляд) для указанных Вами целей (то есть, преимущественно чтение) например те же MyISAM.

По теме далее: если бы мне пришлось выбирать именно скорость работы (экономить миллисекунды процессорного времени) - я бы пожалуй взял файлы. А потом взял бы вообще С/С++, что бы совсем сэкономить время, а ещё лучше ассемблер и пытался бы писать на нём (ибо быстрее уже по моему некуда). Но, если бы задача звучала как: "структурированное, упорядоченное, структурированное хранение каких-либо данных" - я бы почти наверняка взял бы какую-нибудь БД (SQL/NoSQL - не суть, зависит именно от задачи) и работал бы именно с ней.


Цитата(Zerony @  11.4.2011,  19:17 Найти цитируемый пост)
Компания программистов сделала бесплатный движок...

Если бы вопрос стоял как: Что лучше: заплатить группе программистов, что бы она сделала бесплатный движок на файлах, что позволит сэкономить XX% ресурсов сервера или за эти деньги просто поставить чуть более мощный сервер и не забивать себе этим голову, полагаясь на многолетний опыт других людей? Я думаю, ответ был бы очевиден.

Добавлено через 1 минуту и 48 секунд
Голосую на БД!
*не за какую-то конкретную, а за БД вообще


--------------------
И сказал Бог: "Тогда я построю свой мир с блэк-джеком и шлюхами!"

Ф топку Ubuntu, Debian наше фсё!

(с) Евгений Вольф
PM MAIL WWW ICQ Skype   Вверх
cia
Дата 13.4.2011, 15:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 207
Регистрация: 15.1.2007

Репутация: 4
Всего: 4



Вопрос в целом, заключается в том, стОит ли использовать СУБД для сателлитов. Разве не так?
Я лично считаю что использовать БД не зачем: простой запрос к базе данных всё же выполняется немного медленнее чем простой инклюд файла. Хотя разница не велика. Но с другой стороны сателлит подразумевает в большинстве случаев просто вывод на экран страницы. И какой резон, спрашивается, хранить эту страницу в базе данных?
При использовании базы данных появляется дополнительные требования к хостингу: нужна поддержка субд, кроме того чуть сложнее перенести сателлит на другой хостинг (если, конечно, не используется sqllite).
Как-то давно я задался именно таким вопросом: какую цмс использовать для сателлитов? К своему удивлению ничего толкового не нашёл. Сделал сам, пользуюсь до сих пор. Работает без базы данных. В тех случаях, кодга она (бд) нужна, подключаю её в виде модуля.
PM WWW ICQ   Вверх
WolfAlone
Дата 13.4.2011, 21:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


В экстазе
***


Профиль
Группа: Завсегдатай
Сообщений: 1010
Регистрация: 16.9.2008
Где: Рай

Репутация: 1
Всего: 5



cia, если рассматривать вопрос с этой стороны - то автору стоило бы уточнить вопрос, и задать его примерно в таком ракурсе: "Экономлю каждую миллисекунду процессорного времени. Что лучше использовать БД или файлы?".


--------------------
И сказал Бог: "Тогда я построю свой мир с блэк-джеком и шлюхами!"

Ф топку Ubuntu, Debian наше фсё!

(с) Евгений Вольф
PM MAIL WWW ICQ Skype   Вверх
cia
Дата 14.4.2011, 00:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 207
Регистрация: 15.1.2007

Репутация: 4
Всего: 4



WolfAlone,   smile не совсем - автор ведь спрашивал что больше подходит для сайта-сателита (бд или файлы), а не что будет более производительным.
Согласен, что вопрос производительности как бы ни на что не влияет. Но всё же ответ, я считаю, не так уж и очевиден: с одной стороны база данных упростит "прикручивание" какогонибудь дополнительного функционала, с другой стороны - собственно, необходимость использовать базу данных )).
Поэтому, как ты сказал, голосую против БД!  smile  ... разумеется, касательно задач, где от сайта в основном не требуется бОльшего, чем то, что можно сделать без использования php.
Когда делаешь большое количество таких маленьких сайтиков, то, по моему опыту, лучше обходиться без использования базы данных. Только по той причине, что меньше работы по настройке сайта.

Зы. Кстати, часто движки для сателлитов, написанных "на коленках", не имеют (или не полностью реализовано) в настройках префикс для таблиц в базе данных. А вот это уже может стать проблемой, если на хостинге только одна база данных, а нужно разместить десяток сайтов.
PM WWW ICQ   Вверх
KLeonid
Дата 14.4.2011, 02:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Entropy
*


Профиль
Группа: Участник
Сообщений: 51
Регистрация: 5.7.2007
Где: Shpongleland

Репутация: 1
Всего: 1



А я вообще голосую за CMF (c ORM) + DB smile . В наше время бОльшую стоимость имеет время разработки, а не стоимость железа. Особенно это касается стартапов.
А потому гонясь за производительностью еще несуществующей системы, можно надолго отстать от конкурентов, и в конечном итоге получить пусть и быстро работающий, но уже устаревший, с точки зрения существующих на рынке предложений, продукт.
PM MAIL   Вверх
cia
Дата 14.4.2011, 11:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 207
Регистрация: 15.1.2007

Репутация: 4
Всего: 4



KLeonid, а ты вообще читаешь о чём тут речь?  smile 
PM WWW ICQ   Вверх
Zerony
Дата 14.4.2011, 19:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 89
Регистрация: 21.12.2008

Репутация: нет
Всего: нет



Всем спасибо, я сделал выводы. 

cia вы ответили именно на то, что я хотел услышать. smile 
PM MAIL   Вверх
Gold Dragon
Дата 15.4.2011, 07:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Призрачный
****


Профиль
Группа: Экс. модератор
Сообщений: 6753
Регистрация: 1.3.2004
Где: Россия, Тамбов

Репутация: 10
Всего: 71



Цитата(cia @  14.4.2011,  01:00 Найти цитируемый пост)
Когда делаешь большое количество таких маленьких сайтиков, то, по моему опыту, лучше обходиться без использования базы данных. Только по той причине, что меньше работы по настройке сайта.
Вопрос философский.. у меня давно есть самописный класс для работы с базой, основные функции и всё.. И никаких проблем никогда не испытываю с настройками.. А вот что касается файлов, то тут есть масса сложностей, вернее иногда возникает на отдельных хостингах, которые особо увлечены безопасностью.. Например, файлы при создании не получают именно те права которые хотелось, или файл созданный скриптом уже перестаёт быть доступным по FTP.. Я с этой проблемой сталкивался и не раз.. Так что не всё что файл есть хорошо...


Это сообщение отредактировал(а) Gold Dragon - 15.4.2011, 07:31


--------------------
Нельзя жить в прошлом, оно уже прошло.
Нельзя жить в будущем, оно ещё не наступило.
Нужно жить в настоящем, помня прошлое и думая о будущем!
PM MAIL WWW ICQ   Вверх
cia
Дата 15.4.2011, 18:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 207
Регистрация: 15.1.2007

Репутация: 4
Всего: 4



Цитата

Например, файлы при создании не получают именно те права которые хотелось, или файл созданный скриптом уже перестаёт быть доступным по FTP.. Я с этой проблемой сталкивался и не раз.. Так что не всё что файл есть хорошо...

Я тоже сталкивался. И тоже недоволен подобным )).
Но если файл создан скриптом, то он (скрипт) его всегда сможет изменить и удалить. Так что такие проблемы могут возникнуть лишь при переносе с одного хостинга на другой. К тому же на сервер загружаются картинки, ещё какие-то файлы... так что если геморрой с правами есть, то решать его придётся независимо от того используется база данных или нет.
В то же время при переносе базы данных могут возникнуть проблемы с кодировкой (и по моему опыту возникают они чаще). Например, если не обратить внимание на кодировку базы данных, то на сайте может отображаться всё по русски, а вот при экспорте такой базы данных может случиться большой облом.
И вообще я уже говорил, что вопрос этот хоть и простой, но ответ на него не однозначен.
Я написал по своему опыту: в совокупности если цмс для подобных задач построена без использования базы данных, то это практичнее.
PM WWW ICQ   Вверх
Gold Dragon
Дата 17.4.2011, 07:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Призрачный
****


Профиль
Группа: Экс. модератор
Сообщений: 6753
Регистрация: 1.3.2004
Где: Россия, Тамбов

Репутация: 10
Всего: 71



Цитата(cia @  15.4.2011,  19:26 Найти цитируемый пост)
В то же время при переносе базы данных могут возникнуть проблемы с кодировкой
Раньше были проблемы, но это когда я не умел работать с кодировками и знал только windows-1251...  А на самом деле всё очень и очень просто, даже проще чем кодировка файлов... Хотя с другой стороны: если я знаю как делать, то для меня просто, если нет - то сложно  smile 

Цитата(cia @  15.4.2011,  19:26 Найти цитируемый пост)
 в совокупности если цмс для подобных задач построена без использования базы данных, то это практичнее. 
Смотря для каких целей.. Я лично себе трудно представляю гибкость и развитие этой CMS, т.к. обработка данных в базе наааамного удобнее



--------------------
Нельзя жить в прошлом, оно уже прошло.
Нельзя жить в будущем, оно ещё не наступило.
Нужно жить в настоящем, помня прошлое и думая о будущем!
PM MAIL WWW ICQ   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1134 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.