키 바나 (가능하면 빛나는 새 버전 4 베타)가 응용 프로그램 측 조인을 수행 할 수 있습니까?Elasticsearch/Kibana : 응용 프로그램 측 조인
ES/Kibana가 관계형 데이터베이스를 대체하기 위해 만들어지지 않았으며 일반적으로 내 데이터를 비정규 화하는 것이 더 좋습니다. 그러나 인덱스 크기가 폭발하고 성능이 떨어지기 때문에 이것은 최상의 접근 방식이 아닙니다.
다음과 같이 네트워크 플로우의 세션 정보를 포함하는 수십억 개의 문서를 인덱싱하고 있습니다. source ip, source port, 목적지 IP, 목적지 포트, 타임 스탬프.
이제 geolocation, asn, reverse dns 등과 같은 각 IP 주소에 대한 추가 정보를 수집하고 싶습니다. 모든 단일 세션 문서에이 정보를 추가하면 전체 데이터베이스가 관리하기 어려워집니다. 동일한 IP를 가진 수백만 개의 문서가 있습니다. 주소 및 이러한 모든 문서에 동일한 추가 정보를 추가하는 중복성으로 인해 수 백 기가 바이트의 램이있는 클러스터에서도 막대한 팽창과 응답이없는 사용자 경험이 발생합니다.
대신 고유 한 IP 주소와 내가 수집 한 메타 데이터 만 포함하는 별도의 색인을 만들고 싶습니다.
질문 : 질문 : kibana를 사용하여 데이터를 어떻게 계속 분석 할 수 있습니까? 쿼리에서 반환 된 각 문서에 대해 kibana는 IP 인덱스에서 조회를 수행하고이 정보로 각 IP 주소를 "가상으로 풍부하게"합니다. 구조 (즉시)과 같을 것이다 있도록 가상 필드를 추가하는 식으로 뭔가 :
소스 IP, 소스 포트, 소스 국가, 소스 ASN, 소스 FQDN
나는이 올 것이라고 알고 있어요 여러 개의 쿼리를 희생해야합니다.
호기심에서 벗어나 분석되지 않은 필드 캐시에 doc_values를 사용하고 있습니까? 개인적으로, 심지어 내 데이터를 정상화하려고 시도하기 전에 doc_values로 전환하여 도움이되는지 확인하려고했습니다. 또한 int global ordinal (예 : https://www.elastic.co/guide/en/elasticsearch/reference/1.6/fielddata-formats.html)을보고 싶지만 높은 카디널리티 데이터를 사용하면 실제로 그렇게 생각하지 않습니다. 아주 좋은 생각이다 .... – evanv