欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

ElasticSearch

程序员文章站 2022-03-04 23:28:40
...

什么是ElasticSearch

Elaticsearch,简称为es, es是一个开源的高扩展的分布式全文检索引擎,它可以近乎实时的存储、检索数据;本 身扩展性很好,可以扩展到上百台服务器,处理PB级别的数据。es也使用Java开发并使用Lucene作为其核心来实 现所有索引和搜索的功能,但是它的目的是通过简单的RESTful API来隐藏Lucene的复杂性,从而让全文搜索变得 简单。

ElasticSearch对比Solr

  • Solr 利用 Zookeeper 进行分布式管理,而 Elasticsearch 自身带有分布式协调管理功能(集群);
  • Solr 支持更多格式的数据,而 Elasticsearch 仅支持json文件格式;
  • Solr 官方提供的功能更多,而 Elasticsearch 本身更注重于核心功能,高级功能多有第三方插件提供;
  • Solr 在传统的搜索应用中表现好于 Elasticsearch,但在处理实时搜索应用时效率明显低于 Elasticsearch。

nodeJs

es的head插件(es图形化界面的插件),在其文件夹内打开dos窗口,grunt server

是用nodejs写的------注意nodejs 也是js 
js代码要想执行  必须 js引擎  js虚拟机  在chrome浏览器 内置js虚拟机  叫v8引擎 号称世界上 性能最好的js虚拟机

有人做将 v8 js虚拟机 单独拎出来了 并且为其一起发布了 一起其他 js的api 


那么整体上来讲 我们可以是用nodejs  写js代码 并且在任何一个地上 只要存在nodejs 环境在

es的核心概念

es中的概念 index(索引库)----------->type(类型)-------->field(字段)-------->document(文档)

传统数据库概念 DataBase(数据库)-------->table(表)--------->column(字段)------->记录或一条数据

映射的概念:

	创建一个type(类型) 里面涉及到field(字段)
			字段里面描述信息:
				type:类型 字符串 int long date
				store:true|false(是否存储)
				index:是否索引  是否分词(analyzed,not_analyzed,索引,分词)
				analyzer:分词器 

创建索引index和映射mapping

请求url:PUT http://localhost:9200/blog1
请求体:

{ "mappings": { 
	"article": { 
		"properties": { 
		"id": { "type": "long", "store": true, "index":"not_analyzed" },
		"title": { "type": "text", "store": true, "index":"analyzed", "analyzer":"standard" },
		"content": { "type": "text", "store": true, "index":"analyzed", "analyzer":"standard" } 
		}
		 } 
		 }
		  }

删除

请求url:DELETE http://localhost:9200/blog1

相关标签: 全文检索