推广 热搜: page  音视频  使用  个数  搜索引擎  选择  父亲  百度  企业  可以 

一、分布式 搜索引擎 ElasticSearch 前世今生

   日期:2024-12-21     作者:576ii    caijiyuan   评论:0    移动:http://ww.kub2b.com/mobile/news/10298.html
核心提示:ElasticSearch 是一个基于Lucene构建的开源的、分布式的、RESTful API 式的搜索服务器,是开源搜索平台的新成员,实

ElasticSearch 是一个基于Lucene构建的开源的、分布式的、RESTful API 式的搜索服务器,是开源搜索平台的新成员,实时数据分析的神器,具备高可靠性,用于云计算,能够达到实时搜索且稳定,可靠的快速服务。

 

 

Elasticsearch 近几年发展迅猛,可以从以下几点便可明白elasticsearch所受的关注度是很高的。

 

  1. 2012年11月,Elasticsearch 获得1000万美元的融资
  2. 2013年02月,Elasticsearch获得2400万美元的融资
  3. 2013年初,GitHub摈弃了 Solr,投向了ElasticSearch的怀抱,来做PB级的搜索

 

 

实时分布式搜索和分析引擎

Elasticsearch是一个非常赞的实时分布式搜索和分析引擎。它可以帮助你用前所未有的速度去处理大规模数据。可以说Lucene是当今最先进,最高效的全功能开源搜索引擎框架,但是Lucene只是一个框架,要充分利用它的功能,你需要很高学习成本,因为Lucene确实非常复杂。而Elasticsearch使用Lucene作为内部引擎,在其基础上封装了功能强大的RESTful API,让你不需要了解背后复杂的逻辑,即可完成搜索。

 

elasticsearch 的数据模型

elasticsearch 的数据模型属于模式自由以及数据库是面向文档的,elasticsearch 的模型基于 JSON, 通过JSON,可以非常简单的表示半结构化的数据,大多数编程语言都会优先支持JSON数据的解析。

 

模式映射(Schema Mapping

elasticsearch 是无模式的,你随便往里面扔一个JSON格式的文档,然后ES就可以自动的进行索引。 输入的内容如果是数字或者是时间类型,ES也自动的检测出来,并做相应的处理。

 

索引文档中的字段是可以设置BOOST值来影响打分,另外还可以使用不同的分析器(Analyzer)用来控制怎么分词,比如有些字段是需要进行分词的,但是有些则不一定,如此等等。elasticsearch允许你完全控制这些规则,最终将一个JSON文档映射到搜索引擎里面。并且可以按索引(Index)和按类型(Type)2种级别来进行设置。

例如

 

 
 

 

获取数据(GETting Some Data

每个索引的文档都必须要有一个唯一标识(在类型级别,在很多时候这是非常有用的,比如想去更新或者删除某一个索引文档,或者只是想拿一条索引数据来看一看。

那么只需用告诉elasticsearch,并指定文档的索引、类型、和id就可以拿回实际的索引文档了(该索引文档就是你创建索引的时候的生成的JSON格式的文档)。

 

下面用一个示例告诉大家,在Elasticsearch里是如何创建索引

 

 
 

解释下上面的请求URL地址分为3个部分,它们分别是

 

 

http://localhost:9200(Host) 启动的elasticsearch服务主机地址,监听端口为9200qixing318(Index) 创建索引的名称是qixing318,当然你可以根据自己的需求自行设置索引名称article(Type) 类型2(ID) 对象id号,比如你插入mysql时的主健ID值

 

 

索引创建好了,接下来就可以去获取了

 
 

获取索引是qixing318、类型是article、id为2的文档数据,如果数据存在则返回相应的数据,如果不存在则返回 miss,是不是很简单。

 

本文地址:http://ww.kub2b.com/news/10298.html     企库往 http://ww.kub2b.com/ ,  查看更多

特别提示:本信息由相关用户自行提供,真实性未证实,仅供参考。请谨慎采用,风险自负。

 
 
更多>同类最新文章
0相关评论

文章列表
相关文章
最新动态
推荐图文
最新文章
点击排行
网站首页  |  关于我们  |  联系方式  |  使用协议  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报  |  鄂ICP备2020018471号