博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
分布式全文检索引擎之ElasticSearch
阅读量:7011 次
发布时间:2019-06-27

本文共 1542 字,大约阅读时间需要 5 分钟。

 本文目录

一 什么是 ElasticSearch

Elasticsearch 是一个分布式可扩展的实时搜索和分析引擎,一个建立在全文搜索引擎 Apache Lucene(TM) 基础上的搜索引擎.当然 Elasticsearch 并不仅仅是 Lucene 那么简单,它不仅包括了全文搜索功能,还可以进行以下工作:

  • 分布式实时文件存储,并将每一个字段都编入索引,使其可以被搜索。
  • 可实现亿级数据实时查询
  • 实时分析的分布式搜索引擎。
  • 可以扩展到上百台服务器,处理PB级别的结构化或非结构化数据。

二 安装(windows下)

注意:Elasticsearch是用Java开发的,最新版本的Elasticsearch需要安装jdk1.8以上的环境

安装包下载完,解压,进入到bin目录,启动 elasticsearch.bat 即可

三 python操作ElasticSearch

# -*- coding:utf-8 -*-# Author : liuqingzhengfrom elasticsearch import Elasticsearchobj = Elasticsearch()# 创建索引(Index)result = obj.indices.create(index='user', body={
"userid":'1','username':'lqz'},ignore=400)# print(result)# 删除索引# result = obj.indices.delete(index='user', ignore=[400, 404])# 插入数据# data = {'userid': '1', 'username': 'tank','password':'123'}# result = obj.create(index='news', doc_type='politics', id=1, body=data)# print(result)# 更新数据'''不用doc包裹会报错ActionRequestValidationException[Validation Failed: 1: script or doc is missing'''# data ={'doc':{'userid': '1', 'username': 'tank','password':'123ee','test':'test'}}# result = obj.update(index='news', doc_type='politics', body=data, id=1)# print(result)# 删除数据# result = obj.delete(index='news', doc_type='politics', id=1)# 查询# 查找所有文档query = {
'query': {
'match_all': {}}}# 查找名字叫做jack的所有文档# query = {'query': {'term': {'username': 'tank'}}}# 查找年龄大于11的所有文档# query = {'query': {'range': {'age': {'gt': 11}}}}allDoc = obj.search(index='news', doc_type='politics', body=query)print(allDoc['hits']['hits'][0]['_source'])

 

 
 

转载于:https://www.cnblogs.com/kermitjam/p/10792678.html

你可能感兴趣的文章
TClientDataSet[28]: 读写其他格式的 XML 文件
查看>>
WinAPI: midiOutGetDevCaps - 查询输出设备性能
查看>>
BI那些事儿
查看>>
Oracle笔记(下) 多表查询
查看>>
Java ClassLoader需要注意的几个点
查看>>
JDBC连接属性
查看>>
eclipse 使用 git 提交代码报错 “there are no staged files”
查看>>
mysql中将毫秒值转换为可读的字符串
查看>>
对称密码、非对称密码、散列算法与PKI
查看>>
socket编程——TCP
查看>>
远程通知推送教程
查看>>
从SVD到PCA——奇妙的数学游戏
查看>>
Go正则匹配
查看>>
scala视频课程
查看>>
Elasticsearch与Solr搜索引擎选型调研文档
查看>>
Ubuntu下使用Eclipse菜单栏无法显示的问题的解决办法
查看>>
MyBatis笔记(九)——动态SQL与模糊查询
查看>>
HTML5框架、背景和实体
查看>>
Hello Girl
查看>>
AngularJS+Satellizer+Node.js+MongoDB->Instagram-16
查看>>