问题标签 [orientdb2.2]

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.

0 投票
2 回答
315 浏览

orientdb - 如何使用 OrientDB fetchPlan 返回 SQL Traverse

在 Java 和 SQL 中,我都可以通过顶点列表递归来获取所有链接节点。但是在使用 fetchPlan 时我似乎无法得到相同的结果。

这将返回正确的图(链接到父节点的所有节点,但不是共享相同子节点的其他父节点)

我正在寻找一个将返回相同图表的获取计划。下面粘贴的是一个接近但拉入其他根节点的 fetchPlan,我只想要一个父节点的所有子节点。

我的数据库有 2 个顶点和 1 个边连接它们。父级-> 边缘-> 子级。一个孩子可能与多个父母相关联,但从父母的角度来看,我只想看到他的孩子没有与父母联系。

0 投票
1 回答
877 浏览

orientdb - OrientDB ETL 加载 CSV,顶点在一个文件中,边在另一个文件中

我有一些数据在 2 个 CSV 文件中,一个包含顶点,另一个文件包含边在另一个文件中。我正在研究如何使用 ETL 进行设置,并且很接近但还没有完全实现——它大部分都可以工作,但我的边缘有属性,我不确定它们是否加载正确。 这个问题很有帮助,但我仍然缺少一些东西......

这是我的数据:

顶点.csv

边缘.csv

我使用这个导入我的顶点:

commonVertices.json

顶点.json

commonEdges.json

边缘.json

我像这样使用 oetl.sh 运行它:

一切都在运行,但是当我查询边缘时......我是 OrientDB 的新手,所以它可能正在获取边缘中的属性,但是当我查询边缘时,我看不到权重和日期字段:

顶点表包含我的 edges.csv 中的 [weight] 字段,并且 [date] 字段以一种奇怪的方式被破坏。月份中的日期被 edge.csv 文件中的日期覆盖,这是不可取的,但对我来说奇怪的是月份本身也没有发生变化:

我敢肯定这可能是一个简单的调整,任何帮助都会很棒!

0 投票
4 回答
671 浏览

orientdb - systemd 在 Ubuntu 16.04 上启动后立即停止 OrientDB

我正在尝试让 OrientDB 在 Ubuntu 16.04 LTS 上作为守护进程(启动时启用)运行。问题是,systemd 似乎在我告诉它启动后立即调用停止。我有这个 systemd 服务文件,完全符合 OrientDB 文档中的建议:

orientdb.log:

系统日志:

有任何想法吗?

0 投票
1 回答
207 浏览

orientdb - 如何在 Orientdb 中查询 Edge 元数据?

我想从元数据中了解有关名为“自己”的边的信息,而不是查询存在大量节点的大图。我想要边缘“自己”的所有“从”和“到”类的信息。

我已经尝试过 - 从(从元数据:模式中选择扩展(类))中选择扩展(属性),其中名称='客户'

我可以在哪里知道有关类=客户的节点的信息。同样,我想知道有关我名为“自己”的边缘的信息。谢谢。

回答 - 在 Allesandro 的建议下,我可以使用 . 创建属性 own.in 链接顺序

创建属性 own.out LINK 客户

select expand(properties) from (select expand(classes) from metadata:schema) where name = 'own'

  1. 让我们考虑这个名为“自己”的边是在 10 个类之间以此处所示的方式创建的 - 客户 -> 自己的 -> 订单 -> 自己的 -> order_detail -> 自己的 -> 项目 -> 自己的 -> ..... 所以上

现在我想通过 select expand(properties) from (select expand(classes) from metadata:schema) where name = 'Own' 来查询自己的元数据

并且知道边缘与给定序列中的所有类相关联。客户 -> 订单 -> order_detail -> 项目 -> ... 依此类推

谢谢。

0 投票
0 回答
231 浏览

orientdb - 边缘属性从 ETL 中破坏 OrientDB 中的顶点属性

这是我发布的另一个问题的后续内容,该问题是关于使用 ETL 将一个简单的数据库导入 OrientDB,该 ETL 具有边和顶点属性,两者都有日期。

这是我的数据:

顶点.csv

边缘.csv

为简洁起见,我将使用其他问题的编辑内容仅添加更新后的 commonEdges.json 文件。其他 JSON 文件保持不变。

commonEdges.json

加载图表后,日期字段仍然被破坏。

如果我不加载边,这是顶点表:

一切看起来都不错,日期是 1/1/15 - 1/3/15。

在我加载边缘之后,日期字段是错误的:

边缘的日期也不正确:

看起来 OrientDB 正在用已经加载的日期破坏月份中的某一天......但是边缘的月份字段以某种方式被放入分钟字段中。对于顶点和边,它也以这种方式显示。

这只是 OrientDB 的一个错误,还是我的 ETL 文件中缺少某些内容?

提前感谢您的任何帮助或建议。

0 投票
1 回答
56 浏览

orientdb - OrientDB 网络二进制协议 - 创建 CLASS 时返回什么?

创建类时输出的最后两个字节(包装记录的一部分,一个不是)的含义是什么?

我发出了命令“CREATE CLASS Foo EXTENDS V”。这是输出(用我对协议的理解进行注释):

记录本身解码为名为“结果”的字段。result 的值是一个整数,编码为 varint 84,解码为 42。然后有一个尾随字节 0。

结果值 42 是什么意思?后面的 0 是什么意思?

请注意,我使用的是协议版本 36。

谢谢!

0 投票
1 回答
116 浏览

orientdb - CSV 的 OrientDB 2.2.7 ETL 未加载 DateTime 字段?

我正在尝试使用 ETL 加载程序加载一个简单的示例,但我必须遗漏一些东西。我已经关注了 Stack Overflow 上的各种线程,并且一直在阅读有关 extractors 的文档,但我的尝试失败了。

这是我的数据:vertices.csv

我正在设置两个 JSON 文件以尝试将其加载到 PLOCAL 数据库中:

顶点.json

commonVertices.json

我正在使用 oetl.sh 使用以下命令加载它:

带有调试信息的输出在这里:

它加载...日期字段未填充任何数据,如此查询所示:

到目前为止,在修补中,如果您将“dateFormat”和“columns”字段留在 commonVertices.json 文件之外,ETL 似乎会导入日期,但这样做可能会导入DATE,但不会导入时间。

我有点卡在这个问题上,对我来说它看起来像是一个错误,但我是 OrientDB 的新手,所以希望只是一个有简单解决方案的用户错误。

一如既往,非常感谢任何帮助!

0 投票
0 回答
114 浏览

orientdb - OrientDB 分布式模式:数据没有分布在各个节点上

我已经启动了一个带有两个节点的 OrientDB Enterprise 2.7。这是我的设置的外观。

现在我有两个顶点类用户和注释。带有边缘类型已发布。所有顶点和边都有属性。Vertex 类也有唯一索引。

我开始使用 Java API 推送数据:

对于注释和边缘也是如此。我填充了大约 200k 用户和 3.5M Notes。现在我注意到所有数据都只发送到一个节点。

在运行“集群”命令时,我看到所有集群都是在同一个节点上创建的,因此所有数据只存在于一个节点上。

我看到一个节点的 CPU 是 99%,另一个是 <1%。

如何确保数据在集群中的所有节点上均匀分布?

更新:数据库传播到两个节点。我可以同时登录节点工作室并查看列出的数据库。查询任何节点也会得到相同的结果,因此节点是同步的。

来自一个节点的服务器日志,在另一个节点上几乎相同。

0 投票
0 回答
256 浏览

orientdb - 尝试更新 OrientDB Vertex 时出现 NullPointerException

我正在尝试使用以下代码更新用户类型的顶点。我正在使用 OrientDB Enterprise 2.7

我在提交步骤中得到以下信息。我不确定代码有什么问题,我之前有过类似的代码。

服务器日志:

0 投票
0 回答
113 浏览

orientdb - 利用 OrientDB ETL 在 CSV 的每一行创建 2 个顶点和一个连接边

我正在使用 OrientDB ETL 工具以 GB 为单位导入大量数据。CSV 的格式是这样的(我使用的是 orientDB 2.2):

“ 101.186.130.130”,“ 527225725”,“ 233 DJFNSDKJ”,“ 0.119836317542”“ 125.143.534.148”,“ 1122212983”,“ 1122212983”,“ 12227 SDFSDFSDFSDFS”,“ 0.01111111111111111111111111111111111111111” ,"0.0938863016658" "103.190.245.128","785804692","6138 sdfsdfsd","0.117767539364"

我需要创建两个顶点,一个具有 Column1 中的值(键是值本身),另一个顶点具有第 2 列和第 3 列中的值(它的键与两个值连接,并且都作为第二个顶点类型中的属性出现,第 4 列将是连接这两个顶点的边的属性。

我使用了下面的代码,它可以正常工作,但有一些错误,一个问题是每个 csv 行中的所有值都存储为 IpAddress 顶点内的属性,有没有办法只在其中存储 IpAddress。其次,请您告诉我连接从 csv 读取的两个值的方法。