- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在设计一个图,并看到一些示例,其中多个顶点将具有相似的标签,例如“用户”等。当知道其唯一值时,可以将其分配给顶点的 id,并将其查找为:
g.V('person').has('id','unique-value'). ...
或者将该唯一值分配为标签,并以这种方式引用它。
g.V('unique-value'). ...
是否有特殊原因不使用唯一值(本质上是 id)作为标签,例如性能?对此最好的策略是什么?
最佳答案
您的问题和 Gremlin 示例不太一致。我认为你的意思是比较:
g.V().hasLabel('person').has(T.id,'unique-value')
和
g.V('unique-value')
请注意我在第一个 Gremlin 声明中的更正。 V()
不接受顶点标签作为参数 - 它只能接受顶点 id
或 Vertex
对象。此外,实际的顶点标识符必须由 T.id
引用,而不是由 'id'
引用,后者是对名为“id”的用户定义属性的引用。 T.id
是从 g.V().id()
返回的内容。我们经常将 T.id
简称为 id
,今后我也会这样做。
理清这一点后,如果您手边有 id
,则无需执行 hasLabel('person')
,因此上面的两个示例返回相同的结果值,我认为大多数图形数据库可能会优化标签过滤器,只使用 id 进行查找,所以我不认为您会看到性能上的差异,但为了可读性我坚持只使用 V('unique-value')
。
您的问题特别询问了使用唯一标签作为识别顶点的方式,所以我也将解决这个问题。标签并不意味着图形元素的唯一标识。它旨在对元素组进行分类。除了该惯例之外,我认为还有许多技术原因不这样做。某些图表对您可以拥有的标签数量有限制,因此这可能会成为问题,具体取决于您的图表提供商。至少,这样做会降低代码的可移植性。我认为这会影响性能,因为 label
查找不会像 id
查找那么快(特别是当您放大图形的大小时)。
关于Gremlin 顶点 id 与标签 : advantages?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53687516/
在 Advantage 中进行备份时,我们只想备份一些包含一些结构数据的表。这些表可能会在数据库更新中更改,但大多数表不会。其他表包含大量的 blob 数据:可能有 10 多场演出。 如果数据库更新出
我在 Advantage Database SQL 中遇到了一个简单的问题。 我有 M/D/YYYY 格式的日期,想将它们转换为 MM/DD/YYYY。通常在 SQL Server 中我只会使用 co
从这里安装 V10 64 位驱动程序后 http://devzone.advantagedatabase.com/dz/content.aspx?key=20&Release=15在 64 位 Win
create table WEBLOG ( ORDERNO CHAR(9) NOT NULL, USERNAME CHAR(50) NOT NULL, ACTION CHAR(255) NOT NUL
我刚刚在安装 xcode 5 后第一次打开了一个 Storyboard。(通常我会打开一个带有 Storyboard的选项卡。显然 xcode 对此有所不同。现在我打开了它。)然后我被问到是否要转换
在 FoxPro 应用程序运行时使用 Advantage Local Server .Net 提供程序更新 DBF 文件是否安全,该应用程序也可能正在访问 DBF 文件?即 Advantage 是否负
如何使用 Advantage ODBC 或 OLEDB 创建从 Sql Server 到 .dbf 表的链接服务器? 最佳答案 您可以使用 OLE DB 或 ODBC 驱动程序。我通常使用 OLE D
如何使用 Advantage ODBC 或 OLEDB 创建从 Sql Server 到 .dbf 表的链接服务器? 最佳答案 您可以使用 OLE DB 或 ODBC 驱动程序。我通常使用 OLE D
我正在创建一个在 Advantage 数据库服务器上运行的 Web 应用程序,这不是我个人选择的武器,但这是公司使用的。 我有几个最终用户需要能够查看的大列表,但是我似乎无法找到一种在 SQL 中翻阅
所以我可以调用sp_ModifyDatabase( 'LOGINS_DISABLED','False' )修改LOGINS_DISABLED的状态,但我找不到您如何检查设置的当前状态。有谁知道那在哪里
将主键添加到现有生产数据库的语法是什么?我继承了一个没有为任何东西设置主键的数据库,我需要在每个表上有一个主键才能将我的 ORM 用于应用程序。 我尝试谷歌搜索无济于事,Advantage 的文档并不
我可以很容易地找到我正在使用的客户端版本,但我如何才能找到服务器版本? 有一个AdsMgGetInstallInfo ace 函数和相应的存储过程sp_mgGetInstallInfo . 这些是否需
我无法在我的程序的多个实例中打开某个表。发生的事情是我试图让用户打开并用旧表(不包含在数据字典中)替换当前表(数据字典的一部分 - FileForm.ImagesTable)。它适用于程序的一个实例,
我有一个与优势数据库配合使用的 Windows 服务,偶尔会进行一些 http 调用。在极少数情况下,这些调用可能会很长。调整我的数据库连接超时。我没有使用数据模块或任何东西。只需手动创建连接即可。
我的 Advantage 数据库中有类似的内容:- drop table #test; create table #test (x cichar(50)); insert into #test (x)
我保留了一个 Advantage TAdsConnection 对象池,并根据请求分发它们。有时我会收到一个失败信息,导致 6610 错误,我假设是因为它处于空闲状态并且连接被重置。我可以运行任何旧查
关闭。这个问题需要多问focused 。目前不接受答案。 想要改进此问题吗?更新问题,使其仅关注一个问题 editing this post . 已关闭 6 年前。 Improve this ques
我希望使用 DATEPART 查询 Sybase Advantage 数据库服务器。我收到一条错误消息,指出以下“未找到标量函数:datepart”。是否有另一个具有类似功能的函数?我正在寻找约会的季
我正在尝试使用 Advantage .Net 数据提供程序从 Advantage 数据库中读取数据。当我执行我的应用程序时,出现以下错误: "Error 5175 the index was crea
首先我想说,我是Java编程和Sybase的新手。 我在连接 Sybase 数据库时遇到问题。 建立连接我已经完成: 安装advantage db的jdbc驱动; 将名为 CLASSPATH 的环境变
我是一名优秀的程序员,十分优秀!