Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
[PHP] Поиск в БД MySQL (быстрый)
|
|||
|---|---|---|---|
|
#18+
Делал я однажды поиск на сайте, с поддержкой AJAX, JSON вывод данных и тд. Но что-то он мне не очень нравиться, как бы он у меня разбит на несколько таблиц, в одной чисто искомые фразы, в другой более полное описание, картинки, ссылки на конкретные страницы, в третьей сами ссылки и тд. Потом через LEFT JOIN я всё соединяю, лёгкие вычисления длины строки и тд. Но думаю что LEFT JOIN сами по себе вроде бы тормозные запросы, а с другой стороны в одной базе всё хранить тоже вроде не очень хорошо. Как бы вы сделали поиск? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2015, 19:22 |
|
||
|
[PHP] Поиск в БД MySQL (быстрый)
|
|||
|---|---|---|---|
|
#18+
почитайте про Sphinx ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2015, 23:22 |
|
||
|
[PHP] Поиск в БД MySQL (быстрый)
|
|||
|---|---|---|---|
|
#18+
SharuPoNemnoguпочитайте про Sphinx Пару лет назад, я из любопытства установил Сфинкс, покрутил его, по тестировал. Но он мне показался довольно громоздким, настроек и прочих вещей дофига в нём было. По ходу у меня что-то типа своего поиска, со своими настройками и уже заточенный под определённый контент и тд. Мне просто нужно оптимизировать саму структуру БД. Сейчас она у меня разбита на 3-4 таблицы, вот я и думаю, что лучше несколько небольших таблиц, или одна но большая? Чтоб потом их не соединять и тд. Сейчас я использую типа ключи от фраз, заменяю предложения на короткие ключи, но даже и не знаю, насколько это эффективно, я экономлю пространство на диске, но в тоже время возможно снижается скорость доступа к БД?! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2015, 11:41 |
|
||
|
[PHP] Поиск в БД MySQL (быстрый)
|
|||
|---|---|---|---|
|
#18+
DeLemurМне просто нужно оптимизировать саму структуру БД. Сейчас она у меня разбита на 3-4 таблицы, вот я и думаю, что лучше несколько небольших таблиц, или одна но большая? Чтоб потом их не соединять и тд.Ну а каким тут боком PHP, который вынесен в название темы обсуждения? Вопросы по базам данных лучше задавать в профильном форуме по используемой СУБД. Только и там придется показать подробно структуру таблиц, связи, используемые запросы, количество данных и всё такое. Иначе разговор вряд ли будет предметным. Кликните "Сообщить модератору", если хотите перенести топик. DeLemurя экономлю пространство на дискеА смысл? Дисковое пространство нынче относительно дёшево. Не вижу большого смысла на нём экономить. В частности, использование несколько более жручего дисковое пространство char вместо varchar в ряде случаев улучшает скорость выполнения запроса. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2015, 20:06 |
|
||
|
[PHP] Поиск в БД MySQL (быстрый)
|
|||
|---|---|---|---|
|
#18+
vkle DeLemurя экономлю пространство на дискеА смысл? Дисковое пространство нынче относительно дёшево. Когда я только начинал делать поиск, мне показалось, что лучше сразу сделать ключи у ходовых фраз и тд. Чтоб не плодить дубли в тысячных количествах. Ну если база не большая, наверно это не так критично, а если начинает рости 1-2, 10 млн записей, то повторы типа: .... Продаётся машина Продаётся машина Продаётся машина Продаётся машина Продаётся машина Продаётся машина ..... Не лучше ли сразу заменить на какой нибудь ключ типа: Продаётся машина = 878 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2015, 12:49 |
|
||
|
|

start [/forum/topic.php?fid=23&fpage=65&tid=1461936]: |
0ms |
get settings: |
7ms |
get forum list: |
20ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
49ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
48ms |
get tp. blocked users: |
2ms |
| others: | 231ms |
| total: | 376ms |

| 0 / 0 |
