在浏览数据库架构的过程中,我遇到了Schema的问题。我非常困惑:
逻辑架构
物理架构
数据库中如何存在这两个模式?
如何根据需要操纵这些?
逻辑架构和物理架构的关系如何?
答案 0 :(得分:7)
逻辑模式是数据的概念模型。在关系数据库中,它通常是与平台无关的 - 即逻辑模式原则上可以在任何SQL数据库上实现。逻辑模式主要涉及理解业务实体,它们的属性和它们的关系。
逻辑架构经常被捕获为entity-relationship diagram(ERD),使用tools,如ErWin或ERStudio。
物理架构将逻辑架构转换为适用于特定数据库平台的实现。有时,这是一个很大程度上的机械练习,将正确的数据类型应用于属性,但它也可能涉及性能优化,例如非规范化,特定于平台的功能(如触发器)和大小/性能决策(如物理磁盘分发)。
许多ERD工具可以“自动”将逻辑设计转换为物理模式。
使用DDL SQL语句将物理模式转换为实际数据库。
答案 1 :(得分:1)
物理架构表示与数据源或数据目标的实际连接。逻辑架构表示与该源或目标关联的逻辑名称。 一个逻辑模式可以与多个物理模式以及上下文相关联,即一个逻辑模式与使用不同上下文的不同物理模式相关联。
通过以下示例可以理解: 您有3个环境:Dev,QA,Prod,每个环境分别具有不同的数据库服务器DB1,DB2,DB3。类似地,我们有3个上下文对应于Dev,QA和Prod。您创建名为DB_source的逻辑架构 现在,您将物理数据库服务器与每个上下文的逻辑架构(DB_source)相关联: DEV:DB1 QA:DB2 PROD:DB3 现在,当您开发ODI接口时,您使用一个将DB_source与DB1相关联的上下文DEV。在提及执行的上下文时,请将其保留为“执行”。这意味着,无论您在执行期间选择何种上下文,都将使用相应的物理DB。 因此,如果更改执行上下文,则在执行期间将使用相应的物理模式。