Python adalah bahasa kerja utama data engineer: skrip ingestion, transformasi pandas, sampai definisi DAG semuanya ditulis dengan Python. Masalahnya, dokumentasi Python sangat besar — Library Reference saja memuat ratusan modul — sehingga kita mudah menghabiskan waktu di halaman yang tidak relevan. Chapter ini memetakan bagian-bagian dokumentasi resmi yang benar-benar dipakai dalam pekerjaan data engineering, dikelompokkan per kebutuhan: bahasa inti, virtual environment, lalu pustaka pihak ketiga inti. Semua tautan mengarah ke domain resmi dan sudah diverifikasi hidup.
Dokumentasi Bahasa Python #
Pintu Masuk Utama docs.python.org #
| Sumber | Untuk apa | Tingkat |
|---|---|---|
| Python Tutorial | Tur bahasa dari dasar; penyegar cepat sebelum masuk materi pipeline | pemula |
| Library Reference | Indeks seluruh modul bawaan; halaman yang paling sering kita buka | pemula |
| Language Reference | Semantik bahasa secara formal; penentu akhir saat perilaku sintaks diperdebatkan | mahir |
| Python HOWTOs | Panduan topik spesifik yang lebih dalam daripada tutorial | menengah |
| Python Glossary | Kamus istilah resmi: iterable, descriptor, context manager | pemula |
| What’s New in Python | Ringkasan perubahan tiap versi sejak seri lama | menengah |
Modul Stdlib untuk Data Engineering #
Enam modul berikut adalah yang paling sering muncul di kode pipeline course ini. Simpan tautan halaman masing-masing, bukan hanya halaman indeksnya.
| Sumber | Untuk apa | Tingkat |
|---|---|---|
| sqlite3 | Driver bawaan untuk database SQLite; fondasi latihan SQL dan pengujian | pemula |
| json | Baca-tulis JSON, format serialisasi paling umum di API modern | pemula |
| csv | Baca-tulis CSV dengan csv.reader dan csv.DictReader | pemula |
| logging | Logging terstruktur pengganti print untuk pipeline produksi | menengah |
| argparse | Parser argumen command line untuk skrip batch | menengah |
| typing | Type hints sebagai kontrak antar fungsi pipeline | menengah |
Modul untuk Konkurensi #
Pipeline sering menunggu I/O: panggilan API, baca berkas, kirim data. Dua modul berikut menutup kebutuhan paralelisme di sisi Python.
| Sumber | Untuk apa | Tingkat |
|---|---|---|
| concurrent.futures | ThreadPoolExecutor dan ProcessPoolExecutor untuk paralelisme sederhana | menengah |
| asyncio | I/O asinkron untuk panggilan API dalam jumlah besar | mahir |
HOWTO yang Paling Sering Dipakai #
Dua HOWTO berikut menemani modul logging pada tabel sebelumnya dan paling sering dibuka saat membangun pipeline yang berjalan terus-menerus.
| Sumber | Untuk apa | Tingkat |
|---|---|---|
| Logging HOWTO | Tutorial bertahap konfigurasi logging dari level dasar | pemula |
| Logging Cookbook | Resep pola logging untuk aplikasi dan library | menengah |
Virtual Environment dan Packaging #
Isolasi lingkungan adalah kebiasaan pertama yang dipasang di section Persiapan Lingkungan Kerja. Tiga dokumentasi berikut menutup siklus hidupnya: membuat lingkungan terisolasi, memasang paket, lalu memahami aturan packaging Python secara umum.
| Sumber | Untuk apa | Tingkat |
|---|---|---|
| venv | Membuat virtual environment bawaan Python | pemula |
| pip | Pemasang paket resmi: install, freeze, requirements.txt | pemula |
| Python Packaging User Guide | Panduan resmi ekosistem packaging dari PyPA | menengah |
Pustaka Pihak Ketiga Inti #
Tiga pustaka berikut menjadi tumpuan utama course ini: pandas untuk data tabular, pytest untuk pengujian, dan PyArrow untuk format kolom Parquet. Dokumentasi ketiganya memakai pola yang sama dengan Python: panduan konsep di depan, API reference sebagai kamus di belakang.
pandas #
| Sumber | Untuk apa | Tingkat |
|---|---|---|
| Beranda dokumentasi pandas | Pusat navigasi seluruh dokumentasi pandas | pemula |
| Getting Started pandas | Instalasi dan kurasi tutorial resmi untuk pemula | pemula |
| 10 Minutes to pandas | Tur singkat operasi DataFrame dalam satu halaman | pemula |
| User Guide pandas | Penjelasan konsep: indexing, groupby, join, hingga time series | pemula |
| API Reference pandas | Detail parameter tiap method; halaman wajib saat menulis kode serius | menengah |
Pengujian dan HTTP #
Dua pustaka berikut menemani hampir setiap skrip ingestion: requests menarik data dari API, pytest menjaga mutu kode yang menariknya.
| Sumber | Untuk apa | Tingkat |
|---|---|---|
| Dokumentasi pytest | Framework pengujian: fixture, parametrize, marker | pemula |
| Dokumentasi requests | HTTP client: session, retry, timeout, autentikasi | pemula |
PyArrow dan Parquet #
| Sumber | Untuk apa | Tingkat |
|---|---|---|
| Dokumentasi PyArrow | Array, Table, dataset, dan sistem tipe Arrow | menengah |
| API pyarrow.parquet | Fungsi baca-tulis Parquet beserta seluruh opsinya | menengah |
Referensi di atas menemani seluruh praktik koding course ini — dari Pemrosesan File dan Logging di section Python untuk Data Engineering sampai Pengujian Kode Python saat kita membangun pipeline yang andal. Untuk bahasa query-nya sendiri, kita lanjutkan ke Referensi SQL.