Telegram Whatsapp Viber

Обо мне

Долгое время я занимался разработкой и продвижением сайтов. Чтобы понять, как поисковые системы ранжируют сайты, я создавал всевозможные скрипты для парсинга информации в сети. Будучи по своей натуре исследователем, а по образованию Физиком, я не мог отказаться от возможности экспериментировать, пусть даже с текстом, а не над природой. Благодаря старым проектам я мог себе позволить тратить все свое время на исследования в этой области. Изначально у меня не было цели создать поисковую систему. Меня интересовали такие вопросы: как определить язык текстовой информации, какое статистическое распределение слов в разных языках мира, какие чаще всего встречаются комбинации слов в больших объемах текстовой информации. Это были не очень сложные задачи, и они уже давно были решены кем-то, но мне нравился сам процесс, и я получал и продолжаю получать от этого удовольствие.

Приведу пример одного из моих исследований, которое заключалось в том, чтобы найти предел количества возможных словосочетаний. Ниже вы можете видеть график (для английского языка), на котором по оси X ко-во отсканированных страниц, а по оси Y ко-во словосочетаний из 1-го, 2-х, 3-х, 4-х и 5-ти слов (синий, зеленый, желтый, красный, оранжевый).

Я предполагал, что в какой-то момент должен настать предел, когда кривые приблизятся к границам каких-то чисел. Для английского языка было найдено около 18 миллионов словосочетаний, при этом графики соответствующие словосочетаниям из 3-х, 4-х и 5-ти слов, явно не собирались замедлять свой рост. Оперативная память сервера закончилась, на тот момент ее было 32GB, и эксперимент пришлось остановить.

Итак, у меня уже были хорошо работающие скрипты по определению языка текстовой информации и очистки html-страниц от тэгов. Написаны все они были на Си, что делало их невероятно быстрыми по сравнению с PHP. Также я заметил, что работать с данными мне удобней и быстрее, если они находятся в файлах. В результате я полностью отказался от использования каких-либо баз данных. Это, конечно же, заставило меня разработать собственные алгоритмы поиска по массивам и самому реализовать другие технические моменты, связанные с хранением информации. В результате я получил полную свободу и широкое поле для экспериментов с текстом.

Очистка html-страниц - еще та задачка. Многие интернет-сайты содержат большое количество ошибок в виде незакрытых тэгов и кавычек. Если использовать стандартные методы, то в чистый текст начинает попадать html-код.

Мне показалось, что до создания поисковой системы остался маленький шажочек, но как я был неправ. Более 3-х лет упорного труда и более 20 000 строк кода превратились в поисковую систему Kavunka.

© 2019-2020 Kavunka. Все права защищены.