2010-06-24 8 views
3

Amis,suggèrent base de données pour le stockage des métadonnées concernant les 200 millions d'images (1 million de livres) (NoSQL? SQL?)

Nous allons entreprendre un projet de préservation des connaissances pour la numérisation de plus de 1 million de livres. Nous avons besoin de quelques suggestions sur la mise en œuvre de la base de données pour le stockage et la récupération des métadonnées ainsi que l'utiliser pour le suivi de l'état de balayage de chaque objet (livre)

  1. Pouvez-vous les gars suggérer devrions-nous aller pour SQL ou NoSQL (Les métadonnées peuvent varier d'un projet à dire que ce projet pourrait avoir 15 champs)

  2. nous pensons quelque chose basé sur Lucene/Solr ou une base de données RDF évolutive

  3. Toute solution open source où nous avons la possibilité de définir des métadonnées personnalisées champs et stocker des informations avec une fonction de recherche?

+0

Nous pensions à Apache Cassandra, à Apache Jackrabbit, à OpenCalais, à ApacheUIMA, à MongoDB, à CouchDB, à Doap, à okfn (fondation de connaissances ouvertes), à Lucène (Nutch, Solr, Hounder), Sphinx, zettair, Terrier, Galago , Minnion, MG4J, Wumpus, RDBMS (mysql, sqlite), Indri, Xapian, grep, Blacklight, OKKAM (projet de recherche, un projet d'intégration à grande échelle fournissant une infrastructure évolutive et durable, appelé Entity Name System (ENS), pour rendre plus systématique la réutilisation des identificateurs d'entités globaux et uniques) –

+0

Encore plus - SIREn: Recherche d'information semi-structurée efficace pour Lucene, hxxp: //sig.ma/, SCRIBO - Extraction semi-automatique et collaborative d'informations basées sur des ontologies, AllegroGraph RDFStore est une base de données de graphes RDF moderne, performante et persistante, hxxp: //openpipe.berlios.de (openpip), –

+0

Pouvez-vous donner une idée de la charge prévue, en termes de fréquence d'ajout de livres, et de la fréquence des requêtes? Attendez-vous des dizaines d'utilisateurs simultanés, ou des millions? – DNA

Répondre

0

Avertissement: Ne jamais tenté ce type de projet

Je l'ai vu de très bonnes performances de type "filestream" du serveur MSSQL. Il utilise les API de fichier NTFS pour stocker les données binaires et conserve un pointeur dans les lignes de votre table. Si vous n'avez pas de structure sur les métadonnées, vous pouvez utiliser XML, mais si vous avez une structure répétitive, insérez-la dans les données de relation, puis vous pouvez utiliser l'indexation, etc., pour vous aider à obtenir vos performances.

Filestream Type

0

Une telle solution peut être créée en utilisant une base de données et un code personnalisé, mais il est probablement plus facile à l'aide d'un CMS (système de gestion de contenu). Les solutions CMS cachent les détails de la base de données sous-jacente et vous permettent de travailler avec un ensemble extensible de métadonnées pour décrire vos documents.

Les systèmes CMS que vous utiliserez dépendront de votre budget, de votre expertise interne et de vos besoins, entre autres facteurs. J'utilise Alfresco (open-source commercial), en partie parce que mon entreprise a déjà décidé, mais si je devais faire un site web à petit budget, je pourrais envisager la version non-Enterprise. Oh et Alfresco exploite Lucene pour la recherche.

Si vos besoins sont très basiques, une base de données pour les métadonnées, un système de fichiers pour les images et du code pour votre serveur devraient suffire. Évitez d'essayer de stocker des images dans la base de données, car d'après mon expérience, ce n'est pas ce que les bases de données font le mieux.

Questions connexes