Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- logstash
- kafka ui
- MongoDB
- kafka connect
- PrestoDB
- Python
- naverdevelopers
- SSL
- Kafka
- elasticsearch
- ui for kafka
- fluentd
- pyspark
- elasticearch
- MariaDB
- PostgreSQL
- kibana
Archives
- Today
- Total
Dev_duri
MariaDB to Elasticsearch_Study 본문
MariaDB에 있는 데이터를 Logstash 이용하여 원하는 컬럼만 Select Elasticsearch로 적재
이후, Elasticsearch에 적재되며 추가된 Timestamp 포함하여 Elastic에 붙은 PrestoDB에서 Logstash 이용하여 MariaDB에 적재하는 과정까지 테스트
> Logstash 이용하여 원하는 컬럼만 SELECT
input {
jdbc {
jdbc_validate_connection => true
jdbc_driver_library => "/usr/local/mariadb-java-client-1.1.7.jar"
jdbc_driver_class => "Java::org.mariadb.jdbc.Driver"
jdbc_connection_string => "jdbc:mariadb://MariadbIP/dbname"
jdbc_user => "root"
jdbc_password => "password"
#schedule => "*/1 * * * *"
statement => "SELECT colum1, colum2 from DB.Tablename"
sql_log_level => "debug"
record_last_run => true
#last_run_metadata_path => "/etc/logstash/jdbc_last_run_metadata_path/mariadb"
}
}
output {
elasticsearch {
hosts => ["http://hostIP:9200"]
index => "name"
#data_stream => "true"
#user => "username"
#password => "password"
}
}
- 여기까지 MariaDB > Logstash > Elasticsearch(Kibana로 조회)
> Data가 담길때마다 @timestamp와 @version이 자동으로 찍히는 것을 확인할 수 있음
> 여기서 찍힌 Timestamp값을 MariaDB로 가져오고 싶어져서 간단하게 진행해보았다.
Logstash 이용하여 Presto에서 MariaDB로의 Input, Output 구성
input {
jdbc{
jdbc_connection_string => "jdbc:presto://10.65.41.141:8080/elsticsearch?SSL=false"
jdbc_driver_library => "/usr/local/presto-jdbc-0.276.jar"
jdbc_user => "user"
jdbc_password => ""
jdbc_driver_class => "com.facebook.presto.jdbc.PrestoDriver"
statement => "SELECT * FROM elasticsearch.default.mariafilter"
}
}
output {
jdbc {
driver_jar_path => "/usr/local/mariadb-java-client-1.1.7.jar"
driver_class => "org.mariadb.jdbc.Driver"
connection_string => "jdbc:mariadb://MariadbIP:3306/DB?user=root&password=Password"
statement => [ "INSERT INTO DBname.TableName (colum1, colum2, timestamp) VALUES(?, ?, ?)", "colum1","colum2","@timestamp" ]
}
}
++
> Presto to MariaDB의 Logstash 코드 실행 시 warnig 뜨면서 shutdown 되는 현상 발생 > SQL이 문제라고 하는데 정확히 모르겠다. 추후 오류 수정 예정
'test_case' 카테고리의 다른 글
Elastic/PrestoDB to Kafka_Study (0) | 2022.12.10 |
---|