elasticsearch
文章平均质量分 81
jaaawaaa
这个作者很懒,什么都没留下…
展开
-
elasticsearch分布式原理
如何查看节点属性?v集群应该至少有两个区域包含数据节点。除了主分片之外,每个 不是可搜索快照索引的索引都应该有每个主分片的至少一个副本。分片分配感知配置为避免将分片的所有副本集中在单个区域内。集群至少有三个候选节点。这些节点中至少有两个不是仅投票节点,均衡分配在至少三个区域中。客户端被配置为将其请求发送到多个区域中的节点,或者被配置为使用负载平衡器来平衡一组适当的节点之间的请求。原创 2023-11-03 17:50:49 · 36 阅读 · 0 评论 -
elasticsearch数据建模
Elasticsearch没有内部对象的概念,因此,ES在存储复杂类型的时候会把对象的复杂层次结果扁平化为一个键值对列表。实体关联查询时间消耗是很昂贵的,关联的越多,消耗就越昂贵。现实世界有很多重要的关联关系:博客帖子有一些评论,银行账户有多次交易记录,客户有多个银行账户,订单有多个订单明细,文件目录有多个文件和子目录。关系部分在文档中定义了一组可能的关系,每个关系是一个父名和一个子名。索引是独立文档的集合体。合适应用场景是:当索引数据包含一对多的关系,并且其中一个实体的数量远远超过另一个的时候。原创 2023-11-02 10:19:34 · 48 阅读 · 0 评论 -
elasticsearch搜索推荐:Suggester
搜索一般都会要求具有“搜索推荐”或者叫“搜索补全”的功能,即在用户输入搜索的过程中,进行自动补全或者纠错。以此来提高搜索文档的匹配精准度,进而提升用户的搜索体验,这就是Suggest。原创 2023-11-02 10:05:03 · 42 阅读 · 0 评论 -
elasticsearch模糊查询和智能搜索推荐
match_phrase_prefix与match_phrase相同,但是它多了一个特性,就是它允许在文本的最后一个词项(term)上的前缀匹配,如果 是一个单词,比如a,它会匹配文档字段所有以a开头的文档,如果是一个短语,比如 "this is ma" ,他会先在倒排索引中做以ma做前缀搜索,然后在匹配到的doc中做match_phrase查询,(网上有的说是先match_phrase,然后再进行前缀搜索, 是不对的)原创 2023-11-01 10:01:20 · 166 阅读 · 0 评论 -
elasticsearch索引的批量操作
bulk api对json的语法有严格的要求,除了delete外,每一个操作都要两个json串(metadata和business data),且每个json串内不能换行,非同一个json串必须换行,否则会报错;bulk操作中,任意一个操作失败,是不会影响其他的操作的,但是在返回结果里,会告诉你异常日志。create/1/ ( 老版本的语法为 PUT /pruduct/原创 2023-11-01 09:59:29 · 203 阅读 · 0 评论 -
elasticsearch脚本查询
早先某些版本正则表达式默认情况下处于禁用模式,因为它绕过了painless的针对长时间运行和占用内存脚本的保护机制。而且有深度对战行为。如果需要开启正则,需要配置:script.painless.regex.enabled: true注意:通常正则的使用范围比较小,应用范围基本限制在数据量比较小和并发量比较小的应用场景下。原创 2023-11-01 09:58:30 · 66 阅读 · 0 评论 -
elasticsearch聚合查询
fixed_interval:ms(毫秒)、s(秒)、 m(分钟)、h(小时)、d(天),注意单位需要带上具体的数值,如2d为两天。用途:用于在某种聚合的计算结果之上再次聚合,如统计不同类型商品的平均价格,就是在按照商品类型桶聚合之后,在其结果之上计算平均价格。上面例子中,avg_price的计算结果是基于query的查询结果的,而all_avg_price的聚合是基于all data的。agg_type:聚合种类,比如是桶聚合(terms)或者是指标聚合(avg、sum、min、max等)原创 2023-11-01 09:57:36 · 52 阅读 · 0 评论 -
elasticsrarch分词器
char_filter:内置或自定义字符过滤器。token filter:内置或自定义token filter。tokenizer:内置或自定义分词器。原创 2023-11-01 09:56:42 · 30 阅读 · 0 评论 -
Query DSL(Domain Specific Language)
概念:相关度评分用于对搜索结果排序,评分越高则认为其结果和搜索的预期值相关度越高,即越符合搜索预期值。:可以组合多个查询条件,bool查询也是采用more_matches_is_better的机制,因此满足must和should子句的文档将会合并起来计算分值。使用query关键字进行检索,倾向于相关度搜索,故需要计算评分。因为filter不计算评分,所以性能更高,可以先根据filter筛出部分数据,再进行其他条件的筛选。排序:相关度评分为搜索结果的排序依据,默认情况下评分越高,则结果越靠前。原创 2023-11-01 09:55:31 · 28 阅读 · 0 评论 -
倒排索引核心算法
全文检索:索引系统通过扫描文章中的每一个词,对其创建索引,指明在文章中出现的次数和位置,当用户查询时,索引系统过就会根据事先建立的索引进行查找,并将查找的结果反馈给用户的检索方式。原创 2023-11-01 09:53:48 · 24 阅读 · 0 评论