์ ์ฒด ๊ธ (25) ์ธ๋ค์ผํ ๋ฆฌ์คํธํ [Apache Iceberg] Iceberg ์ค๊ณ ์ํคํ ์ฒ ๋ฐ ์ฃผ์ ํน์ง ๐ง Apache Iceberg: The Definitive Guide ์ฑ ์ ๋ฐํ์ผ๋ก ์์ฑ๋์์ต๋๋ค. 1. How Did We Get Here? A Brief History2. The Data Warehouse 3. The Data Lake4. Should I Run Analytics on a Data Lake or a Data Warehouse?5. The Data Lakehouse6. What is a Table Format? 7. Hive : The Original Table Format 8. Modern Data Lake Table Formats 9. What is Apache Iceberg? โ๏ธ10. Conclusion โ๏ธ โบ Chapter 1. Introduction to Apache Ic.. [Apache Iceberg] Iceberg ์ด์ ์ Table Format, Hive ๐ง Apache Iceberg: The Definitive Guide ์ฑ ์ ๋ฐํ์ผ๋ก ์์ฑ๋์์ต๋๋ค. ๐ Chapter 1. Introduction to Apache Iceberg ๊ธ ๋ชจ์๋ณด๊ธฐ : โบ 1ํธ : [Apache Iceberg] ๋ฑ์ฅ ๋ฐฐ๊ฒฝ (1) : OLAP์ Data Warehouseโบ 2ํธ : [Apache Iceberg] ๋ฑ์ฅ ๋ฐฐ๊ฒฝ (2) : Data Lake์ Data Lakehouseโบ 4ํธ : [Apache Iceberg] Iceberg ์ค๊ณ ์ํคํ ์ฒ ๋ฐ ์ฃผ์ ํน์ง ๐ก ๋ค์ด๊ฐ๋ฉฐ์ง๋ ๊ธ์์๋ Data Lake์ Data Lakehouse์ ๋ํด ์ดํด๋ณด์์ต๋๋ค.์ด๋ฒ ๊ธ์์๋ Apache Iceberg๊ฐ ๋ฑ์ฅํ๊ฒ ๋ ๋๊น์ง Table Format์ ์ญ์ฌ ํ๋ฆ์ ๋ํด ์งง๊ฒ ์ดํด๋ณด๋๋ก .. [Apache Iceberg] ๋ฑ์ฅ ๋ฐฐ๊ฒฝ (2) : Data Lake์ Data Lakehouse ๐ง Apache Iceberg: The Definitive Guide ์ฑ ์ ๋ฐํ์ผ๋ก ์์ฑ๋์์ต๋๋ค. ๐ก ๋ค์ด๊ฐ๋ฉฐ ์ง๋ ๊ธ์์๋ ๋ฐ์ดํฐ ๋ถ์์ ์ํ OLAP์ ๊ฐ๋ ๋ฐ ๊ตฌ์ฑ ์์์, Data Warehouse์ ํน์ง์ ๋ํด ์ดํด๋ณด์์ต๋๋ค.์ด๋ฒ ๊ธ์์๋ Data Warehouse์ ํ๊ณ๋ฅผ ๊ทน๋ณตํ๊ธฐ ์ํด ๋ฑ์ฅํ Data Lake์ ๋ํด ์์๋ณด๋๋ก ํ๊ฒ ์ต๋๋ค. ๐ Chapter 1. Introduction to Apache Iceberg ๊ธ ๋ชจ์๋ณด๊ธฐ : โบ 1ํธ : [Apache Iceberg] ๋ฑ์ฅ ๋ฐฐ๊ฒฝ (1) : OLAP์ Data Warehouseโบ 3ํธ : [Apache Iceberg] Table Format์ด๋?, ๋ Hive Table Format์ ์๋ โบ 4ํธ : [Apache Iceber.. [Apache Iceberg] ๋ฑ์ฅ ๋ฐฐ๊ฒฝ (1) : OLAP์ Data Warehouse ๐ง Apache Iceberg: The Definitive Guide ์ฑ ์ ๋ฐํ์ผ๋ก ์์ฑ๋์์ต๋๋ค. ๐ก ๋ค์ด๊ฐ๋ฉฐ Apache Iceberg๋ ์ต๊ทผ ๋๊ท๋ชจ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๊ณ ๊ด๋ฆฌํ ๋ ๋๋ฆฌ ํ์ฉ๋๊ณ ์๋ ์คํ ํ ์ด๋ธ ํฌ๋งท์ ๋๋ค.์คํ ํ ์ด๋ธ ํฌ๋งท์ด๋ ์ด๋ค ๊ฐ๋ ์ผ๊น์? ๊ทธ๋ฆฌ๊ณ Apache Iceberg๋ฅผ ๋ง์ ๊ณณ์์ ์ฌ์ฉํ๋ ์ด์ ๋ ๋ฌด์์ผ๊น์?์ด๋ฅผ ์๊ธฐ ์ํด์๋ Apache Iceberg๊ฐ ํ์ํ๊ฒ ๋ ๋ฐฐ๊ฒฝ์ ์ดํดํ๊ณ ์์ด์ผ ํฉ๋๋ค.์ด๋ฒ ๊ธ์์๋ ๊ทธ ์ฒซ ๋ฒ์งธ๋ก OLAP์ Data Warehouse์ ๋ํด ์ดํด๋ณด๋๋ก ํ๊ฒ ์ต๋๋ค. ๐ Chapter 1. Introduction to Apache Iceberg ๊ธ ๋ชจ์๋ณด๊ธฐ : โบ 2ํธ : [Apache Iceberg] ๋ฑ์ฅ ๋ฐฐ๊ฒฝ (2) : Data Lake์.. Kafka Consumer Group Rebalancing(๋ฆฌ๋ฐธ๋ฐ์ฑ) ๋ค์ด๊ฐ๋ฉฐ Kafka Connect๋ฅผ ํตํด ๋ฐ์ดํฐ๋ฅผ Sink ํ๋ ๊ณผ์ ์์ Commit ๋ด์ฉ์ ๋ฐ์ดํฐ๊ฐ ํฌํจ๋์ง ์๋ ํ์์ด ๋ฐ์ํ์ต๋๋ค. ๊ทธ๋ก ์ธํด ๋ฐ์ดํฐ๊ฐ ์ค๋ณต ์ฒ๋ฆฌ๋๊ฑฐ๋ ๋๋ฝ๋๋ ๋ฌธ์ ๊ฐ ์๊ฒผ๊ณ , ์ผ์ ํ ํจํด ์์ด ์๊ฐ์ด ์ง๋๋ฉด ๋ค์ ์ ์ ์๋ํ๋ ๊ฒฝ์ฐ๋ ์์ด ์์ธ ํ์ ์ด ์ฝ์ง ์์์ต๋๋ค. ์ด๋ฒ ๊ธ์์๋ Sink Connector์ Consumer Override ์ค์ ์ ํตํด ๋น๋ฒํ ๋ฆฌ๋ฐธ๋ฐ์ฑ ํ์์ผ๋ก ์ธํ ๋ฐ์ดํฐ ๋ถ์ผ์น ํ์์ ํด๊ฒฐํ ๋ด์ฉ์ ๊ณต์ ๋๋ฆฌ๊ณ ์ ํฉ๋๋ค. 1. ๋ฌธ์ ์ํฉ2. Kafka Consumer Group์ Rebalancing ๋์ ๊ณผ์ 3. Kafka Consumer Group์ Rebalancing์ด ๋ฐ์ํ๋ ๊ฒฝ์ฐ4. Sink Connector์ Consumer Override ์ค์ 5... [4์ฅ ๋ถํธํ์ ๋ฐ์ ] ๋ฐ์ดํฐ ์ง๋ ฌํ(3) - ์คํค๋ง ๐ BOAZ 23๊ธฐ ๋ฐ์ดํฐ ์์ง๋์ด๋ง ๋ฉ๋ฉ ์คํฐ๋ - "๋ฐ์ดํฐ ์ค์ฌ ์ ํ๋ฆฌ์ผ์ด์ ์ค๊ณ" ์ฑ ์ ๋ฐํ์ผ๋ก ์์ฑ๋์์ต๋๋ค. 3ํธ์์๋ ๋ฐ์ดํฐ ์ง๋ ฌํ์ ๋ง์ง๋ง์ผ๋ก ์คํค๋ง์ ๋ํด์ ์์ธํ ์์๋ณด์! โ๐ป 1ํธ : ๋ฐ์ดํฐ ์ง๋ ฌํ์ ๊ฐ๋ https://nothing-study.tistory.com/33 [4์ฅ ๋ถํธํ์ ๋ฐ์ ] ๋ฐ์ดํฐ ๋ถํธํ(์ง๋ ฌํ) ํ์ (1)๋ฐ์ดํฐ ๋ถํธํ ํ์ํ๋ก๊ทธ๋จ์์๋ ๋ฐ์ดํฐ๋ฅผ ํํํด์ผ ํ๋ ๋ ๊ฐ์ง ์ํฉ์ด ์๋ค.โ๐ป ๋ฉ๋ชจ๋ฆฌ์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ ๋โ๐ป ํ์ผ์ ์ฐ๊ฑฐ๋ ๋คํธ์ํฌ๋ฅผ ํตํด ๋ฐ์ดํฐ๋ฅผ ์ ์กํ ๋ ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฅnothing-study.tistory.com โ๐ป 2ํธ : Apache Thrift, Protocol Buffers, Avrohttps://nothing-study.tistory.. [4์ฅ ๋ถํธํ์ ๋ฐ์ ] ๋ฐ์ดํฐ ์ง๋ ฌํ (2) - Thrift, Protocol Buffer, Avro ๐ BOAZ 23๊ธฐ ๋ฐ์ดํฐ ์์ง๋์ด๋ง ๋ฉ๋ฉ ์คํฐ๋ - "๋ฐ์ดํฐ ์ค์ฌ ์ ํ๋ฆฌ์ผ์ด์ ์ค๊ณ" ์ฑ ์ ๋ฐํ์ผ๋ก ์์ฑ๋์์ต๋๋ค. 1ํธ์์ ์ง๋ ฌํ์ ๊ฐ๋ ์ ๋ํด ์ดํด๋ณด์๋ค๋ฉด, ์ด์ ์กฐ๊ธ ๋ ์ ๋ง๋ค์ด์ง ์ง๋ ฌํ ๋ฐฉ์๋ค์ ๋ํด ํ๋์ฉ ์ดํด๋ณด์. ๐๐ป 1ํธ ๋ฐ๋ก๊ฐ๊ธฐhttps://nothing-study.tistory.com/33 [4์ฅ ๋ถํธํ์ ๋ฐ์ ] ๋ฐ์ดํฐ ๋ถํธํ(์ง๋ ฌํ) ํ์ (1)๋ฐ์ดํฐ ๋ถํธํ ํ์ํ๋ก๊ทธ๋จ์์๋ ๋ฐ์ดํฐ๋ฅผ ํํํด์ผ ํ๋ ๋ ๊ฐ์ง ์ํฉ์ด ์๋ค.โ๐ป ๋ฉ๋ชจ๋ฆฌ์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ ๋โ๐ป ํ์ผ์ ์ฐ๊ฑฐ๋ ๋คํธ์ํฌ๋ฅผ ํตํด ๋ฐ์ดํฐ๋ฅผ ์ ์กํ ๋ ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฅnothing-study.tistory.com ์ด๋ฒ ๊ธ์์๋ ์๋ JSON ๋ ์ฝ๋๋ฅผ ์ด์ง ๋ถํธํํด๋ณด๋ ์์๋ฅผ ๋ค์ด๋ณผ ์์ ์ด๋ค3๏ธโฃ ์ค๋ฆฌํํธ ์ ํ๋กํ ์ฝ ๋ฒํผ.. [4์ฅ ๋ถํธํ์ ๋ฐ์ ] ๋ฐ์ดํฐ ์ง๋ ฌํ (1) - ๊ฐ๋ ๐ BOAZ 23๊ธฐ ๋ฐ์ดํฐ ์์ง๋์ด๋ง ๋ฉ๋ฉ ์คํฐ๋ - "๋ฐ์ดํฐ ์ค์ฌ ์ ํ๋ฆฌ์ผ์ด์ ์ค๊ณ" ์ฑ ์ ๋ฐํ์ผ๋ก ์์ฑ๋์์ต๋๋ค.๋ฐ์ดํฐ ๋ถํธํ ํ์ํ๋ก๊ทธ๋จ์์๋ ๋ฐ์ดํฐ๋ฅผ ํํํด์ผ ํ๋ ๋ ๊ฐ์ง ์ํฉ์ด ์๋ค.โ๐ป ๋ฉ๋ชจ๋ฆฌ์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ ๋โ๐ป ํ์ผ์ ์ฐ๊ฑฐ๋ ๋คํธ์ํฌ๋ฅผ ํตํด ๋ฐ์ดํฐ๋ฅผ ์ ์กํ ๋ ๋ฉ๋ชจ๋ฆฌ → ๊ฐ์ฒด(object), ๊ตฌ์กฐ์ฒด(strcut), ๋ชฉ๋ก(list), ๋ฐฐ์ด(array), ํธ๋ฆฌ(tree) ๊ฐ์ ๋ฐ์ดํฐ ๊ตฌ์กฐํ์ผ/๋คํธ์ํฌ → ์ปดํจํฐ๊ฐ ์ดํดํ ์ ์๋ ๋ฐ์ดํธ์ด์ ํํ๋ก "๋ถํธํ" ํ์๊ทธ๋ฆฌ๊ณ ์ด ๋ ๊ฐ์ง ํํ ์ฌ์ด์์ ์ ํ์ ํ ์ ์์ด์ผ ํ๋ค.์ธ๋ฉ๋ชจ๋ฆฌ ํํ์์ ๋ฐ์ดํธ์ด๋ก์ ์ ํ์ ๋ถํธํ(=์ง๋ ฌํ, ๋ง์ฌ๋ง)๋ผ๊ณ ํ๋ฉฐ๊ทธ ๋ฐ๋๋ฅผ ๋ณตํธํ(=ํ์ฑ, ์ญ์ง๋ ฌํ, ์ธ๋ง์ฌ๋ง)์ด๋ผ๊ณ ํ๋ค. GPT ํผ์ ) ๋ฐ์ดํฐ๋ฒ ์ด์ค ํธ๋.. ์ด์ 1 2 3 4 ๋ค์