下载APP
关闭
讲堂
前端训练营
极客商城
客户端下载
兑换中心
企业版
渠道合作
推荐作者

提示信息

字幕
    倍速
      清晰度
        音轨

          Elasticsearch核心技术与实战

          视频课程 约1000分钟
           写留言

          精选留言(39)

          • Geek_e94f9e
            2019-06-27
            老师您好。请教个问题。我们的ES集群的一个索引有二十多亿个文档,大概有两三个T,有40个分片,查询非常慢,平均要几秒。有什么办法做优化吗?如果每个分片约存30G,那分片数量又会变多,似乎也会影响查询性能。所以,请教一下老师,面对这种文档数量比较大的索引,如果优化,减少查询时间。谢谢。
            展开
            4
            13
          • 曹伟雄
            2019-06-26
            老师你好,正准备搭建ES集群(3台)做为分布式系统的日志监控平台,能否给一些注意事项或建议? 比如: 服务器的磁盘,内存多少合适? 分片,副本多少合适? 还有其它...谢谢
            展开

            作者回复: 你这个问题,相信听完第三部分后,就会自己给出答案。

            首先,我并不知道你的性能需求,例如多少数据量,多大的写入,是写为主还是查询为主,等等,只能给非常笼统的推荐

            磁盘,推荐 SSD,JVM最大Xmx 不要超过30G。副本分片至少设置为1。 主分片,单个存储不要超过 30 GB(按照这个你推算出分片数,进行设定)

            3
          • Hxd
            2019-07-08
            docker镜像没有下载成功的同学可以直接在本地做demo
            cerebro在GitHub上下载非常慢,我把它下载下来放到网盘了,大家可以解压到本机做测试:
            链接:https://pan.baidu.com/s/1xFXSKUTeuMjUiW-1fJ_HTw 密码:iaxx
            展开
            2
          • xiao
            2019-07-06
            请问在生产环境,一台主机能运行多个节点么?通过增加节点是否提高es效率
            展开

            作者回复: 生产环境,建议一台vm或者一台bm一个ES inatance

            1
            2
          • ┍ 赱私貨灬
            2019-06-29
            老师,我根据之前的课程,把movies数据集导入到了elasticsearch中。
            然后我在kibana中的索引管理中看到moveis的health为yellow,并且通过 http://localhost:9200/_cluster/health查看,status显示的也是yellow,请问需要做什么调整可以把yellow改为green呢?
            展开

            作者回复: 黄的状态 代表你的副本分片没有分配。一个办法是,先设置index的settings,将副本设置成0。一个办法可以通过增加一个节点使得分片能够分配。

            你有观察和思考的好习惯,👍

            6
            2
          • SuperSnow
            2019-07-09
            一个主分片是一个运行的Lucene的实例,是不是也可以理解为是一个运行的elasticsearch实例,毕竟一个节点只有一个主分片。
            展开

            作者回复: 在第二部分会有深入的讲解。

            一个node对应一个es instance
            一个node可以有多个index
            一个index可以有多个shard
            一个shard是一个lucene index(这个index是lucene自己的概念、和es的index不是一回事)

            1
            1
          • Coisini
            2019-07-01
            老师 进入 cerebro 连接elasticsearch失败 会不会是因为http://elasticsearch:9200 中识别不了elasticsearch这个主机名呀
            展开

            作者回复: docker内访问,使用的就是这个内部网络。你访问localhost:9200可以吗?

            3
            1
          • kylexy_0817
            2019-07-16
            老师,为什么我把集群中es7_02这个节点下线了,即docker stop后,cerebro就访问不到es了?
            展开
          • Ryoma
            2019-07-14
            停了 es7_02 节点后,集群的状态还是 green,这是什么问题
            展开

            作者回复: 你需要写入一些数据到index,同时将这个index的replica设置成1。然后你关闭一个节点后,集群会因为无法分配relica变成黄色

            1
          • 王嘉伟
            2019-07-12
            老师你好,我在本地用docker起了多节点的es,往里面导数据的时候会有一半的shard是unassigned
            marketplace.products.punk 4 p STARTED master
            marketplace.products.punk 4 r UNASSIGNED INDEX_CREATED
            marketplace.products.punk 2 p STARTED master
            marketplace.products.punk 2 r UNASSIGNED INDEX_CREATED
            marketplace.products.punk 1 p STARTED slave
            marketplace.products.punk 1 r UNASSIGNED INDEX_CREATED
            marketplace.products.punk 3 p STARTED slave
            marketplace.products.punk 3 r UNASSIGNED INDEX_CREATED
            marketplace.products.punk 0 p STARTED master
            marketplace.products.punk 0 r UNASSIGNED INDEX_CREATED
            marketplace.onlinestore.shippingzones 4 p STARTED slave
            marketplace.onlinestore.shippingzones 4 r UNASSIGNED INDEX_CREATED
            marketplace.onlinestore.shippingzones 2 p STARTED slave
            marketplace.onlinestore.shippingzones 2 r UNASSIGNED INDEX_CREATED
            marketplace.onlinestore.shippingzones 1 p STARTED master
            marketplace.onlinestore.shippingzones 1 r UNASSIGNED INDEX_CREATED
            marketplace.onlinestore.shippingzones 3 p STARTED master
            marketplace.onlinestore.shippingzones 3 r UNASSIGNED INDEX_CREATED
            marketplace.onlinestore.shippingzones 0 p STARTED slave
            marketplace.onlinestore.shippingzones 0 r UNASSIGNED INDEX_CREATED
            这是cat shard的结果
            在网上查了一些资料都没具体解释为啥会发生这种状况
            能麻烦你帮忙解释一下吗
            展开

            作者回复: 会不会是docker的磁盘空间不够导致分片无法分配?尝试着多分配一些磁盘空间试试?

          • wangdexing
            2019-07-12
            简单说下我的操作流程(操作系统windows):
            1.在 cmd控制台中 进入elasticsearch的bin目录下 运行一下命令(必须打开两个cmd窗口 一个窗口运行不了)
            elasticsearch -E node.name=node1 -E cluster.name=geektime -E path.data=node1_data -d
            elasticsearch -E node.name=node2 -E cluster.name=geektime -E path.data=node2_data -d
            2、打开kibana的 配置文件 kibana.yml
            修改elasyicsearch.hosts
            elasticsearch.hosts: ["http://localhost:9200","http://localhost:9201"]
            顺便汉化了一下
            i18n.locale: "zh-CN"
            然后运行 kibana.bat kibana在页面上把电商订单 航空公司等测试数据加进去
            3、修改下logstash.conf
            修改最后部分的输出的elastichosts
            output {
               elasticsearch {
                 hosts => ["http://localhost:9200","http://localhost:9201"]
            还有删除上面的input的sincedb_path路径的文件(如果有的话),不删除数据导不进去
            最后启动 logstash -f logstash.conf


            不知道自己的操作过程是不是有问题 请老师帮忙看一下

            展开

            作者回复: 应该没有问题,数据导入了,就说明正确了

          • 开水
            2019-07-12
            老师,问一下貌似没讲ingest节点,ingest节点的作用主要是什么啊?
            展开

            作者回复: 会在第二部分讲。ingest节点可以运行一些pipeline的脚本,在数据写入之前做一些预处理

          • SoberChina
            2019-07-09
            老师您好,6.x会提示 type不建议用,7.x废除,当然这也是官方某种性能上的考虑,在上一节老师讲了一些基本概念,虽然拿着Index 对应 DB,Type 对应表,Document 对应记录来进行描述,但是type类比于表,7.x随之又将type删除。当然如果真的按照这么来设计的话,会出现一大堆的type。当然还是希望老师能从官方版本的升级 对废弃功能的影响来讲解一些东西,谢谢。
            展开

            作者回复: 1. 单个index下多个types,在7.x 已经是完全不支持了
            2. Tpye在7.x只是deprecated,还没有完全移除,虽然在7.x目前已经出现了一些typeless的API,但是部分API中还是需要指定type的名称

            你在7.x中执行查询,还是可以在返回信息中看到type的meta信息

            1
          • 资宏
            2019-07-09
            老师你好,我用docker搭建了两个es节点,master节点停了后整个集群就挂了。未发生故障转移。是不是每个节点都需要把9200端口映射出来么?
            展开

            作者回复: master节点需要设置多个,如果就一台master节点,如果出现故障,确实整个集群就不可用了

          • linupy
            2019-07-08
            老师,你好,请问认证考试的时候有版本要求吗?
            展开

            作者回复: 认证考试目前还是6.6的版本,不过应该也是会升级的吧

          • start
            2019-07-05
            老师,您好! 咨询一个节点的问题:一组es机器里面设置了 Hot&Warm 的时候,怎么设定以时间为分割值,进行对冷热数据的区分?数据是否会自动的从Hot节点到Warm节点的转移?
            展开

            作者回复: 我们在后续的章节中会有讲解。es有提供index lifecycle management tool

          • 日拱一兵
            2019-07-05
            问题:老师,在Cerebro 中看到6个索引,出了三个sample 和 geektime,还有两个 .special(2) 的(.kibana_task_manager 和 .kibana1) 说明 Cerebro 也监控Kibana的实例了吗? 这是在 kibana镜像中的吗?

            学习尝试:通过 docker start containerID 关闭掉的 ES 实例可以自动添加到集群中
            展开

            作者回复: kibana连接es以后,会把相关的数据写入 .kibana开头的index当中。cerebor则会通过ES的_cat/indices获取所有的索引列表。

          • LONG
            2019-07-04
            老师kibana支持中文了么?

            作者回复: 从6.8开始,界面支持中文

          • 有铭
            2019-07-04
            请问这里为什么会有12个分片?从图上看明明只有8个分片啊
            展开

            作者回复: 哪里看到12个分片?

          • 空知
            2019-07-04
            老师 请教下
            1、主 副分片咋同步数据的?
            2、副分片 可以直接作为节点数据源读取的?如果可以 主从之间数据一致性问题咋解决?
            3、正常情况下 节点数目 是否应该等于 主 副分片数和?
            展开

            作者回复: 请关注第二部分的内容。关于如何设置分片数,在第三部分会有讲解