Правила     Закладки     Карма    Календарь    Журналы    Помощь    Поиск    PDA    Чат   
        СМС-ки
   
Пейджер выключен!
 
Фильтр авторов:    показать 
  скрыть
  Закрытая темаСоздание новой темыСоздание опроса

> Не понимаю, почему некоторые делают на файлах, Файлы или БД.
sebastjan  
 ۩  [x] Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Журнал
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 2872
Пользователь №: 26275
На форуме: 6 лет, 5 месяцев, 13 дней
Карма: 63




Заметил тему в разделе (Оцените), - CMS социалки на файлах
В связи с этим возник вопрос - почему делают на файлах и не используют БД?






Спустя 3 минуты, 10 секунд (4.02.2012 - 19:03) johniek_comp написал(а):
для извини "тупых" пользователей, но это ИМХО

Спустя 17 минут, 28 секунд (4.02.2012 - 19:20) walerus написал(а):
Как вариант еще, если фри хосты, и на них БД не дают как правило, вот и делают на файлах.
johniek_comp
Цитата
для извини "тупых" пользователей, но это ИМХО

Не пользователей, а программистов и не "тупых", а не опытных wink.gif

Спустя 2 минуты, 56 секунд (4.02.2012 - 19:23) caballero написал(а):
а чем это проще для пользователей. Если он не может конект к БД настроить то ему нечего вообще лезть в создание сайта. Некоторый смысл это имеет для бесплатных хостингов где БД не выдают. Но при нынешних копеечных хостингах это просто смешно.

Спустя 34 минуты, 31 секунда (4.02.2012 - 19:58) redreem написал(а):
если база не сложная, то на файлах будет быстрее работать.

Спустя 10 минут, 44 секунды (4.02.2012 - 20:08) caballero написал(а):
Цитата
если база не сложная, то на файлах будет быстрее работать.

не будет
сервера БД заточены как раз на быстрый поиск и выдачу данных.

Спустя 23 минуты, 52 секунды (4.02.2012 - 20:32) redreem написал(а):
если "прочитать и обработать php-логикой" файл будет быстрее, чем сделать запрос, то почему это не будет?

например держать новости в файлах.
новости запрашиваются либо "последние", либо за какой-то период, либо исходя из пользовательского поиска по тектсу. все эти варианты будут быстрее отдавать нужные новости из файлов при грамотной оптимизации, нежели из базы.

Спустя 1 минута, 27 секунд (4.02.2012 - 20:34) Invis1ble написал(а):
СУБД основаны на языках более низкого уровня, поэтому они быстрее, чем php

Спустя 3 минуты, 30 секунд (4.02.2012 - 20:37) inpost написал(а):
sebastjan
Язык ПХП начинают изучать с работы файлов, а уже только потом переходят на БД. Своего рода менее опытные.
С другой стороны данные где хранятся в мускуле? Правильно, на файлах, а MySQL - интерфейс удобные для взаимодействия ПХП с данными.
В прямом идеале обратиться напрямую к файлам будет быстрее, но если упустить важный момент, это индексы, которые уже являются закешированными указателями к данным, то есть прямыми ссылками, а так же само кеширование часто обращаемых данных. Кеш уже хранится в памяти, а работать с ней уже быстрее, чем с самими файлами.
Ну а последним, можно сравнить Мускул с Джумлой, только если джумлу делали криворукие программисты, которые 2 дня отроду знают программирование, то над мускулом работали настоящие профессионалы и создали удобный и быстрый инструмент для хранения данных.
Представь себе хранение данных на файлах, но эффективность будет только тогда, когда чётко проработана будет логика хранения и доступа к данным, чем не сможет похвастаться даже среднестатистический программист. И ту БД, какую попробует создать любой из нас будет в 100 раз медленнее чем та, которая используется в том же Мускуле. Даже та же логика распределения данных.

Спустя 1 минута, 19 секунд (4.02.2012 - 20:39) caballero написал(а):
redreem

еще раз:
СУБД ОПТИМИЗИРОВАНЫ на быстрый поиск данных.
Не будет логика на файловой системме работать быстрее.

Спустя 1 минута, 41 секунда (4.02.2012 - 20:40) redreem написал(а):
когда у вас обращение к базе идет по некому локальному интерфейсу, другими словами база и интерпретатор php вертятся на одной железке и не задействуют сетевой протокол обмена данными, то естественно база будет быстрее, но на практике база и дивжок php находятся на разных серверах. львиная доля времени уходит тупо на коннект. поэтому файлы получаются быстрее.

Спустя 1 минута, 5 секунд (4.02.2012 - 20:41) redreem написал(а):
caballero
я умею читать и понимать читаемое.

Спустя 1 минута, 24 секунды (4.02.2012 - 20:43) sergeiss написал(а):
inpost всё правильно сказал. Но даже он не упомянул о том, что существует проблема одновременного обращения к данным, если использовать простые файлы. Если начать решать эту проблему, да еще парочку-троечку проблем, типа целостности данных... То в итоге получим некий урезанный вариант самопальной, криво работающей БД.

Вопрос: НАФИГА? Зачем это делать, если в БД уже решены все эти проблемы и еще куча других, о существовании части которых среднестатистический программер даже не догадывается?

Спустя 13 секунд (4.02.2012 - 20:43) sebastjan написал(а):
В той теме (соц-сеть на фалах) - ума просто не приложу, это сколько алгоритмов надо, чтоб сдеалть связи между пользователями на фалах. dry.gif
Записть, обновление, редактирование истории ну т.д
Да и как то неразумно делать соц сеть на хостинге - который не поддерживает БД.
inpost
Всё понимаю и со всем соглсен.
Просто озадачило -- (Соц-сеть) и такой способ реализации.


Спустя 3 минуты, 17 секунд (4.02.2012 - 20:46) redreem написал(а):
1. 90% заложенных в базу мощщей в 90% случаев просто не используется.
2. как в работе с базами, так и в работе с файлами наверняка найдутся виртуозы, умеющие из каки делать шоколадку.
3. холивар детектед. миссион импосибл. топик логаут.

Спустя 4 минуты, 29 секунд (4.02.2012 - 20:51) sebastjan написал(а):
Цитата (redreem @ 4.02.2012 - 17:46)
2. как в работе с базами, так и в работе с файлами наверняка найдутся виртуозы, умеющие из каки делать шоколадку.

С этого места поподробней.
Интересно, кто и какие ньюансы реализует , используя в своих структурах работу с файлами?


Спустя 38 секунд (4.02.2012 - 20:51) sergeiss написал(а):
Цитата (sebastjan @ 4.02.2012 - 21:43)
Просто озадачило -- (Соц-сеть) и такой способ реализации.

Просто людям захотелось красиво назвать "Социальная Сеть" smile.gif А уж как умели, так и сделали. Слепили горку из песка, назвали "кулич" smile.gif, а то, что не съедобно - да и пофиг.

Цитата (redreem @ 4.02.2012 - 21:46)
90% заложенных в базу мощщей в 90% случаев просто не используется.

Может быть. Но это не повод не использовать готовые БД.
Ты можешь 2 месяца изобретать основы БД, а можешь за эти 2 месяца создать мощную БД на основе Мускуля, Постгре или любой другой БД, заточенную под свои задачи.

И кстати. 99% пользователей используют возможности ПХП не более, чем процентов на 10-20. И что - это повод писать "свой язык ПХП"?

Спустя 1 минута, 27 секунд (4.02.2012 - 20:53) inpost написал(а):
redreem
Ты говоришь о теории того, что можно сделать самопалку, учесть все эти нюансы, в итоге на выходе получишь ту же Mysql самописную. Только времени будет неизмеримо больше. Важный пункт - кеширование встроенное, что составит огромный труд самому такое создать.

sergeiss
Целостность и доступ к данным, это заключительный и полный ответ smile.gif

sebastjan
SQL-LITE - тоже самое, БД на файлах smile.gif Хотя там тот же самый инструмент. Это глупо говорить, что бывает БД НЕ НА ФАЙЛАХ, потому что все БД работают на файлах smile.gif Тут больше подошел бы ответ: "Мы делаем сайт без использования удобных и целевых инструментов для этого".

Спустя 2 минуты, 12 секунд (4.02.2012 - 20:55) sergeiss написал(а):
Цитата (inpost @ 4.02.2012 - 21:53)
Тут больше подошел бы ответ: "Мы делаем сайт без использования удобных и целевых инструментов для этого".

Словоблудие длинное... Проще звучит так (должно произноситься с гордо поднятой головой): "Мы изобретаем велосипед!" wink.gif

Спустя 2 минуты, 53 секунды (4.02.2012 - 20:58) inpost написал(а):
sergeiss
Вот Бахрому сказали, что он изобретает велосипед, он обиделся, пригрозил забанить, сообщения поудалял. Возможно стоило бы сказать более нежно, про удобные и целевые инструменты. А то "велосипед" для некоторых оскорбителен smile.gif

Спустя 2 минуты, 24 секунды (4.02.2012 - 21:00) sergeiss написал(а):
Цитата (inpost @ 4.02.2012 - 21:58)
А то "велосипед" для некоторых оскорбителен

Ну хорошо, пусть не велосипед. Пусть будет тогда "МЫ ПОЙДЕМ СВОИМ ПУТЁМ!" (с) - люди, пожившие еще в СССР, поймут хорошо, о чем (и о ком) я smile.gif
Вот только результат у них вовсе не обязательно будет такой же, как у автора этой фразы.

PS. Глянул и-нет. Фраза должна звучать как "Мы пойдем ДРУГИМ путем". Но суть это не меняет.

Спустя 1 минута, 42 секунды (4.02.2012 - 21:02) redreem написал(а):
насчет целостности - какая целостность в MyISAM?

Спустя 4 минуты, 20 секунд (4.02.2012 - 21:06) inpost написал(а):
redreem
Удаляешь запись, а она не удаляется. smile.gif Просто помечается как удалённая, но всегда есть доступ к восстановлению данных.
Primary - не позволит хранить тебе дубли, каждая запись обязана быть уникальной.
Автоинкремент - удобный инструмент, работающий вместе с Primary. Создал ID5, потом её удалил. Очистил БД, обновил её АБСОЛЮТНО, а на выходе следующая запись будет ID6, хотя весточки об ID5 в файле не существует. А почему? Да потому, что завтра ты попробуешь из бек-апов востановить запись с ID5, а она у тебя забита будет новой записью.

Спустя 1 минута, 7 секунд (4.02.2012 - 21:07) sebastjan написал(а):
Ответы на на тему более чем исчерпывающие , вопросов больше нет.
Всем спасибо.

Спустя 1 час, 28 минут, 29 секунд (4.02.2012 - 22:36) YVSIK написал(а):
sebastjan солжно, что-бы то добавить, все старо как мир, мои похождегия ,как только я начал заниматься подобным делом, написанием сайто итд. на меня свалилась такая глыба непонимаия что с какого боку грысть это пирог, blink.gif
поиски хостингов , почему один хороший, а вот народ.ру почему-то все доступно но все его опять не любят, ну почему. таких почему было? ваУ вагон.
Как только не подходил я к этому пирогу, все было не по зубам, и вот начиная понимать что к чемунаткнулся на БАЗА! и что это за зверь такой? blink.gif , опять почему, я на РМА смотрел и не мог понять ну почему нет нормальной программы ещё чтоб все было понятно. плюнул на РМА и начал рыть , построю я на файлах, Ы)))))))))))) и тд. начал инфу подбирать. так оказалось по сравнению с базой её ещё меньше и ещё путанней, о однажды набрел на статью которая гласила так. все это хорошо, и будет вполне работать. но останется навсегда одно маленькое !но! которое будет всегда быть главой якорем хоть и очень незначительным.

ЗЫ) она в одном единственном правиле заключено, как только ваш файл превышает некий большой размер, ВСЕ все ваши потуги навсегда лопнут, и придется опять все учить с начала эту БАЗУ.
База держит ваши данные в мелких ей понятных файликах которые сама может вполне тусовать ну она знает это дело отлично, а файл надо всегда заботиться об его размере, его понятности , его обновлении , как тольтко он вырос его серевер будет лапаить весь а в базе только то что надо!
smile.gif cool.gif

Спустя 31 минута, 22 секунды (4.02.2012 - 23:07) waldicom написал(а):
Цитата (inpost @ 4.02.2012 - 19:06)
Удаляешь запись, а она не удаляется. smile.gif Просто помечается как удалённая, но всегда есть доступ к восстановлению данных.

Чушь или автор не знает о существовании транзакций или автор не умеет читать документацию.

Цитата (inpost @ 4.02.2012 - 19:06)
Автоинкремент - удобный инструмент, работающий вместе с Primary. Создал ID5, потом её удалил. Очистил БД, обновил её АБСОЛЮТНО, а на выходе следующая запись будет ID6, хотя весточки об ID5 в файле не существует

чушь или автор не знает о существовании truncate.

Спустя 26 минут, 44 секунды (4.02.2012 - 23:34) bodja написал(а):
sebastjan
Цитата
С этого места поподробней.
Интересно, кто и какие ньюансы реализует , используя в своих структурах работу с файлами?

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

Спустя 2 часа, 11 минут, 58 секунд (5.02.2012 - 01:46) sebastjan написал(а):
bodja Не называй меня на Вы, я ещё не достиг пенсионного возраста.
С выводом понятно.
А как ты реализовал администрирование данных без РНР? Какой то должен же быть язык работающий на вэб-сервере.

waldicom
Свернутый текст
если есть что сказать, скажи а не типа сам дурак.

Спустя 49 минут, 32 секунды (5.02.2012 - 02:36) waldicom написал(а):
Цитата (sebastjan @ 4.02.2012 - 23:46)
если есть что сказать, скажи а не типа сам дурак.

Эммм... Я как бы и сказал, что все процитированное вызывает сомнения чушь. Что мне еще добавить?
Если речь идет о твоем вопросе, то смотря что за файлы считать. SQLite это база или файлы?
А кто не используют базы, тот возможно просто начинающий/неопытный.

оффтопчег
Цитата (sebastjan @ 4.02.2012 - 23:46)
bodja Не называй меня на Вы, я ещё не достиг пенсионного возраста.

Ты к своим любимым немцам тоже на hey du da, nicht du, der andere du обращаешься? Или изредка все же на Sie?

Спустя 1 час, 21 минута, 35 секунд (5.02.2012 - 03:57) sebastjan написал(а):
waldicom Что это тебя так беспокоит как я обращаюсь?
Свернутый текст
Смотря какой человек и смотря от ситуации.
Или ты пологаешь, что я совершил ошибку сказав bodja чтоб он не обращался ко мне на ВЫ.
Мы как бы с ним давно знакомы.

Да и тема себя исчерпала и помеченна как решонная.



Спустя 7 часов, 36 минут (5.02.2012 - 11:33) inpost написал(а):
sebastjan
Это такой принцип у человека, просто грязь поливать, не обращай сильно внимания. Просто некоторые люди не знают что да как работает, а трепаться любят.
А может специально говорят умные слова с надежной: "а вдруг он не знает, что это такое, поэтому я его натуплю" smile.gif

Спустя 2 часа, 42 минуты, 52 секунды (5.02.2012 - 14:16) bodja написал(а):
sebastjan
Цитата
А как ты реализовал администрирование данных без РНР? Какой то должен же быть язык работающий на вэб-сервере.


Ну я отчаяный минималист, biggrin.gif
Моя админка - это нотепад подключеный по фтп к серверу.
Если глянуть на другие ЦМС админки,то в принципе - это тоже самое,только у ЦМС ограниченее и с меньшими возможностями,зачем велосипедировать?
Нужно добавить контент ? просто заливаем файл.
Нужно удалить пост? - просто убираем строчку в файле коментов.
Если нужно юзеру добавить пост ,работает файл addpost.php размером в 50 строчек- вот и весь движек на сервере biggrin.gif . 90% функционала лежит на клиентской стороне.
Ну я повторюсь- это частный случай,посмотреть,поэкспериментировать,узнать
насколько можно отказатся от пхп в небольших проектах.

ЗЫ Насчет общения,на публике я имею привычку обращатся на Вы,несмотря на то ,что общаемся в личке на ты,дабы не создавать прецедент для других обращаться к тебе также.Но если не актуально ,можно общатся и на паблике на ты biggrin.gif

Спустя 1 час, 6 минут, 58 секунд (5.02.2012 - 15:23) waldicom написал(а):
Цитата (inpost @ 5.02.2012 - 09:33)
Это такой принцип у человека, просто грязь поливать, не обращай сильно внимания. Просто некоторые люди не знают что да как работает, а трепаться любят.

Ха! Есть возражение по моим высказываниям по поводу автоинкремента и удаления? Конекретно и без воды? Хотя если были бы, то ты бы уже давно возразил.

Совет - если не знаешь как работает, не выставляй себя на посмешище.

Спустя 1 час, 9 секунд (5.02.2012 - 16:23) sebastjan написал(а):
waldicom Не по теме. Офтоп.
Свернутый текст
В следущий раз будь внимательней, чтоб самому не выглядить посмешищем, перед тем как появится хотелка, поупражняться в граматике немецкого на публике.
Цитата

Ты к своим любимым немцам тоже на hey du da, nicht du, der andere du обращаешься? Или изредка все же на Sie?



Спустя 26 минут, 43 секунды (5.02.2012 - 16:50) inpost написал(а):
Прям как в шоу:
- цифра 5 - ЦИФРА.
- не говори чушь, 9 - это цифра!

Хотя да, трепаться каждый дурак может! :)

Спустя 46 минут, 56 секунд (5.02.2012 - 17:37) waldicom написал(а):
Цитата (inpost @ 5.02.2012 - 14:50)
Хотя да, трепаться каждый дурак может! smile.gif

Совершенно верно.
Поэтому и спрашиваю: конкретно по автоинкременту есть что ответить? Конкретно по удалению из таблицы есть что ответить?

Спустя 20 минут, 30 секунд (5.02.2012 - 17:57) Гость_Michael написал(а):
да нет у него, что ответить, нахватался вершков, а про корешки и не слухом ни духом tongue.gif

Спустя 1 час, 25 минут, 56 секунд (5.02.2012 - 19:23) Joker написал(а):
мона я немного добавлю, почему то не нашел нечего об этом хотя очень важный пункт вопроса.

Цитата (inpost @ 4.02.2012 - 17:37)
над мускулом работали настоящие профессионалы

ну это не так, достаточно посмотреть исходники мускула, например партиции очень прикольно написаны)))
Цитата (sebastjan @ 4.02.2012 - 16:00)
почему делают на файлах и не используют БД?

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

возьмите банальный вывод кто онлайн на сайта с нагрузкой 500-700к просмотров в сутки, использовать бд? удачи, мускул обсирается сразу, оракл или sql server не вариант коннект от пхп до этих бд, состовляет до 0.3сек что непозволительная роскошь в вебе на текущий момент, а файлы и просто и быстро и легко и никаких задержек, ну конечно если знаешь что делаешь tongue.gif

Спустя 12 минут, 29 секунд (5.02.2012 - 19:36) waldicom написал(а):
Цитата (Joker @ 5.02.2012 - 17:23)
возьмите банальный вывод кто онлайн на сайта с нагрузкой 500-700к просмотров в сутки, использовать бд? удачи, мускул обсирается сразу, оракл или sql server не вариант коннект от пхп до этих бд, состовляет до 0.3сек что непозволительная роскошь в вебе на текущий момент, а файлы и просто и быстро и легко и никаких задержек, ну конечно если знаешь что делаешь tongue.gif

Не согласен. У нас на проекте более 400К просмотров в сутки. Да, пришлось повылизывать базу, посидеть пару дней над slow_query_log / log-queries-not-using-indexes, настроить репликацию с записью в одну базу и чтением с любой, но сейчас все бегает хорошо.
Конечно, приколько было бы попробовать перевести такой большой проект на redis(или любой другой key-value store), но все упирается в жадность клиентов smile.gif

Спустя 3 минуты, 14 секунд (5.02.2012 - 19:39) Joker написал(а):
ну может у нас из за пиков, мукул начинал тормозить, у нас 80% нагрузки на сайт идет за 3-4 часа, тобишь почти весь день всё хорошо, а в пики становилось плохо, какие типы таблиц используешь? какую версию мускулу? кластер поди?)

дай скайп)

Спустя 19 минут, 57 секунд (5.02.2012 - 19:59) caballero написал(а):
Цитата
мускул обсирается сразу, оракл или sql server не вариант коннект от пхп до этих бд, состовляет до 0.3сек


Обсирается при записи, при чтении не должен. В любом случае на нагруженых проектах мускул надо тщательно настраивать начиная со сборки из сорцов.
Ну а если что - PosqreSQL.

Спустя 1 минута, 13 секунд (5.02.2012 - 20:00) Joker написал(а):
Цитата (caballero @ 5.02.2012 - 21:59)
Обсирается при записи, при чтении не должен.

ну это само сабой)

Спустя 12 часов, 24 минуты, 46 секунд (6.02.2012 - 08:25) twin написал(а):
Зря вы спорите. Спор сводится вот к чему: "чем лучше рзделывать мясо, ножом или топором?"
А все зависит от того, что именно делается. Тушу задолбаешься резать ножиком, а нарезать мясо на беф-строганов топором тоже можно конечно, но глупо.

Файлы несомненно быстрее при простой выборке. Кроме того, это не создает очереди на сервер БД Потому и есть такое понятие - файловый кэш. А при сложных манипуляциях естественно нужно использовать инструмент, который именно для этого и предназначен. По большому то счету БД и есть те же смые файлы.

Спустя 4 часа, 58 минут (6.02.2012 - 13:23) Joker написал(а):
Цитата (twin @ 6.02.2012 - 10:25)
Зря вы спорите. Спор сводится вот к чему: "чем лучше рзделывать мясо, ножом или топором?"

мы вроде не спорим)
PMПисьмо на e-mail пользователюСайт пользователяICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:

Опции темы Закрытая темаСоздание новой темыСоздание опроса