분산 전문 검색 엔진 ElasticSearch 원리 및 사용 실례

하나 Elastic Search
Elasticsearch는 분포식 확장 가능한 실시간 검색과 분석 엔진으로 전문 검색 엔진인 Apache Lucene(TM)을 바탕으로 한 검색 엔진이다.물론 Elasticsearch는 Lucene만큼 간단하지 않습니다. 전체 텍스트 검색 기능뿐만 아니라 다음과 같은 작업도 할 수 있습니다.
  • 분포식 실시간 파일 저장, 모든 필드를 인덱스하여 검색할 수 있도록..
  • 억대 데이터 실시간 조회 가능
  • 실시간 분석의 분포식 검색엔진..
  • 수백 대의 서버로 확장하여 PB 수준의 구조화 또는 비구조화 데이터를 처리할 수 있습니다.
  • 두 번째 설치 (윈도우즈 아래)
    패키지 다운로드 주소 설치
    참고: Elasticsearch는 Java로 개발되었습니다. 최신 버전의 Elasticsearch는 jdk1.8 이상의 환경을 설치해야 합니다.
    설치 패키지를 다운로드하고 압축을 풀고bin 디렉터리에 들어가서elasticsearch를 시작합니다.bat
    3python 운영 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'])
    이상은 본문의 전체 내용입니다. 여러분의 학습에 도움이 되고 저희를 많이 응원해 주십시오.

    좋은 웹페이지 즐겨찾기