[Elasticsearch] Elasticsearch ๊ธฐ๋ณธ ๊ฐœ๋… ๋ฐ ์„ค์น˜, kibana ์—ฐ๋™ํ•˜๊ธฐ

2023. 6. 29. 10:10ยท๐Ÿฅ Web/โ” Back-end | etc.
728x90

์ตœ์‹  ํ•œ๊ตญ์–ด ์ž๋ฃŒ๊ฐ€ ์—†์–ด์„œ ์„ค์น˜๋งŒ ํ•˜๋‹ค๊ฐ€๋„ ์“ฐ๋Ÿฌ์งˆ ๋ป”ํ–ˆ๋‹ค. ์„ธ์ƒ์— ์ด๋ ‡๊ฒŒ ๊ธฐ๋นจ๋ฆฌ๋Š” ์„ค์น˜์ž‘์—…์€ ์ฒ˜์Œ์ด๋‹ค... Elasticsearch ์„ค์น˜ ๋ฐฉ๋ฒ•์ด ์–ด๋ ต๋‹ค๊ธฐ๋ณด๋‹ค๋Š” ๋ฐฑ์—”๋“œ ๋ฐ”๋ณด(...)์ธ ๋‚ด๊ฐ€ ๊ฑท๊ธฐ์—๋Š” ์ œ๋ฒ• ์–ด๋ ค์šด ์ผ์ด์—ˆ๋‹ค๊ณ  ํ•  ์ˆ˜ ์žˆ๊ฒ ๋‹ค. ์ด๋ฏธ ์œ ์‚ฌํ•œ ๊ฒฝํ—˜์ด ์žˆ๋‹ค๋ฉด ์‰ฝ๊ฒŒ ํ•˜์‹ค ๊ฒƒ ๊ฐ™๋‹ค. ์–ด์จŒ๋“  ์„ฑ๊ณตํ–ˆ์œผ๋‹ˆ ๊ฐ€๋ณ๊ฒŒ ์ •๋ฆฌํ•ด๋ณด๋„๋ก ํ•˜๊ฒ ๋‹ค.

 

1. Elasticsearch ๋ž€?

๋ช…ํ™•ํ•˜๊ฒŒ ๋‹ต์„ ๋‚ด๊ธฐ์—๋Š” ์•„์ง ๋ถ€์กฑํ•œ ์ ์ด ๋งŽ์ง€๋งŒ, ๊ฒ€์ƒ‰์—”์ง„์ด๋‹ค. NoSQL ๊ธฐ๋ฐ˜์œผ๋กœ ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ๋ฅผ ๊ฐ€์ ธ๊ฐ€๊ณ , ๊ฐ๊ฐ์€ RDBMS์™€ ๋งคํ•‘๋˜๋Š” ์šฉ์–ด๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค. NoSQL์— ์ต์ˆ™ํ•˜๋‹ค๋ฉด ๋” ์‰ฌ์šธ ๊ฒƒ ๊ฐ™๋‹ค. Firebase ๋“ฑ๋“ฑ.

A. RDBMS์™€ ๊ฒ€์ƒ‰์—”์ง„์˜ ์ฐจ์ด

  • RDBMS๋Š” ํ…Œ์ด๋ธ”๋กœ ๋”ฑ๋”ฑ ์ชผ๊ฐœ์„œ ์ž๋ฅผ ์ˆ˜ ์žˆ๋Š” ์ฒด๊ณ„์ ์ธ ๊ตฌ์กฐ
    • ๋‹จ์–ด ๊ฒ€์ƒ‰, ์ฟผ๋ฆฌ๋ฌธ์„ ํ™œ์šฉํ•œ ๋ฐ์ดํ„ฐ ์„ ๋ณ„ ๋“ฑ์ด ๊ฐ€๋Šฅ
  • ๊ฒ€์ƒ‰์—”์ง„์€ ๋ณด๋‹ค ์‚ฌ์šฉ์ž ์นœํ™”์ ์ด๊ณ  ์œ ์—ฐํ•œ ์—”์ง„
    • ํ…์ŠคํŠธ ํŠน์ง•์„ ์ด์šฉํ•œ ๋™์˜/์œ ์˜์–ด ๊ฒ€์ƒ‰ ๊ฐ€๋Šฅ
    • ๋น„์ •ํ˜• ๋ฐ์ดํ„ฐ ์ƒ‰์ธ ๋ฐ ๊ฒ€์ƒ‰ ๊ฐ€๋Šฅ
    • ์—ญ์ƒ‰์ธ

B. ์—ญ์ƒ‰์ธ

  • ์ƒ‰์ธ → ์ฑ…์˜ ๋ชฉ์ฐจ

  • ์—ญ์ƒ‰์ธ → ์–ด๋–ค ๋‹จ์–ด๊ฐ€ ์ฑ…์˜ ์–ด๋””์— ์œ„์น˜ํ•˜๋Š”์ง€ ์ ์–ด๋‘” ๋‹จ์–ด๋ณ„ ์ƒ‰์ธ ํŽ˜์ด์ง€

์‚ฌ์ง„ ์ถœ์ฒ˜ - ์‚ผ์„ฑ SDS...๊ธฐ์ˆ ๋ธ”๋กœ๊ทธ

Elasticsearch๋Š” ์—ญ์ƒ‰์ธ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ๊ฒ€์ƒ‰๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜๋ฏ€๋กœ ๋Œ€์†Œ๋ฌธ์ž ๊ตฌ๋ถ„ ์—†์ด ๋ฌธ๊ตฌ ๊ฒ€์ƒ‰ ๊ฐ€๋Šฅ

C. Elasticsearch์˜ ํŠน์ง• ๋ฐ ์žฅ๋‹จ์ 

  • NoSQL ๊ธฐ๋ฐ˜์˜ ๋ฌธ์„œ ์ง€ํ–ฅ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค
  • http protocol๋กœ ์ ‘๊ทผ ๊ฐ€๋Šฅํ•œ REST API๋ฅผ ํ†ตํ•ด์„œ ๋ฐ์ดํ„ฐ ์กฐ์ž‘ ์ง€์›

  • ๋ถ„์‚ฐ์ฒ˜๋ฆฌ๋ฅผ ํ†ตํ•œ ๋น ๋ฅธ ๊ฒ€์ƒ‰
  • ์ „๋ฌธ ๊ฒ€์ƒ‰ / ๊ตฌ์กฐ ๊ฒ€์ƒ‰ ๋ชจ๋‘ ์ง€์›
    • ์™„์ „ ์‹ค์‹œ๊ฐ„์€ ์•„๋‹˜. 1์ดˆ ๋’ค ๊ฒ€์ƒ‰ ๊ฐ€๋Šฅ
  • transaction rollback ์ง€์› x
  • ๋ฐ์ดํ„ฐ ์‚ญ์ œ ๋ฐ ์—…๋ฐ์ดํŠธ์— ๋น„์šฉ์†Œ๋ชจ๊ฐ€ ์‹ฌํ•จ → ๊ธฐ์กด ๋ฌธ์„œ๋ฅผ ์‚ญ์ œ ํ›„ ์žฌ์ƒ์„ฑํ•˜๊ธฐ ๋•Œ๋ฌธ

 

D. ์šฉ์–ด

  • Index : ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค
  • Shard : ํŒŒํ‹ฐ์…˜
  • Type : ํ…Œ์ด๋ธ”
  • Document : ํ–‰
  • Field : ์—ด
  • Mapping : ์Šคํ‚ค๋งˆ
  • Query DSL : SQL

 

2. ์„ค์น˜ 

A. Elasticsearch ์„ค์น˜

 

Download Elasticsearch

Download Elasticsearch or the complete Elastic Stack (formerly ELK stack) for free and start searching and analyzing in minutes with Elastic.

www.elastic.co

์œ„ ๋งํฌ์—์„œ ์šด์˜์ฒด์ œ์— ๋งž๋Š” ๋ฒ„์ „์˜ Elasticsearch๋ฅผ ๋‹ค์šด๋กœ๋“œํ•˜๊ณ , ์••์ถ•์„ ํ‘ผ ๋’ค bin/elasticsearch.bat ์„ ์‹คํ–‰ํ•˜๋ฉด ๋๋‚œ๋‹ค. 

๋‹ค๋งŒ ์œ ์˜ํ•ด์•ผํ•  ์ ์€, ํ˜„์žฌ Elasticsearch 8.8.1 ๋ฒ„์ „ ๊ธฐ์ค€ ์ง€์›ํ•˜๋Š” Java ๋ฒ„์ „์€ JDK 11๊ณผ 17์ด๋‹ค. ๋‚ด์žฅ Java๊ฐ€ ์žˆ๋‹ค๊ณ ๋Š” ํ•˜๋Š”๋ฐ ํ˜น์‹œ๋‚˜ ์ƒ๊ธธ ๋ฒ„์ „๋ฌธ์ œ๋ฅผ ์˜ˆ๋ฐฉํ•˜๊ธฐ ์œ„ํ•ด JDK 17๋กœ ๋ฒ„์ „์„ ๋งž์ถฐ์ฃผ๋Š” ๊ฒƒ์„ ๊ถŒ์žฅํ•œ๋‹ค.

๊ฐ€์ด๋“œ๋Š” ์ด ๋งํฌ๋ฅผ ์ฐธ๊ณ ํ•˜์ž. ํ•œ๊ตญ์–ด ์ž๋ฃŒ๊ฐ€ ์—†๋Š” ํŽธ์ด๋ผ ์˜์–ด๋ฅผ ์ฝ์–ด์•ผํ•œ๋‹ค๋Š” ๋‹จ์ ์ด ์žˆ์ง€๋งŒ... ์—†๋Š” ๊ฒƒ๋ณด๋‹ค๋Š” ์‚ผ์ฒœ์˜ค๋ฐฑ๋ฐฐ ๋‚ซ๋‹ค. https://www.elastic.co/guide/en/elasticsearch/reference/8.8/elasticsearch-intro.html

 

What is Elasticsearch? | Elasticsearch Guide [8.8] | Elastic

What is Elasticsearch?edit You know, for search (and analysis) Elasticsearch is the distributed search and analytics engine at the heart of the Elastic Stack. Logstash and Beats facilitate collecting, aggregating, and enriching your data and storing it in

www.elastic.co

๊ทธ๋ฆฌ๊ณ  elasticsearch๋ฅผ ํฌํ•จํ•˜์—ฌ kibana, logstash ๋“ฑ ๊ฐ™์€ ํšŒ์‚ฌ์˜ ์ œํ’ˆ๋“ค์€ yaml ํŒŒ์ผ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ๋™์ž‘ํ•˜๊ธฐ ๋•Œ๋ฌธ์—, ๋ญ”๊ฐ€ ์„ค์ •์„ ๋ฐ”๊ฟ”์ฃผ๊ณ  ์‹ถ์œผ๋ฉด config/elasticsearch.yaml ๋“ฑ์˜ ํŒŒ์ผ์„ ์ž‘์„ฑํ•ด์ฃผ์–ด์•ผ ํ•œ๋‹ค. ์ง€๊ธˆ ๋‹น์žฅ์€ ๋‹ค์šด๋ฐ›์•˜์„ ๋•Œ ๊ธฐ๋ณธ์„ค์ •์œผ๋กœ ํ•ด๋„ ๋˜๊ฒ ๋‹ค.

elasticsearch๊ฐ€ ์‚ฌ์šฉํ•˜๋Š” localhost port๋Š” 9200์ด๋‹ค. https://localhost:9200 ์œผ๋กœ ์ ‘์†ํ•ด๋ณด์ž.

{
  "name" : "DESKTOP-85ERSCL",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "{UUID}",
  "version" : {
    "number" : "8.8.1",
    "build_flavor" : "default",
    "build_type" : "zip",
    "build_hash" : "{HASH}",
    "build_date" : "2023-06-05T21:32:25.188464208Z",
    "build_snapshot" : false,
    "lucene_version" : "9.6.0",
    "minimum_wire_compatibility_version" : "7.17.0",
    "minimum_index_compatibility_version" : "7.0.0"
  },
  "tagline" : "You Know, for Search"
}

์ด๋Ÿฐ ์‹์œผ๋กœ ์‘๋‹ต์ด ์˜ค๋ฉด ์„ฑ๊ณต~

 

B. Kibana ์„ค์น˜

 

Download Kibana Free | Get Started Now

Download Kibana or the complete Elastic Stack (formerly ELK stack) for free and start visualizing, analyzing, and exploring your data with Elastic in minutes.

www.elastic.co

Kibana๋„ ๊ฐ™๋‹ค. ์œ„ ๋งํฌ์—์„œ ์šด์˜์ฒด์ œ์— ๋งž๋Š” Kibana๋ฅผ ๋‹ค์šด๋กœ๋“œ ํ•˜๊ณ , bin/kibana.bat๋ฅผ ์‹คํ–‰ํ•ด์ฃผ๋ฉด ๋œ๋‹ค.

kibana๊ฐ€ ์‚ฌ์šฉํ•˜๋Š” localhost server port๋Š” 5601์ด๋‹ค. ์‹คํ–‰์ด ๋˜๊ณ  ์žˆ๋Š” ๊ฒƒ ๊ฐ™์œผ๋ฉด https://localhost:5601๋กœ ์ ‘์†ํ•ด๋ณด์ž.

Welcome to Elastic์ด๋ผ๋Š” ๋ฌธ๊ตฌ์™€ ํ•จ๊ป˜ ๋กœ๊ทธ์ธํ•˜๋ผ๊ณ  ํ•œ๋‹ค. ๊ณ„์ •์„ ๋งŒ๋“  ์ ๋„ ์—†๋Š”๋ฐ... ๊ทธ๋ž˜์„œ ์ง€๊ธˆ ๋งŒ๋“ค๋Ÿฌ ๊ฐ„๋‹ค.

Elastic์˜ ๋น„๋ฐ€๋ฒˆํ˜ธ๋Š” kibana๊ฐ€ ์•„๋‹ˆ๋ผ elasticsearch ์ชฝ์—์„œ ์ƒ์„ฑํ•œ๋‹ค. elasticsearch ๊ฒฝ๋กœ์—์„œ 

.\bin\elasticsearch-setup-passwords.bat auto

ํ•˜๋ฉด ์‚ฌ์šฉ์ž elastic์— ๋Œ€ํ•œ ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ๋ฐ˜ํ™˜ํ•ด์ค€๋‹ค. ๊ธฐ์–ตํ•˜๊ธฐ ์–ด๋ ค์›€์œผ๋กœ ์žฌ์„ค์ •๋„ ํ•ด์ฃผ๊ฒ ๋‹ค.

.\bin\elasticsearch-reset-password.bat interactive elastic

ํ•˜๊ณ  ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์ž…๋ ฅํ•ด์ฃผ๋ฉด ๋œ๋‹ค. ๋‚˜๋Š” ๊ทธ๋ƒฅ elastic์œผ๋กœ ํ†ต์ผํ–ˆ๋‹ค.

๋‹ค์‹œ elasticsearch์™€ kibana๋ฅผ ์‹คํ–‰ํ•ด์ฃผ๊ณ , ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์ž…๋ ฅํ•ด์„œ ์ ‘์†ํ•œ๋‹ค.

์งœ์ž”ํ•˜๊ณ  ์ ‘์†ํ•˜๋Š”๋ฐ ์„ฑ๊ณตํ–ˆ๋‹ค.

์• ๋จน์—ˆ๋˜ ๋ถ€๋ถ„์€ ์–ธ์ œ๋ถ€ํ„ฐ์ธ์ง€๋Š” ๋ชฐ๋ผ๋„ kibana๋กœ ์ ‘์†ํ–ˆ์„ ๋•Œ ๊ณง์žฅ kibana๋กœ ๊ฐ€๋Š” ๊ฒŒ ์•„๋‹ˆ๋ผ ํ†ตํ•ฉ ํ”„๋กœ๊ทธ๋žจ elastic์œผ๋กœ ๊ฐ€๊ฒŒ ๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ๊ตฌ๊ธ€๋ง์„ ํ•ด๋ด๋„ ๋งž์ง€ ์•Š๋Š” ๋ถ€๋ถ„์ด ๋งŽ์•˜๋‹ค. 

๊ณผ๊ฑฐ์—๋Š” try sample dataํ•˜๋ฉด ๋ฐ์ดํ„ฐ๋ฅผ ์ถ”๊ฐ€ํ•ด์„œ ์—ฌ๊ธฐ์„œ ๋ฐ”๋กœ ๋ณด์—ฌ์คฌ๋Š”๋ฐ, ์ง€๊ธˆ์€ elastic์—์„œ ํ˜ธ์ŠคํŒ…ํ•˜๋Š” ํ™˜๊ฒฝ์œผ๋กœ ๊ฒŒ์ŠคํŠธ๋กœ ์ ‘์†ํ•ด์„œ ํ™•์ธํ•ด๋ณผ ์ˆ˜ ์žˆ๋‹ค. ๋ฐ๋ชจ์‚ฌ์ดํŠธ๋Š” ์•„๋ž˜ ๋งํฌ์— ์žˆ๋‹ค.

 

Elastic Demos

 

demo.elastic.co

์™ผ์ชฝ ๋“œ๋กญ๋‹ค์šด...? ์‚ฌ์ด๋“œ๋ฐ”. ๋ฅผ ์—ด๋ฉด Analytics๊ฐ€ ๋‚˜์˜ค๋Š”๋ฐ ์ด ์นœ๊ตฌ๊ฐ€ kibana์ด๋‹ค. ๋ˆŒ๋Ÿฌ๋ด๋„ ์ง€๊ธˆ์€ ๋ฐ์ดํ„ฐ๊ฐ€ ์—†๊ธฐ ๋•Œ๋ฌธ์— ์ƒˆ dataview ์ถ”๊ฐ€์™€ ๊ฐ™์€ ๊ฒƒ๋งŒ ๋‚˜์˜จ๋‹ค. ์šฐ์„  ์—ฌ๊ธฐ๊นŒ์ง€ ํ•˜๋ฉด kibana์™€ elasticsearh ์„ค์น˜๋Š” ๋!

๋‹ค์Œ ํฌ์ŠคํŒ…์—์„œ๋Š” RDBMS์™€ elastic์„ logstash๋ฅผ ํ™œ์šฉํ•ด์„œ ์—ฐ๊ฒฐํ•ด๋ณด๊ณ , kibana๋กœ ๋ชจ๋‹ˆํ„ฐ๋งํ•ด๋ณด๋„๋ก ํ•˜๊ฒ ๋‹ค. 

 

p.s. ๋ถ„๋ช… ์ธ์ฆ ๊ด€๋ จ ๋ฌธ์ œ๊ฐ€ ์žˆ์—ˆ๋˜ ๊ฒƒ ๊ฐ™์€๋ฐ ๊ธฐ์–ต์ด ํฌ๋ฏธํ•˜๋‹ค.............. ์ค‘๊ฐ„์— ๋ฌธ์ œ๊ฐ€ ์žˆ์œผ์…จ๋‹ค๋ฉด ๋Œ“๊ธ€๋กœ ์•Œ๋ ค์ฃผ์‹œ๊ธธ ๋ฐ”๋ž๋‹ˆ๋‹ค :)... 

728x90
์ €์ž‘์žํ‘œ์‹œ ๋น„์˜๋ฆฌ ๋ณ€๊ฒฝ๊ธˆ์ง€ (์ƒˆ์ฐฝ์—ด๋ฆผ)

'๐Ÿฅ Web > โ” Back-end | etc.' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[Elasticsearch] Index Template ๊ตฌ์„ฑํ•˜๊ธฐ with Kibana & Logstash (1) - Setting  (0) 2023.07.06
[Elasticsearch] Logstash๋ฅผ ํ†ตํ•ด PostgreSQL๊ณผ Elastic Stack ์—ฐ๋™ํ•˜๊ธฐ  (0) 2023.06.29
[Elasticsearch] Logstash ์‚ฌ์šฉํ•ด๋ณด๊ธฐ  (0) 2023.06.29
[SQL] SQL ์ค‘๊ธ‰  (0) 2021.08.22
[SQL] SQL ๊ธฐ์ดˆ  (0) 2021.07.24
'๐Ÿฅ Web/โ” Back-end | etc.' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
  • [Elasticsearch] Logstash๋ฅผ ํ†ตํ•ด PostgreSQL๊ณผ Elastic Stack ์—ฐ๋™ํ•˜๊ธฐ
  • [Elasticsearch] Logstash ์‚ฌ์šฉํ•ด๋ณด๊ธฐ
  • [SQL] SQL ์ค‘๊ธ‰
  • [SQL] SQL ๊ธฐ์ดˆ
darly213
darly213
ํ˜ธ๋ฝํ˜ธ๋ฝํ•˜์ง€ ์•Š์€ ๊ฐœ๋ฐœ์ž๊ฐ€ ๋˜์–ด๋ณด์ž
  • darly213
    ERROR DENY
    darly213
  • ์ „์ฒด
    ์˜ค๋Š˜
    ์–ด์ œ
    • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (97)
      • ๐Ÿฌ ML & Data (50)
        • ๐ŸŒŠ Computer Vision (2)
        • ๐Ÿ“ฎ Reinforcement Learning (12)
        • ๐Ÿ“˜ ๋…ผ๋ฌธ & ๋ชจ๋ธ ๋ฆฌ๋ทฐ (8)
        • ๐Ÿฆ„ ๋ผ์ดํŠธ ๋”ฅ๋Ÿฌ๋‹ (3)
        • โ” Q & etc. (5)
        • ๐ŸŽซ ๋ผ์ดํŠธ ๋จธ์‹ ๋Ÿฌ๋‹ (20)
      • ๐Ÿฅ Web (21)
        • โšก Back-end | FastAPI (2)
        • โ›… Back-end | Spring (5)
        • โ” Back-end | etc. (9)
        • ๐ŸŽจ Front-end (4)
      • ๐ŸŽผ Project (8)
        • ๐ŸงŠ Monitoring System (8)
      • ๐Ÿˆ Algorithm (0)
      • ๐Ÿ”ฎ CS (2)
      • ๐Ÿณ Docker & Kubernetes (3)
      • ๐ŸŒˆ DEEEEEBUG (2)
      • ๐ŸŒ  etc. (8)
      • ๐Ÿ˜ผ ์‚ฌ๋‹ด (1)
  • ๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

    • ํ™ˆ
    • ๋ฐฉ๋ช…๋ก
    • GitHub
    • Notion
    • LinkedIn
  • ๋งํฌ

    • Github
    • Notion
  • ๊ณต์ง€์‚ฌํ•ญ

    • Contact ME!
  • 250x250
  • hELLOยท Designed By์ •์ƒ์šฐ.v4.10.3
darly213
[Elasticsearch] Elasticsearch ๊ธฐ๋ณธ ๊ฐœ๋… ๋ฐ ์„ค์น˜, kibana ์—ฐ๋™ํ•˜๊ธฐ
์ƒ๋‹จ์œผ๋กœ

ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”