parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

Хранение большого количества данных в базе SQL

StopDesign 02.03.2007 04:14

Есть база данных (MySQL или PostgreSQL). В ней, в одной таблице, около 20000 записей. Записи содержат ключ, еще несколько значений, по которым нужен поиск. К каждой записи нужно привязать около 150 параметров (тип float). Параметры было бы удобно держать в группах (примерно, по 20), так как получать их нужно будет именно группами. Вот, думаю, как это сделать...

Данные помещаются в базу довольно редко. Не редактируются вообще. А вот выборку нужно делать Парсером, при том часто и быстро (для отображении страницы).

Мои варианты:

Тупо 150 столбцов в БД.
Минусы: это тупо; ужасный вид таблицы и запросов; не удастся сделать группы (если только не городить много таблиц).
Плюсы: насколько я понимаю, это будет быстро работать.

Текстовые столбцы (по группам) с разделителями (tab или ; или буква Ж...)
Минусы: объем таблицы будет в разы больше; данные потом долго разбирать (но не очень); и тоже как-то туповато...
Плюсы: данные легко добавлять; это не самый медленный вариант.

Несколько бинарных столбцов (по группам)
Минусы: я не знаю, как можно быстро разобрать бинарные данные в парсере (но это, скорее, мой минус...).
Плюсы: это не тупо; маленький объем БД.


Лично для меня задача весьма необычная. Хотелось бы не придумывать велосипед, а сделать по-умному. Подскажите, если у кого-то есть мысли по этому поводу. Спасибо.


P.S.То ли я не умею составлять поисковые запросы, то ли словарный запас маленький, но поиск на любой вопрос выдает все мои сообщения (по совершенно другим темам) на первой странице ;-)