我在orient db中遇到群集问题。所以我想确定我对集群的理解是正确的,如果你能帮我解决这个问题,那就太好了
我对集群的理解
首先,我想确保正确理解集群的概念:对我来说,集群是数据的子集,一个集群可以包含不同的类,一个类可以包含在不同的集群中,对吗
例如,我有数据:
{"name": "john", "sports": "tennis", "gender": "male", "@class": "assistant"}
{"name": "susan", "sports": "hockey",
我在VehicleHistoryGraph数据库中创建了Message类型的顶点,并将50000个此类顶点加载到该数据库中
当我尝试使用此SQL语句一次删除所有顶点时-
DELETE VERTEX MESSAGE
我收到了意外错误,表示某些顶点已被删除(但另一方面,我没有在加载后删除任何顶点),并且顶点不会按照预期一次删除所有顶点(请参见下文)
出了什么问题?为什么?这是一个bug吗?问题是否仍然存在?如果尝试使用最新版本(2.2.x版),则有两个有用的命令:
(检查数据库的完整性。如果数据库
我正在尝试使用gremlin在OrientDB 2.2中查找count(用于分页),当我的类有很多顶点(100万个)时,这个查询就消失了(带有“smi”过滤器的startsWith的记录计数约为6000)。我已经在姓氏字段上创建了全文(sbtree)
g.getVerticesOfClass('person')._().filter{it.getProperty("last_name").startsWith("smi")}.count()
我怎样才能写得更好,让伯爵在合理的时间内回来。我还没
OrientDB命令与此MySQL语句等效的是什么
UPDATE myTable SET myColumnA = CONCAT(myColumnB, ' some string')
您可以使用append函数来执行相同的操作
更新myTable集合myColumnA=
mycolumnB.append('somestring')您可以使用append函数执行相同的操作
更新myTable集合myColumnA=
mycolumnB.append('somestring')
我正在运行一个由select和match查询组成的联合查询,就这个问题而言,它们的结果相当于:(尝试使用演示数据库)
问题是这些查询产生了一些重复的结果,我希望删除重复的结果
通过阅读文档,我发现可以用selectdistinct@this来包装它,这似乎很有效,但我想一定有更干净的方法
下面解决了我的问题,但是有更简单的方法吗
select expand(*) from (select distinct(@this) from (
select expand(unionall(
(
我有一个称为“社区”的顶点,属性为“名称”,社区与顶点“人”有关系。人们有财产“id”。人们可以属于多个社区。我想构建一个gremlin查询,根据“id”对属于每个“社区”的所有人进行分组。它可以是两列“ID”和“Community”,两者都有重复,也可以是唯一的“Community”名称,其中人员ID用逗号分隔。有什么想法吗?根据提供的信息,在黑暗中拍摄:
g.V().hasLabel('Community').
group().
by('name').
by(__.in(
我试图在OrientDb中获得两个顶点之间的最短路径。问题是我只获得顶点。我需要的边缘,以及显示在JavaScript
我可以看到Studio中的图形也显示了边,但是当我使用Studio Browse运行查询时,我只得到顶点
我错过了什么
这是我的疑问:
从中选择expandpath
选择最短路径$from,$to作为路径
允许
$from=从v中选择,其中entity_id='person_6',
$to=从v中选择,其中实体\u id='cdr\u 22'
放卷路径
回答我自己的问题,此查询
[这里是OrientDB初学者..]
我的数据结构如下所示:
User <[PostEdge]- Post <[CommentEdge]- Post
^[CommentEdge]- Post
^[CommentEdge]- Post
[
{
content: "",
comments: [{content: ""}, {content: ""}, {content: ""}]
我刚开始使用OrientJS和OrientDB,我试图同时插入多条记录
如果我使用这段代码,什么都没有发生,没有错误,但也没有插入,我做错了什么
testRecords.map(el =>
db
.insert()
.into('Profile')
.set({
email: el.email,
password: el.password,
verifyEmailToken: el.verifyEm
我在使用OriteDB Lucene索引时遇到问题。当我使用它进行查询时,它返回一个不完整的数据集。以下是一个例子:
create class Foo extends V
create property Foo.text string
create index Foo.text_spanish on Foo(text) fulltext engine lucene metadata
{ "analyzer": "org.apache.lucene.analysis.es.Spa
says定义了设置目标顶点的字段。但我不清楚它的含义,因为已经有了选择目标顶点的joinFieldName和lookup组合。
joinFieldName定义包含联接值的字段,类型为字符串且为必填项
lookup定义要在其上执行查找或选择的索引,类型为字符串,是必需的
targetVertexFields定义要在其上设置目标顶点的字段,类型为Object,不是必需的
下面的示例创建了一条从当前顶点(类设置为Parent)到通过查找D.inode索引返回的所有顶点的边,该索引的值包含在输入顶点的
我最近一直在使用OrientDB对象数据库,但我遇到了一个奇怪的绊脚石。我想存储的某些对象的成员是大整数,出于某种原因,它们在数据库中存储为布尔值。我试图使用找到的示例代码。我有一个简短的示例和我的Maven依赖项要在下面演示,但以下是我的两个问题:
为了让它发挥作用,为什么不起作用
为了更好地理解,布尔运算是如何产生的
示例代码:
package test;
import java.math.BigInteger;
import java.util.List;
import com.ori
我有一组定期刷新的数据。与其将它们放在带有时间戳的平面记录中,并为每次更新创建一个新记录,不如尝试看看是否可以使用orientdb中内置的版本控制。但是,是否有一种方法可以查询记录的所有或子集版本,并且这样做是否存在规模/性能限制?OrientDB的版本控制是为了管理MVCC,所以旧版本不会保存在数据库中。您可以通过编写一个在更新之后调用的钩子——onAfterUpdate()方法——将旧版本保存到某个地方来实现这一点
标题几乎说明了一切。我想将OrientDB中的记录从“Asset”类移动到新类(保留类“Asset”的旧版本)。这可以通过将顶点x移动到y来实现。但是,这会为节点创建一个新的@RID,我不想将旧RID的所有关系更新为新的@RID,因为这太昂贵了。
有解决办法吗?
非常感谢您的帮助,如果您需要更多信息,请务必询问。移动顶点负责将所有边更新到新的@RID。谢谢,Java API中是否有等效方法?我重试了,在2.0.5中,它不会更新所有边;它们保持不变(引用旧的@RID)。可能它坏了?请使用2.0.6
OrientDB服务器v2.0.10,
我试图对以下场景提出一个查询
我有两个层次结构:A->B->C和D->E->F
层次结构中的节点数可以更改。
第一层次结构中的节点可以使用某种关系(如“已分配”)连接到另一层次结构。
我想要的是第二层次的父节点,如果从第一层次到第二层次中的任何节点都有任何传入边
例如,假设我们有汽车儿童->发动机儿童->活塞和国家儿童->国家儿童->城市
以及汽车、发动机或活塞与国家、州或城市之间的关系
因此,如果与国家、州或城市中的任何一个有关系,则应返回国家。例如,E
“早上好
我注意到查询中别名的一个奇怪行为:我执行了这个查询,并注意到在WHERE子句中使用了别名
SELECT traversedElement(1).start AS stime, traversedElement(2) AS destination
FROM (TRAVERSE both('Involves') FROM #11:11052 WHILE $depth <= 2)
WHERE @rid = #11:8395
AND stime = DATE('31.10.2014
我在控制台中看到了列出的呼叫OSSchedule,但我不知道如何与之交互。我可以注册新的函数调用计划吗?我没有找到关于这个问题的文件。感谢OSSchedule是OrientDB的一个内部类,您可以在其中注册cron表达式以自动执行OFunction
INSERT INTO oschedule
SET name = 'session',
function = (SELECT FROM ofunction WHERE name = 'listSession'),
rule
我是orientdb的新手。我使用orientdb verson 2.1.11
我以分布式模式在同一台机器上配置并部署了五个节点。我使用console创建数据库,命令是(端口2425是第二个节点):
每个节点都创建了数据库“fuwu_test”,但集群没有创建同步关系
我看到工作室里每个集群都有一个集群,而不是五个。我创建了一个类Person,该类也没有同步到其他节点
为什么它不工作,如何在运行集群时创建新的数据库。我需要重新启动整个节点吗
非常感谢在v2.1和v2.2版本中有一个已知的问题。解
使用OrientDB进行实验,
我试图执行一个链接到函数中的一个实例的函数
有一个名为testFunction和@rid 6:2的OFunction实例
我的类有一个属性:
create property MyClass.myFunction LINK OFunction
我的例子是:
insert into MyClass set myFunction = #6:2
现在,我想创建一个HTTP REST可执行函数,用于选择我的实例并执行其链接函数
我明白了
db.query('select
通过查看ORecord类的源代码,它的设计似乎没有考虑多线程
是否有API的线程安全使用指南?如果您使用数据库实例,常用的方法是为每个线程使用此对象的单独实例,为了简化此任务,您可以使用数据库对象池,例如com.orientechnologies.orient.core.db.OPartitionedDatabasePool。
通常只有ostarage实例是线程安全的,其余对象不应在线程之间共享,而应使用数据库实例加载。您好,我找到了关于OrientDB多线程的内容。希望有帮助。嗯。。。这使得从
我正在使用ORecordBytes存储二进制文件,并希望将它们全部列出,但无法识别select*from ORecordBytes命令。正如您所见,我有一个包含二进制数据的类:
要查看它们,您可以选择存储它们的集群,在本例中是selectfromcluster:3
结果是:
希望对您有所帮助,因为您可以看到我有一个包含二进制数据的类:
要查看它们,您可以选择存储它们的集群,在本例中是selectfromcluster:3
结果是:
希望有帮助您可以使用SQL命令选择OrientDB中存储
我正在使用OrientDB 2.2.10,有时我想目视检查我的数据集,以确保我的操作正确。在OrientDB的这一页上,您可以看到一个带有以下查询的大型图形的良好可视化:
select * from V limit -1;
因此,我在我的数据集上尝试了相同的查询,但结果非常缓慢,我无法使用它。我的数据集不是非常大,只有几百个顶点,几千条边,但结果仍然不可行。我尝试了所有主要的浏览器,但都得到了相同的结果。另外,我的电脑没有动力不足,我有一个16GB内存的四核i7
作为一个非常简单的示例,我有以
我试图在Orient Db 3.0.0-M2上构建一些实时查询。
但是当我尝试执行查询时,它会给出一个空指针异常。我在Orient服务器中启用了精细日志级别,并在服务器中找到了下面的行
Sent run-time exception to the client /192.168.1.102:63830: java.lang.NullPointerException [ONetworkProtocolBinary]
我用来查询的代码是:
int monitorId = db.live("LIVE
摘要
gremlin服务器没有开始使用orientDB
说明
我正在尝试连接gremlin服务器和orient db,但没有成功。当我试图启动服务器时,它显示Graph[Graph]已通过[conf/orientdb empty.properties]成功配置。之后,它会给出一些groovy.lang.GroovyRuntimeException:错误。下面的图片将为您提供更清晰的信息
跟踪此帖子
我不确定有关内存的OrientDB“警告”消息是否重要。您可能希望单独处理这些问题,因为Ori
我在orient db中有一个表列,它的形式必须是,
列:[env1:[R1、R2、R3],
环境2:[R1,R2]]
我怎样才能做到这一点?
我试着使用链接地图,链接集,链接列表。。。但无法实现..您好,您使用的是什么版本?ThxOrientDb v2.2.30
标签: Orientdb
orientdb2.2orientdb-2.1orientdb-etlorientdb3.0
尝试使用OETL将oracle数据库中的数据导入OrientDB图形
我注意到在jdbc drivers.json上,oracle驱动程序的URL不起作用
{
"Oracle": {
"className": "oracle.jdbc.driver.OracleDriver",
## "className": "oracle.jdbc.driver.OracleDriver",
"url": "http://svn.ets.berkeley.edu/nexus/co
我正在为我们的一个项目测试面向JDBC的DB驱动程序。看起来很好,我只有一个问题。如何获取关系数据,点表示法是否等效?让我们考虑个人和城市类的标准OrthDB演示数据。如何获取人员数据和相关城市名称信息
e、 g
查询城市值的结果是:City11:0{name:Rome,country:Italy}v1很简单:
select city.name from Person
在select查询中使用字段名而不是“*”时出现以下错误“选择*发件人”很好,“选择姓名,收件人的电子邮件”会在下面引发错误。
我们正在使用OrientDB的v.1.7-rc2版本,该版本嵌入到我们的应用程序中,我正在努力找出一个查询来从另一组结果中删除一组结果
作为一个简化的例子,我们有一个类型为a的类,它是按方向层次结构组织的。该类具有一个名称属性,该属性定义为引用地区、地区、县、市等的字符串,以及一个父边,该父边定义了从子实例到父实例的关系
我能够使用实例函数从我的层次结构的两个子查询中找到结果集的交集:
select expand( $1 ) LET $2 = ( select from (traverse in
我想查询具有特定属性的文档
我尝试了以下方法:
select * from Foo where not bar is null
但这会将文档返回给我,即使它们没有该属性。即使它可以工作,但如果有值为null的属性(不知道orientdb是否以这种方式工作),它也会给出错误的结果
有没有办法通过sql检查属性是否存在?试试:
select from Foo where bar is defined
尝试:
如果要查询没有特定边的顶点
select from Users where first(
OrientDB Studio看起来是一个很有前途的工具,可以用来探索该产品,作为db4o的对象存储替代品,但不幸的是,我还没有能够使用它
我正在运行OSX 10.6.8。在1.7.10 Mac和1.7.9 all Platform二进制文件中都观察到了下面描述的行为:
1我无法使用Studio创建数据库。我编辑了根密码并重新启动了服务器,但使用Studio创建新数据库的任何尝试都会产生相同的结果:401未经授权
而且日志中没有太多信息:
2014-11-20 12:12:32:420 CONF
我已经安装了Orient DB 2.0.2并使其运行。我可以通过访问它,并使用用户“admin”和密码“admin”访问演示“GratefulDeadConcerts”数据库
我已经安装了Rexster服务器2.6.0。使用默认配置,我可以通过和“狗屋”访问一些演示数据库
按照我找到的说明,我将“orientdb-client-2.0.2.jar”和“orientdb-enterprise-2.0.2.jar”复制到了Rexster的“ext”文件夹中。在对以下内容进行故障测试时,我将Orien
标签: Orientdb
couchbase-litecouchbase-sync-gateway
我有一个使用OrientDB分布式数据库的节点集群,我希望能够通过使用Couchbase Lite的Android终端对该数据库进行查询。可以使用沙发同步网关进行同步吗?我不想使用OrientDB Http API
提前感谢Couchbase同步网关目前只能针对Couchbase服务器工作。Couchbase Lite只是本地NoSQL DB,因此可能所有包含的用于与同步网关同步的同步API对于OrientDB后端都没有什么用处。这是个好主意,但可能还没有人这么做。@Lvca您认为在技术上可以实
我正在尝试在Azure上使用OrientDB实例。OrientDB 2.1.4安装在Azure A2节点上。与运行OrientDB2.0相比,性能有了巨大的下降,事实上,速度太慢了,以至于无法使用。有没有人有过类似的经历,或者如何解决这个问题的技巧。
所以OrientDB 2.0.12运行得很好,但是一旦我开始使用OrientDB 2.1.x,它就非常慢了
日志中似乎没有什么特别之处:
2015-10-16 09:08:58:451 INFO OrientDB auto-config DISK
我想通过OrientGraphplocal(Embedded)访问每个节点的分布式图形(主复制)。这可能吗
我设法按照所述设置了hazlecast和orientserver群集,但文档中没有包含使用plocal时如何与群集交互的示例。当我试图通过plocal访问数据库时,它表示数据库已经打开(我假设是由OrientServer打开的)
是否可以将plocal连接与嵌入式分布式图形一起使用?如果需要,需要哪些步骤?这是可能的,实际上,如果您使用Java开发,这是使用OrientDB的最佳方式之一。
我想找到两个顶点之间的所有路径。我可以使用gremlinpath函数找到它,但它太慢了
等效小精灵:g.v('12:0')。两者。两者。都有('idx',1L)。路径
如何将上述gremlin转换为OrientDB SQL?在OrientDB 2.1中,使用OSQL无法查询“所有路径”
有人建议对OSQL进行增强,以支持“所有路径”功能——请特别参阅--
但显然这是2.2或更高版本的
同时,请注意,shortestPath(_)确实允许指定一个edge类,因此它可以潜在地用于探索其他路径。对于J
我正在为SaaS CRM项目评估OrientDB,我真的很期待使用它。
由于数据安全是一个关键因素,我希望OrientDB开发团队回答我的问题
在2.2版中,是否可以通过面向JS api(和/或sql api、db函数)并完全独立于java api对集群/数据库进行加密?如果是真的,那我该怎么办
加密记录的字段/属性是否在您的计划中?如果是,什么时候发布
如果我没有表达清楚,请原谅我:-)
非常感谢
汉克斯
你是说加密记录吗?OrientDB在以下位置提供加密:
存储级别,但一旦将记录发送到no
是否有计划支持OrientDB 2.2.x的JTA,以便将其集成到功能齐全的事务性JEE应用服务器(如Wildfly)中?查看OPS4J集成模块,它明确避免了JTA不受支持…此链接“”显示了2.2中包含的所有新功能,其中“分布式事务”中没有显示任何内容
我有一个js函数,rids作为参数,请参见屏幕截图上的Execute,它可以工作:
我尝试将此函数用于osql中的子查询结果:
select testFunction(select @rid from User where someField < 365)
当然,它给了我错误解析查询
在这种情况下,如何将函数用作osql的一部分?这应该可以:
select testFunction(@this.@rid) from User where someField < 365
通过这种方
odb版本:2.2.17
此错误是在尝试更新记录中的linkmap条目时随机产生的。一旦出现错误,即使在数据库重新启动后,错误仍会持续
com.orientechnologies.orient.core.exception.ODatabaseException:错误
使用rid保存记录期间#10:139
我有一个大型的时间序列数据库(超过300GB的数据),在过去的两年里,我一直在读和写这个数据库。数据库通过各种版本的OrientDb工作
几天前,当程序试图写入数据库时,我注意到上面的错误。我已
我正在使用OrientDB 2.2.30版,我想搜索所有与白色汽车相关的人员
在所有字符串属性上,顶点(人物和实体)都设置为不区分大小写
问题是单词“white”是用大写和小写写的,匹配只返回那些与我在查询中所写的形式完全匹配的
MATCH {class:Person, as:E0}.outE(){class:Drive, as:R0}.inV(){class:Car, as:E1 , where:( ( CarColor IN ['white'] ) ) } RETURN $paths
使用orientdb 3.0.2,我可以使用console.sh正常运行此脚本:
connect remote:localhost/mydatabase root mypassword;
script sql
begin;
INSERT INTO ....blah blah blah...
commit;
end
但是,在orient 3.0.3中,它无法运行。我得到这个错误:“开始”出乎意料。我将继续使用orientdb 3.0.2
也许3.0.3中有一种新的编写脚本的方法?脚本sql后面缺
大家好,我正在尝试在Orientdb中进行如下查询
按期初余额
我正在使用OrientDB,我有一个简单的模式:
User -> (AccessWith) -> AccessToken -> (HasClient) -> Client
名称是边,其他名称是顶点
我有用户和客户机RID,我想获得相应的AccessToken,我该怎么做?
我目前正在这样做:
select expand($token)
from #1:1
let $token = out('AccessWith')
where $token.o
当OrientDB因有人重启机箱而无法正常关闭时,OrientDB将处于数据恢复失败的状态。对于如何从这种不愉快的关闭中优雅地恢复,有什么建议吗?我们正在寻找在停电期间系统能够自行恢复的方法
通用输出,正如许多人可能看到的那样
<DATE> WARNING {db=TestDb} segment file 'database.ocf' was not closed correctly last time [OSingleFileSegment]
<DATE> WARNIN
我尝试将嵌入的地图添加到记录中:
UPDATE #12:6941 set fieldWithEmbeddedMap ={
"1": {
"@type": "d",
"@version": 0,
"@class": "myClass",
"myFiled": "ok"
},
"2": {
"@type": "d",
"@version": 0,
"@class":
我有以下模式的数据库
我想进行一个查询,找到所有只有“a”而没有“B”作为其后代的顶点c.out“RepositoryEdge”。out“InfoEdge”
例如,只有顶点33:53满足此条件
我应该如何进行查询?
提前感谢试试这个:
select from <class-name> where @rid not in (select in("InfoEdge").in("RepositoryEdge") from #42:0) and @rid in (select in("In
我在Tinkerpop/Gremlin中有以下工作查询,它可以返回在当前步骤之前遍历的元素的有序列表。。如何在OrientDB SQL中创建类似的数据库
g.V().hasLabel('Firma')。has('cui','13904073')。直到(hasLabel('Persoana'))。重复(inE('Actionar')。otherV()).sack().path()
我在OrientDB中使用MATCH进行了类似的遍历,但我找不到一种方法来获得遍历的有序元素列表:
MATCH{cla
我发现在上的讨论非常有用,可以帮助我建立一个带有边缘的严格模式。这是我的密码
val fileLink = schema.createClass(DefinedInS.label, g.getEdgeBaseType())
fileLink.setStrictMode(true)
fileLink.createProperty("out", OType.LINK, fqnSymbol).setNotNull(true)
fileLink.createProperty("in", OType.LI
我试图按照中的建议使用orientjs执行批处理脚本,但出现以下错误:
Unhandled rejection OrientDB.RequestError: Cannot find a command executor for the command request: sql.begin;let $susers = select from susers;return $susers
Storage URL="plocal:/Users/amyth/projects/orient/orie
我正试图连接到感恩的音乐会,但没有成功。
我在用docker
orientdb> connect remote:localhost root root
Disconnecting from the database [null]...OK
Connecting to remote Server instance [remote:localhost] with user 'root'...OK
orientdb {server=remote:localhost/}> list dat
上一页 1 2 3 4 5 6 ...
下一页 最后一页 共 24 页