centos7, trino 435, elasticsearch 7.5.1 버전 기준입니다.

trino와 elasticsearch 연동을 위해선 elasticsearch 버전이 6.6.0 버전 이상이어야하고,

trino를 통해 elasticsearch 조작은 select만 가능합니다.

 

서버 환경 구성입니다.

두 프로세스 모두 hadoop 계정 권한으로 실행되었습니다.

node1: Trino Coordinator, ElasticSearch

node2: Trino Worker, ElasticSearch

node3: Trino Worker, ElasticSearch

node4: Trino Worker, ElasticSearch

 

1. 엘라스틱서치 도큐먼트 생성

action server: node1

user: hadoop

pwd: -

cmd:

# 콘솔에서 curl 명령어로 도큐먼트를 생성합니다.
curl -XPUT http://localhost:9200/item/_doc/1 -H 'Content-Type: application/json' -d'
{
  "title": "테스트 제목",
  "message": "안녕하세요 Elasticsearch"
}'

# 생성 확인
curl -X GET http://localhost:9200/item/_search\?pretty

 

2. Trino Elasticsearch 카탈로그 추가

action server: node1~4

user: hadoop

pwd: -

cmd:

# 경로 이동
cd /opt/apps/trino-435

# 카탈로그 파일을 추가합니다.
vi etc/catalog/es.properties
connector.name=elasticsearch
elasticsearch.host=node1,node2,node3,node4
elasticsearch.port=9200
elasticsearch.default-schema-name=default

# Trino 재기동
./bin/launcher restart

 

3. DBeaver를 통해 데이터 확인

trino -> default -> item 클릭 후 도큐먼트의 내용이 테이블 형식으로 나타나는지 확인합니다.

 

 

감사합니다.

반응형

+ Recent posts