Figure projet de base de données open source DGraph passé et présent | titres technologiques

Pourquoi Google veut à la carte du système de construction de services de données? Comment Dgraph construit pas à pas sortir? Cet article parle de vies passées carte Dgraph base de données avec vous.

Auteur | ManishRai Jain

Zebian | Wu Xingling

Chaque fois que je me présente aux autres et expliquer ce que nous pouvons construire, dans Dgraph Labs, on m'a demandé souvent si travaillé à Facebook, ou si j'essaie maintenant de faire le FaceBook inspiré. Beaucoup de gens sont conscients des efforts à la base de données de graphe social Facebook a fait, parce qu'ils publient un grand nombre d'articles sur l'infrastructure de base de données cartographiques.

Mot de Google Maps se limite à fournir des connaissances, mais avant ce projet, presque personne ne pense l'infrastructure interne peut mettre en uvre ce service. Google fournit système spécial pour fournir le service de cartographie des connaissances. En fait, le travail de Google, moi et mon équipe à la carte système de service de base de données sous beaucoup de paris. Loin en 2010, moi-même je l'ai fait au moins deux tentatives plus radicales pour étudier la nouvelle théorie de la base de données cartographiques, pour voir ce que nous pouvons créer.

Google a besoin de construire un nouveau système de services de base de données cartographiques, non seulement peut gérer la relation complexe entre les données cartographiques de connaissances, un service de recherche peut également gérer tous les accès aux données structurées (OneBox). Le système de service doit avoir la possibilité de parcourir toutes les données, mais aussi avoir un débit suffisamment élevé et une latence assez faible, de sorte que vous pouvez appliquer à un flot de requêtes de recherche Web. A cette époque, presque pas de système disponible ou base de données peut répondre à trois exigences ci-dessus.

Maintenant, j'ai répondu pourquoi la construction du système de services de données cartographiques Google, le reste de l'espace, je vais vous présenter, nous sommes pas à pas comment construire un système de base de données de carte pour répondre aux exigences des cartes de connaissances des services et des moteurs de recherche.

Je sais comment ceux-ci?

2006-2013, je travaillais à Google. La plupart a commencé en tant que stagiaire, plus tard dans la Web Search travail de groupe Infrastructure en tant qu'ingénieur logiciel. En 2010, Google a acquis Metaweb, mon équipe vient de caféine lancée. Je voulais faire les choses différemment, et a commencé à travailler avec des gens Metaweb, faisant la navette entre San Francisco et Mountain View. Mon objectif était de comprendre comment utiliser les connaissances pour améliorer la carte recherche sur le Web.

Avant que j'engagé à la base de données de carte de développement, Google a un certain nombre de projets. Il est à noter que, Google a créé un projet appelé le bureau de Squared à New York, et il y avait une discussion sur la connaissance de la carte. Ces efforts sont particuliers et les petites équipes sporadiques. Mais que le temps est pas encore une chaîne de prise de décision établie, qui a finalement je suis parti de Google. On parle de plus tard.

histoire Metaweb

Comme indiqué plus haut, en 2010, Google a acquis Metaweb. Metaweb en utilisant une variété de techniques pour construire une carte des connaissances de haute qualité, y compris l'exploration et l'analyse syntaxique Wikipedia, et l'utilisation de la stratégie crowdsourcing similaire à Wikipédia par l'opération Freebase. Tous ces éléments sont construits par leur base de données axée graphiques internes, cette base de données est nommé Graphd, un programme de base de données cartographiques (maintenant été publié sur GitHub).

Graphd il y a des propriétés très typiques. Comme démon, il fonctionne sur un seul serveur, toutes les données en mémoire. site Web entier Freebase avec le Graphd. Après l'acquisition, l'un des défis auxquels est confrontée Google est de continuer à fonctionner Freebase.

Google construit SSTable, puis BigTable, qui peut être prolongée latéralement à des centaines ou des milliers de machines, des services de données communes dans un certain nombre de PB. Et ils utilisent Borg (un outil de gestion de cluster, le prédécesseur de K8S) machines de distribution, l'utilisation Stubby (GRPC out) pour communiquer, pour résoudre l'adresse IP (BNE, cuit au four dans K8S) par le nom Borg, Google stocke les données dans un système de fichiers ( GFS, similaire à Hadoop FS). Processus peut mourir, la machine peut se bloquer, mais le système continuera à fonctionner.

Il est pour cet environnement, Graphd être reporté pour servir l'idée d'exécuter la base de données complète du site sur un seul serveur avec Google (y compris moi-même) idée originale varient considérablement. Graphd besoin 64GB ou plus de mémoire. Si vous riez de cette mémoire, s'il vous plaît noter que le point dans le temps, il était en 2010. La capacité maximale de la majorité du serveur Google est 32GB. En fait, Google doit acheter machine spéciale a suffisamment de RAM pour soutenir un grand Graphd.

remplacement GraphD

Et des idées sur la façon de ré-écriture déplacer le travail de GraphD de manière distribuée ont été proposés, mais ils ne sont pas stockées dans la base de données clé, les gens ont juste besoin d'obtenir un bloc de données, le déplacer vers un autre service lorsque l'accès clé correspondante , nous pouvons fournir le service. Figure base de données doit assurer une connectivité efficace et traversal, ce qui nous oblige à utiliser une façon particulière de la construction de logiciels.

Dans ces idées, on est d'utiliser un projet appelé MindMeld (IIRC) est. La mémoire du programme est accessible à partir d'un autre serveur via le réseau plus rapide du matériel. On estime que la voie normale pour accéder à ce RPC plus rapide, assez rapide pour copier pseudo copier un accès direct à la mémoire requise pour la base de données de la mémoire. L'idée ne va pas trop loin.

Un autre vraiment adopté l'idée est de construire un véritable système de services de base de données cartographiques. Non seulement peut remplacer Graphd pour Freebase, mais aussi que le travail futur de tous les services de la carte du savoir. Il a été nommé Dgraph, un système de service de base de données cartographiques distribuée, une version améliorée du Graphd.

Pas étonnant, la réponse est oui. Au sein de la société Google, Dgraph Labs et le projet open source Dgraph, est ainsi nommé.

Pour la plupart de cet article, quand je l'ai mentionné Dgraph, je veux dire des projets internes de Google plutôt que sur des projets open source que nous construisons. Bien sûr, il y aura plus derrière la description du projet open source.

histoire cérébro: un moteur de carte de connaissances

Bien que le temps que je me suis rendu compte Dgraph sur la route en essayant de remplacer Graphd, mais j'était le but est d'améliorer l'expérience de recherche sur le Web. J'ai trouvé un ingénieur de recherche et de développement à la DH Metaweb, qui est aussi le fondateur de Cubed.

Comme je l'ai mentionné plus tôt, certains des ingénieurs de Google à New York ont mis en place Google Squared. DH a mis en place un projet similaire Cubed. Bien que projet Squared a finalement échoué à se matérialiser, mais Cubed très impressionnant. J'ai commencé à réfléchir à la façon de le construire sur Google. Google fournit un certain nombre de petites propriétés, me aider à obtenir plus facilement le processus de construction entier.

Le premier est un Rechercher , Google fournit un moyen de déterminer avec une grande précision quels mots sont liés comprendre. Par exemple, quand vous voyez comme Quand une telle phrase, il peut vous dire et Il devrait être mis en place. En outre, voir savoir et Ensemble pour exprimer un sens. Pour les humains, ce sont des choses évidentes, mais pour la machine, il est difficile de le faire.

La deuxième caractéristique est Comprendre la syntaxe Lorsqu'un similaire Lorsque la demande de recherche est générée, la machine est comprise comme Ecrire (À savoir la nationalité de la loi écrite dans le livre). Mais la phrase peut aussi être comprise comme écrit de Que les livres des écrivains français. J'ai utilisé le discours de Stanford (POS) tagger pour mieux comprendre la syntaxe et construit un arbre de syntaxe.

La troisième caractéristique est La compréhension de l'entité , Le mot peut représenter de nombreuses entités. Il peut représenter le pays (région), la nationalité (voir les Français), les plats (voir la cuisine française) ou en français. Ici, je peux utiliser un autre programme pour obtenir la liste des entités des mots ou des phrases qui peuvent correspondre.

La quatrième partie est de comprendre Les relations entre les entités . Maintenant, je sais déjà comment se connecter à la phrase en mots, des phrases devraient être sous quelle forme d'organisation (grammaire) et les entités qu'ils peuvent correspondre, je besoin d'un moyen de trouver la relation entre ces entités pour créer une interprétation de la machine . Par exemple, une requête dit Et puis nous dire qu'il représente POS Ecrire . nous avons Plusieurs entités, Plusieurs entités, l'algorithme doit déterminer la façon dont ils sont connectés. Ils peuvent les contacter par le lieu de naissance, que l'auteur est né en France (mais peut être écrit en anglais), ou est l'auteur des ressortissants français, parler ou écrire le français (mais ne peuvent pas être associés à des Français dans ce pays) de l'auteur, ou tout comme écrivains cuisine française.

recherche Figure système base de données sur l'indice

Afin de déterminer si et comment l'entité connecté, j'ai besoin d'un système de base de données cartographiques. Graphd jamais étendu à tout le niveau Google, et je suis bien à la recherche est Web. Cartographie de la connaissance triple format de métadonnées, à savoir, est représenté par le fait que chacune des trois parties, liées à S (entité), le P-jacente (relation) et le joint d'objet (une autre entité). Les requêtes doivent provenir à partir de

parfois, de

.

J'ai utilisé le système d'index de recherche de Google , Chaque triplet attribué un identifiant, et de construire trois index, respectivement, pour la S, P et O. En outre, l'indice permet donc des pièces jointes, j'annexe des informations de type pour chaque entité (à savoir, acteur, des livres, personnes, etc.).

J'ai construit cette carte système de services de données, mais vous savez qu'il y a une profondeur de connexion du problème (tel que décrit ci-dessous), et ne convient pas pour toute requête de données cartographiques complexes. En fait, quand je laisse l'équipe Metaweb quelqu'un ouvre le système d'accès à l'autre équipe, j'insiste refusé.

Afin de déterminer la relation entre les entités, je vais parcourir toutes les possibilités entre la requête des entités. Par exemple, et Toutes les relations entre les produits de la partie sélectionnée du résultat sont sortis, le juge Tout lien entre ces derniers et les résultats obtenus, et donc constamment déduction. Cela provoque la même phrase aura beaucoup d'explications, telles que Cette phrase, elle produira comme , , une telle explication, et le filtre automatiquement comme explication.

Pour chaque explication possible, le système de base de données figure génère une liste de résultats, comprenant une entité de données efficaces, et retourne également à son type (présent dans l'annexe). Utilisation très puissant, en raison du type de résultats permet de filtrer, de tri ou d'autres fonctions d'extension. Par exemple, pour un résultat de recherche de film, vous pouvez être classés en fonction de l'année de sortie du film, la longueur du film (courts métrages, longs métrages), la langue, et ainsi de suite gagner.

Ce projet semble très souvent l'intelligence, nous (DH comme carte de connaissances d'experts est également impliqué dans une partie de) nommez-Cerebro, après le film X-Men du même nom est apparu dans la machine (ondes cérébrales déclenchement).

Cérébro courir révèlent souvent un fait que les gens ne sont pas d'abord exploré très intéressant. Lorsque vous exécutez une requête un peu comme le , cérébro comprendra le président est humain, et les humains ont la hauteur. Par conséquent, il vous permet de classer en fonction de la hauteur du président, et de montrer que Abraham Lincoln était le plus grand président américain. Elle permet également aux par le président de l'enquête sur la nationalité, dans ce cas, il affiche également une liste des États-Unis et le Président du Royaume-Uni, les États-Unis parce qu'il ya un président de nationalité britannique: George Washington. (Avertissement: KG a été basée sur les résultats de l'Etat ne peut pas garantir l'exactitude de ces résultats.)

Vs carte de liens hypertextes connaissances

Cérébro est l'occasion de vraiment comprendre la signification de la requête utilisateur. la machine de base de données figure dans la base de données, nous pouvons générer une interprétation de requête, la liste des résultats est générée et comprendre les résultats appuient une exploration plus poussée. Comme décrit plus haut, vous pouvez commencer à un filtre particulier et les opérations de tri sur les résultats, la connexion peut être ralliées pour afficher les données de relation de connexion. De la à ou . DH a démontré la capacité de passer d'une liste à l'autre des résultats dans la liste des résultats d'un autre projet qu'il a appelé Parallax de.

Cérébro Il est très impressionnant, des supports de leadership Metaweb elle. Même le service dans une partie du, Cerebro a également une performance satisfaisante et la fonction, le moteur I connaissances d'appel (mis à jour à partir d'un moteur de recherche). Mais Google n'est pas la principale connaissance de la cartographie dans les domaines connexes. Mon manager est pas intéressé par cela, après avoir communiqué avec lui, j'ai eu l'occasion de le montrer à une tête du département de recherche très avancés.

Cependant, en réponse à l'exposition après frustrant. Pour démonstration, le chef m'a montré les résultats des requêtes de recherche Google, ce qui montre les liens hypertextes pertinents dix, il croit que Google peut faire la même chose. De plus, ils ne veulent pas enlever beaucoup d'informations sur le site, pourrait violer la vie privée des chercheurs.

Si vous pensez que les dirigeants ont dit un sens, on pourrait penser à nouveau: Quand Google recherche Web, il ne comprend pas vraiment la requête. Il sera dans la position relative correcte, le rang de la page pour trouver les bons mots-clés, et tout ce genre de chose. Il est un système très complexe et extrêmement complexe, mais il ne comprend pas vraiment ou les résultats de la requête. Les utilisateurs doivent lire leurs propres résultats, analyser et extraire les informations dont ils ont besoin, et des recherches plus poussées pour mettre sur pied une liste complète des résultats.

Par exemple, pour , vous devez d'abord de mettre sur pied une liste détaillée du contenu de ce qui aurait pu s'adapter à une seule page. Appuyez ensuite sur l'année de publication de ces livres étaient trier ou filtrer par des maisons d'édition, toutes ces opérations nécessitent beaucoup de suivi des liens, et d'agrégation manuelle de nouveaux résultats de recherche. Cérébro tous les utilisateurs ont la possibilité d'informations de filtre en plus des étapes de la province, l'interaction personnes-ordinateur est simple et parfait.

Cependant, ce fut une méthode typique de la connaissance de la cartographie. utilitaire de gestion de Google map incertaine du savoir, ne sais pas comment les moteurs de recherche devraient être associés à la carte des connaissances. Le grand succès obtenu en fournissant un lien Web pour les organisations d'utilisateurs, de nouvelles façons d'aborder ce genre de connaissances est plus difficile à digérer facilement.

Après une année de confrontation avec la direction de Google, j'ai presque perdu la confiance pour continuer. À ce stade, un gestionnaire de bureau Google Shanghai a atteint à moi, et je demeurerai en Juin 2011, le projet sera remis à lui. Il a réuni une équipe de 15 ingénieurs. J'ai passé une semaine à Shanghai, va construire et moi avons appris transféré à l'ingénieur. DH également impliqué, il était ici l'équipe d'orientation à long terme.

Profondeur de connexion du problème

I a été construit système de service de base de données cartographiques Cerebro, il y a un problème de connexion profonde. Lorsque l'ensemble précédent de résultat partiel de la requête a besoin d'effectuer sa partie postérieure, une connexion est établie. Une connexion typique implique des opérations SELECT, à savoir des résultats de filtration provenant de certains ensembles de données commun, et utiliser les résultats pour une autre partie de l'ensemble de données filtrées. Je serai un exemple pour illustrer.

Par exemple, vous voulez savoir (Je vis à San Francisco et manger personne sushi). Les données sont divisés en deux catégories: les personnes et vivent dans SF ces deux types de personnes qui mangent des informations de sushi.

La requête ci-dessus est une connexion à un seul étage. Si l'application de base de données externe exécute cette opération, il effectuera une requête pour effectuer la première étape. Ensuite, exécutez plusieurs requêtes (chaque le résultat d'une requête) pour savoir ce que tout le monde a mangé, il suffit de choisir les gens à manger des sushis.

La deuxième étape est l'apparition de problèmes de ventilation. La première étape s'il y a un million de résultats (toute la population de San Francisco), la deuxième étape est nécessaire pour mettre les résultats de chaque requête, récupérer leurs habitudes alimentaires, puis filtrées personne qualifiée à travers le filtre.

Les ingénieurs des systèmes distribués résolvent souvent ce problème en diffusant. Ils entraîneront dans de nombreux travaux par lots, en utilisant des tâches de segmentation de la fragmentation et de requête attribués à chaque serveur du cluster. L'utilisation distribuée complètera la connexion, mais entraînera des retards requête.

Les systèmes distribués diffusent très mauvais. Jeff Dean de Google dans sa « réalisation d'intervention rapide en temps Large Services en ligne » discours mieux expliquer le problème. La requête de retard total est toujours supérieure à la plus lente du retard de la machine. Petit problème sur une machine unique entraînera des retards, chaque requête liée à la masse de la machine augmente considérablement la probabilité de retards.

Considérons un serveur dont 50% de retard de 1 ms, mais 99% de retard lS (à savoir, retard égal à moins de 99 pour cent de 1 s). Si le processus de requête uniquement sur un serveur, seulement 1% des demandes prendra plus d'une seconde. Cependant, si la requête a frappé l'un des 100 serveurs, 63% des demandes prendra plus d'une seconde.

Par conséquent, la mise en uvre d'une requête de diffusion à la requête de latence est défavorable. Considérons maintenant le besoin de deux, trois fois ou plus la connexion. Pour les scénarios OLTP en temps réel, il devient trop lent, les gens retardent au-delà de la plage acceptable.

La plupart des bases de données cartographiques non-native existe un tel haut en éventail de l'émission, y compris Janus figure, Twitter et Facebook FlockDB de TAO.

connexion distribuée est un problème. base de données graphique unique existante maintenue par l'ensemble commun de données dans une seule machine (base de données séparée), et ne touche pas le cas d'autres serveurs sera le problème que toute opération de connexion peut être évité, comme Neo4j.

Entrez Dgraph: un moteur de connexion de profondeur

Après la fin de Cerebro, j'ai l'expérience du système de services graphiques de construction Dgraph impliqué dans le projet, et est devenu l'un des trois directeur technique du projet. Le concept Dgraph impliqué dans la conception est nouvelle, la profondeur de connexion résout le problème.

Dgraph en données de motif de fragmentation de manière spéciale, dans lequel chaque connexion peut être complètement exécuté par une machine, le concept relatif vers ledit avant - prédicat - Objet (e SPO), dans chaque cas, est enregistré et Dgraph dans cet exemple, chaque attribut correspondant à tous les sujets et objets. Une pluralité d'instance de prédicats est stocké sur chaque stockage prédicats intégralité.

Cela permet effectivement la requête d'exécuter la profondeur arbitraire de connexion, tout en évitant le problème de la diffusion en éventail. Par exemple, la requête Elle conduira à effectuer jusqu'à deux appels de réseau au sein de la base de données, quelle que soit la taille de cluster. Le premier appel sera de trouver toutes les personnes qui vivent à San Francisco. Le deuxième appel envoie la liste des personnes et tous ceux qui cherchent à manger des sushis et ensemble. Nous pouvons également ajouter des restrictions ou extensions, chaque étape consistera toujours à un appel réseau.

Cela introduit le problème se trouve dans un très grand prédicat sur un seul serveur, mais ce problème peut être résolu par une nouvelle augmentation de la taille de la scission entre deux ou plusieurs instances du prédicat. Même si, une scission unique sous-jacente à travers le cluster est que dans le comportement le plus extrême de sous le pire des cas, où toutes les données correspondant à un seul prédicat. Dans d'autres cas, les données sont bien prédicat de la performance technique de la fragmentation peut être réalisé plus rapidement retard requête dans le système actuel.

La segmentation est pas la seule innovation de Dgraph. Dgraph pour tous les objets affectés entier ID et triée et stockée dans la structure de la liste de publication rapide de ces demandes intercotation calculée. Ces innovations permettront d'accélérer le débit de filtration pendant la connexion, il peut également être utilisé pour trouver des références communes et ainsi de suite. L'idée était liée au système de services Web de Google.

Tout projet OneBox unifié par plasma

Dgraph Google pas de base de données, mais un système de service, l'équivalent du système de services de recherche Web de Google. Utilisez Dgraph peut également répondre à des mises à jour en temps réel. En temps réel système de service de mise à jour, il a besoin d'un graphique en temps réel du système d'indexation. J'ai accumulé beaucoup d'expérience en temps réel des systèmes d'indexation progressive dans le projet de caféine.

J'ai lancé un projet visant à unifier toutes les données cartographiques Google OneBox par le système d'indexation, y compris la météo, vol, nouvelles de l'événement. OneBox vous savez peut-être pas le mot, mais vous avez certainement vu. Contrairement aux autres résultats de la recherche OneBox sont affichés dans une boîte séparée qui affiche lors de l'exécution de certains types de requêtes, Google peut retourner OneBox d'information plus riche. Aimeriez-vous savoir OneBox, effectuez une recherche .

Avant d'entreprendre ce projet, chacun par une autre équipe de OneBox maintenu par une opération back-end indépendant. Il y a un ensemble complexe de données structurées, mais ne partage pas les données entre chaque OneBox. Cela conserve non seulement beaucoup de duplication des travaux sur la fin de retour de l'opération, et le manque de partage des connaissances entre chaque boîte limite également les types de requêtes que Google peut répondre.

Par exemple, San Francisco peut afficher les événements d'actualité, Vous pouvez afficher la météo à San Francisco. Mais si le Le OneBox appris temps pluvieux et l'utilisateur que vous voulez savoir l'événement est à l'intérieur ou à l'extérieur, en fonction du temps, il peut filtrer (ou au moins le genre) des événements (sous la pluie lourde, les activités intérieures possibles, comme un film ou une symphonie est le meilleur choix) .

Avec l'aide de l'équipe Metaweb, nous avons commencé à convertir tous ces formats les données du SPO et de son index dans un système. Mon système nommé plasma, un système de services de données cartographique indice Dgraph des systèmes graphiques en temps réel.

confusion de gestion

Comme Cerebro, comme le manque de financement du projet plasma, mais continue. Enfin, quand l'équipe de OneBox réalisé de gestion est sur le point de passer à ce projet, ils ont besoin d'être responsable de « la bonne personne » carte des connaissances. Dans ce « bon jeu », je suis passé par trois changements de direction, mais à chaque fois il a échoué aux gens expérimentés pour se joindre à la carte des connaissances.

Au cours de ce remaniement de la gestion, la direction de soutien Spanner croit Dgraph trop complexe, Spanner est une base de données SQL distribuées globalement, vous avez besoin d'horloge GPS pour assurer la cohérence globale. Ironie du sort, cela est encore incroyable.

Enfin, Dgraph annulé, Plasma a survécu, mais par la nouvelle direction et une nouvelle équipe qui sera responsable des activités poursuivies et de faire rapport directement au directeur général. Le nouveau manque d'équipe de compréhension de la carte du savoir, ils ont décidé de mettre en place un système de service basé sur l'index de recherche existant de Google (comme je l'ai fait pour faire cérébro). Je recommande d'utiliser le système que je l'ai créé pour Cerebro, mais il a été refusé. Je plasma transformé en un rampants et peut être étendu sous réserve de la connaissance du système de plusieurs couches, de sorte que les résultats de recherche existants de Google peuvent être traités comme un document Web. Ils ont appelé TS (abréviation).

Cette transformation signifie également que le nouveau service ne sera pas en mesure de se connecter profondeur. Dans de nombreuses entreprises, je l'ai vu « malédiction de décision » sur une carte de connaissances, parce que les ingénieurs croient souvent à tort que « le service de données cartographiques est une simple question, vous pouvez construire une couche au-dessus d'un autre systèmes existants résolu ".

Quelques mois plus tard, en mai 2013, je suis parti Google, cette fois, je l'ai travaillé pendant deux ans comme Dgraph / Plasma.

post-scriptum

  • Quelques années plus tard, Web Search Infrastructure Team a été renommé à la recherche Web et l'équipe graphique d'infrastructure du savoir, je devais retravailler la carte des connaissances de leadership de leadership pour démarrer la présentation de Cerebro, parler longuement sur la façon dont ils ont l'intention de remplacer des hyperliens avec la carte des connaissances et autant d'utilisateurs comme une réponse directe à une requête.
  • Lorsque la ligne est sur le point d'être sur l'équipe du projet cérébro Shanghai R & D, le projet a été tiré directement du bureau de Shanghai Google New York. En fin de compte, il est la forme de la ligne des connaissances Strip. Si vous recherchez , Vous verrez en haut des résultats de recherche. Depuis sa sortie initiale, il a une certaine amélioration itérative, mais ne supporte toujours pas le filtrage et le niveau de tri offre Cerebro.
  • Tous les trois de travail directeur technique Dgraph (y compris moi) a finalement quitté Google.
  • Quand je suis parti de Google comme ingénieur logiciel senior, j'ai reçu deux promotion, prépare actuellement pour la troisième fois.
  • Grapevine, la version actuelle de TS est en fait très proche de la conception du système graphique Cerebro, sujet, prédicat et objet a un index. Par conséquent, il continuera d'être en proie en ajoutant la profondeur des problèmes de connexion.
  • Depuis, Plasma été réécrite et renommée, mais toujours continuer à agir en tant que graphiques en temps réel du système d'indexation qui prend en charge TS. Ensemble, ils continuent d'accueillir et de fournir toutes les données structurées de Google, y compris la carte des connaissances.
  • Comme on peut le voir de nombreux endroits, Google ne peut pas être connexion profonde. Tout d'abord, nous ne voyons pas encore la combinaison de divers commentaires des données: Malgré le temps et les données KG facilement disponibles,  (Pluie asiatique la majeure partie de la ville) ne sont pas générés liste des villes des entités (au contraire, le résultat est une citation de la page Web); Ne peut pas être filtrée en fonction du temps; Les résultats ne peuvent plus être triés, filtrés ou étendus à leurs enfants ou ils vont à l'école. Je soupçonne que c'est l'une des raisons pour arrêter l'utilisation de Freebase.

Après avoir quitté Google deux ans, j'ai décidé de construire Dgraph. Google est pas dans les jours, j'ai été témoin de beaucoup d'indécision sur la carte système de données internes de R & D. Il y a beaucoup de solution espace graphique cuite au four moitié, surtout beaucoup de solutions sur mesure, bâclée système construit sur des bases de données relationnelles ou NoSQL, ou l'un des nombreux modèles multi-fonctionnelle de la base de données. S'il y a une solution locale à un clic, il rencontre des problèmes d'évolutivité.

équipe Dgraph a passé trois ans, non seulement absorbé l'expérience de mon propre avant, mais aussi sur la conception du système beaucoup du type d'étude d'origine, mis en place une base de données graphique inégalée sur le marché. Par conséquent, la société a une puissante, évolutive et solution de haute performance, pour remplacer les solutions bancales.

Auteur: ManishRai Jain, fondateur Dgraph Labs

Avertissement: Cet article est compilé par page de l'équipe de produits de base de données nuage Tencent contenu original de db hebdomadaire anglais site officiel.

Cette soumission de papier par le nuage Tencent, pour réimprimer le contact s'il vous plaît Tencent nuage.

Cinq jours et quatre délégations, Xi Jinping a quitté cinq « dit »
Précédent
Selon quelques milliers et des milliers de posture, mais vous avez choisi le plus laid
Prochain
avions de changement porc? Pourquoi AI si stupide!
Configuration pleine à craquer! Le nouveau prix d'inscription Kia KX5 Wan 15,48 à 18,18
Super 47 articles en option! Wei ES6 exposition à paraître la semaine prochaine
Pourquoi l'ère des machines intelligentes pour le taux de téléphone mobile si élevé? la vie de téléphone combien de temps?
Salaire pas aussi bon que Java, C, grande demande BAT, les programmeurs Python quitter secret le statu quo!
Ville de choses Zhejiang | après la première terre de Hangzhou a battu Yao Hao: trois à la prime moyenne de plus de 40% du prix plancher à de nouveaux sommets
2019 Dragon chinois Bateau cheval de course double jeu terminé le premier arrêt du roi à courte distance
Pourquoi se trouvait être connu? Alors trahi votre téléphone
Il vous suffit d'ouvrir la dixième génération de Honda Accord, ne dit que personne ne vous ouvrez la voiture de votre père sur
Cela ne vous coûte pas un penny accessoires, faire une nouvelle photo de la hauteur des États-Unis
secteur de l'exploration Chevrolet vaut la peine d'acheter? Confessions d'un regard sur les véritables propriétaires!
Huawei joint Jingdong, écosystème de millet Rush!