์๋ ํ์ธ์ ,
์๋ ํ์์ Elastic search์ ๋ํ ๋ฌธ์๊ฐ ์์ต๋๋ค.
{
"์์ด๋": 1,
"์ด๋ฆ": "๋
น์ ๋ฌธ",
"๊ฐ๊ฒฉ": 12.50,
"ํ๊ทธ": ["์ง", "๋
น์"]
}
์ด์ "ํ๊ทธ" ๋ฐฐ์ด์ ์ ๊ฐ์ผ๋ก ๋์ผํ ๋ฌธ์๋ฅผ ์
๋ฐ์ดํธํ๊ณ ์ถ์ต๋๋ค.
์ ๊ฐ์ "๋
ธ๋์"์
๋๋ค.
"๋ ธ๋์"์ ๊ธฐ์กด ๋ฌธ์๋ก ์ ๋ฐ์ดํธํ๋ฉด ๋ด ๋ฌธ์๊ฐ ์๋์ ๊ฐ์ด ํ์๋ฉ๋๋ค.
{
"์์ด๋": 1,
"์ด๋ฆ": "๋
น์ ๋ฌธ",
"๊ฐ๊ฒฉ": 12.50,
"ํ๊ทธ": ["์ง", "๋
น์","๋
ธ๋์"]
}
์ง๋ฌธ: ์ ๊ฐ์ ๊ธฐ์กด ๊ฐ๊ณผ ๋ณํฉํ๋ ๋ฐฉ๋ฒ์ ๋ฌด์์
๋๊น?
์ด๋ค ์ฌ๋์ด ์ด๊ฒ์ ๋ํด ์ ๋ฅผ ์๋ดํด ์ฃผ์๊ฒ ์ต๋๊น?
๋ฌธ์์ ์์ธ์ ๋ค์ ์์ฑํ๊ธฐ๋ง ํ๋ฉด ๋ฌธ์๊ฐ ์ ๋ฐ์ดํธ๋ฉ๋๋ค. http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/docs-index_.html ์ฐธ์กฐ
์๋ ํ์ธ์ ๋งํฌ์์ปด์ ๋๋ค.
ReIndex ๋ฌธ์๊ฐ ์ด์ ๊ฐ์ ์ ๊ฐ์ผ๋ก ๋ฎ์ด์ฐ๊ฑฐ๋ ์
๋ฐ์ดํธํฉ๋๋ค.
๋ค์ ์ธ๋ฑ์ฑํ๊ฑฐ๋ ์
๋ฐ์ดํธ ๋ฐ upsert API๋ฅผ ํธ์ถํ ํ ๋ค์ json์ ๋ณผ ์ ์์ต๋๋ค.
{
"์์ด๋": 1,
"์ด๋ฆ": "๋
น์ ๋ฌธ",
"๊ฐ๊ฒฉ": 12.50,
"ํ๊ทธ": ["๋
ธ๋์"]
}
์ถ๋ ฅ json์์ ๋ฐฐ์ด ํ๊ทธ์์ ์ด์ ๊ฐ์ ์์ด ๋ฒ๋ ธ์ต๋๋ค.
"ํ๊ทธ": ["์ง", "๋
น์"]
Java API๋ ๊ธฐ์กด ๋ฌธ์๋ฅผ ์ ๋ฐ์ดํธํ๊ฑฐ๋ ์ข ๋ฃ๋์ง ์์ ๊ฒฝ์ฐ ์ ๋ฌธ์๋ฅผ ์์ฑํฉ๋๋ค.
IndexRequest indexRequest = ์๋ก์ด IndexRequest("์ฌ์ฉ์", "ํ
์คํธ","1")
.source(๋น๋);
UpdateRequest updateRequest = ์๋ก์ด UpdateRequest("์ฌ์ฉ์", "ํ
์คํธ","1")
.doc(๋น๋)
.upsert(์ธ๋ฑ์ค ์์ฒญ);
ํด๋ผ์ด์ธํธ.์
๋ฐ์ดํธ(์
๋ฐ์ดํธ์์ฒญ).get();
์ด๊ฒ์ด ๋ฐ๋ก ๋ฌด๋ ๋ค์์ ์ผ์ด๋๊ณ ์๋ ์ผ์ ๋๋ค. API ์ ๋ฐ์ดํธ๋ ์ด์ ๋ฌธ์๋ฅผ ๊ฐ์ ธ์ค๊ณ , ๊ฐ์ ๋ณํฉํ๊ณ , ์ ์ฒด ์ ๋ฌธ์๋ฅผ ์ธ๋ฑ์ฑํฉ๋๋ค.
BTW ๋ฉ์ผ๋ง ๋ฆฌ์คํธ์ ์ง๋ฌธํ์ญ์์ค. ์ด ๊ณต๊ฐ์ ๋ฌธ์ ๋๋ ๊ธฐ๋ฅ ์์ฒญ์ ์ํ ๊ฒ์ ๋๋ค.