数据字典/表如何存储在内存中?

时间:2014-06-24 18:47:43

标签: database dictionary filesystems relational-database ddl

DDL(数据定义语言)编译器生成存储在数据字典中的一组表。

  1. 数据字典的含义是什么以及如何将其存储在内存中?
  2. 是不是因为这个存储因为内存数据库中的字典比文件系统更受欢迎?
  3. 另外一般说明如何将关系表存储在内存中?

1 个答案:

答案 0 :(得分:1)

(1)您对DDL编译器的作用有误解。首先,编译器除了编译你的语句之外什么都不做。如果这些语句也要执行那么它就是DDL 处理器。 (当然,作为系统的一个独立组件,它通常不是很明显,因为将“编译的DDL”存储在某处以便重复执行通常没有意义。所以编译和执行通常是齐头并进的。)第二,其运作范围并不仅限于“生成表格集”。例如,DDL还可以创建用户定义的数据类型。 DDL还可以定义表间约束。等等。

(2)数据字典是什么意思?数据字典是一个字典,包含描述应用程序使用的数据库结构所需的每条信息。

(3)它是如何存储在内存中的?不相关的问题。您的数据字典接口是DDL处理系统的前端组件。 如何自己的内部数据的结构,供供应商选择,而不是让您知道。

(4)是因为......?没有。只要程序员能记住,数据字典就与DBMS系统齐头并进。它们不是内存DBMS系统所独有的。

(5)关系表如何存储在内存中?具有数万亿行的表通常不会“存储在内存中”。除此之外,问题再次无关紧要。物理数据独立性不是一个错误,它是一个功能。这意味着程序员可以释放不必知道DBMS使用的内部结构。这意味着他们的程序可以独立地运行所有那些细节内部结构细节。这意味着DBMS供应商可以完全自由地选择他们在特定DBMS产品中使用(或不使用)的内部结构,这反过来意味着您的问题通常无法解决。