Question

J'évalue Amazon SimpleDB à ce moment. SimpleDB est très flexible dans le sens où il ne dispose pas d'avoir des schémas de table (ou domaine). Le schéma évolue create / commandes de mise à jour de flux. Tout ce qui est bon, mais alors que je suis en utilisant un outil de modélisation (évaluation Mindscape LightSpeed) Je requiers le schéma initial, pour que l'outil pour générer des modèles basés sur le schéma. Je peux handcraft domaines dans SimpleDB et cela ne vous aide, mais pour que je dois effectuer au moins une opération de création sur le domaine. Je cherche la possibilité de créer schéma de domaine uniquement. Des indices?

Était-ce utile?

La solution

Il n'y a pas de schéma dans SimpleDB.

Ceci est la raison pour laquelle les gens NoSQL suggèrent de « désapprendre » bases de données relationnelles avant de changer le paradigme de ces magasins de données non relationnelles.

Alors, vous ne pouvez pas faire ce que vous décrivez. Sans les données, il n'y aura rien.

Autres conseils

Alors il est vrai que SimpleDB n'a pas de support de schéma, en gardant des informations de type se révèle être crucial si vous exécutez des requêtes sur des données numériques ou des dates *. La plupart des produits NoSQL ont à la fois des requêtes et des types, ou bien non-requêtes et non-types, mais SimpleDB a choisi des requêtes et non-types.

En conséquence, l'intégration avec un outil extérieur de votre application principale vous demandera soit:

  1. banque d'informations de type double dans différents endroits
  2. créer votre propre système de schéma simple pour stocker les informations de type

L'option 2 semble beaucoup mieux et de choisir, malgré ce que certains suggèrent, ne signifie pas que vous «n'avez pas droit à votre esprit. »

S3 peut être une bonne option pour ces données, vous pouvez le garder dans un fichier avec le même nom que votre domaine et il sera accessible de partout avec les mêmes informations d'identification AWS que votre compte SimpleDB.

Le stockage des données comme une liste de attributename = nomformat est la mesure de ce que je devais faire. Vous pouvez, en effet, stocker tout cela dans un article dans votre domaine. Le seul problème est que ce spécial article pourrait sans le vouloir revenir d'une requête de domaine où vous attendez pas les données en direct des informations de type.

Je ne suis pas familier avec Mindscape LightSpeed, mais cela est une stratégie générale que j'ai trouvé bénéfique lors de l'utilisation SimpleDB, et si le produit est capable de charger / enregistrer un fichier dans S3 puis mieux.

* Remarque: Pour être clair, je ne parle pas de réinventer la roue ou d'essayer d'utiliser SimpleDB comme base de données relationnelle. Je parle du fait que les données numériques doivent être stockées à la fois padding zéro (à une longueur de votre choix) et une valeur de décalage (selon si elle est signée ou non signée) afin de travailler avec la chaîne de la base de langage de requête de SimpleDB . Une fois que vous décidez sur un format, ou un ensemble de formats à utiliser dans votre application, ce serait folie de laisser cette information cachée et dispersée à travers vos fichiers source dans le cas où cette information est nécessaire par des outils de code source, outils de recherche , des outils de reporting ou tout autre code.

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