问题标签 [datomic]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 启动 Datomic shell 时出错:java.lang.NoClassDefFoundError: jline/ConsoleRunner
我按照 Datomic 站点上的说明进行操作:http://docs.datomic.com/getting-started.html ,但在尝试启动 datomic shell 提示时出现此错误。我正在使用Windows机器。有什么建议么?我在我的 linux 机器上尝试了同样的事情,但没有收到这个错误。
编辑:移动到另一台 Windows 机器,它正在工作。如果我有时间解决此问题并找到解决方案,我会报告
database - 从不就地删除或更新数据的通用数据库
我深受 Rich Hickey 倡导的数据管理方法的启发,并在Datomic中实现,其中数据永远不会就地发生变异,所有版本始终保留且可查询,时间是第一类概念。
当然,也有与该描述相匹配的专门数据库,例如 Git 或任何其他源代码控制系统。问题是是否有任何(或多或少)通用的关系、图形、分层、文档或任何其他风格的 DBMS-es 可以有效地用于电子商务 Web 应用程序等。还是 Datomic 是唯一的选择?
macros - 为什么 clojure 将命名空间限定符添加到反引号内的名称?
我正在尝试以编程方式构建数据日志查询,但一直遇到我将通过示例函数说明的问题:
当我运行(test-expr 3)时,我希望输出:
但相反,我得到
这显然不是我想要的。有没有办法告诉clojure“请引用列表并扩展我告诉你的变量?”
java - Java 中的 Datomic 内存查询不返回任何结果
在 Clojure 谷歌支持小组上发布这个似乎对我不起作用,所以我会尝试在这里提问。
我正在运行以下稍作修改的 GettingStarted.java(来自 clojure 发行版)作为 Spring 配置的测试,以查看 Datomic 如何集成到我的应用程序中,并且在下面的第一个 Peer.q 调用中没有得到任何结果(而相同的控制台调用返回 150 条记录)。我在这里做错了什么,请帮忙?
...................................
[main] INFO com.excelsiorsoft.daedalus.persistence.datomic.GettingStartedTest - 查找所有社区,计算结果...
[main] INFO com.excelsiorsoft.daedalus.persistence.datomic.GettingStartedTest - 结果大小 = 0
提前感谢您帮助我。
clojure - 从 Datomic 实体中获取所有字段
Datomic 查询和规则文档的“嵌入式”部分说:
像 SQL 这样的查询语言是面向客户端-服务器模型的,在这种模型中,在一次对话中,您将不得不同时处理这两个问题:
- 回答您的基本问题,例如本月谁买了袜子。
- 恢复报告和处理所需的任何其他信息,例如他们的姓名和电子邮件地址。
后者并不是真正的查询,它只是对相关信息的机械导航。
虽然我很欣赏提到的两个不同方面的正交性是如何得到尊重的,但我认为我经常需要检索整个实体,无论它的属性是什么。
据我所知,查询通常具有以下形式:
如果我想检索具有 N 个属性的实体,我会让它们在每个查询中都列出它们,这对我来说似乎很乏味且容易出错。
如何告诉 Datomic 检索具有它们持久化的所有字段的实体,而不必显式指定它们?
clojure - n 元谓词 Datomic (n != 2) 可能吗?
我尝试将我读到的关于 Datalog 的内容与 Datomic 的描述相匹配。我在 Datomic 中看到的所有谓词都是三元组,即 [实体属性值] 或属性(e,v),语法更简洁。另一方面,Datalog 支持 n 元谓词,如 pred(a,b,c,d)。
我该如何匹配这个?
- 我是否错过了 Datomic 的一个特性,即它是否有 n 元谓词,或者我可以以某种方式对它们进行建模?
- Datomics Datalog 是通常称为 Datalog 的受限版本吗?
clojure - Datomic - 需要对唯一 ID 进行显式手动编码?
我的问题是——Dataomic 是否需要最终用户明确手动创建唯一序列号?还是只是提供的示例?
我正在阅读 Datomic 教程。
当我查看在 seattle-data0.dtm 中加载的数据时,我在前两行看到:
特别注意这些值
也许您可以帮助我理解 -在准备插入数据时,这似乎明确需要手动生成的唯一 ID 序列号。
当然,在现代数据库中,我们可以依靠数据库为我们生成序列号吗?
当我去做我自己的示例模式和数据插入时 - 我发现我也需要插入手动 ID 号。我错过了什么?
join - Datomic - 在没有引用的实体之间连接
我的问题是 - 有没有办法在 Dataomic 中连接两个在模式中没有引用的实体,而无需编写两个嵌套迭代器(手动连接)。
在Datomic Doco 中,他们给出了一个指定两个参数的查询示例。
他们称之为“连接”——因为底层结构是一个键值数据库——所以即使是同一实体的属性也需要“连接”在一起。
然后,他们给出了两个具有引用的实体之间的连接示例(假设引用在此处未显示的架构中定义):
我的问题是 - 如果没有架构中的引用,是否可以进行上述查询?还是我必须求助于编写迭代器并搜索结果?
datomic - Datomic mem 或 free 中的分区不起作用?
我正在尝试在 Datomic(免费或内存)中创建一个分区,但是,当查询时,新分区没有出现,并且在尝试使用它时出现异常。这种行为是自由模式或内存模式固有的吗?
请问有什么线索吗?
clojure - db.part/db 的所有字段是什么意思?
我是 datomic 的新手,我仍在试图弄清楚系统是如何构建的。特别是,我不明白 :db.part/db 扮演什么角色,因为每次安装架构时似乎都需要它。有人可以阐明这一切意味着什么吗?