Рубрика «индексация»
Почему B-деревья быстрые?
2023-12-26 в 7:27, admin, рубрики: B-дерево, алгоритмы на графах, базы данных, двоичное дерево поиска, индексацияB-дерево — это структура, помогающая выполнять поиск в больших объёмах данных. Она была изобретена более сорока лет назад, однако по-прежнему используется в большинстве современных баз данных. Хотя существуют и более новые структуры индексов, например, LSM-деревья, B-дерево пока никто не победил в обработке большинства запросов баз данных.
После прочтения этого поста вы будете знать, как B-деревоЧитать полностью »
Когда за повышением зарплаты каждый месяц ходит робот
2020-12-24 в 7:02, admin, рубрики: SR-система, Блог компании Туту.ру, зарплата, индексация, отчеты, разработка, управление персоналом, управление проектами
Обычно повышение зарплаты выглядит следующим образом. Способ №1, гуманитарный: сотрудник через год работы задумывается, что что-то пошло не так, и пора просить повышения. Дожидается своего локального максимума усилий, и на этой волне идёт к руководителю просить больше денег. С точки зрения теории игр это выглядит как «ну, я попросил, вдруг прокатит». Никаких доводов повышать оклад у руководителя нет.
Дальше сотрудник может поднять ставки. «Повышайте, а то уволюсь». В этой ситуации в проигрыше оказываются оба — руководитель теряет на времени обучении нового сотрудника и стоимости подбора. Сотрудник теряет на том, что может неожиданно уволиться.
Разработчики традиционно пользуются способом №2: сначала проходят где-то несколько собеседований, собирают офферы и приходят с ними к руководителю. «Смотри, вот тут мне предлагают на 20% больше, но мне у нас нравится, повышай на 15%, а то я перейду». Это уже предмет обсуждения. В банальном случае проще повысить и сохранить ценного сотрудника, но это обеспечит проигрыши в связанных играх. То есть создаст прецедент. Поэтому решение принимается (в упрощённой модели) с некоторой долей рандома.
У нас у многих математика в анамнезе. Рассматривая эту игру дальше, можно сделать простой вывод, что такой диалог для сотрудника всегда стрессовый, и он случается в момент после кризисного. То есть сначала человек беспокоится, потом делает потенциально невыгодные действия (проходит собеседования в других местах), потом приходит. Части надо повышать, части не надо. Следующий вопрос: можно ли найти функцию, которая обеспечит справедливую оценку? Будет ли эта функция снимать вот эти стрессовые ситуации?
Регулярная переиндексация каждый год — вариант такой функции. Условно, если в договоре прописано, что зарплата каждый год растёт на уровень инфляции — наверное, можно не беспокоиться. Но Вадим придумал более интересную фишку — привязать это к оценке полезности действий сотрудника для компании. Но как адекватный человек, без KPI.
Если данные не помещаются в память. Простейшие методы
2019-12-10 в 6:41, admin, рубрики: miran, numpy, pandas, python, ram, Алгоритмы, Блог компании Дата-центр «Миран», индексация, компрессия данных, ОЗУ, оперативная память, оптимизация, Программирование, Серверная оптимизацияСамка трубкозуба с детёнышем. Фото: Scotto Bear, CC BY-SA 2.0
Вы пишете программу для обработки данных, она отлично проходит тест на небольшом файле, но падает на реальной нагрузке.
Проблема в нехватке памяти. Если у вас 16 гигабайт ОЗУ, вы не сможете туда загрузить стогигабайтный файл. В какой-то момент у ОС закончится память, она не сможет выделить новую, и программа вылетит.
Что делать?
Читать полностью »
42 оператора расширенного поиска Google (полный список)
2019-01-26 в 15:32, admin, рубрики: seo, индексация, операторы Google, поисковая оптимизация, Управление медиаТе, кто давно занимается поисковой оптимизацией, хорошо знают об операторах расширенного поиска Google. Например, почти все знают об операторе site:
, который ограничивает поисковую выдачу одним сайтом.
Большинство операторов легко запомнить, это короткие команды. Но уметь эффективно их использовать — совсем другая история. Многие специалисты знают основы, но немногие по-настоящему овладели этими командами.
В этом статье я поделюсь советами, которые помогут освоить поисковые операторы для 15 конкретных задач.
Читать полностью »
Чек-лист по выживанию сайта
2017-05-25 в 14:25, admin, рубрики: highload, mysql, solid, архитектура, индексация, Программирование, Разработка веб-сайтов, СУБД
В последнее время я как-то подозрительно часто наблюдаю примитивнейшие однотипные и довольно легко решаемые проблемы на самых разных web-проектах. Разные базы, разные языки, разные сферы деятельности и схемы монетизации. Всех их объединяет одно — лозунг «бизнес не дает переписать». Продолжающийся или только-только оконченный этап рапид-разработки растущего и агрессивно отжимающего у конкурентов долю рынка проекта родил огромную кучу т.н. «говнокода». Сомнительные архитектурные решения либо уже приносят кучу проблем, либо обещают их в будущем, но работают. Поток новых требований не дает времени навести порядок даже в инфраструктуре, не говоря уже о коде. Если вам такая ситуация знакома — добро пожаловать под кат поностальгировать, поучиться чему-то новому и/или поучить нас. Кому поржать, а кому и поплакать.
«Это все только для хайлода» — скажет вдумчивый и прозорливый читатель. Плох тот веб-проект, который не мечтает стать популярным хайлодом.
Картинка не только для привлечения внимания, но и для иллюстрации реальной ситуации на одном проекте, страдающим некоторыми из нижеперечисленных проблем.
Читать полностью »
Python: коллекции, часть 2: индексирование, срезы, сортировка
2017-01-12 в 7:06, admin, рубрики: python, индексация, коллекции, начинающим, Программирование, слайсинг, сортировка, срез, структуры данныхДанная статья является продолжением моей статьи "Python: коллекции, часть 1: классификация, общие подходы и методы, конвертация".
В данной статье мы продолжим изучать общие принципы работы со стандартными коллекциями (модуль collections в ней не рассматривается) Python.
Для кого: для изучающих Python и уже имеющих начальное представление о коллекциях и работе с ними, желающих систематизировать и углубить свои знания, сложить их в целостную картину.
Читать полностью »
Джули Рубикон. Признание бывшего сотрудника Facebook
2016-03-27 в 14:21, admin, рубрики: Enchilada, Facebook, Instagram, WhatsApp, будущее, будущее здесь, Джули Рубикон, индексация, Киберпанк, научная фантастика, НБА, общественное мнение, поисковые системы, Уильям Гибсон, филип дик, Читальный зал, метки: Джули Рубикон
Примечание от Робина Слоана, который опубликовал запись в своём блоге 15 марта 2016 года: «Этот рассказ появился в моём защищённом ящике в конце прошлого месяца, вместе с просьбой опубликовать его на Facebook сегодня именно в таком формате. Я не могу поручиться за подлинность истории, но она показалась мне достаточно странной и интересной».
#
Записывать всё это — последнее, что мне хочется делать, но это необходимо. Частично ради людей, которые обязаны знать, что происходит с их публикациями на Facebook, но главным образом (99%) ради Джули Рубикон и того пика на графике.
Мои бывшие коллеги из Facebook Inc. в Менло-Парк, Калифорния — привет, Джейн, привет, Нил, привет… Марк? — немедленно поймут, кто это написал, и компания вероятно будет преследовать меня, но я думаю, они провернут всё тихо. Комиссия по ценным бумагам не ограничится тихим расследованием, если действительно нарушены соответствующие правила и нормы, но честно… вряд ли такие правила существуют.
Читать полностью »
Выявляем заблокированные ресурсы при помощи инструментов Google для веб-мастеров
2015-03-12 в 5:10, admin, рубрики: css, Google, googlebot, hotlink, javascript, mobile development, Блог компании Google, Веб, веб-дизайн, внешние хосты, индексация, инструменты для веб-мастеров, Мобильный веб, поиск, поисковая система, Поисковые машины и технологии, правильная индексация, ресурсы, хотлинкинг, метки: вебПривет! Так уже получилось, что современный web-контент буквально стоит на трёх китах: HTML5, CSS3 и Javascript. Тесная интеграция этих трёх инструментов позволяет создавать поистине впечатляющие результаты, но сегодня речь не о достижениях современной веб-инсдустрии, а о том, как эти достижения правильно донести до пользователей.
За отображение вашего сайта у пользователей, само собой, отвечают браузеры. Но как видит сайт поисковая система? Что она увидит, если часть контента (картинки, таблицы стиля, скрипты) будуе закрыта от сканирования? Что увидят пользователи в результатах поиска, если Google не сможет проиндексировать весь необходимый контент? Специально для ответа на эти вопросы (а также для исправления некоторых недоразумений, мешающих вам находить своих пользователей в Google) мы создали инструмент «Отчёт о заблокированных ресурсах».
Сегодня мы представляем его широкой аудитории разработчиков и веб-мастеров, и вы можете познакомиться с ним и опробовать возможности нового инструмента одними из первых.
Вот так выглядит отчёт о проверке:
Читать полностью »
Конвейер обработки текста в Sphinx
2014-12-24 в 10:25, admin, рубрики: sphinx, индексация, лемматизация, морфология, обработка текста, Поисковые машины и технологииОбработка текста в поисковом движке выглядит достаточно простой снаружи, однако на самом деле это сложный процесс. При индексации текст документов должен быть обработан стриппером HTML, токенайзером, фильтром стопслов, фильтром словоформ и морфологическим процессором. А ещё при этом нужно помнить про исключения (exceptions), слитные (blended) символы, N-граммы и границы предложений. При поиске всё становится ещё сложнее, поскольку помимо всего вышеупомянутого нужно вдобавок обрабатывать синтаксис запроса, который добавляет всевозможные спец. символы (операторы и маски). Сейчас мы расскажем, как всё это работает в Sphinx.
Картина в целом
Упрощённо конвейер обработки текста (в движке версий 2.х) выглядит примерно так:
Выглядит достаточно просто, однако дьявол кроется в деталях. Есть несколько очень разных фильтров (которые применяются в особом порядке); токенайзер занимается ещё чем-то помимо разбиения текста на слова; и наконец под «и т.д.» в блоке морфологии на самом деле находится ещё по меньшей мере три разных варианта.
Поэтому более точной будет следующая картина: