Caching adalah istilah yang digunakan dalam ilmu komputer. Ide di balik cache (diucapkan "cash" /ˈkæʃ/ KASH ) sangat sederhana: Sering kali, mendapatkan hasil perhitungan sangat memakan waktu, jadi menyimpan hasil perhitungan adalah ide yang bagus. Dua jenis media penyimpanan yang digunakan: Yang satu biasanya cukup besar, tetapi mengaksesnya "lambat"; yang lainnya dapat diakses lebih cepat, tetapi umumnya berukuran kecil. Ide yang sangat mendasar di balik caching adalah menggunakan media yang cepat diakses untuk memiliki salinan data. Tidak ada perbedaan antara salinan, dan yang asli. Mengakses data asli mungkin membutuhkan waktu yang lama, atau mungkin mahal untuk dilakukan (misalnya: hasil dari masalah yang sulit yang membutuhkan waktu lama untuk dipecahkan). Untuk alasan ini, akan jauh "lebih murah" untuk hanya menggunakan salinan data dari cache. Dengan kata lain, cache adalah tempat penyimpanan sementara yang memiliki salinan data yang sering digunakan. Ketika salinan data berada dalam cache ini, akan lebih cepat untuk menggunakan salinan ini daripada mengambil ulang atau menghitung ulang data asli. Hal ini akan membuat waktu rata-rata yang diperlukan untuk mengakses data menjadi lebih singkat. Menempatkan nilai baru ke dalam cache sering kali berarti bahwa nilai yang lebih lama perlu diganti. Ada beberapa ide yang berbeda (biasanya disebut "strategi") tentang bagaimana memilih nilai yang akan diganti.
Buffer sangat mirip dengan cache. Hal ini berbeda karena klien yang mengakses data dalam buffer mengetahui adanya buffer; buffer dikelola oleh aplikasi. Dengan cache, klien yang mengakses data tidak perlu menyadari adanya cache.
Aplikasi komputer yang umum mengakses data dengan cara yang sangat mirip. Misalkan data terstruktur ke dalam "blok", yang dapat diakses secara individual. Ketika sebuah aplikasi mengakses sebuah blok, maka aplikasi tersebut juga sangat mungkin mengakses (atau mereferensikan) sebuah blok yang "dekat" dengan blok aslinya. Ini dikenal sebagai lokalitas referensi. Ada berbagai jenis "lokalitas" seperti itu. Lokalitas referensi adalah salah satu alasan mengapa cache bekerja dengan baik di banyak bidang komputasi.
Agar dapat bekerja dengan baik, cache berukuran kecil, dibandingkan dengan keseluruhan jumlah data. Semakin besar cache, semakin lama waktu yang dibutuhkan untuk mencari entri. Cache yang lebih besar juga lebih mahal untuk dibangun.

