Kuasai metrik throughput, latency p50/p95, dan memori puncak, lengkap dengan jebakan pengukuran, disiplin baseline JSON, dan verifikasi sebelum-sesudah yang jujur terhadap noise.
Buka → # Query ProfilingJalankan investigasi query lambat secara sistematis lewat piramida profiling — dari metrik pipeline turun ke operator — dengan EXPLAIN ANALYZE DuckDB pada kasus join fan-out 10x yang menjadi 21 kali lebih cepat setelah akar masalahnya ditemukan.
Buka → # Indexing dan PartitioningAdu index SQLite dan partition Parquet pada benchmark nyata: lookup titik 49x lebih cepat dengan index, query rentang 3x lebih cepat dengan partition pruning, lalu putuskan kapan memakai index, partition, atau keduanya.
Buka → # Predicate PushdownBukti terukur bahwa posisi filter menentukan biaya: filter kota='Bandung' pada 5 juta baris Parquet berjalan 3,9 detik di pandas, 0,6 detik di reader pyarrow, dan 0,011 detik sebagai WHERE DuckDB — plus batasan pushdown pada predikat kompleks.
Buka → # Column PruningUkur penghematan nyata membaca 2 dari 12 kolom Parquet: waktu 4,8x lebih cepat, memori tabel 6x lebih hemat, plus bukti projection pushdown dari rencana eksekusi dan alasan mengapa SELECT * membatalkan semuanya.
Buka → # Batch Size dan ThroughputSapukan ukuran batch executemany dari 1 sampai 50 ribu baris, temukan titik jenuh di mana throughput melandai sementara memori terus naik, lalu kendalikan memori pembacaan CSV dengan chunking — dan ubah throughput menjadi anggaran kapasitas.
Buka → # ParallelismPercepat pipeline dengan membagi pekerjaan: ThreadPool vs ProcessPool vs DuckDB threads, diuji jujur di mesin 2 CPU hingga efek oversubscription yang justru memperlambat.
Buka → # CachingBangun cache disk berbasis hash input: miss dan hit terukur, invalidasi otomatis saat input berubah, perlindungan cache stampede dengan single-flight, dan daftar apa yang tidak layak di-cache.
Buka → # Memory OptimizationPangkas memori pipeline Python dengan tracemalloc: generator vs list-of-dicts, downcast dtype, chunked read, jebakan sys.getsizeof, hingga keputusan menumpah ke disk secara manual.
Buka → # Mengatasi Data SkewDiagnosa data skew dari hitungan kunci teratas, pecah partition timpang dengan salting dan agregasi dua tahap di multiprocessing, dan kenali kapan DuckDB justru tidak memerlukan obatnya.
Buka → # Mengoptimalkan Biaya StorageTekan biaya penyimpanan data lake: benchmark empat format lengkap dengan hitungan dolar per tahun, masalah small files beserta kompaksinya, dan matematika retensi plus tiering storage class.
Buka → # BenchmarkingRancang benchmark yang bisa dipercaya: aturan pertandingan adil, warm-up, N run dengan statistik min/median/p95, jebakan single-run dan cache dingin, plus template pelaporan yang bisa direproduksi.
Buka →