2

有没有办法从集群名称中请求集群 ID?

上下文:在我们的上下文中,默认集群允许子集群查看但不更新数据。我想通知用户它正在查看从与其自己不同的集群提供的数据。

例子

Cluster Product
#15:0 // cluster name : product. Product provided from head office
#115:0 //cluster name : productmybranch. Product provided from the branch

分公司从总公司看到产品,但不应该更新它。oRoles解决了这个问题。

我如何知道分支机构用户当前正在查看总部的产品?

我正在寻找类似的请求(该查询不起作用)

select metatdata:cluster from cluster:productmybranch

或者通过 JAVA API 的任何方式

(在 orientdb 2.1.0 上运行)

4

2 回答 2

2

这至少可以帮助您了解,这不是直接可能的。

我可以在 OrientDB 上查询期间访问对象的集群名称吗?

斯科特

于 2015-12-01T03:57:33.660 回答
1

我已经通过 Java API 完成了。对 getClusterIdByName 的调用只是在 OrientDB Java API 使用的 ConcurrentHashMap 中查找类/表名称。

OObjectDatabaseTx objectDB = OObjectDatabasePool.global().setup(1, 4).acquire(dbName, dbUser, dbPassword);
int clusterId = objectDB.getClusterIdByName("ClassName");
objectDB.close();
于 2015-12-02T05:03:46.327 回答