问题标签 [orientdb]

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 投票
1 回答
1541 浏览

graph-databases - 删除顶点的所有边和顶点本身

我正在尝试编写一个 gremlin 表达式,对于给定的顶点,它会删除往返于它的所有边,然后删除顶点本身。

我使用 OrientDB 1.3-SNAPSHOT 作为我的图形数据库。

到目前为止,这是我的表达:

我期望上面删除边缘然后返回 2,这应该打印出 node #8:1。但是,由于某种原因,我收到此错误:

为什么会这样?

最后,我该如何移除顶点?文档表明这removeVertex()需要一个参数(即顶点)。如何将顶点从back(2)into传递removeVertex()

0 投票
1 回答
1073 浏览

scale - 如何对 OrientDB 进行分片?

我想对 OrientDB 进行分片以在多台服务器上运行,但我找不到真正的方法来做到这一点。

我该怎么做?

0 投票
1 回答
1791 浏览

rest - orientdb(rest api)使用curl的sql查询错误

在命令行上我试试这个:

得到这个

然后我试试这个:

得到这个

编辑:

我在 ubuntu 12.04 中使用 1.2.0 版本

编辑2:

如果我从谷歌浏览器访问:

有用。所以我认为卷曲请求中有一些东西。

编辑3:

我尝试添加此标头并出现相同的错误

0 投票
0 回答
356 浏览

performance - OrientDB 和 mmap(性能问题)

如果我遍历一个集群,使用以下代码:

我观察到性能非常差(大约每秒获取 10 条记录),但前提是为 Java 进程分配了足够的内存。如果我将内存限制为 64mb - 一切都运行得非常快。

正如我从分析器中看到的那样,在性能不佳的情况下,OFileMMap.map 经常被调用。并且 channel.map(....) 消耗了大部分时间。

如果我通过设置 file.mmap.strategy=4 完全禁用 mmap - 一切都变得越来越快,但不像 mmap 和受限内存分配那样快。

有任何想法吗?

0 投票
1 回答
804 浏览

java - 在 OrientDB 中保存 Java 枚举

我正在使用 OrientDB,我想在字段中保存一个枚举。就像是:

这是我得到的错误:

解决此问题的简单方法是将“颜色”属性设置为 aString然后将其保存,Colors.BLUE.name()但如果是这种情况,那么我很确定 Orient 应该有某种方法可以为我处理这个问题,或者甚至更好,某种OType以更有效的方式处理这个问题。

有谁知道使用枚举的更好方法是什么?

0 投票
0 回答
952 浏览

jpa - 有没有人尝试过使用 orientdb 实现 datanucleus JPA ?

我正在尝试为我的 java 项目为 orientdb 实现 Datanucleus JPA。我能够成功地使其与 datanucleus3.1.2、mongodb 一起使用。但是当我尝试使用 orientdb 时,我读到它适用于 2.x(我想目前只有 2.x)。我用 2.x 替换了所有 datanucleus 3.x 罐子。

对于 mongodb,我有以下工作正常

Persistence.createEntityManagerFactory("mongodb");

使用persistence.xml

有没有人能够让它工作?如何为 orientdb 创建实体管理器工厂?persistence.xml 应该是什么样子?

我不断收到 javax.persistence.PersistenceException: No Persistence provider for EntityManager named orientdb at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:84) at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:54)

0 投票
2 回答
3721 浏览

neo4j - Neo4j vs OrientDB 对象映射选项 vs Tinkerpop Frames

我们正在开始一家新的社交创业公司,从我目前学到的知识来看,图形数据库是要走的路,我目前正在尝试找出使用哪一个。我开始比较 OrientDB 和 Neo4j,我们用 Java 编写,对象图映射对我们很重要。

我从 Tinkerpop Frames 开始(以便将来轻松迁移),但似乎只有一种方式映射(也许我遗漏了一些东西)从图形到对象,而且映射仅与接口(它更像是定义一个带有接口的架构,而不是将您的应用程序对象映射到图形 - 再次,也许我错过了一些东西:/)。

因为我不能使用 Tinkerpop,所以我需要选择一个特定的数据库(迁移会更困难:/),我看到 OrientDB 使用反射,neo4j 有使用注释的 jo4neo,我目前倾向于 jo4neo,因为它更熟悉并且没有反射似乎更快(我还没有测试过)

我很想听听有关这方面的任何意见,也许我错过了 Frames 的某些内容,真的任何意见都会有所帮助

0 投票
1 回答
909 浏览

orientdb - 使用原生原始实现删除特定顶点及其所有边

您好,我是 OrientDB 及其 java api 的新用户。我使用 GrapDatabase 的 Native 原始实现,因为我想要最大的性能。

如何使用 OrientDB SQL 删除特定顶点及其所有边?

假设顶点有一个字段 uid,我想删除 uid 为 12 的顶点及其所有边。

0 投票
1 回答
1775 浏览

php - PHP 警告:会话处于活动状态。此时您无法在 /../ 中更改会话模块的 ini 设置

我创建了自定义 PHP 会话处理程序,有时会收到 PHP 警告:

这似乎是一个随机问题,并且“curl_exe()”函数不是问题,因为该函数总是在发生错误时更改。

自定义会话处理程序将会话保存到 memcache 和 OrientDB 中,我确信 memcache 和 orientdb 在发生错误时没有问题,因为在警告之前和之后检索/保存数据时我没有错误。

我正在使用 Debian 6.0.6 stable,2.2.16-6+squeeze10(prefork)和 libapache2-mod-php5 5.3.3-7+squeeze14。我认为这是一个 PHP 错误,但我没有在 php 或 debian 错误数据库中找到它。有胶水吗?谢谢。

PS如果您需要会话处理程序PHP代码,我可以将它开源发布!

0 投票
1 回答
2212 浏览

java - 无法加载 OrientDB rw - “无法加载数据库的配置。数据库似乎已损坏。”

我正在尝试为我正在编写的应用程序配置数据库。我已经启动了 OrientDB 服务器并创建了一个数据库,以及一个用户名和密码。我希望能够将我的应用程序与此联系起来,但我目前正处于测试阶段。

这是测试:` static OObjectDatabaseTx db; 静态people.group组;

运行时,输出:

在 com.orientechnologies.orient.core.db.ODatabaseWrapperAbstract.open(ODatabaseWrapperAbstract.java:47) 在 com.orienttechnologies.orient.object.db.OObjectDatabaseTx.open(OObjectDatabaseTx.java:99) 上打开(ODatabaseWrapperAbstract.java:47)在 db.ToFromByte.main(ToFromByte.java:34) 引起:com.orientechnologies.orient.core.exception.OSerializationException:无法加载数据库的配置。数据库似乎已损坏。在 com.orientechnologies.orient.core.storage.impl.local.OStorageConfigurationSegment.load(OStorageConfigurationSegment.java:73) 在 com.orienttechnologies.orient.core.storage.impl.local.OStorageLocal.addDefaultClusters(OStorageLocal.java:215)在 com.orientechnologies.orient.core.storage.impl.local.OStorageLocal.open(OStorageLocal.java:143) ... 7 更多 orientechnologies.orient.core.db.ODatabaseWrapperAbstract.open(ODatabaseWrapperAbstract.java:47) 在 com.orienttechnologies.orient.object.db.OObjectDatabaseTx.open(OObjectDatabaseTx.java:99) 在 db.ToFromByte.main(ToFromByte.java: 34) 原因:com.orientechnologies.orient.core.exception.OSerializationException:无法加载数据库的配置。数据库似乎已损坏。在 com.orientechnologies.orient.core.storage.impl.local.OStorageConfigurationSegment.load(OStorageConfigurationSegment.java:73) 在 com.orienttechnologies.orient.core.storage.impl.local.OStorageLocal.addDefaultClusters(OStorageLocal.java:215)在 com.orientechnologies.orient.core.storage.impl.local.OStorageLocal.open(OStorageLocal.java:143) ... 7 更多 orientechnologies.orient.core.db.ODatabaseWrapperAbstract.open(ODatabaseWrapperAbstract.java:47) 在 com.orienttechnologies.orient.object.db.OObjectDatabaseTx.open(OObjectDatabaseTx.java:99) 在 db.ToFromByte.main(ToFromByte.java: 34) 原因:com.orientechnologies.orient.core.exception.OSerializationException:无法加载数据库的配置。数据库似乎已损坏。在 com.orientechnologies.orient.core.storage.impl.local.OStorageConfigurationSegment.load(OStorageConfigurationSegment.java:73) 在 com.orienttechnologies.orient.core.storage.impl.local.OStorageLocal.addDefaultClusters(OStorageLocal.java:215)在 com.orientechnologies.orient.core.storage.impl.local.OStorageLocal.open(OStorageLocal.java:143) ... 7 更多 orientechnologies.orient.object.db.OObjectDatabaseTx.open(OObjectDatabaseTx.java:99) at db.ToFromByte.main(ToFromByte.java:34) 原因:com.orientechnologies.orient.core.exception.OSerializationException:无法加载数据库的配置. 数据库似乎已损坏。在 com.orientechnologies.orient.core.storage.impl.local.OStorageConfigurationSegment.load(OStorageConfigurationSegment.java:73) 在 com.orienttechnologies.orient.core.storage.impl.local.OStorageLocal.addDefaultClusters(OStorageLocal.java:215)在 com.orientechnologies.orient.core.storage.impl.local.OStorageLocal.open(OStorageLocal.java:143) ... 7 更多 orientechnologies.orient.object.db.OObjectDatabaseTx.open(OObjectDatabaseTx.java:99) at db.ToFromByte.main(ToFromByte.java:34) 原因:com.orientechnologies.orient.core.exception.OSerializationException:无法加载数据库的配置. 数据库似乎已损坏。在 com.orientechnologies.orient.core.storage.impl.local.OStorageConfigurationSegment.load(OStorageConfigurationSegment.java:73) 在 com.orienttechnologies.orient.core.storage.impl.local.OStorageLocal.addDefaultClusters(OStorageLocal.java:215)在 com.orientechnologies.orient.core.storage.impl.local.OStorageLocal.open(OStorageLocal.java:143) ... 7 更多 OSerializationException:无法加载数据库的配置。数据库似乎已损坏。在 com.orientechnologies.orient.core.storage.impl.local.OStorageConfigurationSegment.load(OStorageConfigurationSegment.java:73) 在 com.orienttechnologies.orient.core.storage.impl.local.OStorageLocal.addDefaultClusters(OStorageLocal.java:215)在 com.orientechnologies.orient.core.storage.impl.local.OStorageLocal.open(OStorageLocal.java:143) ... 7 更多 OSerializationException:无法加载数据库的配置。数据库似乎已损坏。在 com.orientechnologies.orient.core.storage.impl.local.OStorageConfigurationSegment.load(OStorageConfigurationSegment.java:73) 在 com.orienttechnologies.orient.core.storage.impl.local.OStorageLocal.addDefaultClusters(OStorageLocal.java:215)在 com.orientechnologies.orient.core.storage.impl.local.OStorageLocal.open(OStorageLocal.java:143) ... 7 更多

所以代码在这行代码上失败了: db.open("nick", "nick"); 这里会发生什么?该数据库似乎可以通过 OrientDB 服务器访问。