zoukankan      html  css  js  c++  java
  • 分布式全文检索引擎之ElasticSearch

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

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

    二 安装(windows下)

    安装包下载地址

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

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

    三 python操作ElasticSearch

    # -*- coding:utf-8 -*-
    
    from elasticsearch import Elasticsearch
    
    obj = Elasticsearch()
    # 创建索引(Index)
    result = obj.indices.create(index='user', body={"userid":'1','username':'sui'},ignore=400)
    # print(result)
    # 删除索引
    # result = obj.indices.delete(index='user', ignore=[400, 404])
    # 插入数据
    # data = {'userid': '1', 'username': 'sui','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': 'lqz','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': 'lqz'}}}
    
    # 查找年龄大于11的所有文档
    # query = {'query': {'range': {'age': {'gt': 11}}}}
    
    allDoc = obj.search(index='news', doc_type='politics', body=query)
    print(allDoc['hits']['hits'][0]['_source'])
  • 相关阅读:
    bootstrap之Click大事
    BZOJ 2878([Noi2012]-失落的游乐园树DP+出站年轮加+后市展望DP+vector的erase)
    cocos2d 消除类游戏简单的算法 (一)
    【BZOJ3627】【JLOI2014】路径规划 分层图
    Windows台cocos2d-x 3.2下载一个新的项目,创造的过程
    无插件,直接加参数,chrome它可以模拟手机浏览器
    unix您不能使用crontab设置运营计划
    LeetCode36:Valid Sudoku
    HDInsight HBase概观
    最受欢迎telnet
  • 原文地址:https://www.cnblogs.com/sui776265233/p/10176247.html
Copyright © 2011-2022 走看看