Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.05.2011, 09:35   #11
Виталий Желтяков
Старожил
 
Аватар для Виталий Желтяков
 
Регистрация: 19.04.2010
Сообщений: 2,702
По умолчанию

Цитата:
WordPress держит статьи в таблице префикcзаданныйприустановке_posts. Drupal по-моему тоже тексты нод держит в базе.
Это требуется для быстрого развёртывания и мобильности. Это же CMS.

В реальном проекте кэшироание файлов сервером гораздо эффективней, чем кэширование БД. Не верите попробуйте устроить "полевое" испытание такой системы.

Хранить крупные текстовые данные в БД - это пережиток прошлого.
Виталий Желтяков вне форума Ответить с цитированием
Старый 18.05.2011, 10:22   #12
ADSoft
Старожил
 
Регистрация: 25.02.2007
Сообщений: 4,160
По умолчанию

ну-ну.... и вообще БД не для этого создавались да?
Давайте все перейдем на файлы!!!!
ADSoft вне форума Ответить с цитированием
Старый 18.05.2011, 11:12   #13
Виталий Желтяков
Старожил
 
Аватар для Виталий Желтяков
 
Регистрация: 19.04.2010
Сообщений: 2,702
По умолчанию

Цитата:
ну-ну.... и вообще БД не для этого создавались да?
Вообще-то БД создавалось для поиска по нескольким параметрам, а не для хранения информации.
Современные программисты отчаянно пытаются запихнуть всё в базу, а потом удивляются почему так всё медленно работает.

Поимите, хранение больших объёмов данных в БД - это большое зло. Во многих случаях получение данных из файлов быстрее, чем из БД. Но самое главное, что если помещать все в БД, то кэш БД постоянно будет из-за этого перегружен и работа снижается. Тогда как сервер сам весьма хорошо кэширует файлы.
Виталий Желтяков вне форума Ответить с цитированием
Старый 18.05.2011, 11:36   #14
Johnatan
Antimoderаtoris
Участник клуба
 
Регистрация: 08.02.2008
Сообщений: 1,251
По умолчанию

Наверное БД хранит информацию не в файлах, а в каких-нибудь сказочных контейнерах на пятой планете от звезды EXO-31824.
Был бы рад почитать толковую профессиональную статью с объяснениями, почему же хранить текст в БД это такое зло. Обязательно с мнениями ведущих БэДэводов мира!
98% из тысячи моих постов сделаны в профильном подфоруме. Я не накручиваю свои посты болтанием в "курилке", а ты?
Johnatan вне форума Ответить с цитированием
Старый 18.05.2011, 11:49   #15
Виталий Желтяков
Старожил
 
Аватар для Виталий Желтяков
 
Регистрация: 19.04.2010
Сообщений: 2,702
По умолчанию

Цитата:
Наверное БД хранит информацию не в файлах, а в каких-нибудь сказочных контейнерах на пятой планете от звезды EXO-31824.
Это сарказм?
Цитата:
Был бы рад почитать толковую профессиональную статью с объяснениями, почему же хранить текст в БД это такое зло. Обязательно с мнениями ведущих БэДэводов мира!
Справочное руководство по MySQL 4.0. на русском языке. В отличии от всяких там статей, здесь невероятно много всякой полезной информации.
Виталий Желтяков вне форума Ответить с цитированием
Старый 18.05.2011, 12:05   #16
Alexei91
Заблокирован
Форумчанин
 
Аватар для Alexei91
 
Регистрация: 30.12.2009
Сообщений: 544
По умолчанию

Виталий Желтяков
Цитата:
Поимите, хранение больших объёмов данных в БД - это большое зло. Во многих случаях получение данных из файлов быстрее, чем из БД
А БД разве не для хранения больших и оч. больших объёмов данных?
Зайдите хотя бы на http://www.geo.ru/ - работает на Друпал (посмотрите robots.txt). Тормоза есть?
----------------------------------------------------------------
mr.saalexander покажите преподу кот. задал вам эту скажем так "фигню" хотя бы WordPress и всё. Система образования (по крайней мере в России) отстаёт лет на 10-20 от совр. технологий. И это как минимум. Зачем создавать велосипед?
P.S.
Google, 1 попавшийся сайт - http://www.webtag.ru/scripts/sphp/search.php - поиск по сайту.
Можно вообще Яндексовый поиск встроить - сам пока не пробовал, но по-моему не сложнее чем прилепить Яндекс-Метрику и проч.
P.S.
Мануал по PHP4
и
PHP5
Темы для WordPress. Русские WordPress шаблоны

Последний раз редактировалось Alexei91; 18.05.2011 в 12:26.
Alexei91 вне форума Ответить с цитированием
Старый 18.05.2011, 12:19   #17
ADSoft
Старожил
 
Регистрация: 25.02.2007
Сообщений: 4,160
По умолчанию

Цитата:
Сообщение от Виталий Желтяков Посмотреть сообщение
Вообще-то БД создавалось для поиска по нескольким параметрам, а не для хранения информации.
я в шоке.. выбываю из темы.... нечем крыть
ADSoft вне форума Ответить с цитированием
Старый 18.05.2011, 12:37   #18
Виталий Желтяков
Старожил
 
Аватар для Виталий Желтяков
 
Регистрация: 19.04.2010
Сообщений: 2,702
По умолчанию

Цитата:
А БД разве не для хранения больших и оч. больших объёмов данных?
БД - это хранение структурированных данных, по которым осуществляется поиск. Это не просто хранение всех данных.

Вы не понимаете как это работает. Распишу более подробно.

Что происходит, если мы выдёргиваем большой объём данных из БД?
- Идёт подключение к серверу БД.
- Передаются необходимые данные о кодировках и идентификации.
- Выполняется запрос и в память СУБД попадают необходимые данные, которые считываются из файла БД.
- Подаётся запрос на получение этих данных.
- Данные передаются в переменные скрипта.

Что происходит, если мы используем файлы?
- Проверяем существование файла по его идентификатору.
- Считываем данные из файла в переменные скрипта.

В случае с БД выполняются те же самые действия, что и при работе с файлами + дополнительные действия.

В чём преимущества БД перед файлами:
- возможен поиск по многим полям,
- удобно хранить сложные структуры.
- удобное кэширование небольших по объёму данных.

В случае хранения больших объёмов данных в одном поле эти три преимущества нам не нужны. При этом работа с файлами будет быстрее и она снимет нагрузку с СУБД.
Виталий Желтяков вне форума Ответить с цитированием
Старый 19.05.2011, 22:00   #19
mr.saalexander
Пользователь
 
Регистрация: 17.05.2011
Сообщений: 10
По умолчанию

Цитата:
Сообщение от Виталий Желтяков Посмотреть сообщение
БД - это хранение структурированных данных, по которым осуществляется поиск. Это не просто хранение всех данных.

Вы не понимаете как это работает. Распишу более подробно.

Что происходит, если мы выдёргиваем большой объём данных из БД?
- Идёт подключение к серверу БД.
- Передаются необходимые данные о кодировках и идентификации.
- Выполняется запрос и в память СУБД попадают необходимые данные, которые считываются из файла БД.
- Подаётся запрос на получение этих данных.
- Данные передаются в переменные скрипта.

Что происходит, если мы используем файлы?
- Проверяем существование файла по его идентификатору.
- Считываем данные из файла в переменные скрипта.

В случае с БД выполняются те же самые действия, что и при работе с файлами + дополнительные действия.

В чём преимущества БД перед файлами:
- возможен поиск по многим полям,
- удобно хранить сложные структуры.
- удобное кэширование небольших по объёму данных.

В случае хранения больших объёмов данных в одном поле эти три преимущества нам не нужны. При этом работа с файлами будет быстрее и она снимет нагрузку с СУБД.
тогда встречный вопрос, создаю я файл каждый раз когда пользователь добавляет новую статью. в нем хранится полный текст + html тэги которые он использовал (выделение текста и .т.п) дак вот. Мне получается, нужно написать скрипт, который при добавлении, создает файл + добавляет данные в таблицу articles? если я Вас правильно понял, подскажите примерный код, чтобы грамотно реализовать технологию.
И самое главное как это дело потом из базы данных извлекать?

по поводу CMS - тут идет упор именно на то что САМ сделал, так скажем для лучшего понимания. Было бы времени немного больше, попытался бы понять все сам, но времени остается буквально считанные дни для сдачи.
mr.saalexander вне форума Ответить с цитированием
Старый 20.05.2011, 20:33   #20
8oOoRPM
Форумчанин
 
Регистрация: 12.11.2010
Сообщений: 146
По умолчанию

Человеку нужно для себя(т.е. для учёбы), поэтому про фрэймворки я вообще бы не упоминал(легче гавнокод наштопать). Во вторых по поводу баз данных. Множество highload проэктов хранят данные в базах данных, это и facebook, и vkontakte. Правдо у контактов есть своя база на си, созданая 'величайшими умами россии' (процитировал). Другое дело что база не одна, плюс часто используемая инфа хранится в памяти(memcahced), плюс маштабирование итд(вобщем правельная архитектура).

Есть пару необходимых для соблюдения правил- чем меньсэ запросов к БД тем лучше(желательно выполнять одним потоком), никаких сложных запросов(с join итд), желательно указывать в запросе столько полей- сколько необходимо вывесть(не более).

А запросы можно кэшировать, даже без помощи memcached(ну или APC если речь идёт о файловой системе хранения кэша).
8oOoRPM вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вывод побитовый преобразований EddieG Общие вопросы C/C++ 2 19.09.2010 17:18
Шифрование методом аналитических преобразований Margosha89 Помощь студентам 0 31.05.2010 16:04
Шифрование методом аналитических преобразований! Margosha89 PHP 7 31.05.2010 11:49
Поиск в листе Excel одного значения несколько раз Andr3000 Microsoft Office Excel 2 23.04.2010 10:24
Вывод массива после некоторых преобразований в С++ xnise Помощь студентам 8 05.12.2009 12:13