Bigdata/Splunk

Splunk - KVStore 스키마 정의 및 삭제하기

올엠 2024. 8. 12. 10:07
반응형

 REST API를 이용해서 데이터를 넣고, 업데이트하는데에는 상관 없지만, 사용자 편의를 위해 Splunk App for Lookup File Editing을 통한 GUI를 이용할 경우 스키마를 설정해 두지 않으면 정상적으로 데이터를 확인하기가 어렵다.


여기에서는 스키마를 생성하고 삭제하는 방법에 대해서 알아보도록 하자.

 

스키마 생성

스키마 생성은 config 경로의 콜렉션을 지정하고, field를 통해 생성이 가능하다 아래는 field1은 숫자타입, field2 문자열, field3 문자열 타입을 생성하는 예제이다.

curl -k -u admin:password  https://localhost:8089/servicesNS/nobody/my_app/storage/collections/config/allmnet_collection 
    -d 'field.field1=number' 
    -d 'field.field2=string' 
    -d 'field.field3=string'

스키마는 생성과 추가가 가능하며 속성 변경(숫자 타입을 문자열)이 가능하다.

스키마 삭제

만약 해당 콜렉션에 생성된 스키마를 삭제하고 싶다면, Delete 메소드를 사용하면 된다. 특정 스키마 삭제는 field를 이용하여 지정해서 삭제할 수 있다. (만약 삭제가 되지 않는다면, API 버전이 2인지 확인하도록 하자.)

curl -k -u admin:password -X DELETE https://localhost:8089/servicesNS/nobody/my_app/storage/collections/config/allmnet_collection/schema/fields1

API 버전 업데이트 불가능 하다면, 콜렉션을 삭제하고 새로 구성하는 방법으로 진행해야 한다.

(이때 모든 데이터가 사라지므로, 주의해야 하며, 해당 스키마에 데이터가 있는 경우에도 스키마 삭제가 불가능하다는 점도 알아두기 바란다.)

아래는 콜렉션 전체를 삭제하는 코드이다.

curl -k -u admin:password -X DELETE https://localhost:8089/servicesNS/nobody/my_app/storage/collections/config/allmnet_collection

 

 

반응형