ACID Ne Demek?
Yayın: · Son güncelleme:
ACID Ne Demek? Kısaca
ACID, veritabanı işlemlerinin güvenilir çalışması için gereken dört özelliğin baş harflerinden oluşur: Atomicity (bölünmezlik), Consistency (tutarlılık), Isolation (yalıtım) ve Durability (dayanıklılık).

ACID ne demek?
ACID, bir veritabanının işlemleri (transaction) güvenle yürütebilmesi için uyması gereken dört ilkenin kısaltmasıdır. İlişkisel veritabanlarının çoğu bu ilkeleri varsayılan olarak destekler. Para, stok ya da rezervasyon gibi hata kaldırmayan verilerde ACID uyumu temel beklentidir.
Dört ilke ne anlama gelir?
| Harf | İlke | Anlamı |
|---|---|---|
| A | Atomicity (bölünmezlik) | İşlem ya tamamen uygulanır ya hiç uygulanmaz |
| C | Consistency (tutarlılık) | İşlem sonrası veri tanımlı kurallara uyar |
| I | Isolation (yalıtım) | Eş zamanlı işlemler birbirinin yarım hâlini görmez |
| D | Durability (dayanıklılık) | Onaylanan işlem, çökme olsa bile kaybolmaz |
Örnek senaryo
Varsayımsal bir sinema bilet sisteminde son kalan koltuğu aynı anda iki kişi satın almaya çalışıyor. Yalıtım ilkesi, iki işlemin aynı koltuğu birden satmasını engeller. Bölünmezlik, ödeme alınıp koltuk atanmadan sistem çökerse ödemenin de geri alınmasını sağlar.
Tutarlılık, "bir koltuk tek kişiye ait olabilir" kuralının hiçbir koşulda bozulmamasıdır. Dayanıklılık ise "biletiniz onaylandı" mesajından sonra elektrik kesilse bile kaydın diskte kalmasıdır.
NoSQL sistemlerde durum
Bazı NoSQL veritabanları yüksek ölçek ve hız için ACID'in bir kısmından ödün verir. Bu sistemler genellikle BASE olarak özetlenen yaklaşımı izler ve "sonunda tutarlı" (eventual consistency) davranır. Yani bir güncellemenin tüm sunuculara yansıması kısa bir süre alabilir.
Son yıllarda MongoDB gibi pek çok NoSQL sistemi de çok dokümanlı ACID işlemleri desteklemeye başladı. Projenizde hangi garantiye ihtiyaç duyduğunuzu baştan belirlemek, veritabanı seçimini kolaylaştırır.
Sıkça Sorulan Sorular
ACID uyumlu veritabanları hangileri?
PostgreSQL, MySQL'in InnoDB motoru, SQLite, Microsoft SQL Server ve Oracle Database ACID işlemleri destekler. Bazı NoSQL sistemleri de belirli koşullarda ACID işlemler sunar.
ACID her zaman gerekli mi?
Hayır. Sayfa görüntülenme sayacı ya da sosyal medya beğeni sayısı gibi küçük gecikmelerin sorun olmadığı verilerde gevşek tutarlılık kabul edilebilir. Para ve stok gibi verilerde ise ACID önemlidir.