๐ API ๋ฐ์ดํฐ ์ ์ฌ ์๋๋ฆฌ์ค
1. API๋ก ์์งํ์ฌ FTP ์๋ฒ /nifi_dataset/api_dataset ์ ์ ์ฌํ ๋ฐ์ดํฐ๋ฅผ get ํ๊ธฐ
2. jsonํฌ๋งท์ ๋ฐ์ดํฐ๋ฅผ csv๋ก ๋ณํ
3. ๋ ์ฝ๋ ๊ฑด์ ์ถ์ถ
4. ์ถ์ถํ ๋ ์ฝ๋ ๊ฑด์๋ฅผ data_co ์ปฌ๋ผ์, 20230215 ๊ฐ์ด load_de ์ปฌ๋ผ์ ๋ค์ด๊ฐ๋๋ก ํ์ฌ
postgres ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ด nifi ์คํค๋ง์ lfr_price_rate_year ํ
์ด๋ธ์ ์ ์ฌ
5. ๋ ์ฝ๋ ์ ์ฌ ํ level_no ์ปฌ๋ผ์ ๊ฐ์ด 1์ธ ๋ฐ์ดํฐ๋ง load_de ์ปฌ๋ผ์ ๊ฐ์ 0์ผ๋ก ์
๋ฐ์ดํธ
์คํ ๋ Flow
์ ์ฌ๋ br_20230215.json ํ์ผ์ ๋ถ๋ฌ์จ๋ค.
GetFTP ํ๋ก์ธ์ค๋ฅผ ์ฌ์ฉํด์ ํ์ผ์ ๋ถ๋ฌ์จ๋ค.
ConvertRecord๋ฅผ ์ฌ์ฉํด์ jsonํ์ผ์ ์ฝ์ด์์ csv ํ์ผ๋ก ๋ณํํ๋ค.
CalculateRecordstats ํ๋ก์ธ์ค๋ก ๋ ์ฝ๋ ๊ฑด์ ์ธก์ ํ๋ค.
UpdateAttribute ํ๋ก์ธ์ค๋ก time์์ฑ์ ์์ฑํ๋ค.
QueryRecord - ํ๋ก์ฐ ํ์ผ ๋ด์ ๋ฐ์ดํฐ๋ฅผ ์ฟผ๋ฆฌ ํ ๋ ์ฌ์ฉํ๋ ํ๋ก์ธ์ค
์ถ์ถํ ๋ ์ฝ๋ ๊ฑด์๋ฅผ data_co ์ปฌ๋ผ์, 20230215 ๊ฐ์ด load_de ์ปฌ๋ผ์ ๋ค์ด๊ฐ๊ฒ ํ๋ค.
์์ฑํ ์์ฑ์ ํ ์ด๋ธ์ ์ปฌ๋ผ์ผ๋ก ์ฌ์ฉํ๋ค
record.count๋ CalculateRecordstats ํ๋ก์ธ์ค์ Data Provenance๋ฅผ ํตํด ์์ฑ์ ํ์ธํ๋ค.
PutDatabaseRecord ํ๋ก์ธ์ค์ DB๋ฅผ ์ ์ฌ์ํค๊ธฐ ์ํ ์์ฑ๊ฐ์ ์ ๋ ฅํ๋ค.
PostgreSQL ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ด nifi ์คํค๋ง์ lfr_price_rate_year ํ ์ด๋ธ์ ์ ์ฌํ๋ค.
DB์ ๋ฐ์ดํฐ๊ฐ ์ ์ฌ๋ ๊ฒ์ ํ์ธํ๋ค.
์ ์ฌ ํ level_no ์ปฌ๋ผ์ ๊ฐ์ด 1์ธ ๋ฐ์ดํฐ๋ง load_de ์ปฌ๋ผ์ ๊ฐ์ 0์ผ๋ก ์ ๋ฐ์ดํธ ํด๋ณธ๋ค.
PutSQL - ํ๋ก์ฐ ๋ด์์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ INSERT ๋๋ UPDATE ๋ช ๋ น์ ์คํํ๋ ๊ฒฝ์ฐ ์ฌ์ฉํ๋ ํ๋ก์ธ์ค
JDBC Connection Pool : ์ฐ๊ฒฐํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ปจํธ๋กค๋ฌ ์๋น์ค ์ ํ
SQL Statement : ์คํํ INSERT ๋๋ UPDATE SQL๋ฌธ ์์ฑ
SQL Statement ์์ฑ์ ์์ฑํ update ์ฟผ๋ฆฌ๋ฌธ
* ์คํค๋ง๊ฐ ์กด์ฌํ๋ ๊ฒฝ์ฐ
ํ ์ด๋ธ๋ช ์์ ์คํค๋ง๋ช ์ ๊ผญ ์ ์ด ์ฃผ์ด์ผํ๋ค.
Flow ์คํ์ด ๋ชจ๋ ์๋ฃ๋๊ณ , DB์์ ํ์ธ์ ํ๋ฒ ํด๋ณด์๋ค.
level_no์ ๊ฐ์ด '1'์ธ ๋ฐ์ดํฐ๋ง load_de ์ปฌ๋ผ์ ๊ฐ์ 0์ผ๋ก ์์ ๋ ๊ฒ์ ํ์ธํจ.
ํ๊ธฐ
PutSQL ํ๋ก์ธ์ค๋ฅผ ์ฒ์ ์ฌ์ฉํ์ฌ ์ฐ์ต ํด๋ณด์๋ค.
Flow๋ฅผ ๋ง๋ค๋ ์ด๋ค ํ๋ก์ธ์ค๋ฅผ ์ฌ์ฉํด์ผ ์ ์ ํ๊ณ ์กฐ๊ธ ๋ ๊ฐ๊ฒฐํ๊ฒ ์ฌ์ฉ๋ ์ง ๊ณ ๋ฏผ๋ ํด๋ณด์๋ค
๋ฌธ์ ์ ์ด๋ผ๊ณ ํ๋ฉด,
PutSQL ํ๋ก์ธ์ค๋ฅผ ์ค์ ํ ๋, SQL statement์ SQL๋ฌธ์ ์์ฑํด์ฃผ์๋๋ฐ
์ด๋๋ from fileflow ๊ฐ ์๋ "FROM ํ ์ด๋ธ๋ช "์ ์ ์ด ์ฃผ์ด DB์์ ์์ ์ด ๋๋์ง ํ์ธ ์ฐจ ์ฟผ๋ฆฌ๋ฅผ ์์ฑํ์ฌ ์คํ์์ผฐ๋๋
๋ฐ์ดํฐ๊ฐ ์์ ๋จ์ ํ์ธ ํ์๋ค.
๊ทธ๋๋ก update ์ฟผ๋ฆฌ๋ฌธ์ ์์ฑ ํด์ฃผ์๋๋ฐ, ์ด๋ ์คํค๋ง ๋ช ์ ์ ์ด์ฃผ์ง ์์์ flow์์๋ ์๋ฌ๊ฐ ๋ฐ์ํ๊ฒ ๋์๋ ๊ฒ.
๊ตฌ๊ธ์ ์ฐพ์๋ณด์์ง๋ง ํด๊ฒฐ์ด ๋์ง ์์์ ์ฌ์๋์๊ฒ ์ง๋ฌธํ์ฌ ํด๊ฒฐ์ด ์!!!!
์คํค๋ง๊ฐ ์กด์ฌํ ๋๋ ๊ผญ ํ ์ด๋ธ๋ช ์์ ์คํค๋ง๋ช ์ ์ ์ด์ฃผ์!