๐ก [Denodo ์ค์ต 1] Base View ์์ฑ ๋ฐ ์กฐํํด๋ณด๊ธฐ
- ์ด๋ฒ์๋ ๊ฐ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์์ฑํ๊ณ CSV Data Source ์ฐ๊ฒฐ ํ, Base View ์์ฑ๊น์ง ์ฐ์ตํด๋ณด๋ ค๊ณ ํ๋ค.
1๏ธโฃ ์ฐ์ต์ฉ ๊ฐ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์์ฑ
- ๋จผ์ ์ค์ต์์ ์ฌ์ฉํ ๊ฐ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์์ฑํด์ผํ๋ค.
- Virtual DataPort Administration Tool์ ์์ชฝ ๋ฉ๋ด์์ Administration → Database Management ์ ํ
- New ํด๋ฆญ → ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ด๋ฆ์ tutorial๋ก ์
๋ ฅํ๊ณ OK ํด๋ฆญ
- tutorial ๋ฐ์ดํฐ๋ฒ ์ด์ค ์์ฑ ์๋ฃ!
: ์ฌ๊ธฐ์ ์์ฑํ tutorial์ PostgreSQL์ด๋ Oracle์ฒ๋ผ ๋ฐ์ดํฐ๋ฅผ ์ง์ ์ ์ฅํ๋ ์ค์ ๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ์๋๋ผ, Data Source, Base View, Derived View ๋ฑ์ ๊ฐ์ฒด๋ฅผ ๊ตฌ๋ถํ๊ณ ๊ด๋ฆฌํ๋ ๋
ผ๋ฆฌ์ ์ธ ์์
๊ณต๊ฐโ์ด๋ค.
2๏ธโฃ tutorial ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ก ์ ์
- ํ์ฌ๋ admin์ด๋ผ๋ ๊ธฐ๋ณธ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ ์๋์ด ์์ผ๋ฏ๋ก, Disconnect ํ tutorial ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ก ๋ค์ ์ ์ํด์ผ ํ๋ค.
- ์ผ์ชฝ ๋ฉ๋ด์์ File → Disconnect ํด๋ฆญ
- ๋ก๊ทธ์ธ ํ๋ฉด์์ tutorial ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ ๋ณด ์
๋ ฅ ํ ์ ์
- USER: admin
- PASSWORD: ๊ธฐ์กด ๋น๋ฐ๋ฒํธ ๊ทธ๋๋ก
- VIRTUAL DATAPORT SERVER: //localhost:9999/tutorial ์
๋ ฅํ๊ณ ์ฐ๊ฒฐ
- tutorial ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ ์ ์๋ฃ!
3๏ธโฃ ์ฐ์ต์ฉ CSV ํ์ผ ์์ฑ
- Windows์์ C:\denodo-practice ํด๋๋ฅผ ๋ง๋ค๊ณ , ๋ฉ๋ชจ์ฅ์ ์ด์ด์ ์๋ ๋ด์ฉ์ ์
๋ ฅํ๊ณ csv ํ์ผ๋ก ์ ์ฅ
customer_id,customer_name,grade
1,Eunji,VIP
2,Mina,NORMAL
3,Jisoo,VIP
4๏ธโฃ CSV ํ์ผ์ Data Source๋ก ์ฐ๊ฒฐ
- ๋ค์ Virtual DataPort Administration Tool์์ File → New → Data source → Delimited File ํด๋ฆญ
- ์ค์ ํ๋ฉด์์ ์๋์ ๊ฐ์ด ์ ๋ณด ์
๋ ฅ
- Name: customers_cs (Denodo์์ ์ฌ์ฉํ Data Source ์ด๋ฆ)
- Column delimiter: ์ผํ (๊ฐ ์ปฌ๋ผ์ ๊ตฌ๋ถํ๋ ๋ฌธ์)
- Header: ์ฒดํฌ โ
(CSV์ ์ฒซ ๋ฒ์งธ ํ์ ์ปฌ๋ผ๋ช
์ผ๋ก ์ฌ์ฉ)
- End of line delimiter: \n (๊ฐ ํ์ ๊ตฌ๋ถํ๋ ๋ฌธ์)
- Data route์์ Local ์ ํ → Configure ํด๋ฆญ
- File path์ ์์์ ์์ฑํ CSV ํ์ผ ๊ฒฝ๋ก๋ฅผ ์ง์ ํ๊ณ ok → save ํด๋ฆญ
- ์ค๋ฅธ์ชฝ ์๋จ์ Create base View ๋ฅผ ํด๋ฆญํ๋ฉด, customers_csv ๋ผ๋ Data Source๋ฅผ ์ด์ฉํ Base View๊ฐ ์์ฑ๋๋ค.
- ์์ฑ๋ Base View์์ ์๋์ ๊ฐ์ด ์ ๋ณด๋ฅผ ์ ๋ฆฌํ๋ค.
- View name์ bv_customers๋ก ๋ณ๊ฒฝํ๋ค. (bv๋ Base View๋ผ๋ ๊ฑธ ๊ตฌ๋ถํ๊ธฐ ์ํ ์ด๋ฆ)
- customer_id์ Field Type์ text์์ int๋ก ๋ณ๊ฒฝํ๋ค.
- customer_id ํ ์ผ์ชฝ์ ์ฒดํฌ๋ฐ์ค๋ฅผ ์ ํํ๊ณ , Set selected as PK ํด๋ฆญ (PK๋ก ์ง์ )
- ๐ PK ์ค์ ์ ์ฃผ์ํ ์
- Set selected as PK๋ CSV ํ์ผ์ ์ค์ ๊ธฐ๋ณธํค ์ ์ฝ์กฐ๊ฑด์ ์์ฑํ๋ ๊ธฐ๋ฅ์ด ์๋๊ณ Denodo์ customer_id๊ฐ ๊ฐ ํ์ ๊ตฌ๋ถํ๋ ๊ณ ์ ํ ๊ฐ์ด๋ผ๋ ์ ๋ณด๋ฅผ ์๋ ค์ฃผ๋ ์ค์ ์ด๋ค.
- Denodo๋ ์ด ๋ฉํ๋ฐ์ดํฐ๋ฅผ ์กฐ์ธ์ด๋ ์ฟผ๋ฆฌ ์ต์ ํ์ ํ์ฉํ ์ ์์ง๋ง, CSV์ ์ค๋ณต ๊ฐ์ด ๋ค์ด์ค๋ ๊ฒ์ ์ง์ ์ฐจ๋จํ์ง๋ ์๋๋ค.
- ์์ชฝ์ ๋์ค์ผ ๋ชจ์ Save ๋ฒํผ์ ํด๋ฆญํ๋ค.
- Base View ์ค์ ์๋ฃ!
5๏ธโฃ Base View ๋ฐ์ดํฐ ์กฐํ
- ์์ชฝ ์ฟผ๋ฆฌ ๋ฒํผ ํด๋ฆญ ํ, ์๋ Query ์ฐฝ์์ execute๋ฅผ ํด๋ฆญํ๋ฉด ๋ฐ์ดํฐ๊ฐ ์กฐํ๋๋ค.
- Denodo ์์ ๊ณ ๊ฐ ๋ฐ์ดํฐ๋ฅผ ์ง์ ์
๋ ฅํ์ง ์์์ง๋ง, Base View๋ฅผ ํตํด ์๋ณธ CSV์ ๋ด์ฉ์ ํ
์ด๋ธ์ฒ๋ผ ์กฐํํ ์ ์๋ค.
6๏ธโฃ ์๋ณธ ๋ฐ์ดํฐ ๋ณ๊ฒฝ ํ์ธํด๋ณด๊ธฐ
- Denodo๊ฐ ์๋ณธ ๋ฐ์ดํฐ๋ฅผ ๋ฐ๋ผ๋ณด๊ณ ์๋ค๋ ๊ฒ์ ํ์ธํ๊ธฐ ์ํด CSV ํ์ผ์ ๋ด์ฉ์ ์์ ํด๋ณด์.
- customers.csv๋ฅผ ๋ฉ๋ชจ์ฅ์ผ๋ก ๋ค์ ์ฐ๋ค.
- Mina,NORMAL์ Mina,VIP๋ก ๋ณ๊ฒฝํ๋ค.
- CSV ํ์ผ์ ์ ์ฅํ๋ค.
- Denodo์์ Query๋ฅผ ๋ค์ ์คํํ๋ค.
- Base View๋ฅผ ๋ค์ ๋ง๋ค์ง ์์๋ ์กฐํ ๊ฒฐ๊ณผ์์ Mina์ ๋ฑ๊ธ์ด VIP๋ก ๋ณ๊ฒฝ๋ ๊ฒ์ ํ์ธํ ์ ์๋ค.
- ์ด๋ Denodo๊ฐ CSV ๋ฐ์ดํฐ๋ฅผ Base View ์์ ๋ณต์ฌํ์ฌ ๋ณด๊ดํ๋ ๊ฒ์ด ์๋๋ผ, ์ฟผ๋ฆฌ๋ฅผ ์คํํ ๋ ์ฐ๊ฒฐ๋ ์๋ณธ ํ์ผ์ ์ฝ์ด์ค๊ธฐ ๋๋ฌธ์ด๋ค.
๐ก ์ค์ต ๊ฒฐ๊ณผ ์ ๋ฆฌ
- ์ด๋ฒ ์ค์ต์์ ์์ฑํ ๊ฐ์ฒด๋ ๋ค์๊ณผ ๊ฐ๋ค.
| ๊ตฌ๋ถ |
์ด๋ฆ |
์ญํ |
| ๊ฐ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค |
tutorial |
์ค์ต ๊ฐ์ฒด๋ฅผ ๊ด๋ฆฌํ๋ ๋
ผ๋ฆฌ์ ์์
๊ณต๊ฐ |
| Data Source |
customers_csv |
์๋ณธ CSV ํ์ผ์ ์์น์ ์ฝ๊ธฐ ๋ฐฉ๋ฒ ๊ด๋ฆฌ |
| Base View |
bv_customers |
CSV ๋ฐ์ดํฐ๋ฅผ ํ
์ด๋ธ ํํ๋ก ์กฐํ |
- ์ด๋ ๊ฒ Denodo์ ๊ธฐ๋ณธ์ ์ธ ๋ฐ์ดํฐ ์ฐ๊ฒฐ ๊ตฌ์กฐ์, Base View๊ฐ ์๋ณธ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์์ผ๋ก ๋ณด์ฌ์ฃผ๋ ๋ฐฉ์๊น์ง ํ์ธํ๋ค.
- ๋ค์ ์ค์ต์์๋ orders.csv๋ฅผ ์ถ๊ฐ๋ก ์ฐ๊ฒฐํ๊ณ , bv_customers์ bv_orders๋ฅผ customer_id ๊ธฐ์ค์ผ๋ก ์กฐ์ธํ์ฌ Derived View๋ฅผ ๋ง๋ค์ด๋ณผ ์์ ์ด๋ค.