В вычислительной технике поисковая система — это система программного обеспечения для поиска информации, разработанная для поиска информации, хранящейся на одной или нескольких компьютерных системах . Поисковые системы обнаруживают, сканируют, преобразуют и хранят информацию для поиска и представления в ответ на запросы пользователей. Результаты поиска обычно представляются в виде списка и обычно называются хитами . Наиболее широко используемым типом поисковой системы является поисковая система в Интернете , которая ищет информацию во Всемирной паутине .
Поисковая система обычно состоит из четырех компонентов, а именно: поисковый интерфейс, краулер (также известный как паук или бот), индексатор и база данных. Краулер обходит коллекцию документов, деконструирует текст документа и назначает суррогаты для хранения в индексе поисковой системы. Онлайновые поисковые системы хранят изображения, данные ссылок и метаданные для документа.
Поисковые системы предоставляют интерфейс для группы элементов, который позволяет пользователям указывать критерии интересующего элемента и заставлять систему находить соответствующие элементы. Критерии называются поисковым запросом . В случае текстовых поисковых систем поисковый запрос обычно выражается в виде набора слов, которые идентифицируют желаемую концепцию , которую может содержать один или несколько документов . [1] Существует несколько стилей синтаксиса поисковых запросов , которые различаются по строгости. Он также может переключать имена в поисковых системах с предыдущих сайтов. В то время как некоторые текстовые поисковые системы требуют от пользователей ввода двух или трех слов, разделенных пробелом , другие поисковые системы могут позволять пользователям указывать целые документы, изображения, звуки и различные формы естественного языка . Некоторые поисковые системы применяют улучшения к поисковым запросам, чтобы повысить вероятность предоставления качественного набора элементов с помощью процесса, известного как расширение запроса . Методы понимания запросов могут использоваться в качестве стандартизированного языка запросов.
Список элементов, соответствующих критериям, указанным в запросе, обычно сортируется или ранжируется. Ранжирование элементов по релевантности (от самой высокой к самой низкой) сокращает время, необходимое для поиска нужной информации. Вероятностные поисковые системы ранжируют элементы на основе мер сходства (между каждым элементом и запросом, как правило, по шкале от 1 до 0, где 1 соответствует наибольшему сходству) и иногда популярности или авторитетности (см. Библиометрия ) или используют обратную связь по релевантности . Булевы поисковые системы обычно возвращают только элементы, которые точно соответствуют, без учета порядка, хотя термин Булева поисковая система может просто относиться к использованию синтаксиса в стиле булевых символов (использование операторов AND , OR , NOT и XOR ) в вероятностном контексте.
Чтобы быстро предоставить набор соответствующих элементов, отсортированных по некоторым критериям, поисковая система обычно собирает метаданные о группе рассматриваемых элементов заранее с помощью процесса, называемого индексированием . Индекс обычно требует меньшего объема памяти компьютера , поэтому некоторые поисковые системы хранят только индексированную информацию, а не полное содержимое каждого элемента, и вместо этого предоставляют метод навигации к элементам на странице результатов поисковой системы . В качестве альтернативы поисковая система может хранить копию каждого элемента в кэше , чтобы пользователи могли видеть состояние элемента на момент его индексации или для архивных целей или для более эффективной и быстрой работы повторяющихся процессов. [2]
Другие типы поисковых систем не хранят индекс. Поисковые системы типа Crawler или Spider (они же поисковые системы реального времени) могут собирать и оценивать элементы во время поискового запроса, динамически рассматривая дополнительные элементы на основе содержимого начального элемента (известного как seed или seed URL в случае интернет-краулера). Метапоисковые системы не хранят ни индекс, ни кэш, а вместо этого просто повторно используют индекс или результаты одной или нескольких других поисковых систем для предоставления агрегированного, окончательного набора результатов.
Размер базы данных, который был важной маркетинговой особенностью в начале 2000-х годов, был также вытеснен акцентом на релевантном ранжировании, методах, с помощью которых поисковые системы пытаются сначала отсортировать лучшие результаты. Релевантное ранжирование впервые стало серьезной проблемой около 1996 года , когда стало очевидно, что непрактично просматривать полные списки результатов. Следовательно, алгоритмы релевантного ранжирования постоянно совершенствовались. Метод PageRank от Google для упорядочивания результатов получил наибольшую огласку, но все основные поисковые системы постоянно совершенствуют свои методологии ранжирования с целью улучшения упорядочивания результатов. С 2006 года рейтинги поисковых систем стали важнее, чем когда-либо, настолько, что была разработана отрасль (« оптимизаторы поисковых систем », или «SEO»), чтобы помочь веб-разработчикам улучшить свой поисковый рейтинг, и целый корпус прецедентного права был разработан вокруг вопросов, которые влияют на рейтинги поисковых систем, таких как использование товарных знаков в метатегах . Продажа поисковых рейтингов некоторыми поисковыми системами также вызвала споры среди библиотекарей и защитников прав потребителей. [3]
Опыт поисковой системы для пользователей продолжает улучшаться. Добавление Google в Google Knowledge Graph имело более широкие последствия для Интернета, возможно, даже ограничив трафик некоторых веб-сайтов, например, Wikipedia. Некоторые утверждают, что извлечение информации и представление ее на странице Google может негативно повлиять на другие сайты. Однако серьезных опасений не возникло. [4]
Поисковые системы, специально предназначенные для поиска веб-страниц, документов и изображений, были разработаны для облегчения поиска по большому, туманному скоплению неструктурированных ресурсов. Они спроектированы для выполнения многоэтапного процесса: обход бесконечного запаса страниц и документов для снятия образной пены с их содержимого, индексация пены/модных словечек в своего рода полуструктурированной форме (база данных или что-то в этом роде) и, наконец, разрешение пользовательских записей/запросов для возврата в основном релевантных результатов и ссылок на эти просмотренные документы или страницы из инвентаря.
В случае полностью текстового поиска первым шагом в классификации веб-страниц является поиск «элемента индекса», который может быть явно связан с «поисковым термином». Раньше поисковые системы начинали с небольшого списка URL-адресов в качестве так называемого начального списка, извлекали контент и анализировали ссылки на этих страницах для получения релевантной информации, которая впоследствии предоставляла новые ссылки. Процесс был в высшей степени цикличным и продолжался до тех пор, пока не было найдено достаточно страниц для использования поисковиком. В наши дни используется метод непрерывного сканирования в отличие от случайного обнаружения на основе начального списка. Метод сканирования является расширением вышеупомянутого метода обнаружения.
Большинство поисковых систем используют сложные алгоритмы планирования, чтобы «решить», когда повторно посетить определенную страницу, чтобы апеллировать к ее релевантности. Эти алгоритмы варьируются от постоянного интервала посещения с более высоким приоритетом для более часто меняющихся страниц до адаптивного интервала посещения на основе нескольких критериев, таких как частота изменений, популярность и общее качество сайта. Скорость веб-сервера, на котором запущена страница, а также ограничения ресурсов, такие как объем оборудования или пропускная способность, также учитываются.
Страницы, обнаруженные веб-сканированием, часто распределяются и загружаются в другой компьютер, который создает карту обнаруженных ресурсов. Гроздья кластерной массы немного похожи на график, на котором разные страницы представлены в виде небольших узлов, соединенных ссылками между страницами. Избыток данных хранится в нескольких структурах данных, которые обеспечивают быстрый доступ к этим данным с помощью определенных алгоритмов, которые вычисляют рейтинг популярности страниц в Интернете на основе того, сколько ссылок указывает на определенную веб-страницу, что позволяет людям получить доступ к любому количеству ресурсов, связанных с диагностикой психоза. Другим примером может служить доступность/ранг веб-страниц, содержащих информацию о Мухаммеде Мурси, по сравнению с лучшими достопримечательностями для посещения в Каире после простого ввода «Египет» в качестве поискового запроса. Один из таких алгоритмов, PageRank , предложенный основателями Google Ларри Пейджем и Сергеем Брином, хорошо известен и привлек много внимания, поскольку он подчеркивает повторяющуюся обыденность веб-поиска, любезно предоставленную студентами, которые не знают, как правильно исследовать предметы в Google.
Идея анализа ссылок для вычисления рейтинга популярности старше PageRank. Однако в октябре 2014 года Джон Мюллер из Google подтвердил, что Google не собирается обновлять его (PageRank) в будущем. В настоящее время используются и другие варианты той же идеи — школьники младших классов выполняют такие же вычисления при выборе команд по кикболу. Эти идеи можно разделить на три основные категории: рейтинг отдельных страниц и характер контента веб-сайта. Поисковые системы часто различают внутренние и внешние ссылки, поскольку создатели веб-контента не чужды бесстыдной саморекламе. Структуры данных карты ссылок обычно также хранят якорный текст, встроенный в ссылки, поскольку якорный текст часто может предоставить «очень хорошее» резюме контента веб-страницы.
Поиск текстового контента в базах данных представляет несколько особых проблем, из которых процветает ряд специализированных поисковых систем. Базы данных могут быть медленными при решении сложных запросов (с несколькими логическими или строковыми аргументами сопоставления). Базы данных допускают псевдологические запросы, которые не используются полнотекстовым поиском. Для базы данных не требуется сканирование, поскольку данные уже структурированы. Однако часто необходимо индексировать данные в более экономичной форме, чтобы обеспечить более быстрый поиск.
Иногда искомые данные содержат как содержимое базы данных, так и веб-страницы или документы. Технология поисковых систем была разработана для удовлетворения обоих наборов требований. Большинство смешанных поисковых систем являются крупными поисковыми системами в Интернете, такими как Google. Они выполняют поиск как по структурированным, так и по неструктурированным источникам данных. Возьмем, к примеру, слово «мяч». Проще говоря, оно возвращает более 40 вариаций только в Википедии. Вы имели в виду мяч, как в общественном собрании/танце? Футбольный мяч? Подушечку стопы? Страницы и документы сканируются и индексируются в отдельном индексе. Базы данных также индексируются из различных источников. Затем результаты поиска генерируются для пользователей путем параллельного запроса этих нескольких индексов и объединения результатов в соответствии с «правилами».
Концепция гипертекста и расширения памяти берет свое начало в статье, опубликованной в The Atlantic Monthly в июле 1945 года, написанной Ванневаром Бушем , под названием « Как мы можем думать ». В этой статье Ванневар призвал ученых работать вместе, чтобы помочь создать свод знаний для всего человечества. Затем он предложил идею практически безграничной, быстрой, надежной, расширяемой, ассоциативной системы хранения и извлечения памяти. Он назвал это устройство мемексом . [ 5]
Буш считал понятие «ассоциативной индексации» своим ключевым концептуальным вкладом. Как он объяснил, это было «положение, посредством которого любой элемент может быть по желанию вызван для немедленного и автоматического выбора другого. Это существенная особенность мемекса. Процесс связывания двух элементов вместе — это важная вещь. [6]
Все документы, используемые в memex, будут в форме микрофильмированной копии, полученной как таковой, или, в случае личных записей, преобразованной в микрофильм самой машиной. Memex также будет использовать новые методы поиска, основанные на новом виде ассоциативного индексирования, основная идея которого заключается в том, что любой элемент может быть по желанию вызван для немедленного и автоматического выбора другого элемента для создания личных «следов» через связанные документы. Новые процедуры, которые, как ожидал Буш, облегчат хранение и поиск информации, приведут к разработке совершенно новых форм энциклопедии.
Самый важный механизм, задуманный Бушем, — это ассоциативный след. Это был бы способ создания новой линейной последовательности кадров микрофильма через любую произвольную последовательность кадров микрофильма путем создания цепной последовательности ссылок описанным выше способом, вместе с личными комментариями и побочными следами.
В 1965 году Буш принял участие в проекте INTREX Массачусетского технологического института по разработке технологии механизации обработки информации для библиотечного использования. В своем эссе 1967 года под названием «Memex Revisited» он указал, что развитие цифрового компьютера, транзистора, видео и других подобных устройств повысило осуществимость такой механизации, но затраты задержат ее достижения. [7]
Джерард Солтон, умерший 28 августа 1995 года, был отцом современных поисковых технологий. Его команды в Гарварде и Корнелле разработали систему информационного поиска SMART. Волшебный автоматический извлекатель текста Солтона включал такие важные концепции, как модель векторного пространства , обратная частота документа (IDF), частота терминов (TF), значения дискриминации терминов и механизмы обратной связи по релевантности.
Он написал 56-страничную книгу под названием «Теория индексации» , в которой объяснил многие из своих тестов, на которых до сих пор во многом основан поиск.
В 1987 году была опубликована статья, в которой подробно описывалась разработка поисковой системы строк символов (SSE) для быстрого поиска текста на двухметаллической твердотельной схеме n-well CMOS размером 1,6 мкм с 217 600 транзисторами, размещенными на кристалле размером 8,62x12,76 мм. SSE использовала новую архитектуру поиска строк, которая сочетает в себе логику конечного автомата (FSA) с 512 стадиями и адресуемую память (CAM) для достижения приблизительного сравнения строк со скоростью 80 миллионов строк в секунду. Ячейка CAM состояла из четырех обычных ячеек статического ОЗУ (SRAM) и схемы чтения/записи. Одновременное сравнение 64 сохраненных строк переменной длины было достигнуто за 50 нс для входного текстового потока со скоростью 10 миллионов символов/с, что позволило обеспечить производительность, несмотря на наличие ошибок в виде кодов символов. Более того, чип позволял осуществлять поиск по неанкерным строкам и поиск по строкам переменной длины «неважно» (VLDC). [8]
{{cite journal}}
: CS1 maint: postscript (link)