所有的数据都作为“结构”,保存在一个分布式的数据共享空间。同样的那个系统语言可以被轻松地发送到远程机器,调用远程机器上的库代码,执行任意复杂的查询索引等动作,取回结果。这种方式可以高效的完成数据库的功能,然而却比数据库简单很多。所谓的“查询语言”(比如 SQL,Datalog,Gremlin,Cypher)其实是多此一举,它们远远不如普通的程序语言强大。说是可以让用户“不需要编程,只提出问题”,然而它们所谓的“优化”是非常局限甚至不可能实现的,带来的麻烦远比直接编程还要多。逻辑式编程语言(比如 Prolog)其实跟 SQL 是一样的问题,一旦遇到复杂点的查询就效率低下。所以系统不使用关系式数据库,不需要 SQL,不需要 NoSQL,不需要 Datalog。 |
|
来自: gentle2008 > 《待分类》