OpenSearch란 무엇인가요?

OpenSearch는 Apache 2.0 라이선스 하에 제공되는 분산형 커뮤니티 기반 100% 오픈 소스 검색 및 분석 제품군으로, 실시간 애플리케이션 모니터링, 로그 분석 및 웹 사이트 검색과 같이 다양한 사용 사례에 사용됩니다. OpenSearch는 데이터 탐색을 쉽게 해주는 통합 시각화 도구 OpenSearch 대시보드와 함께 대량 데이터 볼륨에 빠르게 액세스하고 응답하며 뛰어난 확장성을 지닌 시스템을 제공합니다. OpenSearch는 Apache Lucene 검색 라이브러리로 구동되며 k-nearest neighbors(KNN) 검색, SQL, Anomaly Detection, Machine Learning Commons, Trace Analytics, 전체 텍스트 검색 등 다수의 검색 및 분석 기능을 지원합니다.

OpenSearch를 사용해야 하는 이유는 무엇인가요?

OpenSearch를 사용하면 로그 분석, 애플리케이션 검색, 엔터프라이즈 검색 및 기타 다수의 사용 사례에서 데이터의 수집, 보안, 검색, 집계, 보기 및 분석이 쉬워집니다. OpenSearch가 있으면 원하는 방식으로 사용, 수정, 확장, 수익화, 재판매할 수 있다는 100% 오픈 소스 제품의 이점을 누릴 수 있습니다. 전문 지원, 향상된 기능 및 관리형 OpenSearch 서비스와 같은 다양한 서비스를 제공하는 OpenSearch 프로젝트 파트너 수가 증가하고 있습니다. OpenSearch 프로젝트는 계속해서 새롭고 혁신적인 기능의 풍부한 로드맵을 지닌 안전하고 높은 품질의 검색 및 분석 제품군을 제공할 것입니다.

OpenSearch가 만들어진 이유는 무엇인가요?

개발자는 여러 가지 이유로 오픈 소스 소프트웨어를 수용하는데, 가장 중요한 이유는 소프트웨어를 어디서나 원하는 방식으로 사용할 수 있다는 자유에 있습니다. 2021년 1월 21일, Elastic NV는 소프트웨어 라이선스 전략을 변경하는 바, 허용적 라이선스인 Apache License Version 2.0(ALv2) 하에서 Elasticsearch 및 Kibana의 새로운 버전을 더 이상 릴리스하지 않는다고 발표했습니다. 그 대신 Elastic은 Elastic License 또는 Server Side Public License(SSPL) 하에서 사용할 수 있는 소스 코드를 사용하여 Elasticsearch 및 Kibana를 릴리스했습니다. 해당 라이선스는 오픈 소스가 아니며 사용자에게 동일한 자유를 제공하지 않습니다. 단일 공급업체 종속을 방지하기 위해 소프트웨어를 오픈 소스로 유지하고자 하는 일부 개발자가 있기 때문에 AWS는 지난 ALv2 버전의 Elasticsearch 및 Kibana에서 포크를 만들어 유지하기로 결정했습니다. 이 포크를 OpenSearch라고 하며 ALv2 하에서 사용 가능합니다.

OpenSearch는 Amazon OpenSearch Service와 어떤 관련이 있나요?

Amazon OpenSearch Service는 인프라 관리, 모니터링 및 유지 관리에 대한 걱정이나 OpenSearch 클러스터 운영에 대한 심층적인 전문성을 쌓을 필요 없이 OpenSearch 클러스터를 실행하고 확장할 수 있는 AWS 관리형 서비스입니다. OpenSearch에 대한 지원은 2021년 9월에 Amazon OpenSearch Service에서 버전 1.0부터 시작되었으며 Amazon Elasticsearch Service에서 Amazon OpenSearch Service로 이름이 바뀌었습니다. 그 이후 이 서비스는 여러 버전에 걸쳐 OpenSearch에 추가된 다수의 새로운 기능을 지원해 왔습니다. 몇 가지 예로는 클러스터 간 복제, 추적 분석, 데이터 스트림, 변환, 새로운 관측성 사용자 인터페이스 및 OpenSearch Dashboard 내 노트북이 있습니다. 이와 더불어 k-NN, 이상 탐지, PPL, SQL 및 알림 기능도 대폭 개선되었습니다. Amazon OpenSearch Service는 레거시 오픈 소스 Elasticsearch 버전(7.10까지)을 계속해서 지원하겠지만 오픈 소스 OpenSearch 버전의 일부로 구축되는 새로운 기능을 활용하려면 서비스 중인 OpenSearch를 사용하는 것이 좋습니다.

Amazon OpenSearch Service는 7.10 이후의 새 Elasticsearch 버전을 지원할 예정인가요?

아니요. 7.10 이후의 Elasticsearch 버전은 오픈 소스가 아니며 허용적 ALv2 라이선스 하에서 릴리스되지 않습니다. Amazon OpenSearch Service는 오픈 소스 Elasticsearch 버전 7.10까지 계속해서 지원할 것이지만 앞으로는 오픈 소스 OpenSearch의 새 버전을 활용하여 Amazon OpenSearch Service 사용 고객에게 로그 분석, 검색 및 관측성 등 다양한 사용 사례에 적합한 새로운 기능과 혁신을 제공할 것입니다.

OpenSearch는 새로운 Elasticsearch 버전과 호환성 및 기능 패리티를 유지할 예정인가요?

OpenSearch의 로드맵은 커뮤니티를 중심으로 주도되며 AWS를 포함한 다양한 조직이 오픈 소스 코드 기반에 새로운 기능을 기고합니다. OpenSearch는 실시간 애플리케이션 모니터링, 로그 분석 및 웹 사이트 검색과 같이 다양한 사용 사례에 사용됩니다. OpenSearch에 대한 로드맵은 Elasticsearch와 독립적으로 봐야 하며 OpenSearch는 커뮤니티와 고객이 요청하는 새로운 기능과 혁신을 제공하는 데 중점을 두게 될 것입니다. Elasticsearch에서 제공되는 새로운 기능과 유사한 기능이 OpenSearch에 포함될 수 있지만(그 반대의 경우도 마찬가지) 모든 기능의 구현은 두 프로젝트 간에 고유합니다. OpenSearch의 기본적인 목표는 OpenSearch 커뮤니티와 고객의 필요에 가장 적합한 것을 구축하는 것이 될 것입니다.

OpenSearch가 제공하는 기능에는 어떤 것들이 있나요?

기능

이점

고급 보안

암호화, 인증, 권한 부여, 감사 기능을 제공합니다. 여기에는 Active Directory, LDAP, SAML, Kerberos, JSON 웹 토큰 등과의 통합이 포함됩니다. OpenSearch는 또한 인덱스, 문서 및 필드에 대해 세분화된 역할 기반 액세스 제어를 제공합니다.

기본 제공 검색 기능

검색 경험을 사용자 지정하는 데 도움이 되는 다수의 기능을 제공합니다. 예를 들어 전체 텍스트 쿼리, 자동 완성, 스크롤 검색, 사용자 지정 가능한 점수 및 순위 지정 등이 있습니다.

SQL 쿼리 구문

익숙한 SQL 쿼리 구문을 제공합니다. 데이터를 확인할 때 각종 집계, group by, where 절을 사용할 수 있습니다. 데이터를 JSON 문서 또는 CSV 테이블로 읽어 자신의 작업에 가장 어울리는 형식으로 사용할 수 있는 유연성을 확보합니다.

SQL 내 검색 지원

유사 일치, 부스팅, 구문 일치 등과 같은 풍부한 세트의 검색 기능에 액세스하는 동안 익숙한 SQL 쿼리 구문을 사용할 수 있습니다.

Data Prepper

Data Prepper는 다운스트림 분석 및 시각화를 위해 데이터를 필터링, 보강, 변환, 정규화 및 집계할 수 있는 서버 측 데이터 수집기입니다. Data Prepper를 사용하면 사용자 지정 파이프라인을 구축하여 애플리케이션의 운영 보기를 개선할 수 있습니다.

추적 분석

추적 분석은 OpenSearch에서 OpenTelemetry 데이터를 수집하고 시각화할 수 있는 방법을 제공합니다. 이 데이터는 분산형 애플리케이션에서 성능 문제를 찾고 수정하는 데 도움이 될 수 있습니다.

애플리케이션 분석

애플리케이션 분석을 사용하면 시스템의 가용성 상태를 볼 수 있는 사용자 지정 관측성 애플리케이션을 만들 수 있습니다. 여기에서 로그 이벤트와 추적 및 지표 데이터를 전체 시스템 상태를 보여주는 단일 보기로 결합할 수 있습니다. 이렇게 하면 로그, 추적 및 지표 사이를 빠르게 피벗하여 문제의 원인으로 깊이 들어갈 수 있습니다.

파이프 처리 언어

파이프 처리 언어는 데이터 쿼리에 파이프(|)로 구분된 명령어의 포괄적 세트가 포함된 익숙한 쿼리 구문을 제공합니다.

운영 패널

파이프 처리 언어(PPL)를 사용하여 생성된 관측성 시각화를 정렬하는 운영 패널을 구축합니다.

이벤트 분석

파이프 처리 언어(PPL) 쿼리를 사용하여 추적 로그 상관 관계를 포함한 데이터의 다양한 시각화를 대화형으로 구축하고 확인합니다.

ML Commons 라이브러리

kmeans 및 이상 탐지 같은 다양한 기계 학습 알고리즘을 사용하여 모델을 훈련하고 데이터 동향을 예측합니다. ML Commons는 PPL 및 REST API와 직접 통합됩니다.

보고서 제공

대시보드, 저장된 검색, 알림 및 시각화에서 보고서를 예약하고 내보내며 공유합니다. 

이상 탐지

Random Cut Forest(RCF) 알고리즘에 기반한 이상 탐지 기계 학습을 활용해 데이터가 수집될 때 자동으로 이상을 탐지합니다. 알림과 결합하여 데이터를 실시간에 가깝게 모니터링하고 자동으로 경고 알림을 전송합니다. 

인덱스 관리

사용자 지정 정책을 정의해 롤오버나 삭제와 같은 인덱스 관리 태스크 루틴을 자동화하여 인덱스 및 인덱스 패턴에 적용합니다.

인덱스 변환

특정 필드를 중심으로 데이터의 요약 보기를 만들어 데이터를 다양한 방식으로 시각화하거나 분석하는 데 사용합니다. 예를 들어 여러 필드와 범주에 흩어져 있는 항공사 데이터가 있다고 할 때 항공사, 구간 및 요금별로 정렬된 이 데이터의 요약 보기를 만들려고 합니다. 이 경우 변환 작업을 사용하여 이 특정 범주로 정렬된 요약 인덱스를 새로 만들 수 있습니다.

인덱스 롤업

관심 필드를 선택하고 인덱스 롤업을 사용하여 이 필드만 넓은 범위의 시간 버킷으로 집계하는 새 인덱스를 만듭니다. 이렇게 하면 동일한 쿼리 성능과 아주 저렴한 비용으로 월별 또는 연간 히스토리성 데이터를 저장할 수 있습니다.

성능 분석기 및 RCA 프레임워크

다수의 클러스터 성능 지표 및 집계를 쿼리합니다. PerfTop 명령줄 인터페이스(CLI)를 사용해 해당 지표를 빠르게 표시하고 분석합니다. 근본 원인 분석(RCA) 프레임워크를 사용해 클러스터의 성능과 신뢰성 문제를 조사합니다.

비동기식 검색

쿼리 시간 초과를 염려하지 않고 복잡한 쿼리를 실행하며 비동기식 검색으로 검색 쿼리가 백그라운드에서 실행됩니다. 쿼리의 진척 상황을 추적하고 사용 가능한 부분적 결과를 조회합니다.

추적 분석

배포된 애플리케이션에 대해 OpenTelemetry 데이터를 수집하고 시각화합니다. 해당 애플리케이션 간의 이벤트 흐름을 시각화하여 성능 문제를 식별합니다.

알림

자동으로 데이터를 모니터링하고 경고 알림을 이해 관계자에게 자동으로 전송합니다. 직관적인 인터페이스와 강력한 API로 알림 설정, 관리, 모니터링이 쉬워집니다. OpenSearch의 완전한 쿼리 언어와 스크립팅 기능으로 특정 알림 조건을 섬세하게 설정합니다.

버킷 수준 알림

데이터의 그룹화된 동향에 대한 알림을 전송하는 알림 정책을 만듭니다. 예를 들어 평균 CPU가 원하는 임계값을 초과하는 각 호스트에 대한 알림을 받을 수 있습니다.

클러스터 간 복제

인덱스, 매핑 및 메타데이터를 한 OpenSearch 클러스터에서 다른 클러스터로 복제하여 클러스터 간 중복성을 만들거나 보고 쿼리를 보조 클러스터로 오프로드합니다.

k-NN 검색

기계 학습을 사용해 수 십억의 문서에서 수 천 차원에 걸친 작업도 가장 가까운 이웃 검색 알고리즘을 정규 OpenSearch 쿼리를 실행하는 것과 마찬가지로 편하게 실행합니다. 집계와 필터 조항을 사용해 유사성 검색 작업을 구체화합니다. k-NN 유사성 검색은 생산 권고 사항, 사기 탐지, 이미지 및 동영상 검색, 관련 문서 검색 등 다양한 사용 사례에 도움이 됩니다.

대시보드 노트북

대시보드, 시각화, 텍스트 등을 결합하여 데이터 분석에 컨텍스트와 상세한 설명을 제공합니다.

OpenSearch 클라이언트

OpenSearch는 Go, JavaScript, Python, Java 및 기타 다양한 언어 클라이언트를 지원합니다. 이러한 클라이언트를 사용하여 OpenSearch와 직접 통합되는 애플리케이션을 구축할 수 있습니다.

OpenSearch는 누가 후원하고 유지 관리하나요?

AWS, SAP, CapitalOne, RedHat, Logz.io, Aiven.io, Bonsai, Logit.io, InstaCluster 및 BAInsight를 포함한 많은 조직이 공식적으로 OpenSearch를 지원합니다.

AWS는 커뮤니티의 기고를 장려하고 허용하며 기고자 라이선스 계약(CLA)을 요구하지 않습니다. 또한 활성 기고자가 프로젝트에서 더 많은 책무를 담당하기를 원하는 경우 비 AWS 직원에 대해 정의된 프로세스에 따라 여기 OpenSearch 프로젝트 리포지토리에서 유지 관리자 권한을 받을 수 있습니다. 

OpenSearch의 미래는 어떤가요?

첫 번째 정식 버전인 OpenSearch version 1.0은 2021년 7월에 출시되었습니다. 이후 다수의 새 버전이 출시되었고 여기에서 자세한 내용을 확인할 수 있습니다. 커뮤니티의 열렬한 관심과 지원 아래 로그 분석, 검색 및 관측성에 관한 주요 사용 사례에서 다수의 새로운 기능이 출시되었습니다. 이 영역은 앞으로도 OpenSearch와 시각화 계층인 OpenSearch Dashboards의 향후 개선에 대한 주요 테마가 될 것입니다. 로드맵을 확인하여 OpenSearch가 중점을 두는 주요 영역에 대한 개요를 살펴보시기 바랍니다. 

OpenSearch 라이선스는 어떻게 제공되나요?

OpenSearch 프로젝트 내의 모든 소프트웨어는 Apache License, Version 2.0(ALv2) 하에서 릴리스됩니다. ALv2는 오픈 소스 소프트웨어 사용자가 기대하는 자유, 즉 수정, 확장, 수익화, 재판매를 어디서나 본인이 원하는 방식으로 할 수 있는 자유가 일치하는 충분히 이해된 허용적 사용 권한을 부여합니다. OpenSearch의 경우, 이 라이선스가 커뮤니티의 모든 멤버들에게 채택과 이익 기여를 확장시킬 수 있다고 믿습니다. 당사는 또한 OpenSearch 등록 상표에 대해 허용적인 사용 지침을 게시하여 고객이 해당 이름으로 본인의 제품을 홍보할 수 있도록 하였습니다.

OpenSearch의 클라이언트 및 API 호환성에 대한 추가 정보는 어디에서 찾을 수 있나요?

오픈 소스 OpenSearch 웹 사이트FAQ를 참조하시기 바랍니다. 이 FAQ는 도구 및 플러그인, 업그레이드 호환성, 커뮤니티 일반 정보와 OpenSearch 기고 및 활용 방법에 관한 정보가 있는 좋은 소스입니다.

추가 리소스:

OpenSearch에는 Elasticsearch B.V. 및 다른 소스 코드의 특정 Apache 라이선스 Elasticsearch 코드가 포함됩니다. Elasticsearch B.V.는 다른 소스 코드의 소스가 아닙니다. ELASTICSEARCH는 Elasticsearch B.V.의 등록 상표입니다.

 

AWS를 활용한 다음 단계

제품 관련 추가 리소스 확인
OpenSearch에 대해 자세히 알아보기 
무료 계정에 가입

AWS 프리 티어에 즉시 액세스할 수 있습니다. 

가입 
콘솔에서 구축 시작

AWS 관리 콘솔에서 AWS로 구축을 시작하세요.

로그인