Question

Je connais deux systèmes célèbres centrés sur les documents :Serveur Sharepoint et Lotus Notes.Il doit y en avoir d'autres.J'ai entendu parler de CouchDB, par exemple.Quelles sont les principales différences de mise en œuvre et comment affectent-elles :

Convivialité

Performances de récupération

Performances/qualité de recherche

Extensibilité/intégration

Bonus si vous pouvez expliquer pourquoi vous stockeriez ou non ces documents dans une base de données relationnelle et les décorerais avec des magasins de métadonnées dans un schéma approprié.J'ai du mal à croire que ces systèmes soient très différents des forums et des blogs, qui sont eux-mêmes basés sur des bases de données relationnelles surmontées d'un code métier.

Bonus supplémentaire:Y a-t-il une raison pour laquelle il est si difficile de trouver de la documentation sur Lotus Notes ?Je serais reconnaissant pour quelques conseils.

Était-ce utile?

La solution

Lotus Notes stocke toutes les données dans des fichiers NSF.Un fichier NSF est un conteneur de documents Notes, qui sont des enregistrements non structurés.Chaque document peut contenir n'importe quel nombre d'éléments, similaire à celui des tables et des colonnes d'une base de données relationnelle.Cependant, contrairement aux bases de données relationnelles, il n'y a aucune contrainte au niveau du modèle de données sur les éléments qu'un document doit contenir, de sorte que chaque document individuel peut contenir des données très différentes.

Les vues Notes sont utilisées pour voir les données contenues dans les documents, en filtrant généralement les documents contenant des éléments similaires.Des agents Notes, des pages et d'autres outils sont disponibles pour extraire facilement les données d'un NSF.

Les points forts de Notes résident dans la facilité de capture de données via des formulaires et de sortie de données via des vues, XML, HTML, servlets Java, etc.Il gère facilement les données distribuées via un puissant système de réplication.Il est également très apprécié pour sa sécurité intégrée.

CouchDB, créé par un ancien employé d'Iris/Lotus/IBM, Damien Katz, possède bon nombre de ces mêmes atouts, sans les frais généraux et le coût de Lotus Notes.

Le mot document peut prêter à confusion dans le monde Lotus Notes.Les documents de fichiers tels que les PDF, les documents Word, les fichiers Excel, etc. sont stockés dans les documents Lotus Notes dans le cadre des données non structurées.

SharePoint stocke les données sur le serveur SQL.Ses données sont très basées sur des listes avec la possibilité supplémentaire de stocker des documents de fichiers sur le serveur et de conserver également des méta-informations sur ceux-ci.

Une liste SharePoint ressemble beaucoup à un tableau plat, mais contrairement à Lotus Notes, cette liste a des contraintes sur ses données.

Les données SharePoint sont collectées et exposées principalement via son interface Web, mais il existe de nombreux moyens d'accéder aux données, tels que l'API SharePoint, les services Web, XML et même directement à partir du serveur SQL (non recommandé).

Utilisabilité :Pour les utilisateurs finaux, les deux occupent une place élevée ici.SharePoint est entièrement basé sur le Web et les utilisateurs finaux peuvent facilement gérer eux-mêmes un site SharePoint avec peu de formation.Lotus Notes nécessite un client Notes ou une application Domino conçue pour être exposée via le Web.Pour les développeurs, Notes est plus facile à utiliser mais est original et utilise des langages propriétaires - le langage Notes Formula et LotusScript.SharePoint ne nécessite aucun codage pour certains flux de travail de base et manipulations de sites, mais pour obtenir un contrôle sérieux, vous devez être un développeur .NET et le code peut être très complexe.

Performances de récupération :Pour les petits projets, Lotus Notes fait très bien l'affaire.Les très grandes bases de données contenant plus de 10 000 documents ont tendance à voir leurs performances diminuer.SharePoint utilise le serveur SQL pour pouvoir gérer facilement un très grand nombre de listes ou de fichiers dans son magasin de données.

Performances/qualité de recherche :Les deux ont de bonnes capacités de recherche, mais SharePoint gagne si vous essayez de rechercher un grand nombre de documents.

Extensibilité/intégration :SharePoint est le plus extensible.Cependant, les deux peuvent s'intégrer facilement à d'autres systèmes utilisant XML.Notes peut également s'intégrer à l'aide d'agents/servlets Java et de services Web.SharePoint dispose de son API de services Web et de modules complémentaires tiers pour l'intégration.

Prime:Lotus Notes n'est tout simplement pas aussi populaire que SharePoint pour le moment.Il existe des endroits clés pour la documentation tels que www.notes.net et divers blogs de développeurs.

Autres conseils

Sharepoint fait exactement ce que vous dites. Il est construit sur une base de données relationnelle et offre quelque chose qui ressemble un peu à un système de fichiers avec une interface web. Ce stockage de documents est orienté vers l'intégration primarilly avec Office et est seulement une petite partie de Sharepoint.

systèmes de base de données sur la base de documents. Comme CouchDB ou Amazon S3 sont bêtes différentes. Ils stockent des données d'une façon moins structurée que les bases de données relationnelles. La plupart du temps sous la forme de paires clé-documents. Vous pouvez récupérer des documents par clé ou par l'interrogation, mais parce que les documents ne sont pas uniformément structurés comme les lignes d'une table dans une interrogation base de données relationnelle peut être plus difficile. Ces bases de données ne sont pas vraiment destinés à être utilisés comme base de données relationnelle, ils sont davantage orientées vers l'évolutivité pour les grands Web-backends etc.

Lotus Notes combine en fait ces deux. Vous pouvez l'utiliser pour la gestion des documents (et le courrier électronique et plus beaucoup) et il est construit sur son propre base de données de documents.

Eh bien, Sharepoint stocke ses données / listes / documents / whatever dans une base de données relationnelle (SQL Server, sans surprise ...), ainsi que des "décorations" de métadonnées. Sur la base de rumeurs (ne l'ont pas regardé en moi-même), le modèle de données est si alambiqué que vous devez utiliser l'API C # fourni pour faire quoi que ce soit avec les données (qui peut être une bonne chose ou une mauvaise chose, selon vos préférences et objectifs).

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top