首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我可以在亚马逊SimpleDB中只创建域架构(没有任何数据)吗?

问我可以在亚马逊SimpleDB中只创建域架构(没有任何数据)吗?
EN

Stack Overflow用户
提问于 2009-12-14 19:30:34
回答 2查看 330关注 0票数 2

我现在正在评估亚马逊SimpleDB。SimpleDB非常灵活,因为它不需要表(或域)模式。随着create / update命令的传入,模式也随之发展。所有这些都很好,但是当我使用建模工具(评估MindScape LightSpeed)时,我需要预先提供模式,以便该工具能够基于模式生成模型。我可以在SimpleDB中手工制作域名,这确实有帮助,但为了做到这一点,我必须在域名上执行至少一个创建操作。我正在寻找创建域模式的能力只。有什么线索吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2009-12-14 19:34:28

SimpleDB中没有架构。

这就是为什么NoSQL人员建议在将范式转移到这些非关系数据存储之前“忘掉”关系数据库的原因。

所以,你不能做你所描述的事情。没有数据,什么都不会有。

票数 1
EN

Stack Overflow用户

发布于 2009-12-15 03:19:45

虽然SimpleDB确实没有模式支持,但是如果您在数字数据或日期上运行查询,那么保留一些类型信息是至关重要的。大多数NoSQL产品都有查询和类型,或者无查询和无类型,但SimpleDB选择了查询和无类型。

因此,与主应用程序之外的任何工具集成将要求您执行以下操作之一:

  1. 在不同位置存储重复的类型信息
  2. 创建自己的简单架构系统来存储类型信息

选项2似乎要好得多,尽管有些人建议你选择它,但这并不意味着你“头脑不对劲”。

对于这些数据,S3可能是一个很好的选择,您可以将其保存在与您的域名同名的文件中,并且可以使用与您的SimpleDB帐户相同的AWS凭据从任何地方访问它。

将数据存储为attributename=formatname列表就是我需要做的事情。实际上,您可以将所有这些内容存储在您的域中的一个项目中。唯一的问题是,这个特殊项可能会无意中从域查询返回,在该域查询中,您需要的是实时数据而不是类型信息。

我不熟悉MindScape LightSpeed,但这是我在使用SimpleDB时发现的一个有用的通用策略,如果该产品能够在S3中加载/存储文件,那就更好了。

*注意:为了清楚起见,我并不是在谈论重复发明轮子或试图将SimpleDB用作关系数据库。我说的是这样一个事实:为了使用SimpleDB的基于字符串的查询语言,数字数据必须同时使用零填充(到您选择的长度)和偏移值(取决于它是有符号的还是无符号的)。一旦您决定了要在应用程序中使用的一种格式或一组格式,在源代码工具、查询工具、报告工具或任何其他代码需要这些信息的情况下,将这些信息隐藏在您的源文件中或分散在这些文件中将是愚蠢的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1900380

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档