Kibana-지역지도 작업

이 시각화를 통해 지리적 세계지도에 표시된 데이터를 볼 수 있습니다. 이 장에서는 이것을 자세히 살펴 보겠습니다.

지역지도에 대한 색인 생성

지역지도 시각화 작업을위한 새 색인을 생성합니다. 업로드 할 데이터가 여기에 표시됩니다.

{"index":{"_id":1}}
{"country": "China", "population": "1313973713"}
{"index":{"_id":2}}
{"country": "India", "population": "1095351995"}
{"index":{"_id":3}}
{"country": "United States", "population": "298444215"}
{"index":{"_id":4}}
{"country": "Indonesia", "population": "245452739"}
{"index":{"_id":5}}
{"country": "Brazil", "population": "188078227"}
{"index":{"_id":6}}
{"country": "Pakistan", "population": "165803560"}
{"index":{"_id":7}}
{"country": "Bangladesh", "population": "147365352"}
{"index":{"_id":8}}
{"country": "Russia", "population": "142893540"}
{"index":{"_id":9}}
{"country": "Nigeria", "population": "131859731"}
{"index":{"_id":10}}
{"country": "Japan", "population": "127463611"}

데이터를 업로드하기 위해 개발 도구에서 _bulk upload를 사용합니다.

이제 Kibana Dev Tools로 이동하여 다음 쿼리를 실행하십시오.

PUT /allcountries
{
   "mappings": {
      "_doc": {
         "properties": {
            "country": {"type": "keyword"},
               "population": {"type": "integer"}
         }
      }
   }
}
POST /allcountries/_doc/_bulk?refresh
{"index":{"_id":1}}
{"country": "China", "population": "1313973713"}
{"index":{"_id":2}}
{"country": "India", "population": "1095351995"}
{"index":{"_id":3}}
{"country": "United States", "population": "298444215"}
{"index":{"_id":4}}
{"country": "Indonesia", "population": "245452739"}
{"index":{"_id":5}}
{"country": "Brazil", "population": "188078227"}
{"index":{"_id":6}}
{"country": "Pakistan", "population": "165803560"}
{"index":{"_id":7}}
{"country": "Bangladesh", "population": "147365352"}
{"index":{"_id":8}}
{"country": "Russia", "population": "142893540"}
{"index":{"_id":9}}
{"country": "Nigeria", "population": "131859731"}
{"index":{"_id":10}}
{"country": "Japan", "population": "127463611"}

다음으로 모든 국가 색인을 생성 해 보겠습니다. 국가 필드 유형을 다음과 같이 지정했습니다.keyword

PUT /allcountries
{
   "mappings": {
      "_doc": {
         "properties": {
            "country": {"type": "keyword"},
            "population": {"type": "integer"}
         }
      }
   }
}

Note − 지역 맵을 사용하려면 집계와 함께 사용할 필드 유형을 키워드 유형으로 지정해야합니다.

완료되면 _bulk 명령을 사용하여 데이터를 업로드합니다.

이제 인덱스 패턴을 생성합니다. Kibana 관리 탭으로 이동하여 인덱스 패턴 생성을 선택합니다.

다음은 allcountries 색인에서 표시되는 필드입니다.

지역지도 시작하기

이제 지역지도를 사용하여 시각화를 생성합니다. 시각화로 이동하여 지역지도를 선택합니다.

한 번으로 선택 인덱스를 수행 allcountries 하고 진행합니다.

아래와 같이 집계 메트릭 및 버킷 메트릭을 선택하십시오-

여기에서는 필드를 국가로 선택했습니다. 세계지도에 동일하게 표시하고 싶습니다.

벡터 맵 및 영역 맵에 대한 조인 필드

지역지도의 경우 아래와 같이 옵션 탭도 선택해야합니다.

옵션 탭에는 세계지도에 데이터를 그리는 데 필요한 레이어 설정 구성이 있습니다.

벡터 맵에는 다음과 같은 옵션이 있습니다.

여기에서는 국가 데이터가 있으므로 세계 국가를 선택합니다.

조인 필드에는 다음과 같은 세부 정보가 있습니다.

색인에는 국가 이름이 있으므로 국가 이름을 선택합니다.

스타일 설정에서 국가별로 표시 할 색상을 선택할 수 있습니다.

Reds를 선택하겠습니다. 나머지 세부 사항은 다루지 않을 것입니다.

이제 분석 버튼을 클릭하면 아래와 같이 세계지도에 표시된 국가의 세부 정보를 볼 수 있습니다.

Kibana의 자체 호스팅 벡터 맵 및 조인 필드

벡터 맵 및 조인 필드에 대한 고유 한 Kibana 설정을 추가 할 수도 있습니다. 이를 수행하려면 kibana 구성 폴더에서 kibana.yml로 이동하여 다음 세부 정보를 추가하십시오.

regionmap:
   includeElasticMapsService: false
   layers:
      - name: "Countries Data"
      url: "http://localhost/kibana/worldcountries.geojson"
      attribution: "INRAP"
      fields:
         - name: "Country"
         description: "country names"

옵션 탭의 벡터 맵에는 기본 데이터 대신 위의 데이터가 채워집니다. 제공된 URL은 Kibana가 동일하게 다운로드 할 수 있도록 CORS를 활성화해야합니다. 사용되는 json 파일은 좌표가 연속되는 방식이어야합니다. 예를 들면-

https://vector.maps.elastic.co/blob/5659313586569216?elastic_tile_service_tos=agree

지역지도 벡터지도 세부 사항이 자체 호스팅 될 때 옵션 탭은 다음과 같습니다.