Columnstore indeks
Veriyi satır yerine sütun bazında saklayan, milyonlarca satır üzerinde tek sütunları tarayıp toplayan analitik sorgular için optimize edilmiş indeks. SQL Server'ın sütun deposu yanıtıdır; muazzam sıkıştırma ve "batch mode" yürütme sağlar.
Fikir: OLAP sorguları çoğu zaman yalnızca birkaç sütunu ama çok sayıda satırı okur ("amount" üzerinde SUM). Satır depolama bu durumda tüm satırları belleğe taşımak zorunda bırakır; sütun depolama yalnızca ilgili sütunları okur ve sıkı paketler → çok daha az G/Ç ve yüksek sıkıştırma (benzer değerler yan yana). SQL Server ayrıca columnstore üzerinde "batch mode" (bir seferde 1000 satır) çalıştırır → toplama birkaç kat hızlanır. Bedeli: nokta aramaları ve tek satırlık değişiklikler (OLTP) için kötüdür → ambar ve raporlama için, çoğu zaman tamamlayıcı indeks olarak kullanılır. Aynı ilke Parquet'yi, ClickHouse'u ve tüm modern analitik depoları yönlendirir. Klasik karşıtlık: işlemler için satır depolama, analitik için sütun depolama.