WEB开发网
开发学院软件开发Java Java 开发 2.0: 使用 Amazon SimpleDB 进行云存储... 阅读

Java 开发 2.0: 使用 Amazon SimpleDB 进行云存储,第 1 部分:开始使用 SimpleDB 和 Amazon SDK

 2010-08-11 00:00:00 来源:WEB开发网   
核心提示: 云中赛事目前为止,我使用了一个比赛和停车罚单类比来展示各种 Java 2.0 技术的特性,Java 开发 2.0: 使用 Amazon SimpleDB 进行云存储,第 1 部分:开始使用 SimpleDB 和 Amazon SDK(3),使用一个熟悉的问题域,更易于领会系统间的差异和共同点,A

云中赛事

目前为止,我使用了一个比赛和停车罚单类比来展示各种 Java 2.0 技术的特性。使用一个熟悉的问题域,更易于领会系统间的差异和共同点。因此,我们这次将继续沿用终点线类比,来看一下参赛者和比赛在 Amazon SimpleDB 中是如何表示的。

在 SimpleDB 中,我们可以将一个比赛建模为一个域。比赛实例会是 SimpleDB 中的一个项目,其名称和日期会以属性(带值)表示。很重要的一点是,本例中的 名称是一个属性,不是属性本身。您赋给一个项目实例的名称成为它的键。该项目的键可以是马拉松的名称。另外,我们可以不将一个比赛实例局限为一个时间点(比赛通常是年度活动),而是赋给项目一个惟一名(如同一个时间戳),它允许我们在 SimpleDB 中存储多个半年度比赛。

同样地,runner可以是一个域。个人参赛者可以是项目,参赛者的姓名和年龄可以是属性。如同一个比赛,每个 runner项目需要一个惟一名(例如,Pete Smith 或 Marty Howard)。不同于 Bigtable,SimpleDB 不在乎您为每个项目如何命名,事实上,它不会为您提供一个主键生成器。可能在本例中,我们可以使用一个时间戳或仅为每个参赛者增加一个计数器,比如 runner_1、runner_2等。

因为没有框架,个人项目可以随便变更属性。同样地,您可以随意更改一个域中的项目。不过您需要限制该变化性,因为它往往使数据变得无序,从而不易于查找或管理。请注意我这里的一句话:杂乱无章、无模式、无组织的数据是造成灾难的因素!

轻松使用 Amazon SDK

Amazon 最近标准化了一个库,该库包含使用所有 web 服务(包括 SimpleDB)所用的代码。该库和大多数库一样,提取访问和使用这些服务所需的底层通信,支持客户以自然方式运作。例如,Amazon 用于 SimpleDB 的 Java 库允许您创建域和项目,查询它们,当然也支持从存储中更新和删除它们 —自始自终不需要知道这些经由 HTTP 传输到云中的操作。

上一页  1 2 3 4 5 6 7 8  下一页

Tags:Java 开发 使用

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接