• 1-ElasticSearch的安装


     一、为什么要用ElasticSearch呢?这是一个什么东西呢?

      提到搜索,可能会想到谷歌?  百度 ?这些都不是我们程序员所说的搜索引擎。  现在最先进、性能比较高的搜索开源库应该是lucene,es就是建立在lucene基础上的。那我们为什么不直接使用lucene呢?因为lucene只是一个类库,使用成本太高,你需要对他的内部有很充分的理解,并且根据java语言去开发,引入其类库,才能开始使用他。而es帮我们简化了很多,es也是利用java语言开发的,可以说es完全简化的使用搜索引擎,我们可以用java,也可以直接用http的RESTful API,直接使用。甚至在完全不需要关心其内部怎么实现,什么原理的情况下,只需要知道其调用api就可以使用起来,帮我们隐藏了很多复杂的知识。

      es跟关系型数据库有很大的不同,传统的数据库存储必须是表格形式,字段对应值,当表格里面的某个字段仍然是一个对象的时候,可能需要另外扩展一张表才能很好的解释清楚。但是es不同,利用json的优势,可以存储任何形式的对象,人们也把它存储的内容称为文档。并且对这些文档的检索效率很高,还可以分析聚合....,总之,是一个很值得使用的工具。

    二、安装es

      ElasticSearch的安装非常简单,但是在过程中可能会遇到一些问题,而且现在百度搜索到的很多都是旧版本,所以如果安装新版本的话,建议按照官方的学习文档去操作,有一些命令或者安装方法还是有细微的区别的。我自己用的是mac,所以下面的安装都是基于mac环境的。

      1、下载最新版本的es,地址:https://www.elastic.co/downloads/elasticsearch。解压文件。

      2、es目录结构:

        config:配置文件

        lib:类库

        bin:可执行文件

        logs:日志

        plugins:es的插件

      3、启动es:

        执行bin下面的 : ./bin/elasticsearch

        如果console中打印的内容没有报错,就是启动成功了。可以通过:http://localhost:9200/?pretty 测试

     三、es安装的问题汇总

      上面的第三步,正常人都会遇到报错信息,自己也摸索了一下才解决,也总结下吧;具体错误大家应该能看懂,就不贴了,只写解决问题方法。

      1、es安装,是基于jdk的,并且jdk的版本必须是jdk8或者以上版本

      2、启动es的时候发现失败,这里root用户不能直接启动es,因为调用es的api,可以直接将命令发送给es执行,所以用root用户执行可能会有一些危险。

      3、问题二换普通用户操作的时候发现报错,提示权限问题,这里应该是普通用户对es目录下的logs文件权限不够,用最简单粗暴的方法,一个命令解决:

        sudo chown -R username logs ,这是把当前用户username对logs目录的操作,赋予跟root用户等同的权限。
      一般上面三个问题解决之后都是能看到es顺利运行的日志的,然后就可以根据官方学习文档跟着欢快的测试es功能了。
     

      

      

  • 相关阅读:
    setTimeout()和setInterval()的区别
    iOS开发小技巧
    iOS应用跳转到App Store评分
    前端小技巧-定位的活学活用之仿淘宝列表
    前端CSS
    用c# 开发html5的尝试,试用bridge.net
    Faster数据库研习,一
    五一劳动节,讲讲NEO智能合约的调试
    NEO GUI 多方签名使用
    NEO智能合约开发(二)再续不可能的任务
  • 原文地址:https://www.cnblogs.com/guoliangxie/p/7092003.html
Copyright © 2020-2023  润新知