|
|
|
| Сейчас мой сайт работает на файлах, без базы. Принцип такой – «одна запись – один файл». Поэтому файлы получаются очень маленькими, но их много. А структура сайта чем-то похожа на стандарт «общая шина» - все имена файлов и папок числовые и распределены по диапазонам, соответствующим их функциональному назначению. Каждому файлу страницы соответствует папка с числовым именем, совпадающим с именем файла, и в ней содержатся все скрипты, обслуживающие эту страницу (страница 35.htm – папка 35 с соответствующими скриптами и поддиректориями). Это позволяет сделать сайт на модульной структуре и упростить управление сайтом. В частности, если количество файлов в какой-либо директории превышает 10 тысяч, то скрипт-менеджер управления создает следующую папку и перенаправляет туда все последующие записи. Поэтому быстродействие сайта со временем не понижается, хотя количество файлов накапливается. А дискового пространства мне не жалко – 10 Гб куда девать?
Если же перейти к базе, то получается вот что.
На сайте сто тысяч страниц, и для каждой потребуется 4 таблицы с суммарным числом столбцов 27, в том числе два строковых, а всего 2.700.000 столбцов. Глубина просмотра на сайте в среднем 3.7, а посетителей в сутки 3000. Получается 11.000 записей в сутки, не считая фиксации посещений роботов. Через три месяца работы будет миллион записей в два с половиной миллионов столбцов.
Будет ли это работать? | |
|
|
|
|
|
|
|
для: Владимир55
(18.10.2008 в 22:43)
| | > На сайте сто тысяч страниц, и для каждой потребуется 4 таблицы с суммарным числом столбцов
Структура, надо полагать, у всех 4-х таблиц разная?
> Будет ли это работать?
Миллион записей -- это не так уж и много. Но это для того случая, если Вы хотите доставать в дальнейшем данные за определенные дни. Например, вывести постранично записи за неделю, будет не напряжно -- до ~ ста тысяч записей выборка с сортировкой по проиндексированному полю происходит очень даже быстро. А если Вы хотите ворочить весь миллион за раз, то серверу будет тяжело.
> а всего 2.700.000 столбцов
Пять нуликов, наверное, стоит убрать. И точки тоже. | |
|
|
|
|
|
|
|
для: BinLaden
(18.10.2008 в 23:03)
| | 4 таблицы для каждой из ста тысяч страниц дадут как раз два миллиона 700 тысяч столбцов, поскольку в этих 4 таблицах суммарно 27 столбцов. 27х100000= | |
|
|
|
|
|
|
|
для: Владимир55
(18.10.2008 в 23:08)
| | Вы представляете себе столбец таблицы? id, username, password - три столбца. | |
|
|
|
|
|
|
|
для: BinLaden
(18.10.2008 в 23:14)
| | Вот о таких столбцах я и говорю. Вот их 27 на страницу (в четырех таблицах). | |
|
|
|
|
|
|
|
для: Владимир55
(18.10.2008 в 23:31)
| | > Вот их 27 на страницу
Правильно. 27. Не 2700000, а 27. Столбец -- это вертикаль. | |
|
|
|
|
|
|
|
для: BinLaden
(19.10.2008 в 00:06)
| | "Столбец -- это вертикаль."
Это совершенно очевидно.
Таблица 1-1 из четырех столбцов.
Таблица 1-2 из четырех столбцов.
Таблица 1-3 из восьми столбцов.
Таблица 1-4 из одиннадцати столбцов.
Всего 27 столбцов. Это для страницы 1.htm
Таблица 2-1 из четырех столбцов.
Таблица 2-2 из четырех столбцов.
Таблица 2-3 из восьми столбцов.
Таблица 2-4 из одиннадцати столбцов.
Ещё 27 столбцов. Это для страницы 2.htm
А таких страниц сто тысяч. | |
|
|
|
|
|
|
|
для: Владимир55
(19.10.2008 в 00:44)
| | Вы что, собираетесь под каждую страницу заводить 4 отдельных таблицы в БД?.. Скорее всего Вы сможете обойтись одной таблицей вместо ста тысяч. Пардон. Четырехста тысяч... | |
|
|
|
|
|
|
|
для: Владимир55
(18.10.2008 в 23:08)
| | Ммм... имеются в виду строки или именно столбцы? | |
|
|
|
|
|
|
|
для: cheops
(18.10.2008 в 23:47)
| | Я имею в виду столбцы, это их столько получается.
А строк в сутки записывается примерно десять тысяч. | |
|
|
|
|
|
|
|
для: Владимир55
(18.10.2008 в 23:57)
| | Если такая прорва столбцов - лучше нормализовать базу данных и ввести ещё одну таблицу. | |
|
|
|
|
|
|
|
для: Владимир55
(18.10.2008 в 22:43)
| | Вы про учет посещаемости говорите или про размещение информации на сайте? | |
|
|
|
|
|
|
|
для: cheops
(18.10.2008 в 23:44)
| | Размещение информации сайта здесь занимает совсем немного места. Основное - это учет посещаемости. | |
|
|
|
|
|
|
|
для: Владимир55
(18.10.2008 в 23:58)
| | Подробная информация я так понимаю нужна лишь за несколько дней - потом её можно сжать в суточные и месячные таблицы. | |
|
|
|