№32: Пошукова система Github
MP3•Головна епізоду
Manage episode 358727379 series 3361795
Зроблено Денис, Ігор, Саша і знайдено завдяки Player FM та нашій спільноті. Авторські права належать видавцю, а не Player FM, і аудіоматеріали транслюються безпосередньо з сервера видавця. Натисніть на кнопку Підписатися, щоб слідкувати за оновленнями в Player FM або скопіюйте і вставте посилання на канал до іншої програми для подкастів.
🔞 Тут будуть матюки 🔞
Робочі посилання і коментарі в каналі https://t.me/midnight_chatter
- 0:00-2:50 Intro. Спеціалізовані і генералізовані системи пошуків.
- 2:51-9:12 Чому у Github була найгірша система пошуку? Натягуємо Elastic на код, який не є натуральною мовою. BM25 “на пальцях”. Ну і неймдропаємо Tf-Idf
- 9:13-12:26 Повертаємося до оригінального блогпосту. Як весь код вліз в 25Тб? І інші цифри для оцінки масштабу розміру пошукової бази
- 12:27-15:02 Які кола мікросервісів проходить ваш код перед тим, як потрапити в видачу пошуку? Самописні бази на такому швидкому і безпечному Rust, а також ліричні відступи з шеймінгом людей за спадок на Golang
- 15:03-22:26 Що в цій базі? Інвертовані індекси, щоб не лупати днями всі документи в циклі. Триграми з прикладами “📃” ➡️👨⚕️,うく,💦. Як ділити величезний індекс по різних серверах? Трохи про шардінг, але може краще почитайте “кабанчика”. PGTune
- 22:26-25:24 Як відбувається безпосередньо пошук?
- 25:25-30:17 Невеликі, здавалося б, оптимізації, які значно покращували все: мінімальне остовне дерево, k-мердж списків, … Зато за 36 годин все переіндексовують з нуля, як треба буде
- 30:18-34:25 На чому все це крутиться? І навіщо взагалі треба пошук по коду? Даєш ReversoContext для коду!
- 34:26-35:40 Outro
Долучайтесь до наших соцмереж:
- https://t.me/midnight_chatter
- Twitter @O_Balachky
- TikTok @o_balachky
Музика: https://www.streambeats.com/ | @stasgavrylov
41 епізодів