• 王建坤
    2023-05-22 来自山东
    es是先获取到shardid集合然后再去请求这些shard来获取数据(https://jiankunking.com/elasticsearch-search-source-code-analysis.html); 文中说的,请求所有data节点是指到shardid集合获取数据?

    作者回复: 你好,建坤,这个页面是白页。另外这个如何工作的方式是取决于配置的不是固定的。具体有几种方式,这里单独拿出他做例子只是为了破冰,打破固定思维

    
    
  • Spoon
    2023-04-02 来自浙江
    文章:Elasticsearch 每次查询都是请求所有索引所在的 Data 节点,查询请求时协调节点会在相同数据分片多个副本中,随机选出一个节点发送查询请求,从而实现负载均衡 问题: 1.请求所有索引所在的 Data 节点,这个Data节点是什么?和普通数据节点有什么区别? 2.如果所有索引放在一个Data节点,是不是会有容量限制? 3.如果将索引分片,放在多个节点,是不是又陷入了数据定位的问题?

    作者回复: 你好,spoon,这个请求偷懒的方式是请求所有data节点,如果没有则不返回,精致一点的方式是获取到data分布在哪几组服务器上。1、data节点是存储节点,同时也可以设置拥有计算查询服务能力。2、会有容量限制同时还会存在性能不能扩展问题。3、数据定位必然存在,文中提及会请求所有data节点就是因为这个问题。

    
    
  • 徐曙辉
    2022-12-16 来自内蒙古
    来公司做的第一件事就是把搜索从mysql迁移到Elasticsearch,然后用CQRS架构解析binlog写入,Elasticsearch,用Elasticsearch做app内的内容搜索功能,我猜测极客时间的搜索功能也是用的Elasticsearch。 在做搜索相关的业务首选的便是Elasticsearch,所以如果我来实现Elasticsearch最先解决的功能便是分词和倒排索引设计,至于链路追踪和日志采集相关的组件,从业务角度我觉得地位没有搜索重要,优先级没有那么高。

    作者回复: 你好,感谢你的分享!

    
    
  • John
    2022-11-20 来自北京
    老师能否列一下相关的扩展阅读资料,比如词频统计,search_type 详解之类的,不胜感激

    作者回复: 你好,John,在文章中有提及,我认为有帮助的可以先看:分布式共识算法、倒排索引、词权重、匹配权重、分词、异步同步、数据一致性检测,看完这些后,如果还有兴趣再深入挖掘一下其他方面

    
    