powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / [PHP] Поиск в БД MySQL (быстрый)
6 сообщений из 6, страница 1 из 1
[PHP] Поиск в БД MySQL (быстрый)
    #38900456
DeLemur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Делал я однажды поиск на сайте, с поддержкой AJAX, JSON вывод данных и тд.

Но что-то он мне не очень нравиться, как бы он у меня разбит на несколько таблиц, в одной чисто искомые фразы, в другой более полное описание, картинки, ссылки на конкретные страницы, в третьей сами ссылки и тд. Потом через LEFT JOIN я всё соединяю, лёгкие вычисления длины строки и тд.

Но думаю что LEFT JOIN сами по себе вроде бы тормозные запросы, а с другой стороны в одной базе всё хранить тоже вроде не очень хорошо.

Как бы вы сделали поиск?
...
Рейтинг: 0 / 0
[PHP] Поиск в БД MySQL (быстрый)
    #38900561
SharuPoNemnogu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
почитайте про Sphinx
...
Рейтинг: 0 / 0
[PHP] Поиск в БД MySQL (быстрый)
    #38900978
DeLemur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SharuPoNemnoguпочитайте про Sphinx

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

По ходу у меня что-то типа своего поиска, со своими настройками и уже заточенный под определённый контент и тд.

Мне просто нужно оптимизировать саму структуру БД. Сейчас она у меня разбита на 3-4 таблицы, вот я и думаю, что лучше несколько небольших таблиц, или одна но большая? Чтоб потом их не соединять и тд.

Сейчас я использую типа ключи от фраз, заменяю предложения на короткие ключи, но даже и не знаю, насколько это эффективно, я экономлю пространство на диске, но в тоже время возможно снижается скорость доступа к БД?!
...
Рейтинг: 0 / 0
[PHP] Поиск в БД MySQL (быстрый)
    #38901792
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DeLemurМне просто нужно оптимизировать саму структуру БД. Сейчас она у меня разбита на 3-4 таблицы, вот я и думаю, что лучше несколько небольших таблиц, или одна но большая? Чтоб потом их не соединять и тд.Ну а каким тут боком PHP, который вынесен в название темы обсуждения? Вопросы по базам данных лучше задавать в профильном форуме по используемой СУБД. Только и там придется показать подробно структуру таблиц, связи, используемые запросы, количество данных и всё такое. Иначе разговор вряд ли будет предметным. Кликните "Сообщить модератору", если хотите перенести топик.

DeLemurя экономлю пространство на дискеА смысл? Дисковое пространство нынче относительно дёшево. Не вижу большого смысла на нём экономить. В частности, использование несколько более жручего дисковое пространство char вместо varchar в ряде случаев улучшает скорость выполнения запроса.
...
Рейтинг: 0 / 0
[PHP] Поиск в БД MySQL (быстрый)
    #38902316
DeLemur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vkle
DeLemurя экономлю пространство на дискеА смысл? Дисковое пространство нынче относительно дёшево.

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

Ну если база не большая, наверно это не так критично, а если начинает рости 1-2, 10 млн записей, то повторы типа:

....
Продаётся машина
Продаётся машина
Продаётся машина
Продаётся машина
Продаётся машина
Продаётся машина
.....

Не лучше ли сразу заменить на какой нибудь ключ типа: Продаётся машина = 878
...
Рейтинг: 0 / 0
[PHP] Поиск в БД MySQL (быстрый)
    #38902407
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DeLemurмне показалось, что лучше сразу сделать ключи у ходовых фраз и тд. Чтоб не плодить дубли в тысячных количествах.Разумеется. Однако, это относится отнюдь не к экономии места на диске.
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / [PHP] Поиск в БД MySQL (быстрый)
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]