Looker ํ•„ํ„ฐ ๊ตฌ์„ฑ์š”์†Œ

Looker ํ•„ํ„ฐ ๊ตฌ์„ฑ์š”์†Œ๋Š” Looker๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๋นŒ๋“œ๋œ ์ปค์Šคํ…€ ๋ฐ์ดํ„ฐ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์œ„ํ•œ Looker์˜ ํ’๋ถ€ํ•œ ํ•„ํ„ฐ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

Looker ๊ตฌ์„ฑ์š”์†Œ

Looker ๊ตฌ์„ฑ์š”์†Œ๋Š” React ๊ธฐ๋ฐ˜์˜ ์‚ฌ์ „ ๋นŒ๋“œ๋œ Looker ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ตฌ์„ฑ์š”์†Œ์ž…๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ์ž๋Š” Looker๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๋นŒ๋“œ๋œ ๋ฐ์ดํ„ฐ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ฐ ํ™•์žฅ ํ”„๋กœ๊ทธ๋žจ์˜ ๊ตฌ์„ฑ์š”์†Œ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ตฌ์„ฑ์š”์†Œ๋Š” Looker ํ™•์žฅ ํ”„๋กœ๊ทธ๋žจ ํ”„๋ ˆ์ž„์›Œํฌ ๋ฐ Looker์˜ ์‚ฝ์ž… SDK์™€ ํ•จ๊ป˜ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Looker ํ•„ํ„ฐ ๊ตฌ์„ฑ์š”์†Œ

ํ•„ํ„ฐ ๊ตฌ์„ฑ์š”์†Œ๋Š” ์ปค์Šคํ…€ ๋นŒ๋“œ๋œ ๋ฐ์ดํ„ฐ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ฐ ๋งž์ถค์„ค์ •๋œ ์‚ฝ์ž… Looker ๋Œ€์‹œ๋ณด๋“œ์— Looker์˜ ํ’๋ถ€ํ•œ ํ•„ํ„ฐ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ๊ฐœ๋ฐœ์ž๋Š” SDK ๋˜๋Š” ํ™•์žฅ ํ”„๋กœ๊ทธ๋žจ์„ ํ†ตํ•ด Looker API๋ฅผ ์‚ฌ์šฉํ•ด ํŠน์ • ๋Œ€์‹œ๋ณด๋“œ์˜ JSON์„ ๊ฐ€์ ธ์™€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ํ•„ํ„ฐ ๊ตฌ์„ฑ์š”์†Œ๋ฅผ ํฌํ•จํ•˜๊ณ  ๋Œ€์‹œ๋ณด๋“œ์—์„œ ๊ฐ ํ•„ํ„ฐ์˜ ์†์„ฑ์„ ์ „๋‹ฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ ๋‹ค์Œ ๊ตฌ์„ฑ์š”์†Œ๊ฐ€ ํ•„๋“œ์™€ ์ €์žฅ๋œ UI ๊ตฌ์„ฑ์— ๋”ฐ๋ผ ๊ฐ ํ•„ํ„ฐ๋ฅผ ๋ Œ๋”๋งํ•ฉ๋‹ˆ๋‹ค.

ํ•„ํ„ฐ ๊ตฌ์„ฑ์š”์†Œ ํŒจํ‚ค์ง€๋Š” Looker์˜ ์ž์ฒด ๋Œ€์‹œ๋ณด๋“œ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์ปจํŠธ๋กค๊ณผ ์œ ์‚ฌํ•œ 12๊ฐ€์ง€ ์œ ํ˜•์˜ ํ•„ํ„ฐ ์ปจํŠธ๋กค์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

  • ๋ฒ„ํŠผ ๊ทธ๋ฃน
  • ์ฒดํฌ๋ฐ•์Šค
  • ํƒœ๊ทธ ๋ชฉ๋ก
  • ๋ฒ”์œ„ ์Šฌ๋ผ์ด๋”
  • ๋ฒ„ํŠผ ์ „ํ™˜
  • ๋ผ๋””์˜ค ๋ฒ„ํŠผ
  • ๋“œ๋กญ๋‹ค์šด ๋ฉ”๋‰ด
  • ์Šฌ๋ผ์ด๋”
  • 1์ผ
  • ๊ธฐ๊ฐ„
  • ๊ธฐ๊ฐ„
  • ๊ณ ๊ธ‰

ํ•„ํ„ฐ ๊ตฌ์„ฑ์š”์†Œ๋Š” ํ•จ๊ป˜ ์ž‘๋™ํ•˜๋Š” 2๊ฐœ์˜ ํŒจํ‚ค์ง€, ์ฆ‰ @looker/filter-components ๋ฐ @looker/filter-expressions๋ฅผ ํ†ตํ•ด ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค. @looker/filter-components ํŒจํ‚ค์ง€๋Š” ๋ชจ๋“  ๋Œ€์‹œ๋ณด๋“œ ํ•„ํ„ฐ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ํ•„๋“œ, ํ•„ํ„ฐ ์œ ํ˜•, ํ˜„์žฌ ํ•„ํ„ฐ ํ‘œํ˜„์‹์„ ์‚ฌ์šฉํ•˜์—ฌ ํ•„ํ„ฐ ๊ตฌ์„ฑ์š”์†Œ๋ฅผ ๋ Œ๋”๋งํ•ฉ๋‹ˆ๋‹ค. @looker/filter-expressions ํŒจํ‚ค์ง€๋Š” ํ•„ํ„ฐ ํ‘œํ˜„์‹์„ @looker/filter-components์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ๋กœ ๋ณ€ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

ํ•„ํ„ฐ ๊ตฌ์„ฑ์š”์†Œ๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ•˜๋Š” ์ด์œ 

ํ•„ํ„ฐ ๊ตฌ์„ฑ์š”์†Œ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๊ฐœ๋ฐœ์ž ์‹œ๊ฐ„์„ ํ™•๋ณดํ•˜๊ณ  Looker์—์„œ ์ž‘์—…ํ•˜๋Š” ๋ถ„์„๊ฐ€๊ฐ€ ๊ฒฌ๊ณ ํ•˜๊ณ  ๋งž์ถค์„ค์ • ๊ฐ€๋Šฅํ•œ ์‚ฌ์šฉ์ž ํ™˜๊ฒฝ์„ ๋นŒ๋“œํ•˜๊ณ  ์œ ์ง€๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Looker ํ•„ํ„ฐ ๊ตฌ์„ฑ์š”์†Œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ด์ ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

  • ๊ณ ํ’ˆ์งˆ ํ•„ํ„ฐ ํ™˜๊ฒฝ - ํ•„ํ„ฐ ๊ตฌ์„ฑ์š”์†Œ๋Š” ํ•„์š”ํ•œ ํ•„ํ„ฐ ์œ ํ˜•์— ๊ฐ€์žฅ ์ ํ•ฉํ•œ Looker์˜ ํ’๋ถ€ํ•œ ํ•„ํ„ฐ ๋กœ์ง๊ณผ ๋‹ค์–‘ํ•œ ํ•„ํ„ฐ ์ปจํŠธ๋กค์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
  • ๊ฐœ๋ฐœ ์†๋„ ํ–ฅ์ƒ โ€” ํ•„ํ„ฐ ๊ตฌ์„ฑ์š”์†Œ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ํ•„ํ„ฐ์— '์ฆ‰์‹œ' ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ๊ฐœ๋ฐœ์ž๊ฐ€ ๋‹ค๋ฅธ ์ž‘์—…์— ์ง‘์ค‘ํ•˜๊ณ  ์ „๋ฐ˜์ ์ธ ๊ฐœ๋ฐœ ์†๋„๋ฅผ ๋†’์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๋งž์ถค์„ค์ • โ€” ํ•„ํ„ฐ ์ปจํŠธ๋กค์€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜, ํ™•์žฅ ํ”„๋กœ๊ทธ๋žจ ๋˜๋Š” ์‚ฝ์ž…๋œ ๋Œ€์‹œ๋ณด๋“œ์˜ ๋””์ž์ธ๊ณผ ๋ถ„์œ„๊ธฐ์— ๋งž๊ฒŒ ๋งž์ถค์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐœ๋ฐœ์ž๋Š” ํ•„ํ„ฐ ๊ตฌ์„ฑ์š”์†Œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ทธ ์–ด๋А ๋•Œ๋ณด๋‹ค๋„ ๋” ๋งŽ์€ ๋งž์ถค์„ค์ •์„ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • Looker ๋Œ€์‹œ๋ณด๋“œ์— ์—ฐ๊ฒฐ โ€” ํ•„ํ„ฐ ๊ตฌ์„ฑ์š”์†Œ๋Š” Looker ๋Œ€์‹œ๋ณด๋“œ์—์„œ ํ•„ํ„ฐ์— ์ง์ ‘ ์—ฐ๊ฒฐํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ํ•ด๋‹น ํ•„ํ„ฐ ๋ฒ„์ „์€ Looker ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜, ํ™•์žฅ ํ”„๋กœ๊ทธ๋žจ ๋˜๋Š” ๊ตฌ์„ฑ์š”์†Œ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์‚ฝ์ž…์—์„œ ๋ Œ๋”๋ง๋ฉ๋‹ˆ๋‹ค. ํ•„ํ„ฐ ๊ตฌ์„ฑ์š”์†Œ์— ์—ฐ๊ฒฐ๋œ Looker ๋Œ€์‹œ๋ณด๋“œ์— ๋Œ€ํ•œ ์ˆ˜์ • ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ์‚ฌ์šฉ์ž๋Š” Looker ๋Œ€์‹œ๋ณด๋“œ์—์„œ ํ•„ํ„ฐ๋ฅผ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์ด๋ฅผ ํ†ตํ•ด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜, ํ™•์žฅ ํ”„๋กœ๊ทธ๋žจ, ์‚ฝ์ž…์—์„œ ํ•„ํ„ฐ๊ฐ€ ์—…๋ฐ์ดํŠธ๋ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๋น„์ฆˆ๋‹ˆ์Šค์ƒ ํ•„ํ„ฐ๋ฅผ ์กฐ์ •ํ•ด์•ผ ํ•  ๋•Œ๋งˆ๋‹ค ๊ฐœ๋ฐœ์ž๊ฐ€ ๋ฐ˜๋“œ์‹œ ํ•„์š”ํ•œ ๊ฒƒ์€ ์•„๋‹ˆ๋ฏ€๋กœ ๊ฐœ๋ฐœ์ž ์‹œ๊ฐ„์ด ์ ˆ์•ฝ๋ฉ๋‹ˆ๋‹ค.
  • Looker ๋ชจ๋ธ๊ณผ ์—ฐ๊ฒฐ โ€” ํ•„ํ„ฐ ๊ตฌ์„ฑ์š”์†Œ๋Š” ๋นŒ๋“œ๋œ Looker ๋ชจ๋ธ์˜ ๋ณ€๊ฒฝ์‚ฌํ•ญ์„ ์ธ์‹ํ•ฉ๋‹ˆ๋‹ค. ์ฆ‰, ํ•„ํ„ฐ ํ•„๋“œ ๋ฐ ๊ธฐํƒ€ ์˜ต์…˜์ด ๋™์ ์ด๋ฉฐ ๊ธฐ๋ณธ ๋ชจ๋ธ ์—…๋ฐ์ดํŠธ์™€ ํ•จ๊ป˜ ์—…๋ฐ์ดํŠธ๋ฉ๋‹ˆ๋‹ค.

ํ•„ํ„ฐ ๊ตฌ์„ฑ์š”์†Œ ์„ค์น˜ ๋ฐ ์‚ฌ์šฉ

@looker/components NPM ์ €์žฅ์†Œ์—์„œ @looker/filter-components ๋ฐ @looker/filter-expressions ํŒจํ‚ค์ง€๋ฅผ ๋‹ค์šด๋กœ๋“œํ•ฉ๋‹ˆ๋‹ค.

ํ•„ํ„ฐ ๊ตฌ์„ฑ์š”์†Œ ํŒจํ‚ค์ง€ ์„ค์น˜ ๋ฐ ์‚ฌ์šฉ์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์€ NPM ๋˜๋Š” GitHub์—์„œ ์ œ๊ณต๋˜๋Š” ๊ฐ ํŒจํ‚ค์ง€์˜ ๋ฆฌ๋“œ๋ฏธ ๋ฌธ์„œ์—์„œ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํ•„ํ„ฐ ๊ตฌ์„ฑ์š”์†Œ ๋ฐ๋ชจ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ GitHub์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฐ๋ชจ ์‚ฌ์šฉ์— ๋Œ€ํ•œ ์•ˆ๋‚ด๋Š” ๋ฆฌ๋“œ๋ฏธ ๋ฌธ์„œ์— ๋‚˜์™€ ์žˆ์Šต๋‹ˆ๋‹ค.