Bonjour,
Je suis en train d’étudier le fonctionnement de http://freebase.com et
je n’arrive pas à très bien voir comment peut-être organisée leur base
de données.
Avez-vous des idées, des liens à me recommander, ou des ouvrages à
lire, pour comprendre comment créer une base de données qui puisse, à
la manière de FreeBase, stocker n’importe quel type de données, en
créant des liens entre elles ? Chaque type de données pouvant avoir
des attributs spéciaux, de l’héritage, etc… (http://freebase.com/
resources/images/documentation/arnoldexample.png)
Par exemple :
http://freebase.com/tools/schema/common/image
On a ici le schema pour les images (avec le name /common/image)
On se rend compte que le type-key image est incluse dans Topic
(Included types : Topic) et donc on peut récupérer automatiquement ses
propriétés. (Also known as, article…)
On peut ensuite en définir d’autres, spécifiques au type image, par
exemple : Image Creator qui est un objet de type Person.
Si je ne suis pas assez clair, dites-le moi et j’essaierais de donner
plusieurs exemples détaillés.
Je vous remercie par avance,
Pierre
2008/6/13 Pierre V. [email protected]:
Bonjour,
Je suis en train d’étudier le fonctionnement de http://freebase.com et
je n’arrive pas à très bien voir comment peut-être organisée leur base
de données.
Ils n’ont pas de base de données relationnelle mais un système un peu
maison de stockage de graphes (car les données sont réellement des
graphes).
Avez-vous des idées, des liens à me recommander, ou des ouvrages Ã
lire, pour comprendre comment créer une base de données qui puisse, Ã
la manière de FreeBase, stocker n’importe quel type de données, en
créant des liens entre elles ? Chaque type de données pouvant avoir
des attributs spéciaux, de l’héritage, etc… (http://freebase.com/
resources/images/documentation/arnoldexample.png)
Tu peux imiter un système de stockage pour freebase en utilisant une
base SQL classique et une structure en arbre. De nombreux ouvrages sur
les stockage/parcours de graphes et arbres sont disponibles et
pourront t’aider.
Si tu souhaites utiliser les données freebase dans un projet, je te
conseille très fortement d’oublier le stockage complet de leurs
données et de te concentrer sur tes données : si tu sais de quoi tu as
réellement besoin, tu peux modéliser ton appli plus facilement,
freebase devenant juste une consolidation de tes données.
Enfin, tu peux aussi regarder du coté des dumps complets fournis ici
http://download.freebase.com . Cela risque de te refroidir si tu
regardes le volume de données (88 millions de lignes je crois) et le
temps d’import/parcours.
Une implémentation/hack qui m’avait semblé fun et probablement rapide
en exécution était de prendre un système DNS et d’introduire les
données freebase dedans.
En espérant t’avoir aidé.
http://fabien.jakimowicz.com