Gérer une grande quantité de données et d'images dans

Ma question est similaire à celle d'autres amis postés ici … Nous essayons de développer une application qui supporte éventuellement des téraoctets d'informations basées sur un registre foncier au Paraguay avec des images et des données normales.

Le problème est que nous voulons réduire le coût d'exploitation au minimum possible car c'est comme une compétition entre entresockets, et pour cette raison nous voulons utiliser une database gratuite … J'ai lu beaucoup d'informations à ce sujet mais je suis toujours confus. Nous devons nous rendre count que les gens qui vont l'utiliser sont des gens du gouvernement, donc la DB doit être facile à gérer en même time.

Que me reorderiez-vous?

Thanu beaucoup

MySQL et même SQLite ont déjà des index spatiaux, donc pas de problème.

Pour stocker les files de données, vous pouvez utiliser un champ BLOB, mais il est généralement beaucoup mieux (et plus facile à optimiser) de stocker en tant que files. Pour conserver les files liés aux loggings de la database, vous pouvez soit placer le path d'access complet (ou l'URL) dans un champ varchar, soit stocker l'image dans un path calculé par l'ID de l'logging.

Pour évoluer facilement dans le magasin multi-téraoctets, planifiez dès le départ l'utilisation de plusieurs servers. Si datatables sont lues en grande partie, un moyen facile consiste à stocker les images sur différents hôtes, chacun avec un server HTTP statique, et les loggings de la database où se trouve chaque image. puis placez une interface webapp pour la database, où les URL de chaque image pointent directement vers le server de stockage approprié. De cette façon, vous pouvez continuer à append du stockage sans créer de goulot d'étranglement sur le server «central».

Postgresql , SQL Server 2008 et toute version récente d'Oracle ont toutes une indexing spatiale, un partitionnement de table et des objects BLOB et sont capables d'agir comme back-end d'une grande database géographique. Vous pouvez également consulter deux applications SIG open-source: GRASS et QGIS , qui peuvent supporter de faire ce que vous voulez avec less de travail de modification que d'écrire une application sur mesure. Les deux peuvent utiliser Postgresql et d'autres back-ends de database.

En ce qui concerne le support, toute database commerciale ou open-source va avoir besoin des attentions d'un DBA compétent si vous voulez que cela fonctionne bien sur des bases de données de taille téraoctet. Je ne pense pas que vous puissiez vous en sortir avec un model de support de l'user final pur – les tentatives pour ce faire sont peu susceptibles de fonctionner.

Il semble que les files d'image seront une quantité considérable de votre stockage. Ne les stockez pas dans une database il suffit de stocker les détails de l'location du file dans la database.

(Si vous voulez accéder via Internet, essayez Amazon Storage . Ce n'est pas gratuit mais très bon marché et ils gèrent l'évolutivité pour vous.)

Une autre mise en garde sur l'utilisation de B / C / LOB, car j'ai été mordu sur la croissance exponentielle de DB en stockant w / dans la DB.

Qu'en est-il de stocker les maps SIG sur un server séparé et de simplement stocker la "forme" LAT / LONG de la zone w / dans la database. Le SIG peut être mis à jour séparément sans le coût de stockage des images dans la database principale.

Plus petit à admin. Moins de coût pour la sauvegarde.

Bien que ne répondant pas à vos critères d'être libre, je vous recommand fortement d'utiliser SQL Server 2008, en raison de deux Gfeatures dans cette version qui pourraient aider:

  • FILESTREAM – vous permet de stocker vos images binarys dans le système de files, plutôt que dans la database elle-même. Cela rendra votre database beaucoup plus gérable tout en vous permettant d'interroger datatables de la manière habituelle.

  • TYPES DE DONNÉES GÉOGRAPHIQUES – le support des types de données géospatiales (lat / long) est susceptible d'être très précieux pour votre solution.

Bonne chance!

Utilisez le server d'images d'ESRI. Vous n'aurez pas besoin d'une database pour diffuser les images. C'est très facile à utiliser. Il fonctionne également à partir de files et son rapide et gère de nombreux formats d'image. De plus, il traite l'image à la volée et prend en charge de nombreux clients. AutoCAD, Microstation, ArcMap, ArcIMS, ArcServer … etc.

Serveur d'images