Amazon SimpleDB 是一种高度可用的 NoSQL 数据存储,能够减轻数据库管理工作。开发人员只需通过 Web 服务请求执行数据项的存储和查询,Amazon SimpleDB 将负责余下的工作。
Amazon SimpleDB 不会受制于关系数据库的严格要求,而且已经过了优化,能提供更高的可用性和灵活性,让管理负担大幅减少甚至是零负担。而在后台工作时,Amazon SimpleDB 将自动创建和管理分布在多个地理位置的数据副本,以此提高可用性和数据持久性。此服务的收费仅限于:存储您的数据和服务于您的请求时实际消耗的资源量。您可以随时更改数据模型,系统会为您自动索引数据。有了 Amazon SimpleDB,您便可以专心开发应用程序,而不必担心基础设施预配置、高可用性、软件维护、计划和索引管理,或者性能优化这些问题。
该服务可让您完全专注于增值应用程序的开发,不必操心费事又耗时的数据库管理。Amazon SimpleDB 可自动管理基础设施预配置、硬件和软件维护、数据项目复制和索引,以及性能优化。
Amazon SimpleDB 为您存储的每个数据项目自动创建分布在多个地理位置的副本。这可提供高可用性和持久性 – 即使出现罕见的副本故障,Amazon SimpleDB 也能将故障转移到系统中的另一副本。
随着您的业务变化或应用程序演进,您可以轻松地在 Amazon SimpleDB 中反映这些改变,不必担心要打破刚性架构或需要重构代码;只要根据需求向 Amazon SimpleDB 数据集添加其他属性即可。此外,您还可以选择一致性或最终一致性读取请求,灵活地使读取性能(延迟和吞吐量)与应用程序甚至应用程序内不同部分需求的一致性要求匹配。
Amazon SimpleDB 简化了对存储和查询功能的访问(通常通过使用关系数据库集群实现),免去了其他复杂且通常用不到的数据库操作。该服务可让您通过一组简单的 API 调用,快速地添加数据,并且轻松地检索或编辑这些数据。
Amazon SimpleDB 的设计可以和 Amazon S3 及 EC2 等其他 AWS 服务轻松集成,为创建 Web 规模的应用程序提供基础设施。例如,开发人员可以在 Amazon EC2 中运行其应用程序,并将数据数据元存储到 Amazon S3 中。然后,可以使用 Amazon SimpleDB 查询 Amazon EC2 中应用程序内的数据元元数据,并将指针返回到 Amazon S3 中存储的数据元。开发人员也可将 Amazon SimpleDB 和 Amazon RDS 搭配用于具有关系数据库和非关系数据库需求的应用程序。在相同地区的 Amazon SimpleDB 和其他 Amazon Web Services 之间传输数据不收取费用。
Amazon SimpleDB 提供 https 终端节点,可确保您的应用程序或客户端和您的域之间进行安全的加密通信。此外,通过与 AWS Identity and Access Management 集成,您可以对特定 SimpleDB 域和操作的访问权限建立用户或群组级别的控制。
Amazon SimpleDB 可为您带来 Amazon 规模的经济效益。您只需要为实际消耗的资源付费。对于 Amazon SimpleDB 来说,这意味着数据存储读取和写入是根据每个操作消耗的计算资源来收费的;只有您主动使用计算资源(例如:发出请求),才会向您计费。
由于 Amazon SimpleDB 完全免除了运行生产数据库所需的一切工作,许多开发人员发现它是一种理想且低接触的数据存储方式,适用于存储条件或事件、状态更新、循环活动、工作流处理或设备和应用程序状态等相关信息。Amazon SimpleDB 让您能够经济高效地“设置和遗忘”这些数据记录并将它们用于以下目的,如:
- 监控或跟踪
- 度量
- 业务趋势分析
- 审计
- 归档或法规遵循
应用程序示例包括:
- 集中存储服务器日志,减少他们运行每个服务器所消耗的空间
- 记录运行指标或进行中的性能测试结果以便今后分析
- 审核访问条目、应用程序配置更改或联网设备
- 捕捉并监控各个位置的环境条件(温度、压力水平、湿度等)并针对特定条件编写警报程序
- 记录并跟踪相关对象的地理位置信息或工作流中活动的处理状态
Amazon SimpleDB 的多个属性使它成为有吸引力的数据日志存储选项:
- 集中、高度可用 – 如果您的数据日志之前被限制在本地多个设备/数据元、应用程序或处理竖井中,您将享受在云中的一个位置集中访问所有数据的便利。更重要的是,Amazon SimpleDB 自动跨多个地理位置冗余复制您的数据,以确保高可用性。这意味着,不像集中型内部解决方案,使用 Amazon SimpleDB 您不会遇到单点故障,并且在您需要时,随时可以使用数据。所有数据都能通过 Web 服务使用一个解决方案进行存储,然后从任何设备进行访问。
- 零管理 – 您使用简单的 Web 服务请求存储数据项目,而 Amazon Web Services 将处理余下所有事宜。服务的“设置后遗忘”本质意味着您不必因存储和维护数据日志而花时间进行数据库管理。
- 经济高效 – Amazon SimpleDB 对存储和查询数据日志的收费非常廉价。因为您只需为您消耗的资源支付费用,所以您不必自己进行容量规划或担心数据库负载问题。该服务仅灵活响应请求卷,并且根据您实际占用的资源收取费用。
对于使用任何平台在线游戏开发人员,Amazon SimpleDB 为用户和游戏数据提供了高度可用、可扩展且无需管理的数据库解决方案。
可使用 Amazon SimpleDB 存储、索引和查询的在线游戏的常见数据包括:
- 用户得分和成绩
- 用户设置或首选项
- 有关玩家项目或用户生成内容的信息
- 游戏会话状态(玩游戏时保存或中断时)
- 动态游戏内容(应用以服务为导向的游戏架构,并使用 Amazon SimpleDB 来应对存储和服务方面的新挑战或处理玩家内容)
- 索引游戏使用的大数据元的元数据,并存储在 Amazon S3 中
Amazon SimpleDB 的多属性使其非常适合存储在线游戏数据:
- 高度可用(自动化地理冗余复制和故障转移):Amazon SimpleDB 通过自动创建多个数据副本并在一个副本不可用时自动故障转移到可用副本来实现高可用性。这意味着您避开了设置数据库集群的复杂性,但您的游戏和用户仍然能够可靠、无中断地访问关键数据。
- 非接触扩展:Amazon SimpleDB 会根据您的用户基数的增长和玩家活动的变化,简单地对流量和请求的卷作出响应,无需开发人员干预。您仅为您实际消耗的资源支付费用。
- 零管理开销:避免了管理数据的麻烦,消除了基础设施调配、软件设置、创建和维护架构、构建索引或调整查询性能等工作。您可以重新集中精力为用户创建有趣的游戏和功能,再也不必承担数据管理员的工作。
许多开发人员将 Amazon SimpleDB 与 Amazon Simple Storage Service (Amazon S3) 配合使用。Amazon SimpleDB 可用于存储 Amazon S3 数据元节点的指针和该数据元(元数据)的详细信息,从而为 Amazon S3 补充了丰富的数据库查询功能。对于在 Amazon S3 中存储大量数据元的开发人员,Amazon SimpleDB 提供了灵活、可扩展且廉价的方法来存储数据元元数据,同时消除了与运行数据库相关的管理开销。轻松在 Amazon SimpleDB 中存储、索引和查询的常见数据元元数据示例包括:
- 数据类型或格式(图像、视频、文档)
- 用户关联或访问委任
- 创建、访问或修改数据元的日期
- 相关数据元的名称或位置
- 用户评级和评论
- 主题或目录标签
- 地理位置标签
存储元数据(如以上列出的示例)对于内容交付、媒体应用程序、备份和存档应用程序以及其他应用程序类型非常有价值。Amazon SimpleDB 是存储元数据的理想之选,因为它提供:
- 灵活、非模式化设计:轻松附加到其他元数据属性,而无需“打破”刚性模式。如果您要开始追踪视频对象的用户评论,则不需要进行耗时的数据库更改。
- 多值属性:元数据属性可以拥有多个值。这意味着可以用数人给同一照片添加标签或者将音乐文件标记为数个流派。
- 零管理开销:除了消除运行数据库遇到的基础设施调配、软件安装和维护方面的困难,Amazon SimpleDB 还可以自动索引数据、调整查询性能和在多个位置创建冗余数据副本。
Amazon SimpleDB 还提供低摩擦扩展、自动响应请求卷中的变化,而我们仅按经济实惠的价格向您收取实际占用的资源的费用。
- 访问我们的示例代码和库获取包含示例代码的 S3 元数据索引的技术指导