Elasticsearch & X-Pack:如何从嵌套文档中获取顶点/连接

     2023-03-29     151

关键词:

【中文标题】Elasticsearch & X-Pack:如何从嵌套文档中获取顶点/连接【英文标题】:Elasticsearch & X-Pack: how to get vertices/connections from nested documents 【发布时间】:2017-06-08 11:37:24 【问题描述】:

我刚开始使用 X-Pack for Elasticsearch 并希望连接来自嵌套文档类型的顶点。然而,寻找这方面的文档并没有让我有任何收获。

我拥有的是一个文档索引,其中包含人名/ID 作为嵌套文档(一个文档可以有很多人,一个人可以与多个文档相关)。期望的结果是得到一个人之间有联系的图数据。

有没有人有线索或者可以告诉我这是否可能?

我的部分映射:

mappings: 
    legend: 
        properties: 
            persons: 
                type: 'nested',
                properties: 
                    id: 
                        type: 'string',
                        index: 'not_analyzed'
                    ,
                    name: 
                        type: 'string',
                        index: 'not_analyzed'
                    
                
            
        
    

还有我的 Graph API 查询,这当然不起作用,因为我不知道如何处理嵌套的“persons”字段的“name”字段。

POST sagenkarta_v3/_xpack/_graph/_explore

  "controls": 
    "use_significance": true,
    "sample_size": 20000,
    "timeout": 2000
  ,
  "vertices": [
    
      "field": "persons.name"
    
  ],
  "connections": 
    "vertices": [
      
        "field": "persons.name"
      
    ]
  

提前致谢!

【问题讨论】:

【参考方案1】:

这里讨论了以下问题: https://discuss.elastic.co/t/elasticsearch-x-pack-how-to-get-vertices-connections-from-nested-documents/88709

引自 Mark_Harwood - Elastic 团队成员:

不幸的是 Graph 不支持嵌套文档,但您可以使用 copy_to 在您的映射中将人员数据放在索引字段中 包含根文档。

我可以看到你有一个经典的问题 “computers-want-IDs-but-people-want-labels”并拥有这两个 价值观。在 Graph 中(也可以说是 Kibana 的其余部分)我建议你 为了唯一性,使用结合了 ID 和名称的标记 人类可读性。

copy_to 和 IDs-and-labels 提示是建模的一部分 今年我的弹性演讲中的建议: https://www.elastic.co/elasticon/conf/2017/sf/getting-your-data-graph-ready 3

【讨论】:

elasticsearch——简介&安装

1.Elasticsearch是什么?TheElasticStack,包括Elasticsearch、Kibana、Beats和Logstash(也称为ELKStack)。能够安全可靠地获取任何来源、任何格式的数据,然后实时地对数据进行搜索、分析和可视化。Elaticsearch,简称为ES,... 查看详情

elasticsearch在javaapi中的操作(入门)(代码片段)

目录2.2.5JavaAPI操作(1)环境准备&创建ES客户端(2)ES索引创建(3)ES索引&查询&删除(4)文档新增&修改新增修改数据(5)文档的批量新增&批量删除批量新增批量删除(6)高级查询&全量查询全量查询(7)高级查询&分页查询&... 查看详情

elasticsearch-文档精确查询(term)(代码片段)

Elasticsearch-文档精确查询(term)match&termmatch:匹配查询term:精准查询term&match+text&keywordterm&match区别term:精确查询,对查询的值不分词,直接进倒排索引去匹配。match:模糊查询,对查询的值分词,对分词的结果一一进... 查看详情

ElasticSearch & Tire:使用映射和 to_indexed_json

】ElasticSearch&Tire:使用映射和to_indexed_json【英文标题】:ElasticSearch&Tire:UsingMappingandto_indexed_json【发布时间】:2012-07-2504:52:55【问题描述】:在阅读Tire文档时,我的印象是您应该使用mapping或to_indexed_json方法,因为(我的理... 查看详情

Elasticsearch & X-Pack:如何从嵌套文档中获取顶点/连接

】Elasticsearch&X-Pack:如何从嵌套文档中获取顶点/连接【英文标题】:Elasticsearch&X-Pack:howtogetvertices/connectionsfromnesteddocuments【发布时间】:2017-06-0811:37:24【问题描述】:我刚开始使用X-PackforElasticsearch并希望连接来自嵌套文档... 查看详情

elasticsearch系列一:elasticsearch(es简介安装&配置集成ikanalyzer)

一、ES简介1.ES是什么?Elasticsearch是一个开源的搜索引擎,建立在全文搜索引擎库ApacheLucene基础之上用Java编写的,它的内部使用Lucene做索引与搜索,但是它的目的是使全文检索变得简单,通过隐藏Lucene的复杂性... 查看详情

elasticsearch集群安装(代码片段)

...:1核2gjdk1.8+  1.下载wgethttps://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.2.2.tar.gz  2.解压tar-zxvfelasticsearch-6.2.2.tar.gz  3.设置权限chmod-R777elasticsearch-6.2.2  4.添加非root用户adduserwulei&&passwdwulei参考https://blog.csdn.net/u0... 查看详情

elasticstack系列之十六&elasticsearch5.xindex/create和update源码分析

开篇  在ElasticSearch系列十四中提到的问题即ElasticStack系列之十四&ElasticSearch5.xbulkupdate中重复id性能骤降,继续这个问题再继续查看更加多的源代码,看看底层在执行index、create和update操作到底有什么不同,有什么可以使得我... 查看详情

elasticsearch学习之相关度评分tf&idf

...个索引中的文本,与搜索文本,他们之间的关联匹配程度Elasticsearch使用的是termfrequency/inversedocumentfrequency算法,简称为TF/IDF算法Termfrequency(TF):搜索文本中的各个词条在field文本中出现了多少次,出现次数越多,就越相关Inversedocu... 查看详情

elasticsearch-03-简单理解elasticsearch中的概念,以及shard&replica的解释(代码片段)

elasticsearch的核心概念与简单举例1、NearRealtime(NRT):近实时,两个意思,从写入数据到数据可以被搜索到有一个小延迟(大概1秒);基于es执行搜索和分析可以达到秒级;2、Cluster:集群包... 查看详情

elasticsearch--集群&吞吐量

...量过滤器缓存过滤器缓存负责存查询中使用到的过滤器。Elasticsearch包含两种类型的过滤器缓存:节点过滤去缓存(默认)和索引过滤器缓存。节点过滤器缓存被分配在节点上的所有索引共享,可以配置成使用特定大小的内存,... 查看详情

elasticsearch聚合分析的原理&精准度的问题

参考技术A通过调大shard_size的大小,使得doc_count_error_upper_bound的值降低,从而提升准确度,其原理是:增加整体计算量,提高精准度的同时会降低响应时间; 查看详情

通过elasticsearch使用的你的数据

Elasticsearch系列导航elasticsearch与elasticsearch-head的安装ElasticSearchIndexAPI&&Mapping在ElasticSearch中使用IK中文分词插件ElasticSearch基本概念Nest客户端的基本使用方法持续更新中  正文假设你已经有一份数据保存在Elasticsearch里... 查看详情

elasticsearch 模糊匹配 max_expansions & min_similarity

】elasticsearch模糊匹配max_expansions&min_similarity【英文标题】:elasticsearchfuzzymatchingmax_expansions&min_similarity【发布时间】:2011-11-0104:39:04【问题描述】:我在我的项目中使用模糊匹配主要是为了查找拼写错误和同名的不同拼写。... 查看详情

elasticsearch——核心概念&系统架构&集群中常见问题&路由计算&分片控制

1.ES核心概念1.1索引(index)一个索引就是一个拥有几分相似特征的文档的集合。比如说,你可以有一个客户数据的索引,另一个产品目录的索引,还有一个订单数据的索引。一个索引由一个名字来标识(必... 查看详情

elasticsearch——核心概念&系统架构&集群中常见问题&路由计算&分片控制

1.ES核心概念1.1索引(index)一个索引就是一个拥有几分相似特征的文档的集合。比如说,你可以有一个客户数据的索引,另一个产品目录的索引,还有一个订单数据的索引。一个索引由一个名字来标识(必... 查看详情

elasticsearch

参考技术A首先准备环境ElasticSearch:https://mirrors.huaweicloud.com/elasticsearch/?C=N&O=Dlogstash:https://mirrors.huaweicloud.com/logstash/?C=N&O=Dkibana:https://mirrors.huaweicloud.com/kibana/?C=N&O=Dik:https://github.com/medcl/elasticsearch-analysis-ik/tree/v7.8.0ElasticSearc... 查看详情

elasticsearch&logstash&kibana学习历程logstash使用场景和安装部署(代码片段)

Logstash基本介绍和使用场景自我认为:logstash就是日志的采集收集,日志的搬运工,实时去采集日志。读取不同的数据源,并进行过滤,开发者自定义规范输出到目的地。日志的来源很多,如系统日志,应用日志等等(同类软件... 查看详情