Delta Lake Vacuum
ํ์ฌ์์ Databricks๋ฅผ ํตํด Spark Cluster๋ฅผ ์ด์ํ๊ณ ์์ต๋๋ค. ๋ณธ ๊ธ์ Databricks๋ฅผ ๊ธฐ์ค์ผ๋ก ์์ฑํ์์ ๋ฏธ๋ฆฌ ๋ฐํ๋๋ค.
Vacuum
Delta ํ
์ด๋ธ์ _delta_log/
ํด๋๋ฅผ ํตํด ๋ฒ์ ์ด ๊ด๋ฆฌ ๋๊ณ , DML ์ฐ์ฐ์ ํ ๋๋ง๋ค ์ํฅ ๋ฐ๋ .parquet
ํ์ผ์ ์๋ก ์ฐ๊ธฐ ๋๋ฌธ์ ์ฐ์ฐ์ ์ํํ ์๋ก ๋ฐ์ดํฐ๊ฐ ์์ฌ๋ง ๊ฐ๋ค. ์ด๋ ๊ฒ ์์ฌ์ง ๋ฐ์ดํฐ ๋๋ถ์ Delta์์ ์๊ฐ ์ฌํ(Time Travel)์ด ๊ฐ๋ฅํ ๊ฒ์ด์ง๋ง, ์๊ฐ ์ฌํ์ด๋ ๊ธฐ๋ฅ์ด ํญ์ ํ์ํ ๊ฒ๋ ์๋๊ณ , ์ด๋ ์์ ์ด ์ง๋๋ฉด Stale ๋ ๋ณ๊ฒฝ ์ฌํญ๊ณผ .parquet
ํ์ผ๋ค์ ์ ๋ฆฌํ๋๊ฒ ์ ์ฅ ๊ณต๊ฐ์ ํจ์จ์ ์ผ๋ก ์ฐ๋ ๋ฐฉ๋ฒ์ด๋ค. Delta์์๋ ์ด๋ฐ Stale ํ์ผ๋ค์ ์ ๋ฆฌํ๊ธฐ ์ํด VACUUM
๋ช
๋ น์ด๋ฅผ ์ง์ํ๋ค.
VACUUM <schema>.<table> RETAIN 120 HOURS
์ด VACUUM
์ด๋ ์ฐ์ฐ์ ์๋์ผ๋ก ์ํ๋๋ ๊ฒ์ด ์๋๋ฉฐ, ์ง์ ์คํํ์ฌ ๊ณผ๊ฑฐ ๋ฐ์ดํฐ๋ฅผ ์ ๋ฆฌํด์ค์ผ ํ๋ค. Stale ๋ .parquet
ํ์ผ์ ๊ธฐ๋ณธ์ ์ผ๋ก 7 Days
์ Deleted File Retention์ ๊ฐ์ง๋ค. ๋ง์ฝ VACUUM
์ฐ์ฐ์ ์ํํ ๋, ๋ณ๋๋ก ์ง์ ํ์ง ์์ผ๋ฉด ํ
์ด๋ธ์ ๋ช
์๋ delta.deletedFileRetentionDuration
๊ฐ์ ๋ฐ๋ผ ๋ฐ์ดํฐ๋ฅผ ์ ๋ฆฌํ๋ค.
ALTER TABLE <schema>.<table>
SET TBLPROPERTIES ('delta.deletedFileRetentionDuration' = 'interval 14 days')
(๋ฒ์ธ) Spark CalendarInterval
์ฐธ๊ณ ๋ก Retention Duration์ internval ...
์ ํ์์ผ๋ก ์ ๋๋ฐ, ์ด๋ Spark์ CalendarInterval
๋ผ๋ ํฌ๋งท์ ๋ฐ๋ผ์ผ ํ๋ค๊ณ Delta Lake ๋ฌธ์์ ์ ํ์๋ค. [๋ฌธ์]
ํด๋นํ๋ Spark ๋ช
์ธ์([๋งํฌ])๋ฅผ ์ฐพ์๋ณด๋ฉด, ์ด CalendarInterval
์ days
, months
, microseconds
ํ๋๋ฅผ ๊ฐ์ง๊ณ ์๋ค.
๋ฐ๋ผ์ Retention Duration์ ์ค ๋๋ ์ ํ๋๋ฅผ ๋ฐ๋ผ์ผ ํ๋ ๊ฒ ๊ฐ๋ค. ๋ง์ฝ, ํ ์๊ฐ
Log Retention
๋ชจ๋ Delta ํ์ผ์ _delta_log/
๋ผ๋ ํน๋ณํ ํด๋์ ์ฐ์ฐ ๊ธฐ๋ก์ ๋จ๊ธด๋ค. ์ฐ๋ฆฌ๊ฐ DESC HISTORY ...
๋ฅผ ํตํด ํ์ธํ๋ ์ฐ์ฐ ๊ธฐ๋ก๊ณผ ์๊ฐ ์ฌํ ๊ธฐ๋ฅ์ด ๋ชจ๋ _delta_log/
์ ๊ธฐ๋ก๋ ์ ๋ณด๋ค ๋๋ถ์ธ ๊ฒ์ด๋ค.
Each time a checkpoint is written, Delta Lake automatically cleans up log entries older than the retention interval
Delta์ ์ฐ์ฐ ๊ธฐ๋ก์ ๋ฌดํํ ๋จ๊ฒจ๋๋๊ฒ ์๋๋ผ Log Retention์ ๋ฐ๋ผ์ ์ผ๋งํผ์ ๊ธฐ๋ก์ ๋จ๊ธธ์ง๋ฅผ ๊ฒฐ์ ํ๋ค. ๊ทธ๋ฆฌ๊ณ , Retention์ด ์ง๋ ๊ธฐ๋ก๋ค์ Delta ํ ์ด๋ธ์ ์ฒดํฌํฌ์ธํธ(Checkpoint)๊ฐ ์์ฑ๋ ๋๋ง๋ค ํจ๊ป ์ ๋ฆฌ๋๋ค. Log Retention ๊ฐ์ ์๋์ ๋ช ๋ น์ด๋ฅผ ํตํด ์์ ํ ์ ์๋ค.
ALTER TABLE <schema>.<table>
SET TBLPROPERTIES ('delta.logRetentionDuration' = 'interval 14 days')
์ฐธ๊ณ ๋ก ์์ฒ๋ผ ํ
์ด๋ธ ์์ฑ์ ๋ฐ๊พธ๋ ๊ฒ๋ ๋ชจ๋ Delta ํ์คํ ๋ฆฌ์ SET TBLPROPERTIES
๋ก ๊ธฐ๋ก ๋๋ค.
์์์๋ ๋งํ๋ฏ Stale Log์ ์ ๋ฆฌ๋ Checkpoint๊ฐ ์์ฑ๋ ๋ ์ํ๋๋ค. ์์ ์๋ VACUUM
์ ์ํํ๋ฉด Stale Log๋ ๊ฐ์ด ์ ๋ฆฌ๋๋ ์ค ์์๋ค. (๋จธ์ฑ)