Solr는 웹 애플리케이션에 쉽게 추가할 수 있는 오픈 소스 Lucene Java 기반 검색 서버입니다.
2. Solr는 수준 검색(즉, 통계), 히트 강조 표시를 제공하고 다양한 출력 형식(XML/XSLT 및 JSON 형식 포함)을 지원합니다. 설치 및 구성이 쉽고 HTTP 기반
관리 인터페이스가 함께 제공됩니다. Solr는 많은 대규모 웹사이트에서 사용되어 왔으며 상대적으로 성숙하고 안정적입니다.
3. Solr는 Lucene을 패키지화하고 확장하므로 Solr는 기본적으로 Lucene 관련 용어를 사용합니다. 또한 Solr에서 생성된 인덱스는 Lucene 검색 엔진 라이브러리와 완벽하게 호환됩니다.
넷째, Solr를 적절하게 구성하고 경우에 따라 인코딩이 필요할 수 있으므로 Solr는 다른 Lucene 애플리케이션에 내장된 인덱스를 읽고 사용할 수 있습니다.
5. 또한 많은 Lucene 도구(예: Nutch, Luke)도 Solr에서 생성된 인덱스를 사용할 수 있습니다. Solr의 우수한 기본 검색 기능을 사용하거나 기업의 요구 사항에 맞게 확장할 수 있습니다.
solr의 장점
위의 Solr 소개를 통해 solr의 장점은 다음과 같은 측면을 포함함을 알 수 있습니다.
① 고급 전체 텍스트 검색 기능;
② 높은 처리량의 네트워크 트래픽에 최적화됨
③ 개방형 인터페이스(XML 및 HTTP) 기반 표준
④ 포괄적인 HTML 관리 인터페이스;
⑤ 확장성 - 다른 Solr 검색 서버에 효과적으로 복사할 수 있습니다.
⑥ XML 구성을 사용하여 유연성과 적응성을 확보합니다.
7 확장 가능한 플러그인 시스템. .
솔르 VS 루씬! ?
Solr와 Lucene을 비교하기 전에 Lucene이 무엇인지 먼저 알아야합니다.
Lucene은 Java 기반 전체 텍스트 정보 검색 도구 키트로, 완전한 검색 애플리케이션은 아니지만 애플리케이션에 대한 색인 생성 및 검색 기능을 제공합니다. Lucene은 현재 Apache Jakarta 제품군의 오픈 소스 프로젝트입니다. 또한 가장 널리 사용되는 Java 기반 오픈 소스 전체 텍스트 검색 툴킷입니다. Eclipse 도움말 시스템의 검색 기능과 같이 Lucene을 기반으로 하는 검색 기능을 갖춘 애플리케이션이 이미 많이 있습니다. Lucene은 텍스트 형식의 데이터를 색인화할 수 있으므로 색인화하려는 데이터 형식을 텍스트 형식으로 변환하기만 하면 Lucene에서 문서를 색인화하고 검색할 수 있습니다.
그렇다면 Solr는 그것에 비해 "패배"합니까? 아니면 그가 “승리”했는가?
사실 Solr와 Lucene은 경쟁 관계에 있지 않습니다. 반대로 Solr의 기본 핵심 기술은 Lucene을 사용하여 구현되기 때문에 Solr는 Lucene에 의존합니다. 다음은 검색 서버, 엔터프라이즈 및 관리입니다. Lucene은 기본적으로 독립 실행형 애플리케이션이 아닌 검색 라이브러리인 반면 Solr는 그렇습니다. Lucene은 검색의 기본 구성에 중점을 두고 있으며 Solr는 엔터프라이즈 애플리케이션에 중점을 두고 있습니다. Lucene은 검색 서비스 지원에 필요한 관리를 담당하지 않지만 Solr는 책임을 집니다. 따라서 Solr를 한 문장으로 요약하면 다음과 같습니다. Solr는 기업 검색 애플리케이션을 위한 Lucene의 확장입니다.
다음은 Solr와 Lucene의 아키텍처 다이어그램입니다.
이 다이어그램은 매우 복잡하고 이해하기 어렵습니다. 다이어그램은 다음 코드에서 말하는 것을 의미합니다.
녹색이 Lucene 모듈, 파란색이 Solr가 Lucene을 확장한 모듈임을 확인하기 어렵지 않습니다. 그림에서 다음 사항을 볼 수 있습니다.
a. 동적 필드(Dynamic Field)와 고유 키(Unique Key)가 있는 실제 데이터 스키마(Data Schema)?
b . Lucene 쿼리 언어에 대한 강력한 확장! ?
c. 결과의 동적 그룹화 및 필터링을 지원합니까?
d. 구성 가능한 고급 텍스트 분석?
e. /p>
f. 성능 최적화?
g. XML을 통한 외부 구성 지원?
h. 관리 인터페이스가 있습니까?< /p>
i. 로그?
j. 빠른 증분 업데이트 및 스냅샷 배포 지원
이제 Solr에 대한 소개는 여기까지입니다. 이제 Solr에 대한 사전 이해가 끝났을 것입니다. Solr의 공통 속성은 무엇입니까?
solr 사용 속성 및 구성 파일
문서에는 하나 이상의 필드가 포함되어 있습니다. 필드에는 Solr에 콘텐츠 처리 방법을 알려주는 이름, 콘텐츠 및 메타데이터가 포함됩니다.
예를 들어 필드에는 문자열, 숫자, 부울 값, 날짜 또는 추가하려는 모든 유형이 포함될 수 있습니다. Solr의 구성 파일에 맞게 구성하면 됩니다. 필드는 인덱싱 및 검색 중에 콘텐츠를 처리하는 방법을 Solr에 알려주는 다양한 옵션을 사용하여 설명할 수 있습니다.
이제 다음 이미지에 나열된 중요한 속성의 하위 집합을 확인하세요.
먼저 Solr의 중요한 파일 중 하나인 Schema.xml 구성 파일에 대해 언급하겠습니다.
(1)schema.xml
schema.xml 구성 파일은 다음을 다운로드한 설치 및 압축 해제 디렉터리의 \solr\example\solr\collection1\conf에서 찾을 수 있습니다. solr 패키지는 solr 모드와 관련된 파일입니다.
이 구성 파일을 열면 자세한 설명을 볼 수 있습니다. 패턴 구성은 크게 세 가지 중요한 구성으로 나뉜다:
1. Fieldtype
Fieldtype: int, String, Boolean 유형과 같은 속성 유형을 의미하며, 이 구성 파일에서는 FieldType 속성을 정의하는 기능이 있습니다. 아래 그림을 보세요.
그림은 친숙한 int, String 및 boolean을 보여줍니다. 그러면 후속 구성은 무엇입니까? 그런 다음 다음 매개변수를 소개하겠습니다.
2. 필드
필드: 인덱스 파일에 추가된 속성 이름이며 위의 유형을 사용하여 유형을 선언해야 합니다. 그림에 나와 있습니다:
ps: ①field: 고정된 필드 설정; ②dynamicField: 동적 필드 설정, 이후 사용자 정의 필드에 사용됨, * 와일드카드 예: test_i는 int 유형의 동적 필드입니다.
일반적으로 검색에 사용되는 특수 필드 copyField도 있습니다. 이러한 방식으로 소스가 여러 개인 경우 이 필드만 색인화하고 단어 분할할 수 있습니다.< /p >