希望了解如何,intersystems Cache和Mongo数据库彼此不同。
在stackoverflow本身的几个线程中,已经提到Object数据库和NoSQL数据库之间没有差异。
在MongoDB中,数据是基于文档的,通过JSON格式访问和查询。在Cache DB中是否也是一样的情况?
任何指针都会有所帮助。
答案 0 :(得分:3)
GlobalsDB可以做的一切,Cache也可以做(GlobalsDB只是Cache功能的一个子集) 到目前为止,我还没有与MongoDB合作,但要解决你所说的问题:
在stackoverflow本身的几个线程中,已经提到对象数据库和NoSQL数据库之间没有>差异。
这不是一个非常精确的陈述和恕我直言,你不能认真审查。对于初学者来说,NoSQL的定义不是很好,NoSQL对你来说是什么?只是一个无法使用SQL的数据库?一个非关系DB? 什么是对象数据库?您想在数据库中拥有对象表示吗?这可以通过传统的关系以及现代的“现代”来实现。 NoSQL的。 (NoSQL绝对不是现代的,它已经存在了很长一段时间。例如,Cache(来自MUMPS)在70年代开始作为NoSQL回来了
在MongoDB中,数据是基于文档的,通过JSON格式访问和查询。是 它与Cache DB中的情况相同吗?
您可以通过多种方式访问Cache中的数据。 GlobalsDB正在为全球结构提供一个接口(将其视为一个更灵活的键值存储) 此外,您还可以访问数据关系和对象。 当然,当您想要从键值转到关系访问时,需要满足某些格式限制,但最重要的是,您可以按照您想要/需要的方式访问数据。 这包括JSON,在较新版本中是原生的。
答案 1 :(得分:1)
还有来自InterSystems的另一款清理NoSQL的产品是GlobalsDB
以JSON格式请求,这些工具是通过适配器实现的。 GlobalsDB支持NodeJS和他JSON,也支持。 NET和Java
答案 2 :(得分:1)
你的问题的问题是没有一个术语定义得很好(不是你的错 - 你没有定义它们)。
但什么是基于文件的?它是否必须存储为文本?或者它只是作为文档暴露给客户端?实际上,第二种选择是有道理的,除非那么任何持久存储都有资格。例如,您始终可以将行和列转换为文档。
至于通过JSON查询,在Intersystems发布版本之前,我编写了自己的系统来使用Cache DB。并且可以在几乎任何持久存储中放置一个JSON包装器(它并不难,JSON设计得非常容易解析)。
对我来说,NoSQL数据库的一个关键有趣的特性是它们通常被设计为在大量不可靠的机器上处理分布式数据 - 尽管价格不具备某些类型的一致性。缓存数据库没有(据我所知),但可以合理地说是支持你提到的特征,只要它们有明确的含义。
回答有关您要完成的内容的更具体的问题会更容易。
答案 3 :(得分:0)