在本教程的第一部分中,我介绍了 M 数据库的层级数据结构与 Node.js 语言的层级结构的集成。
在第二部分中,我将重点介绍这种集成相当于使用类似于 JSON 结构的数据模型在 Node.js 语言中合并持久性存储。这是建立在经过验证的数据库之上,该数据库以其在高要求应用程序中的高性能而闻名。
换句话说,这种 M 数据库集成提供了一个
Node.js 的原生 JSON 数据库
当我们使用以下表达式时,将创建 M 数据库和 Node.js 数据结构之间的连接:
var planet = new ewd.GlobalNode('earth',[]);
我们在底层 M 数据库中创建一个条目,其中一个称为“earth”的“全局变量”。在 M 术语中,“全局变量”是驻留在数据库中的变量。此 M 数据库数据结构现在链接到我们在 Node.js 代码中定义的变量“planet”。
Planet 是一个对象,它包含指向数据库连接的指针,通过这些指针,我们可以直接与数据库通信。
例如,我们可以使用诸如以下的表达式开始向这个树状结构添加信息
planet.$('Africa')._value = "";
planet.$('Asia')._value = "";
planet.$('Australia')._value = "";
planet.$('North America')._value = "";
planet.$('Antartica')._value = "";
planet.$('Europe')._value = "";
然后我们可以使用以下表达式将条目插入到这个树的分支中
planet.$('Asia').$('Japan').$('Tokyo')._value = "";
我们可以使用以下表达式打印出目前为止这棵树的内容
var record = planet._getDocument();
console.log("planet info: " + JSON.stringify(record));
这将产生以下输出
planet info: {"Africa":"","Antartica":"","Asia":{"Japan":{"Tokyo":""}},"Australia":"","Europe":"","North America":""}
将其放置在 jsbeautifier 中后,结果是
planet info: {
"Africa": "",
"Antartica": "",
"Asia": {
"Japan": {
"Tokyo": ""
}
},
"Australia": "",
"Europe": "",
"North America": ""
}
请注意,M 和 Node.js 使我们能够在某些分支中进行详细条目,而无需我们在所有其他分支中执行相同的操作。 这类似于我们可以在 *文档数据库* 中执行的操作,例如 MongoDB 和 CouchDB,但 M 层级数据库的不同之处在于,数据结构的所有子分支都可用于直接交互。
在这种情况下,每个子树的行为都像一棵树。查询也以非常自然的方式发生,通过从可能存在的分支进行赋值。
例如,我们可以尝试从 { Europe, France, Paris } 分支获取值,使用以下表达式
home = planet.$('Europe').$('France').$('Paris')._value;
console.log(home)
在我们的例子中,这将返回 null,因为我们尚未为该分支分配任何内容。
一旦我们进行以下赋值,返回的值会看起来更好
planet.$('Europe').$('France').$('Paris')._value = "Fromage";
home = planet.$('Europe').$('France').$('Paris')._value;
console.log(home)
这种层级结构让人想起现代 Web,在现代 Web 中,URL 可能具有越来越深的内容,而无需对其他 URL 施加任何结构。
这里非常有趣的特征是,仅仅通过在 Node.js 语言中使用非常自然的表示法(使用“.”和“$()”),我们就已经在数据库的永久存储中直接插入和查询数据。
这样的数据库可以由其他人同时访问,同时提供进程间通信和共享处理的结构。
通过这种 M 到 Node.js 的连接,Javascript 开发人员现在可以使用由 NoSQL 层级数据库 M 驱动的 JSON 原生数据库。
此连接使 Javascript 开发人员能够加入 M 革命并将他们的技能应用于医疗保健 IT 领域,其中大多数大型应用程序都基于 M。来自年轻一代开发人员的贡献是非常需要的。
评论已关闭。