通过rest api添加检索数据,阅读官方文档可以发现,elasticsearch支持动态映射,但是其中有不少问题,且听慢慢详解。
本文主要讲述三点内容:
1 Elasticsearch常用的rest api
2 Elasticsearch使用bulk命令添加索引数据
ES REST API
elasticsearch支持通过http请求响应服务,因此通过curl命令,可以发送http请求,并得到json返回内容。
常用的rest请求包括:
检查ES集群状态:
curl localhost:9200/_cat/health?v
检查ES节点状态:
curl localhost:9200/_cat/nodes?v
查询所有的索引:
curl localhost:9200/_cat/indices?v
创建索引(这种方式在4.1版本下会出现问题,下一小节再说):
curl -XPUT localhost:9200/索引名字/类型/id -d {"name":"xingoo"}
删除索引:
curl -XDELETE localhost:9200/索引名字
查询索引:
curl -XGET localhost:9200/索引名字/类型名字/id
ES 使用bulk 添加数据
动态映射无法添加数据,不要担心!可以使用bulk命令,添加json文件内的数据。
1 定义json数据文件:
{"index":{"_index":"aaa123","_id":1}} {"name":"xingoo","age":25} {"index":{"_index":"aaa123","_id":2}} {"name":"test111","age":31} {"index":{"_index":"aaa123","_id":3}} {"name":"test222","age":42} {"index":{"_index":"aaa123","_id":4}} {"name":"test333","age":13}
注意的是,json文件名称随意指定,第一行定义了索引和一些常用字段:
_index定义了索引的名称,如果没有指定需要在curl命令中添加索引名称字段
_type定义了索引的类型,如果没有指定需要在curl命令中添加索引类型字段
_id定义了该行数据的id,如果没有指定,会随机生成一串数字。
2 执行命令
进入到json文件所在的目录,执行命令
curl localhost:9200/索引名称/索引类型/_bulk?pretty --data-binary @data.json
注意的是:
如果json文件中定义了_index和_type,那么这里可以不写变成(即便写了也会按照json文件中的生成)
curl localhost:9200/_bulk?pretty --data-binary @data.json
类似的,如果按照上面我们定义了_index却没有定义_type,那么索引会是aaa123,类型为我们curl命令中指定的类型。
可以看到上面虽然指定了索引名称为bbb123,类型为ccc123,但是json文件中指定了索引名称为aaa123。
最后的索引文件中,索引名称为aaa123,类型为ccc123。
查询索引状态,可以发现正常了。
http://www.cnblogs.com/xing901022/p/4703323.html
http://ju.outofmemory.cn/entry/50617
相关推荐
Elasticsearch也使用Java开发并使用Lucene作为其核心来实现所有索引和搜索的功能,但是它的目的是通过简单的RESTful API来隐藏Lucene的复杂性,从而让全文搜索变得简单。 ElasticSearch提供javaAPI,使用者可以...
使用Express的REST API-允许用户与数据库进行交互以创建新课程,检索信息以及更新现有课程。 使用的技术和图书馆: Node.js 表示 续集 SQLite的 开发人员注意事项: 该Web应用程序使用Sequelize构建,允许用户在...
可扩展的开源弹性搜索解决方案》基于ElasticSearch 的0.2 版本,覆盖了ElasticSearch 各种功能和命令的应用,全面、详细地介绍了开源、分布式、RESTful,具有全文检索功能的搜索引擎ElasticSearch。《ElasticSearch...
ElasticSearch的底层是开源库Lucene,但是没办法直接用Lucene,必须自己写代码去调用它的接口,Elastic是Lucene的封装,提供了REST API的操作接口,开箱即用。天然的跨平台。 全文检索是我们在实际项目开发中最常见...
ELK是Elasticsearch、Logstash、Kibana的简称,这三者是核心套件,但并非全部。...它利用Elasticsearch的REST接口来检索数据,不仅允许用户创建他们自己的数据的定制仪表板视图,还允许他们以特殊的方式查询和过滤数据
Elasticsearch 因其简单的 REST API、分布式特性、高性能、可扩展而闻名。 Elasticsearch 是 Elastic 产品栈的核心,Elastic 产品栈是个开源工具集合,包括ElasticSearch、Logstash和Kibana,Beats等,用于数据接收...
ELK是Elasticsearch、Logstash、Kibana的简称,这三者是核心套件,但并非全部...它利用Elasticsearch的REST接口来检索数据,不仅允许用户创建他们自己的数据的定制仪表板视图,还允许他们以特殊的方式查询和过滤数据。
讲座:Elasticsearch 完整指南 重要更新:由于版本 7 类型将被删除,默认类型应替换为_doc类型 第 1 部分 - 入门 第 2 课 - Elasticsearch 介绍 Elasticsearch 是一个分析和全文搜索引擎。 它在应用程序中启用搜索...
这个基于的工具使用 API使用REST API将要素类的内容批量加载到Elasticsearch中。 该工具将检索指定要素类中字段的描述,并在开始批量导入之前创建索引。 点要素的几何可以存储为或 。 折线或多边形要素的几何存储...
该项目包含两个服务,这些服务集成了Kafka以将restapi服务和弹性服务分离 首先是生产者,即RESTful API服务,它可以处理来自url的请求,并在Redis中保留数据 消息队列Kafka可以接收来自生产者的消息,而消费者可以...
LESA履带式一个Web搜寻器,在Docker容器化应用程序架构之上使用Elasticsearch,Kibana,Scrapy框架和Splash javascript呈现服务,该架构旨在从LESA票证中检索数据。入门由于当前的LESA不提供任何类型的REST API来从...
- Elasticsearch 日志文件的持久化存储和检索 - MongoDB 只是存储一些 Graylog 的配置 ## 安装 > 可以是裸机安装,也可以是docker安装,这里用docker安装 环境要求: - centos7.4 - cpu2个 内存2G 参考: ...
社会音乐搜索 简要介绍 尽管文本信息检索在当今世界已经非常成熟,但是媒体文件仍然很难被注释和检索。 问题在于媒体文件缺少具体的... Spring-Boot应用程序,Spring-REST API 非SQL数据库 MongoDB,Spring-data-Mongo
mas4h:大量SSH还原保镖是可扩展的服务器基础... 主机公开REST API以检索集群状态最少的设置主实例和至少一个从实例可以在同一主机上运行从机和主机。 也可以在同一主机上运行多个从站主控优先在主端,您将必须实现如
ACHE支持许多功能,例如: 定期抓取网站的固定列表通过自动链接优先级发现和搜寻新的相关网站配置不同类型的页面分类器(机器学习,正则表达式等) 不断重新搜寻站点地图以发现新页面使用Elasticsearch索引已爬网...
所有元数据实体均可通过REST API检索,通过Kafka公开为流事件,并通过Elasticsearch进行索引以支持广泛的搜索和发现功能。 它是由科罗拉多大学的一组研究人员赠款开发的(以下提供更多法律信息)。 文献资料 有关...
哪些必须放在项目“ ./API”的根目录中2)和elasticsearch数据库。 您必须自己将其插入elasticsearch。 请把您想要的任何东西寄给我。 如果要python代码将数据插入弹性搜索,我可以通过邮件提供。 只要在邮件中包含...
全文搜索(Lucene,Elasticsearch) 分布式和本地对象缓存(Hazelcast,咖啡因) 多租户-每个应用程序都有自己的表,索引和缓存 带有有效载荷签名的Webhooks 物联网支持以及与AWS和Azure的集成 基于Spring ...