Accueil Big Data Célébration des bâtisseurs à l’Index Conference 2023

Célébration des bâtisseurs à l’Index Conference 2023

0
Célébration des bâtisseurs à l’Index Conference 2023


Indicela conférence destinée aux ingénieurs développant des applications de recherche, d’analyse et d’IA à grande échelle, a eu lieu le jeudi 2 novembre dernier, avec les participants remplissant le laboratoire d’apprentissage du Computer History Museum ainsi que la diffusion en direct de l’Index.


salle d'index

La conférence a été une merveilleuse célébration de toutes les innovations techniques nécessaires à la création des applications qui imprègnent nos vies. De nombreuses conférences ont présenté des applications du monde réel, telles que les moteurs de recherche, les moteurs de recommandation et les chatbots, et ont discuté des processus itératifs par lesquels elles ont été mises en œuvre, optimisées et mises à l’échelle. Nous avons même eu l’occasion de marquer le 10e anniversaire de RocksDB avec un panel d’ingénieurs qui ont travaillé sur RocksDB au début de sa vie. Index était véritablement l’occasion pour les constructeurs d’apprendre des expériences des autres, à travers le contenu de la session ou via des conversations impromptues.

Modèles de conception pour les applications de nouvelle génération

La journée a débuté avec Venkat Venkataramani de Ensemble de fusée préparer le terrain avec les leçons tirées de la construction à grande échelle, en mettant l’accent sur le choix de la bonne pile, la rapidité des développeurs et la nécessité d’évoluer efficacement. Il a été rejoint par Confluent Le PDG Jay Kreps discutera de la convergence du streaming de données et de GenAI. Il est essentiel de veiller à ce que les données nécessaires soient acheminées au bon endroit et au bon moment pour ces applications. L’intégration des activités les plus récentes (de nouveaux faits sur l’entreprise ou les clients) et l’indexation des données pour les récupérer au moment de l’exécution à l’aide d’une architecture RAG sont essentielles pour alimenter les applications d’IA qui doivent être à jour avec l’entreprise.


index-venkat-jay

Venkat et Jay ont été suivis par un grand nombre d’orateurs éminents, entrant souvent dans des détails techniques approfondis tout en partageant leurs expériences et leurs enseignements concernant la création et la mise à l’échelle d’applications de recherche et d’IA dans des entreprises comme Uber, Pinterest et Roblox. Au fil de la conférence, plusieurs thèmes sont ressortis de leurs interventions.

Évolution en temps réel

Plusieurs présentateurs ont fait référence à une évolution au sein de leurs organisations, au cours des dernières années, vers la recherche, l’analyse et l’IA en temps réel. Nikhil Garg de Fenouil décrit succinctement comment le temps réel signifie deux choses : (1) la diffusion en ligne à faible latence et (2) la diffusion de résultats mis à jour et non précalculés. Les deux comptent.

Dans d’autres discussions, JetBlue Sai Ravruru et Ashley Van Name ont expliqué à quel point les données en streaming sont essentielles pour leur analyses opérationnelles internes et application et site Web destinés aux clientstandis que Girish Baliga décrivait comment Uber crée un chemin complet pour leurs mises à jour en direct, impliquant une ingestion en direct via Flink et l’utilisation d’index en direct pour compléter leurs index de base. Yexi Jiang a souligné à quel point la fraîcheur du contenu est essentielle dans de Roblox recommandations de la page d’accueil en raison de la synergie entre des contenus hétérogènes, par exemple dans les cas où de nouvelles connexions d’amis ou des jeux récemment joués affectent ce qui est recommandé à un utilisateur. À ÉtagèreEmmanuel Fuentes a expliqué comment ils sont confrontés à une multitude de défis en temps réel – contenu éphémère, navigation sur les chaînes et besoin d’une faible latence de bout en bout pour leur expérience utilisateur – dans personnaliser leur flux de diffusion en direct.

Shu Zhang de Pinterest ont raconté leur parcours, depuis les flux d’accueil basés sur le push classés par temps et par pertinence jusqu’au classement en temps réel basé sur le pull au moment de la requête. Shu a donné un aperçu des exigences de latence avec lesquelles Pinterest fonctionne du côté de la diffusion d’annonces, comme la possibilité de générer 500 annonces en 100 ms. Les avantages de l’IA en temps réel vont également au-delà de l’expérience utilisateur et, comme Nikhil et Jaya Kawale de Tubi Comme nous le soulignons, cela peut conduire à une utilisation plus efficace des ressources de calcul lorsque les recommandations sont générées en temps réel, uniquement lorsque cela est nécessaire, au lieu d’être précalculées.

Le besoin de temps réel est omniprésent, et un certain nombre d’intervenants ont souligné de manière intéressante RocksDB comme le moteur de stockage ou l’inspiration vers lequel ils se sont tournés pour offrir des performances en temps réel.

Séparation de l’indexation et du service

Lorsqu’elles opèrent à grande échelle, lorsque les performances sont importantes, les organisations ont décidé de séparer l’indexation du service afin de minimiser l’impact sur les performances que l’indexation à forte intensité de calcul peut avoir sur les requêtes. Sarthank Nandi a expliqué qu’il s’agissait d’un défi avec le déploiement d’Elasticsearch qu’ils avaient à Japper, où chaque nœud de données Elasticsearch était à la fois un indexeur et un chercheur, ce qui entraînait une pression d’indexation ralentissant la recherche. Augmenter le nombre de répliques ne résout pas le problème, car toutes les partitions de réplique doivent également effectuer une indexation, ce qui entraîne une charge d’indexation globale plus lourde.

Yelp a réorganisé sa plate-forme de recherche pour surmonter ces problèmes de performances, de sorte que dans sa plate-forme actuelle, les demandes d’indexation sont dirigées vers un serveur principal et les demandes de recherche vers des réplicas. Seul le serveur principal effectue l’indexation et la fusion des segments, et les réplicas n’ont besoin que de copier les segments fusionnés du serveur principal. Dans cette architecture, l’indexation et le service sont efficacement séparés, et les réplicas peuvent répondre aux demandes de recherche sans avoir à supporter la charge d’indexation.

Uber a été confronté à une situation similaire dans laquelle la charge d’indexation sur son système de serveur pouvait affecter les performances des requêtes. Dans le cas d’Uber, leurs index en direct sont périodiquement écrits dans des instantanés, qui sont ensuite propagés vers leurs index de recherche de base. Les calculs d’instantanés ont provoqué des pics de CPU et de mémoire, qui ont nécessité le provisionnement de ressources supplémentaires. Uber a résolu ce problème en divisant sa plate-forme de recherche en un cluster de service et un cluster dédié aux instantanés informatiques, de sorte que le système de serveur n’ait besoin que de gérer le trafic des requêtes et que les requêtes puissent s’exécuter rapidement sans être affectées par la maintenance de l’index.

Architecture à grande échelle

Plusieurs présentateurs ont discuté de certaines de leurs réalisations et des changements qu’ils ont dû mettre en œuvre à mesure que leurs applications se développaient et évoluaient. Lorsque Tubi disposait d’un petit catalogue, Jaya a expliqué qu’il était possible de classer l’intégralité du catalogue pour tous les utilisateurs à l’aide de tâches par lots hors ligne. Au fur et à mesure que leur catalogue s’agrandissait, cela est devenu trop gourmand en calcul et Tubi a limité le nombre de candidats classés ou passés à l’inférence en temps réel. À Glaner, une application de recherche sur le lieu de travail basée sur l’IA, TR Vishwanath et James Simonsen ont expliqué comment une plus grande échelle donnait lieu à des retards d’exploration plus longs sur leur index de recherche. Pour relever ce défi, ils ont dû concevoir différents aspects de leur système évolutif à des rythmes différents. Ils ont profité du traitement asynchrone pour permettre aux différentes parties de leur analyse d’évoluer indépendamment tout en donnant la priorité aux éléments à analyser dans les situations où leurs robots étaient saturés.

Le coût est une préoccupation courante lorsqu’on opère à grande échelle. Décrivant les compromis de stockage dans les systèmes de recommandation, Nikhil de Fennel a expliqué que tout mettre en mémoire est d’un coût prohibitif. Les équipes d’ingénierie doivent prévoir des alternatives basées sur les disques, parmi lesquelles RocksDB est un bon candidat, et lorsque les SSD deviennent coûteux, la hiérarchisation S3 est nécessaire. Dans le cas de Yelp, leur équipe a investi dans le déploiement de clusters de recherche en mode sans état sur Kubernetes, ce qui leur a permis d’éviter les coûts de maintenance continus et de s’adapter automatiquement aux modèles de trafic des consommateurs, ce qui a entraîné une plus grande efficacité et une réduction d’environ 50 % des coûts.

Ce ne sont là que quelques-unes des expériences de mise à l’échelle partagées lors des discussions, et même si tous les défis en matière de mise à l’échelle ne sont pas évidents dès le départ, il incombe aux organisations d’être conscientes dès le début des considérations à grande échelle et de réfléchir à ce qu’il faudra pour évoluer à plus long terme. terme.

Vous voulez en savoir plus ?

La conférence inaugurale de l’Index a été un excellent forum pour entendre tous ces leaders de l’ingénierie qui sont à l’avant-garde de la création, de la mise à l’échelle et de la production d’applications de recherche et d’IA. Leurs présentations étaient pleines d’opportunités d’apprentissage pour les participants, et beaucoup plus de connaissances ont été partagées dans l’intégralité de leurs exposés.

Voir la vidéo complète de la conférence ici. Et rejoindre la communauté pour rester informé de la prochaine #indexconf.

Contenu intégré : https://youtu.be/bQ9gwiWVAq8



LAISSER UN COMMENTAIRE

S'il vous plaît entrez votre commentaire!
S'il vous plaît entrez votre nom ici