描述键/值数据存储的 UML 方式?
Posted
技术标签:
【中文标题】描述键/值数据存储的 UML 方式?【英文标题】:A UML way to describe a key/value datastore? 【发布时间】:2009-09-21 08:00:27 【问题描述】:我目前正在使用 berkeleyDB 编写数据库文档。我想绘制描述数据存储区的键和值的 UML 图。是否有使用 UML 描述这种数据库的“标准”方式?
谢谢
【问题讨论】:
【参考方案1】:不。只是一个class diagram 有两个属性。一个用于键,一个用于值。请记住,UML 设计仅用于文档目的,尽管一些 UML 编辑器能够根据您的模型生成代码。
当然,您也可以使用Activity model 来显示此表如何与其他表交互。或者Use Case diagram,它显示了参与者如何处理数据。
不过,图表的种类更多。您需要哪一种取决于您想对您的项目说些什么。
【讨论】:
【参考方案2】:执行此操作的正确 MDA 方法是使用类或对象图,为每个表使用类或对象,为每个数据库字段添加一个属性。为 PK、FK、Unique、Index 定义 Stereotypes,并酌情将它们附加到每个字段。将每个 Table 对象与关联连接起来。根据您使用的工具,您可能可以将关联的每一端附加到特定字段。
【讨论】:
【参考方案3】:我更赞成更严格地遵守 NoSQL 数据库的结构和行为。因此,Base 的键值模型将与 MongoDB 或 DynamoDB 略有不同,但它会减少对必须实施该模型的人的偏见。例如。在 DynamoDB 中,我将有一个主表,其中包含分区和排序键以及不太相关的属性,并将符合二级索引的属性放在单独的表中。
【讨论】:
以上是关于描述键/值数据存储的 UML 方式?的主要内容,如果未能解决你的问题,请参考以下文章
是否有最佳实践/连贯的方法来更新包含哈希键值存储的数据库字段?