Перенос базы знаний веб-сайтов в базу данных PostgreSQL для поисковых запросов
Мне было поручено создать функцию поиска для базы знаний веб-сайтов (которая хранится в репозитории github). Я действительно хорошо знаком с созданием баз данных с помощью Django, поэтому у меня возникают проблемы с пониманием того, как я должен загружать кучу HTML-файлов в базу данных и запрашивать их с помощью postgres. Любые указатели на то, как база данных может быть структурирована. Я слышал, что HTML-файлы могут храниться в текстовом поле, но как устроены столбцы, получает ли каждая страница свою собственную строку и т. Д.? и как я могу сделать это с довольно большой базой знаний без необходимости вручную загружать каждый файл?
Платформа хостинга db, которую я использую, имеет утилиту миграции, которая говорит
Загрузка будет принимать данные в любой из трех форм, в виде простого текста (SQL), архивов tar (без сжатия) или в собственном сжатом "пользовательском" формате PostgreSQL.
Это при условии, что база данных уже структурирована.
1 ответ
Я слышал, что HTML-файлы могут храниться в текстовом поле, но как устроены столбцы, получает ли каждая страница свою собственную строку и т. Д.?
Хранение HTML в столбце вполне приемлемо. Если вы храните HTML в столбце, то каждая новая страница требует новую строку.
и как я могу сделать это с довольно большой базой знаний без необходимости вручную загружать каждый файл?
Вы только что сказали, что хостинг-провайдер разрешает "собственный сжатый" пользовательский "формат PostgreSQL". Так что устанавливайте PostgreSQL локально. Получите все это и работает. Вставьте каждую страницу локально. Затем вы можете загрузить на хостинг-провайдера с помощью pg_dump --format=c
который не просто одно действие, но сжатый.