ElasticSearch

【资料】大型互联网公司架构演进之路资料汇总

♀尐吖头ヾ 提交于 2021-02-20 19:54:08
最近,我的朋友整理了各大互联网公司的架构演进相关介绍,让我们一起看一看各大互联网公司在成长过程中遇到过哪些问题,又是如何解决问题的。希望对你有帮助! 建议收藏保存,也欢迎点赞转发哦! 支付宝和蚂蚁花呗的技术架构及实践 支付宝的高可用与容灾架构演进 余额宝技术架构及演进 淘宝数据魔方技术架构解析 淘宝技术发展历程和架构经验分享 淘宝架构演进背后——零售业务中台架构设计探讨及实践 阿里游戏高可用架构设计实践 阿里B2B技术架构演进详解 阿里如何实现秒级百万TPS?搜索离线大数据平台架构解读 首次公开!菜鸟弹性调度系统的架构设计 秒杀系统架构分析与实战 王者荣耀游戏服务器架构演进(完整版) 京东峰值系统设计 京东咚咚架构演进 京东B2B业务架构演变 京东虚拟业务多维订单系统架构设计 京东商品单品页统一服务系统架构未公开的细节 数据蜂巢架构演进之路 京东到家库存系统架构设计 一张图看完京东基础架构演进之路 大促系统全流量压测及稳定性保证——京东交易架构分享 京东618实践:一元抢宝系统的数据库架构优化 京东上千页面搭建基石——CMS前后端分离演进史 京东物流系统架构演进中的最佳实践 京东话费充值系统架构演进实践 京东到家订单中心Elasticsearch 演进历程 新浪微博平台架构 微博深度学习平台架构和实践 新浪微博用户兴趣建模系统架构 新浪微博推荐系统架构的演进

Elasticsearch: 权威指南 » 深入搜索 » 近似匹配 » 多值字段

天涯浪子 提交于 2021-02-20 05:41:02
多值字段 编辑 对多值字段使用短语匹配时会发生奇怪的事。 想象一下你索引这个文档: PUT /my_index/groups/1 { "names": [ "John Abraham", "Lincoln Smith"] } 拷贝为 CURL 在 SENSE 中查看 然后运行一个对 Abraham Lincoln 的短语查询: GET /my_index/groups/_search { "query": { "match_phrase": { "names": "Abraham Lincoln" } } } 拷贝为 CURL 在 SENSE 中查看 令人惊讶的是, 即使 Abraham 和 Lincoln 在 names 数组里属于两个不同的人名, 我们的文档也匹配了查询。 这一切的原因在Elasticsearch数组的索引方式。 在分析 John Abraham 的时候, 产生了如下信息: Position 1: john Position 2: abraham 然后在分析 Lincoln Smith 的时候, 产生了: Position 3: lincoln Position 4: smith 换句话说, Elasticsearch对以上数组分析生成了与分析单个字符串 John Abraham Lincoln Smith 一样几乎完全相同的语汇单元。 我们的查询示例寻找相邻的

Can variables be used in elasticsearch index templates?

大憨熊 提交于 2021-02-20 05:15:01
问题 I have a variety of elasticsearch indices which are created daily by logstash with the format: "logstash-%{cluster_type}-%{cluster_name}-jobaccounting-v2-%{+YYYY.MM.dd}" I would like to create an alias in elasticsearch which drops the version number from the index name. I am planning to point my kibana instance at the aliased index rather than the versioned index so that I can change the version numbers without impacting kibana. index: "logstash-%{cluster_type}-%{cluster_name}-jobaccounting

Can variables be used in elasticsearch index templates?

。_饼干妹妹 提交于 2021-02-20 05:11:32
问题 I have a variety of elasticsearch indices which are created daily by logstash with the format: "logstash-%{cluster_type}-%{cluster_name}-jobaccounting-v2-%{+YYYY.MM.dd}" I would like to create an alias in elasticsearch which drops the version number from the index name. I am planning to point my kibana instance at the aliased index rather than the versioned index so that I can change the version numbers without impacting kibana. index: "logstash-%{cluster_type}-%{cluster_name}-jobaccounting

Can variables be used in elasticsearch index templates?

旧街凉风 提交于 2021-02-20 05:08:36
问题 I have a variety of elasticsearch indices which are created daily by logstash with the format: "logstash-%{cluster_type}-%{cluster_name}-jobaccounting-v2-%{+YYYY.MM.dd}" I would like to create an alias in elasticsearch which drops the version number from the index name. I am planning to point my kibana instance at the aliased index rather than the versioned index so that I can change the version numbers without impacting kibana. index: "logstash-%{cluster_type}-%{cluster_name}-jobaccounting

Can variables be used in elasticsearch index templates?

假如想象 提交于 2021-02-20 05:05:53
问题 I have a variety of elasticsearch indices which are created daily by logstash with the format: "logstash-%{cluster_type}-%{cluster_name}-jobaccounting-v2-%{+YYYY.MM.dd}" I would like to create an alias in elasticsearch which drops the version number from the index name. I am planning to point my kibana instance at the aliased index rather than the versioned index so that I can change the version numbers without impacting kibana. index: "logstash-%{cluster_type}-%{cluster_name}-jobaccounting

Elasticsearch sort by custom created_at field

与世无争的帅哥 提交于 2021-02-20 02:45:28
问题 I've got a created_at field in my Elastic Search database and I'm trying to pull out data and sort it by that field. The field was stored with a mapping property with the date format, with the fielddata key set to true , but I still get the error: Text fields are not optimised for operations that require per-document field data like aggregations and sorting, so these operations are disabled by default. Please use a keyword field instead. Alternatively, set fielddata=true on [created_at] in

为什么 ElasticSearch 比 MySQL 更适合复杂条件搜索

时光总嘲笑我的痴心妄想 提交于 2021-02-19 22:49:33
点击上方" 程序员历小冰 ",选择“置顶或者星标” 你的关注意义重大! 熟悉 MySQL 的同学一定都知道,MySQL 对于复杂条件查询的支持并不好。MySQL 最多使用一个条件涉及的索引来过滤,然后剩余的条件只能在遍历行过程中进行内存过滤,对这个过程不了解的同学可以先行阅读一下 《MySQL复杂where条件分析》 。 上述这种处理复杂条件查询的方式因为只能通过一个索引进行过滤,所以需要进行大量的 I/O 操作来读取行数据,并消耗 CPU 进行内存过滤,导致查询性能的下降。 而 ElasticSearch 因其特性,十分适合进行复杂条件查询,是业界主流的复杂条件查询场景解决方案,广泛应用于订单和日志查询等场景。 下面我们就一起来看一下,为什么 ElasticSearch 适合进行复杂条件查询。 ElasticSearch 简介 Elasticsearch 是开源的实时分布式搜索分析引擎,内部使用 Lucene 做索引与搜索。它提供"准实时搜索"能力,并且能动态集群规模,弹性扩容。 Elasticsearch 使用 Lucene 作为其全文搜索引擎,用于处理纯文本的数据,但 Lucene 只是一个库,提供建立索引、执行搜索等接口,但不包含分布式服务,这些正是 Elasticsearch 做的。 下面,我们来介绍一下 ElasticSearch 的相关概念。为了便于初学者理解

留意Elasticsearch 7.x 可能无法选主的问题

五迷三道 提交于 2021-02-19 22:47:45
Elasticsearch 7.x 选举算法改为基于 Raft 的实现,与标准 Raft 相比,最大的区别是允许选民可以投多票,当产生多个主节点的时候,让最后一个当选,这样,可以更快地选出主节点。但是这种机制同样也有缺点,就是会使竞选过程比较激烈。特别是当集群节点数量比较多的时候,候选人反复竞争可能会持续很长时间。 当遇到这种情况时,节点会有如下的日志: master not discovered or elected yet, an election requires at least xx nodes with ids from [] which is a quorum; discovery will continue using [] from hosts providers and [] from last -known cluster state; node term 14 , last -accepted version 71 in term 5 以及: failed to join {...} CoordinationStateRejectedException : incoming term 4996 does not match current term 但是这些报错和问题根因没有啥关系,探测到的节点已经能够达到 quorum,然后继续discovery

Combine results of multiple aggregations

ε祈祈猫儿з 提交于 2021-02-19 07:56:09
问题 I have movies index in which each document has this structure : Document : { "color": "Color", "director_name": "Sam Raimi", "actor_2_name": "James Franco", "movie_title": "Spider-Man 2", "actor_3_name" : "Brad Pitt", "actor_1_name": "J.K. Simmons" } I need to do calculate number of movies corresponding to each actor (actor can be in both actor_1_name or actor_2_name or actor_3_name field) Mapping of these 3 fields is : Mapping "mappings": { "properties": { "actor_1_name": { "type": "text",