All Products
Search
Document Center

E-MapReduce:Iceberg

Last Updated:Aug 15, 2026

Iceberg adalah format tabel data lake terbuka yang memungkinkan penyimpanan di HDFS atau Alibaba Cloud OSS serta analisis melalui Spark, Flink, Hive, dan Presto.

Kemampuan inti

Apache Iceberg awalnya dikembangkan sebagai solusi untuk migrasi gudang data Hive ke cloud dan kini telah menjadi format tabel standar untuk layanan data lake berbasis cloud. Kunjungi situs web resmi Apache Iceberg untuk informasi selengkapnya.

Iceberg menyediakan kemampuan berikut:

  • Penyimpanan data lake berbiaya rendah di HDFS atau Object Storage Service (OSS).

  • Integrasi mulus dengan mesin komputasi open source untuk ingestion dan analisis.

  • Semantik ACID lengkap.

  • Perubahan data tingkat baris (row-level).

  • Pengembalian versi historis (historical version rollbacks).

  • Penyaringan data yang efisien.

  • Evolusi skema (schema evolution).

  • Evolusi tata letak partisi (partition layout evolution).

  • Partisi tersembunyi (hidden partitioning).

Tabel berikut membandingkan tiga arsitektur: ClickHouse open source (gudang data real-time), Hive open source (gudang data offline), dan Iceberg Alibaba Cloud (data lake).

Kriteria Perbandingan

Subitem

Gudang data real-time ClickHouse open source

Gudang data offline Hive open source

Data lake Iceberg Alibaba Cloud

Arsitektur sistem

Arsitektur

Komputasi dan penyimpanan terikat (coupled)

Komputasi dan penyimpanan terpisah (decoupled)

Komputasi dan penyimpanan terpisah (decoupled)

Dukungan untuk multiple mesin komputasi

Tidak didukung

Didukung

Didukung

Penyimpanan data di object storage

Tidak didukung

Sebagian didukung

Didukung

Penyimpanan data di HDFS

Tidak didukung

Didukung

Didukung

Keterbukaan format penyimpanan

Dimatikan

Terbuka

Terbuka

Nilai bisnis

Ketepatan waktu

Detik

Jam/Hari

Menit

Fleksibilitas komputasi

Rendah

Kuat

Kuat

Transaksional

Tidak didukung

Tidak lengkap

Didukung

Universalitas semantik tingkat tabel

Buruk

Buruk

Sangat baik

Perubahan data tingkat baris

Tidak didukung

Didukung secara lemah

Didukung

Kualitas data

Sangat tinggi

Tinggi

Tinggi

Biaya pemeliharaan

Kinerja kueri

Tinggi

Tinggi

Tinggi

Biaya penyimpanan

Sangat tinggi

Sedang

Rendah

Layanan mandiri (self-service)

Tidak didukung

Tidak didukung

Didukung

Elastisitas sumber daya

Umum

Umum

Sangat baik

Perbandingan dengan Iceberg open source

Tabel berikut membandingkan Iceberg Alibaba Cloud dengan Iceberg open source berdasarkan fitur dasar, perubahan data, dan mesin komputasi.

Catatan

√ menunjukkan bahwa fitur tersebut didukung. x menunjukkan bahwa fitur tersebut belum didukung.

Kategori

Item

Subitem

Iceberg open source

Edisi Komersial Iceberg (Alibaba Cloud)

Fitur dasar

ACID

N/A

√

√

Pengembalian versi historis

N/A

√

√

Integrasi Source dan Sink

Batch

√

√

Streaming

√

√

Penyaringan data yang efisien

N/A

√

√

Perubahan data

Evolusi skema

N/A

√

√

Evolusi partisi

N/A

√

√

Pembaruan copy-on-write

N/A

√

√

Pembaruan merge-on-read

Baca

√

√

Tulis

√

√

Kompaksi

x

x

Mesin komputasi

Apache Spark

Baca

√

√

Tulis

√

√

Apache Hive

Baca

√

√

Tulis

√

√

Apache Flink

Baca

√

√

Tulis

√

√

PrestoDB atau Trino

Baca

√

√

Tulis

√

√

Bahasa pemrograman

Java

N/A

√

√

Python

N/A

√

√

Fitur lanjutan

Integrasi native dengan Alibaba Cloud OSS

N/A

x

√

Integrasi native dengan Alibaba Cloud DLF

N/A

x

√

Akselerasi cache data lokal

N/A

x

√

Kompaksi file kecil otomatis

N/A

x

√

Catatan

Perbandingan ini dibuat pada September 2021 berdasarkan analisis terhadap Iceberg open source dan edisi komersial Iceberg pada saat itu. Dukungan fitur dapat berubah seiring peningkatan versi di masa mendatang.

Skenario

Iceberg merupakan komponen inti dalam solusi data lake dan cocok untuk skenario berikut.

Skenario

Deskripsi

Impor dan kueri data real-time

Aliran data upstream masuk ke data lake Iceberg secara real-time dan langsung dapat dikueri. Sebagai contoh, dalam skenario logging, jalankan Pekerjaan streaming Iceberg atau Spark untuk menulis log ke tabel Iceberg. Kemudian kueri data tersebut dengan Hive, Spark, Iceberg, atau Presto. Dukungan ACID memastikan isolasi antara ingestion dan kueri, sehingga mencegah pembacaan data kotor (dirty reads).

Hapus atau perbarui data

Gudang data tradisional kesulitan melakukan penghapusan atau pembaruan tingkat baris secara efisien. Operasi ini biasanya memerlukan menjalankan pekerjaan offline yang membaca seluruh tabel asli, memodifikasi data, lalu menulis ulang. Iceberg mempersempit perubahan dari tingkat tabel ke tingkat file, sehingga memungkinkan pembaruan parsial yang efisien.

Di data lake Iceberg, Anda dapat langsung mengubah data dalam tabel dengan menjalankan perintah seperti DELETE FROM test_table WHERE id > 10.

Kontrol kualitas data

Gunakan validasi skema Iceberg untuk membuang atau memproses lebih lanjut data abnormal selama impor.

Evolusi skema data

Iceberg mendukung perubahan skema melalui pernyataan DDL Spark SQL tanpa perlu menulis ulang data historis, sehingga evolusi menjadi cepat.

Dukungan ACID mengisolasi perubahan skema dari pekerjaan baca yang sedang berjalan, memastikan pembacaan konsisten sepanjang proses.

Pembelajaran mesin real-time

Dalam alur kerja pembelajaran mesin, pemrosesan data (pembersihan, transformasi, ekstraksi fitur) memakan waktu paling lama. Iceberg menyatukan data historis dan real-time ke dalam satu aliran yang andal, di mana setiap langkah pemrosesan merupakan node dalam pipeline. Hal ini menghilangkan jalur batch dan streaming yang terpisah. Iceberg juga menyediakan SDK Python native untuk pengembang algoritma.