X-Pack은 Elastic search와 Kibana에 추가적인 기능을 추가하는 다양한 기능들을 가지고 있다.
- Elastic search와 Kibana에 인증과 권한을 추가한다.
- 인증과 관련해서 Kibana는 LDAP과 통합할 수 있다. Active Directory구조와 다른 기술로 인증을 제공한다.
- 사용자와 역할도 추가할 수 있고, 주어진 사용자나 역할인 액세스할 수 있도록 설정할 수도 있다.
- 사람마다 다른 특권을 누릴 수 있으니, 아주 유용하다.
- 마케팅 부서나 관리 팀은 데이터에 어떤 수정도 할 수 없어야 하며, 관심 있는 데이터에는 읽기 전용 엑세스 권한이 있어야 하는 상황
- CPU와 메모리 사용, 디스크 스페이스와 그외 많은 유용한 메트릭스를 볼 수 있다. 성능을 최상으로 유지하고 어떤 문제든 쉽게 감지할 수 있도록 해주는 것들이다.
- 장착된 장비에대해서도 위험을 감지할 수 있으며, 어떤 경고든 설정할 수 있다.
- 위험 감지에 대해서란?
- 해당 사용자가 3개국에서 로그인 했거나
- 갑자기 메모리가 오버됐거나
- 갑자기 CPU 사용량이 급등해서 90%이상에 육박했다면
- 트래픽이 갑자기 과도하게 발생했다던가
- 리포팅 처리?
- Kibana visualizaitions과 대시보드를 PDF파일로 내보낼 수 있다.
- 시스템 관리자에게 유용한 정보를 보고할 수 있고, 고객사에게도 일정 시간마다 보내줄 수 잇다.
- 결과적으로 X-PACK에서 제공되고 있는 인터페이스는 키바나가 제공한다. 그리고 이것으로 인해 머신러닝을 가능케 한다.
Graph
- 사용자의 취향에 맞는 곡을 추천해주세요
- 여러가지 요소를 종합해서 추천하는 그런것
- 대중성과 유의미한 차이를 구별하는게 중요하다.
요점은 관련성을 보지 않고 데이터 속 관계만 보면 오해의 소지가 있다는 것이다.
그래서 Graph가 Elastic Search에서 관련성을 판단할 때 관련성을 사용한다.
API를 고갱하는 Graph는 이걸 응용 프로그램에 통합하는 데 사용할 수 있다.
소비자 구매 이력을 바탕으로 원하는 제품을 추천해줄 수도 있다.
SQL
Elastic Search에선 Query DSL이라는 독점 쿼리 언어로 문서를 쿼리한다.
쿼리를 정의하는 JSON 객체다.
그외에 HTTP를 통해 SQL 쿼리를 Elastic Search에 보낼 수도 있고, 아니면 제공된 JDBC 드라이버를 사용할 수 있다.
💡 Elastic Search가 하는 일은 SQL 쿼리를 쿼리 DSL 포맷으로 변환하는 것입니다. 내부적으로 쿼리는 번역 후에 같은 방식으로 처리된다. Traslate API가 있어서 SQL 쿼리를 보낼 수 있고, Elastic Search는 쿼리 DSL에 반응하여 SQL 쿼리를 번역할 수 있다.
만약 DSL 쿼리를 작성하는데 어려움이 있어서 도움이 필요하면 SQL로 작성하고, 번역을 하면 쿼리의 시작점을 알 수 있다.
- 결과적으로 도움적인 기능에 지나지 않는다.
- 일단 Query DSL에 익숙해지면 그걸 사용하는게 좋다. ( 기본 베이스 이기때문)
LDAP?
- Lightweight Directory Access Protocol로 사용자가 조직, 구성원등에 대한 데이터를 찾는데 도움이 되는 프로토콜, 파일, 폴더 등도 가능하다.
- LDAP(Lightweight Directory Access Protocol) 는 서비스가 아닌 프로토콜이며, Active Directory를 포함해 다양한 유형의 디렉토리와 통신 및 쿼리하는 데 사용됩니다.