Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / ФТП поиск - хранение данных / 8 сообщений из 8, страница 1 из 1
25.07.2008, 15:54
    #35452559
BION
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ФТП поиск - хранение данных
Пишется фтп поисковичек, встала задача спроектировать базу.
При индексации емеем что-то типа:
Код: plaintext
1.
2.
3.
ftp.server.xx/dir1/dir2/dir3/file1.ext
ftp.server.xx/dir1/dir2/file2.ext
ftp.server.xx/dir1/file3.ext
Полагаю в таблице(ах) данных должны быть учтены: имя сервера, имя файла, путь к файлу, тип файла(ext).
Но поиск может осуществляться и по именам директорий, т.е. при поиске нужно строить цепочку от родителей к детям. В этом смысле напрашивается древовидная структура, но как это реализовать в табличном виде, а главное как потом быстро осуществлять поиск?
Файлов пока чуть более 300000, папок ~30000, потом больше.
Вобщем как это все хранить, а главное потом читать - представляю пока смутно.
В голове каша, прошу помощи.
Спасибо.
...
Рейтинг: 0 / 0
25.07.2008, 16:17
    #35452661
Alex S.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ФТП поиск - хранение данных
Ничего не надо строить.... используй Like .
...
Рейтинг: 0 / 0
25.07.2008, 20:59
    #35453211
BION
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ФТП поиск - хранение данных
Alex S.Ничего не надо строить.... используй Like .

Like конечно можно использовать, но как быть с директориями, т.е. если поиск идет по имени директории, то нужно выделять конкретную директорию.
...
Рейтинг: 0 / 0
26.07.2008, 19:22
    #35453635
Alex S.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ФТП поиск - хранение данных
Ну и что? Религия не позволяет написать
Код: plaintext
1.
2.
... like ftp.server.xx/dir1/dir2/%
или 
... like ftp.%/dir2/%
...
Рейтинг: 0 / 0
27.07.2008, 00:07
    #35453775
BION
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ФТП поиск - хранение данных
Alex S.Ну и что? Религия не позволяет написать
Код: plaintext
1.
2.
... like ftp.server.xx/dir1/dir2/%
или 
... like ftp.%/dir2/%


Да Господь с ним с lik'ом, вопрос состоит в том, как хранить имена файлов с путями так, чтобы в выдоче было
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
Запрос: madonna
Ответ что-то типа:
 1 . ftpserver/music/madonna/
 2 . ftpserver/music/madonna/rayoflight/madonna_rayoflight.mp3
 4 . ftpserver/music/madonna/rayoflight/madonna_blablabla.mp3
 5 . ftpserver/upload/musicmadonna/
 6 . ftpserver/images/madonna/

т.е. ко всему прочему отдельно выдавать ссылку на директорию по имени совпадающую с текстом запроса.
Хранение в виде типа:
Код: plaintext
1.
2.
3.
id | file_path
---------------
 1   | /upload/musicmadonna/rayoflight.mp3
будет не совсем то...
...
Рейтинг: 0 / 0
27.07.2008, 22:02
    #35454230
cyberklin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ФТП поиск - хранение данных
в свое время делал такую систему. LIKE сразу идет в лес, ибо долго. будете иметь время поиска по 2-5 сек на запрос. неприемлемо.
фултекст поиск - решение намного лучше.

что касается хранения - то мы, помниться, вели две таблицы items и parents. в items - имена каталогов/файлов, в parents - пути к ним.
Код: plaintext
1.
2.
3.
4.
5.
-- test
---- subtest1
------ subsubtest
---- subtest2
---- subtest3
превращалось в три записи в таблице parents - для корня, для test и для subtest1 и 5 записей для test, subtest1-3 и subsubtes. в итоге, искать нужно только в таблице items и присоединять путь из parents. надеюсь, объяснил понятно.

схема не без недостатков, но работала более-менее :)
...
Рейтинг: 0 / 0
28.07.2008, 00:14
    #35454278
BION
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ФТП поиск - хранение данных
cyberklin

Большое спасибо, попробую!
...
Рейтинг: 0 / 0
28.07.2008, 11:53
    #35454813
Нахлобуч
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ФТП поиск - хранение данных
BIONПишется фтп поисковичек, встала задача спроектировать базу.
Нафига база?
BION
В голове каша, прошу помощи.
Спасибо.
Lucene
...
Рейтинг: 0 / 0
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / ФТП поиск - хранение данных / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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