SQL Runner๋กœ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ํ•จ์ˆ˜ ๊ด€๋ฆฌ

SQL Runner๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์ง์ ‘ ์•ก์„ธ์Šคํ•˜๊ณ  ๋‹ค์–‘ํ•œ ๋ฐฉ์‹์œผ๋กœ ํ•ด๋‹น ์•ก์„ธ์Šค๋ฅผ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. SQL Runner๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์Šคํ‚ค๋งˆ์˜ ํ…Œ์ด๋ธ”์„ ํƒ์ƒ‰ํ•˜๊ณ , SQL ์ฟผ๋ฆฌ์—์„œ ์ž„์‹œ ํƒ์ƒ‰์„ ์‚ฌ์šฉํ•˜๊ณ , ๋ฐ์ดํ„ฐ์— ๋Œ€ํ•ด ๋ฏธ๋ฆฌ ์ž‘์„ฑ๋œ ์„ค๋ช… ์ฟผ๋ฆฌ๋ฅผ ์‹คํ–‰ํ•˜๊ณ , SQL Runner ๊ธฐ๋ก์„ ํ™•์ธํ•˜๊ณ , ๊ฒฐ๊ณผ๋ฅผ ๋‹ค์šด๋กœ๋“œํ•˜๊ณ , ์ฟผ๋ฆฌ๋ฅผ ๊ณต์œ ํ•˜๊ณ , LookML ํ”„๋กœ์ ํŠธ์— ํŒŒ์ƒ ํ…Œ์ด๋ธ”๋กœ ์ถ”๊ฐ€ํ•˜๊ณ , ๊ธฐํƒ€ ์œ ์šฉํ•œ ์ž‘์—…์„ ์†์‰ฝ๊ฒŒ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด ํŽ˜์ด์ง€์—์„œ๋Š” SQL Runner๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์Šคํ‚ค๋งˆ์™€ ๋ฐ์ดํ„ฐ๋ฅผ ์ˆ˜์ •ํ•˜๋Š” ๋ฐฉ๋ฒ•, EXAMINE ๋ฌธ์œผ๋กœ ์ฟผ๋ฆฌ์˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์‹คํ–‰ ๊ณ„ํš ๋ณด๊ธฐ, SQL Runner๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ๊ฐ€์ ธ์˜ค๋Š” ๋ฐฉ๋ฒ•์„ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค. ๋‹ค์Œ์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์€ ๋‹ค๋ฅธ ๋ฌธ์„œ ํŽ˜์ด์ง€๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์Šคํ‚ค๋งˆ ๋ฐ ๋ฐ์ดํ„ฐ ์ˆ˜์ •

SQL Runner์˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ํƒญ์„ ์‚ฌ์šฉํ•˜๋ฉด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ์ฟผ๋ฆฌ๋ฅผ ์‹คํ–‰ํ•˜๋Š” ๊ฒƒ ์™ธ์—๋„ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ๋ฐ์ดํ„ฐ ์ •์˜ ์–ธ์–ด(DDL) ๋ฐ ๋ฐ์ดํ„ฐ ์กฐ์ž‘ ์–ธ์–ด(DML) ๋ฌธ์„ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. SQL Runner๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์Šคํ‚ค๋งˆ๋ฅผ ๋ณ€๊ฒฝ(์˜ˆ: ๋งŒ๋“ค๊ธฐ, ์‚ญ์ œ, ๋ณ€๊ฒฝ)ํ•˜๊ณ  ๋ฐ์ดํ„ฐ๋ฅผ ๋ณ€๊ฒฝ(์˜ˆ: ์‚ฝ์ž…, ์—…๋ฐ์ดํŠธ, ์‚ญ์ œ)ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. SQL ์–ธ์–ด๋Š” DDL ๋ฐ DML ๋ฌธ์— ๋Œ€ํ•œ ์ง€์›์ด ๋‹ค๋ฅด๋ฏ€๋กœ ์ง€์›๋˜๋Š” ๋ฌธ์„œ๋ฅผ ์ฐพ์œผ๋ ค๋ฉด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋ฌธ์„œ๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

SQL Runner์˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ DDL ๋˜๋Š” DML ๋ฌธ์„ ์‹คํ–‰ํ•˜๋ ค๋ฉด ๋‹ค์Œ ๋‹จ๊ณ„๋ฅผ ๋”ฐ๋ฅด์„ธ์š”.

  1. SQL Runner๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค.
  2. SQL Runner์—์„œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ํƒญ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.
  3. SQL Runner ์ฟผ๋ฆฌ ์ƒ์ž์— DDL ๋˜๋Š” DML ๋ฌธ์„ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค. DDL ๋ฐ DML ๋ฌธ์˜ ์ง€์› ๋ฐ ๊ตฌ๋ฌธ์€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์–ธ์–ด ๋ฌธ์„œ๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.
  4. ์‹คํ–‰์„ ํด๋ฆญํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ๋ฌธ์„ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.

๋ฌธ์ด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ์„ฑ๊ณต์ ์œผ๋กœ ์‹คํ–‰๋˜๋ฉด SQL ๊ฒฐ๊ณผ ์ƒ์ž์— ํ™•์ธ ๋ฉ”์‹œ์ง€๊ฐ€ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

EXPLAIN๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์‹คํ–‰ ๊ณ„ํš ๊ฒ€์‚ฌ

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ๋Œ€ํ•ด SQL ์ฟผ๋ฆฌ๋ฅผ ์‹คํ–‰ํ•˜๋Š” ๊ฒƒ ์™ธ์—๋„ SQL Runner๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ฟผ๋ฆฌ์˜ EXPLAIN ํ•จ์ˆ˜๋ฅผ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋Œ€๋ถ€๋ถ„์˜ SQL ์–ธ์–ด์—์„œ ์ง€์›ํ•˜๋Š” EXPLAIN ํ•จ์ˆ˜๋Š” ์ฟผ๋ฆฌ์˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์‹คํ–‰ ๊ณ„ํš์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

  1. ํƒ์ƒ‰์—์„œ ์ฟผ๋ฆฌ๋ฅผ ์‹คํ–‰ํ•˜๊ณ  ๋ฐ์ดํ„ฐ ์˜์—ญ์˜ SQL ํƒญ์„ ํด๋ฆญํ•˜์—ฌ ์ฟผ๋ฆฌ์˜ SQL ๋ช…๋ น์–ด๋ฅผ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.
  2. ํƒ์ƒ‰์˜ SQL ํƒญ์—์„œ SQL Runner์˜ ์„ค๋ช… ๋ฒ„ํŠผ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

    Looker๊ฐ€ SQL Runner๋ฅผ ์—ด๊ณ  EXPLAIN ํ•จ์ˆ˜ ๋‚ด์—์„œ ์ฟผ๋ฆฌ๋ฅผ ๋กœ๋“œํ•ฉ๋‹ˆ๋‹ค.

  3. SQL Runner์—์„œ ์‹คํ–‰์„ ํด๋ฆญํ•˜์—ฌ EXPLAIN ํ•จ์ˆ˜๋ฅผ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.

  4. EXPLAIN ํ•จ์ˆ˜์˜ ์ถœ๋ ฅ์„ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

EXPLAIN ์‘๋‹ต์˜ ์ •ํ™•ํ•œ ์ •๋ณด์™€ ํ˜•์‹์€ ํŠน์ • ์–ธ์–ด์— ๋”ฐ๋ผ ๋‹ค๋ฅด๋ฏ€๋กœ ํŠน์ • ์–ธ์–ด์— ๋Œ€ํ•œ ๋ฌธ์„œ๊ฐ€ ํ‘œ์‹œ๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์œ„ MySQL ์˜ˆ์‹œ์—์„œ EXPLAIN ํ•จ์ˆ˜๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ์ฟผ๋ฆฌ๋ฅผ ์™„๋ฃŒํ•˜๊ธฐ ์œ„ํ•ด ์ˆ˜ํ–‰ํ•œ ๋‹จ๊ณ„ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๊ฐ€ ์„ฑ๋Šฅ์„ ๊ฐœ์„ ํ•˜๊ธฐ ์œ„ํ•ด ์ƒ‰์ธ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒฝ์šฐ ์ฟผ๋ฆฌ์—์„œ ์ „์ฒด ํ…Œ์ด๋ธ” ์Šค์บ”์„ ๋ฐœ๊ฒฌํ•  ์ˆ˜๋„ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์‹คํ–‰ ์†๋„๊ฐ€ ๋А๋ฆฐ ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์ผ ๋•Œ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.

SQL Runner์—์„œ EXPLAIN๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ SQL์„ ์ตœ์ ํ™”ํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ๋‹จ๊ณ„๋ณ„ ์˜ˆ์‹œ๋Š” EXPLAIN์œผ๋กœ SQL ์ตœ์ ํ™” ๋ฐฉ๋ฒ• ์ปค๋ฎค๋‹ˆํ‹ฐ ๊ฒŒ์‹œ๋ฌผ์„ ์ฐธ์กฐํ•˜์„ธ์š”.

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ •๋ณด ๊ฐ€์ ธ์˜ค๊ธฐ

SQL Runner์˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ํƒญ์—๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ๋Œ€ํ•œ ์œ ์šฉํ•œ ์ •๋ณด๋ฅผ ์ œ๊ณตํ•˜๋Š” ๋‹ค์–‘ํ•œ ๋„๊ตฌ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์—ฐ๊ฒฐ ์ •๋ณด ๊ฐ€์ ธ์˜ค๊ธฐ

SQL Runner์—์„œ ์—ฐ๊ฒฐ์„ ์„ ํƒํ•˜๋ฉด Looker์—์„œ SQL ์ฟผ๋ฆฌ ๋ฐฐ๋„ˆ ์˜ค๋ฅธ์ชฝ์— ํ•ด๋‹น ์—ฐ๊ฒฐ์˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์–ธ์–ด๋ฅผ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค. SQL Runner์—์„œ ์—ด๊ธฐ ๋˜๋Š” SQL Runner์—์„œ ์„ค๋ช…์„ ์„ ํƒํ•˜์—ฌ SQL Runner๋กœ ์ด๋™ํ•œ ๊ฒฝ์šฐ Looker์—์„œ ์ ์ ˆํ•œ ์—ฐ๊ฒฐ์„ ๋ฏธ๋ฆฌ ์„ ํƒํ•˜๊ณ  ์—ฐ๊ฒฐ์˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์–ธ์–ด๋ฅผ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค.

์—ฐ๊ฒฐ ํ†ฑ๋‹ˆ๋ฐ”ํ€ด ๋ฉ”๋‰ด๋ฅผ ํด๋ฆญํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์—ฐ๊ฒฐ์— ๋Œ€ํ•œ ๋” ๋งŽ์€ ์˜ต์…˜์„ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

  • ํ˜„์žฌ ์—ฐ๊ฒฐ์—์„œ ์‹คํ–‰ ์ค‘์ธ ์ฟผ๋ฆฌ์™€ ํ”„๋กœ์„ธ์Šค์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ํ‘œ์‹œํ•˜๋ ค๋ฉด ํ”„๋กœ์„ธ์Šค ํ‘œ์‹œ ์˜ต์…˜์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.
  • ์Šคํ‚ค๋งˆ ๋ฐ ํ…Œ์ด๋ธ” ์ƒˆ๋กœ๊ณ ์นจ ์˜ต์…˜์„ ์„ ํƒํ•˜์—ฌ SQL Runner ์™ผ์ชฝ ํƒ์ƒ‰์ฐฝ์„ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ์Šคํ‚ค๋งˆ ๋ฐ ํ…Œ์ด๋ธ”๋กœ ๋‹ค์‹œ ์ฑ„์›๋‹ˆ๋‹ค.

BigQuery ํ†ฑ๋‹ˆ๋ฐ”ํ€ด ๋ฉ”๋‰ด ์˜ต์…˜

์—ฌ๋Ÿฌ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์ง€์›ํ•˜๋Š” BigQuery ์—ฐ๊ฒฐ์„ ์„ ํƒํ•˜๋ฉด Looker๊ฐ€ ํ†ฑ๋‹ˆ๋ฐ”ํ€ด ๋ฉ”๋‰ด์— ์–ธ์–ด๋ณ„ ์˜ต์…˜์„ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค. ๋ฉ”๋‰ด ํ•ญ๋ชฉ์€ ์„ ํƒํ•œ ์˜ต์…˜์— ๋”ฐ๋ผ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ํ”„๋กœ์ ํŠธ ํ‘œ์‹œ ๋ฐ ๊ณต๊ฐœ ํ”„๋กœ์ ํŠธ ๊ฒ€์ƒ‰ ๊ฐ„์— ์ „ํ™˜๋ฉ๋‹ˆ๋‹ค.

  • ์Šคํ‚ค๋งˆ ๋ฐ ํ…Œ์ด๋ธ” ์ƒˆ๋กœ๊ณ ์นจ์„ ์„ ํƒํ•˜์—ฌ SQL Runner ์™ผ์ชฝ ํƒ์ƒ‰์ฐฝ์„ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์žˆ๋Š” ์Šคํ‚ค๋งˆ ๋ฐ ํ…Œ์ด๋ธ”๋กœ ๋‹ค์‹œ ์ฑ„์›๋‹ˆ๋‹ค.
  • ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ํ”„๋กœ์ ํŠธ๊ฐ€ ํ‘œ์‹œ๋˜๋ฉด ๊ณต๊ฐœ ํ”„๋กœ์ ํŠธ ๊ฒ€์ƒ‰์„ ์œ„ํ•œ ํ†ฑ๋‹ˆ๋ฐ”ํ€ด ๋ฉ”๋‰ด ์˜ต์…˜์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ •๋ณด ์Šคํ‚ค๋งˆ์— ํ‘œ์‹œ๋˜์ง€ ์•Š๋Š” ๊ณต๊ฐœ ๋ฐ์ดํ„ฐ ์„ธํŠธ๋ฅผ ๊ฒ€์ƒ‰ํ•˜๋ ค๋ฉด ์ด ์˜ต์…˜์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.
  • ๊ณต๊ฐœ ํ”„๋กœ์ ํŠธ๊ฐ€ ํ‘œ์‹œ๋˜๋ฉด ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ํ”„๋กœ์ ํŠธ ํ‘œ์‹œ๋ฅผ ์œ„ํ•œ ํ†ฑ๋‹ˆ๋ฐ”ํ€ด ๋ฉ”๋‰ด ์˜ต์…˜์ด ์žˆ์Šต๋‹ˆ๋‹ค. SQL Runner ์™ผ์ชฝ ํƒ์ƒ‰์ฐฝ์—์„œ ์—ฐ๊ฒฐ์„ ํŠน์ • BigQuery ํ”„๋กœ์ ํŠธ ๋ฐ ํ…Œ์ด๋ธ”๋กœ ๋˜๋Œ๋ฆฌ๋ ค๋ฉด ์ด ์˜ต์…˜์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ฒ€์ƒ‰

SQL Runner๋Š” ์„ ํƒํ•œ ์Šคํ‚ค๋งˆ(๋˜๋Š” Google BigQuery ์—ฐ๊ฒฐ์˜ ๊ฒฝ์šฐ ๋ฐ์ดํ„ฐ ์„ธํŠธ) ์•„๋ž˜์— ๊ฒ€์ƒ‰์ฐฝ์„ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค.

SQL Runner ๊ฒ€์ƒ‰์€ ๊ฒ€์ƒ‰์ฐฝ์— ๋ฌธ์ž์—ด์ด ํฌํ•จ๋œ ๋ชจ๋“  ํ…Œ์ด๋ธ” ๋ฐ ํ…Œ์ด๋ธ” ์—ด์˜ ์ด๋ฆ„์„ ์ฐพ์•„๋ด…๋‹ˆ๋‹ค. ๋‹ค์Œ ๊ทธ๋ฆผ์—์„œ 'airport_name'์€ ์—ด์ด๊ณ  'airport_remarks'๋Š” ํ…Œ์ด๋ธ”์ž…๋‹ˆ๋‹ค.

๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ ์ค‘ ํ•˜๋‚˜๋ฅผ ํด๋ฆญํ•˜์—ฌ SQL Runner์—์„œ ํ•ด๋‹น ํ•ญ๋ชฉ์œผ๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค.

ํ…Œ์ด๋ธ” ์ •๋ณด ๊ฐ€์ ธ์˜ค๊ธฐ

๊ธฐ๋ณธ์ ์œผ๋กœ ์—ฐ๊ฒฐ๊ณผ ์Šคํ‚ค๋งˆ๋ฅผ ์„ ํƒํ•˜๋ฉด SQL Runner๊ฐ€ ๋ชจ๋“  ํ…Œ์ด๋ธ” ์ •๋ณด๋ฅผ ๋ฏธ๋ฆฌ ๋กœ๋“œํ•ฉ๋‹ˆ๋‹ค. ํ…Œ์ด๋ธ”์ด ๋งŽ๊ฑฐ๋‚˜ ๋งค์šฐ ํฐ ํ…Œ์ด๋ธ”์˜ ๊ฒฝ์šฐ ๊ด€๋ฆฌ์ž๋Š” ์—ฐ๊ฒฐ ํŽ˜์ด์ง€์—์„œ SQL Runner ํ”„๋ฆฌ์บ์‹œ ์˜ต์…˜์„ ์„ ํƒ ํ•ด์ œํ•˜์—ฌ ์ด ๋™์ž‘์„ ์‚ฌ์šฉ ์ค‘์ง€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

SQL Runner์˜ ์™ผ์ชฝ ํƒ์ƒ‰ ํŒจ๋„์„ ์‚ฌ์šฉํ•˜์—ฌ ์—ฐ๊ฒฐ์˜ ์Šคํ‚ค๋งˆ์™€ ํ…Œ์ด๋ธ”์„ ํƒ์ƒ‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์—ฐ๊ฒฐ ๋ฐ ์Šคํ‚ค๋งˆ๋ฅผ ์„ ํƒํ•˜์—ฌ ํ•ด๋‹น ์Šคํ‚ค๋งˆ์˜ ๋ชจ๋“  ํ…Œ์ด๋ธ”์„ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค. ํ…Œ์ด๋ธ” ์ด๋ฆ„์„ ํด๋ฆญํ•˜๋ฉด ํ•ด๋‹น ํ…Œ์ด๋ธ”์˜ ํ•„๋“œ๊ฐ€ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

SQL Runner์—๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์ดํ•ดํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋˜๋Š” ๋ช‡ ๊ฐ€์ง€ ์‚ฌ์ „ ์ž‘์„ฑ๋œ ์ฟผ๋ฆฌ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์ฟผ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๋ฉด ํ…Œ์ด๋ธ” ๋˜๋Š” ํ…Œ์ด๋ธ” ์—ด ์ด๋ฆ„ ์˜†์— ๋‚˜ํƒ€๋‚˜๋Š” ํ†ฑ๋‹ˆ๋ฐ”ํ€ด๋ฅผ ํด๋ฆญํ•˜๊ณ  ์‹คํ–‰ํ•  ์ฟผ๋ฆฌ๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค. Looker๊ฐ€ SQL ์ฟผ๋ฆฌ ์„น์…˜์—์„œ SQL์„ ์ž๋™์œผ๋กœ ์ƒ์„ฑํ•˜๊ณ  ์ฟผ๋ฆฌ๊ฐ€ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค.

์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ์ฟผ๋ฆฌ๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์–ธ์–ด์— ๋”ฐ๋ผ ๋‹ค๋ฆ…๋‹ˆ๋‹ค.

ํ…Œ์ด๋ธ” ์ •๋ณด

ํ…Œ์ด๋ธ” ์ด๋ฆ„ ์˜†์˜ ํ†ฑ๋‹ˆ๋ฐ”ํ€ด๋ฅผ ํด๋ฆญํ•˜๋ฉด Looker์— ๋‹ค์Œ ์˜ต์…˜์ด ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

  • Explore ํ…Œ์ด๋ธ”: ํ…Œ์ด๋ธ”์˜ Looker Explore์— ๋Œ€ํ•œ ์ƒˆ ๋ธŒ๋ผ์šฐ์ € ํƒญ์„ ์—ฝ๋‹ˆ๋‹ค.
  • ์„ค๋ช…: ๊ธฐ๋ณธ ํ…Œ์ด๋ธ”์˜ ์—ด ์ด๋ฆ„๊ณผ ๋ฐ์ดํ„ฐ ์œ ํ˜•์„ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค.
  • ์ƒ‰์ธ ํ‘œ์‹œ: ํ…Œ์ด๋ธ” ์ƒ‰์ธ์ด ์ƒ์„ฑ๋˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค.
  • 10๊ฐœ ์„ ํƒ: ํ…Œ์ด๋ธ”์˜ ์ฒ˜์Œ 10๊ฐœ ํ–‰์— ๋Œ€ํ•œ ์ฟผ๋ฆฌ๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ๋ฐ์ดํ„ฐ๊ฐ€ ์‹ค์ œ๋กœ ์–ด๋–ป๊ฒŒ ๋ณด์ด๋Š”์ง€ ํŒŒ์•…ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๊ฐœ์ˆ˜: ํ…Œ์ด๋ธ”์˜ ์ด ํ–‰ ์ˆ˜๋ฅผ ๊ฐ€์ ธ์˜ค๋Š” ๊ฐ„๋‹จํ•œ count(*) ์ฟผ๋ฆฌ๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

์—ด ์ •๋ณด

ํ…Œ์ด๋ธ” ์ด๋ฆ„์„ ํด๋ฆญํ•˜์—ฌ ํ…Œ์ด๋ธ”์˜ ์—ด์„ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค. ์—ด ์ด๋ฆ„ ์˜†์— ์žˆ๋Š” ํ†ฑ๋‹ˆ๋ฐ”ํ€ด๋ฅผ ํด๋ฆญํ•˜๋ฉด Looker์—์„œ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์˜ต์…˜์„ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค.

  • ๊ฐ€์žฅ ์ผ๋ฐ˜์ ์ธ ๊ฐ’: ํ•ด๋‹น ํ…Œ์ด๋ธ” ์—ด์—์„œ ๊ฐ€์žฅ ์ผ๋ฐ˜์ ์ธ ๊ฐ’์˜ ์ฟผ๋ฆฌ์™€ ํ•ด๋‹น ์—ด์—์„œ ํ•ด๋‹น ๊ฐ’์ด ๋ฐœ๊ฒฌ๋œ ํšŸ์ˆ˜๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.
  • ๋Œ€๋žต์ ์ธ ๊ฐœ์ˆ˜: ์—ด์—์„œ ๋ฐœ๊ฒฌ๋œ ๋Œ€๋žต์ ์ธ ๊ณ ์œ  ๊ฐ’ ์ˆ˜๋ฅผ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค.

์—ด ๋ฐ์ดํ„ฐ ์œ ํ˜• ์ •๋ณด ๊ฐ€์ ธ์˜ค๊ธฐ

SQL Runner๋กœ ๋‹ค์Œ ๋‹จ๊ณ„๋ฅผ ์ˆ˜ํ–‰ํ•˜์—ฌ ์—ด ๋ฐ์ดํ„ฐ ์œ ํ˜• ์ •๋ณด๋ฅผ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  1. SQL Runner์˜ ์—ฐ๊ฒฐ ๋“œ๋กญ๋‹ค์šด์—์„œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์—ฐ๊ฒฐ์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.
  2. ์Šคํ‚ค๋งˆ ๋“œ๋กญ๋‹ค์šด์—์„œ ์Šคํ‚ค๋งˆ๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค. BigQuery ์—ฐ๊ฒฐ์˜ ๊ฒฝ์šฐ ํ”„๋กœ์ ํŠธ ๋ฐ ๋ฐ์ดํ„ฐ ์„ธํŠธ๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.
  3. SQL Runner๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ์Šคํ‚ค๋งˆ์— ์žˆ๋Š” ํ…Œ์ด๋ธ” ๋ชฉ๋ก์„ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค. ํ…Œ์ด๋ธ”์„ ํด๋ฆญํ•˜์—ฌ ํ•ด๋‹น ํ…Œ์ด๋ธ”์˜ ์—ด์„ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.
  4. ๊ฐ ์—ด ์ด๋ฆ„์—๋Š” ๋ฐ์ดํ„ฐ ์œ ํ˜•์„ ๋‚˜ํƒ€๋‚ด๋Š” ์•„์ด์ฝ˜์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์—ด ์ด๋ฆ„ ์œ„๋กœ ๋งˆ์šฐ์Šค๋ฅผ ๊ฐ€์ ธ๊ฐ€๋ฉด ํ•ด๋‹น ์—ด์˜ ๋ฐ์ดํ„ฐ ์œ ํ˜•์ด ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

์‚ฌ์ „ ๋นŒ๋“œ๋œ SQL ์ฟผ๋ฆฌ ์ˆ˜์ •

ํ…Œ์ด๋ธ” ๋ฐ ํ•„๋“œ ํ†ฑ๋‹ˆ๋ฐ”ํ€ด ๋ฉ”๋‰ด์—์„œ ์„ ํƒํ•œ ์‚ฌ์ „ ์„ค์ •๋œ SQL ์ฟผ๋ฆฌ๋ฅผ ํฌํ•จํ•˜์—ฌ ์ฟผ๋ฆฌ ์˜์—ญ์—์„œ ๋ชจ๋“  SQL ์ฟผ๋ฆฌ๋ฅผ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด SQL Runner ๊ฐœ์ˆ˜ ์ฟผ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ๊ธฐ๋ณธ ๊ฐœ์ˆ˜ ๋ช…๋ น์–ด๋ฅผ ๋กœ๋“œํ•œ ๋‹ค์Œ SQL ์ฟผ๋ฆฌ๋ฅผ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ public.users ํ…Œ์ด๋ธ”์˜ id ์—ด์ด ๊ธฐ๋ณธ ํ‚ค์ผ ์ˆ˜ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐ๋˜๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๊ฐœ์ˆ˜ ์ฟผ๋ฆฌ๋ฅผ ์ˆ˜์ •ํ•˜์—ฌ ์ค‘๋ณต ๊ฐ’์ด ์—†๋Š”์ง€ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

SELECT id ,COUNT(*)
FROM public.users
GROUP BY 1
ORDER BY 2 DESC
LIMIT 10

์ฟผ๋ฆฌ๋Š” ๊ฒฐ๊ณผ๊ฐ€ 10๊ฐœ ํ–‰์œผ๋กœ ์ œํ•œ๋˜๊ธฐ ์ „์— ๊ฐœ์ˆ˜์— ๋”ฐ๋ผ ์ •๋ ฌ๋˜๋ฏ€๋กœ ๊ฐ€์žฅ ๋†’์€ ๊ฐœ์ˆ˜ ๊ฐ’์ด ๊ฒฐ๊ณผ์— ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. ์ด ์ฟผ๋ฆฌ๊ฐ€ ๊ฐ id ๊ฐ’์— ๋Œ€ํ•ด 1๊ฐœ ์ˆ˜๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋ฉด id์€ ์ด ํ…Œ์ด๋ธ”์˜ ๊ธฐ๋ณธ ํ‚ค์ผ ๊ฐ€๋Šฅ์„ฑ์ด ๋†’์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์ด ์ฟผ๋ฆฌ๋Š” ์ฟผ๋ฆฌ ๋Ÿฐํƒ€์ž„์— ํ…Œ์ด๋ธ”์˜ ํ–‰๋งŒ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค. ์ดํ›„์— ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์‚ฝ์ž…ํ•˜๋ฉด ๊ธฐ๋ณธ ํ‚ค๊ฐ€ id์ด ๋  ์ˆ˜ ์—†์œผ๋ฏ€๋กœ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ์ œํ•œ์‚ฌํ•ญ์„ ๊ตฌํ˜„ํ•˜์—ฌ ๊ธฐ๋ณธ ํ‚ค๊ฐ€ ๊ณ ์œ ํ•œ์ง€ ํ™•์ธํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.