Hugo Kornelis


Stairway to Columnstore Indexes

Stairway to Columnstore Indexes Level 6: Updating and Deleting Data in a Columnstore Index

This level looks in detail at what happens when we update or delete data from a clustered columnstore index, the impact it has on concurrent data access, and how without careful maintenance the efficiency of columnstore indexes can degrade over time.

You rated this post out of 5. Change rating

2024-09-04 (first published: )

9,406 reads

Stairway to Columnstore Indexes

Stairway to Columnstore Indexes Level 12: Clustered or Nonclustered?

The previous levels of this stairway describe details, features, and limitations of columnstore indexes in SQL Server. But they do not answer what should be the first question for every database professional: should columnstore indexes be used in my databases; on what tables should they be used; and should they be clustered or nonclustered columnstore indexes?

5 (1)

You rated this post out of 5. Change rating

2023-10-11 (first published: )

5,008 reads

Stairway to Columnstore Indexes

Stairway to Columnstore Indexes Level 3: Building The Columnstore

The performance increase columnstore indexes grant when reading data from the index is offset by the expensive process required to build the index. In this Stairway level, Hugo Kornelis walks you through the steps SQL Server takes when building (or rebuilding) a columnstore index.

You rated this post out of 5. Change rating

2022-08-10 (first published: )

10,293 reads

Stairway to Columnstore Indexes

Stairway to Columnstore Indexes Level 2: Columnstore Storage

To fully appreciate just how different columnstore indexes are, and why work so well in reporting and online analytical processing (OLAP) workloads, but not for online transaction processing (OLTP), we must first look at the traditional “rowstore” indexes.

5 (2)

You rated this post out of 5. Change rating

2022-06-29 (first published: )

13,277 reads

Stairway to Columnstore Indexes

Stairway to Columnstore Indexes Level 13: Improvements in SQL Server 2016

This stairway series was started in 2015. As such, the focus was on SQL Server 2012 and SQL Server 2014 only. When SQL Server 2016 was released, with lots of improvements in the columnstore technology, I decided to finish the planned levels with the original focus on SQL Server 2012 and 2014, and add one extra level with a brief overview of the improvements available in SQL Server 2016.

5 (2)

You rated this post out of 5. Change rating

2020-07-22 (first published: )

7,219 reads

Stairway to Columnstore Indexes

Stairway to Columnstore Indexes Level 11: Optimizing Queries For Batch Mode (Part 2)

Hugo Kornelis continues his exploration of the types of queries that can end up running in row mode when accessing columnstore indexes. He demonstrates how careful rewriting can often yield a logically equivalent query that runs in batch mode instead, and therefore gains the best possible performance benefit.

You rated this post out of 5. Change rating

2019-03-26 (first published: )

2,653 reads

Stairway to Columnstore Indexes

Stairway to Columnstore Indexes Level 5: Adding New Data To Columnstore Indexes

Earlier levels have shown how Columnstore Indexes work effectively with static data. In most tables however, data is hardly ever static. We are constantly inserting new rows, and updating or deleting existing rows. If you think about what this means for a columnstore index, you will realize that this comes with some unique challenges.

You rated this post out of 5. Change rating

2019-03-26 (first published: )

7,426 reads

Blogs

How to Install DBeaver and Connect to a PostgreSQL Instance

By

Whether you’re a seasoned DBA or just exploring database tools, DBeaver offers a powerful,...

DBAs should never run SSMS under their everyday Windows account

By

 DBAs should never run SSMS under their everyday Windows account If you open SSMS under...

macOS Tahoe breaks SQL Server on Docker containers on Apple silicon

By

The honeymoon is over, and macOS 26 Tahoe broke the Rosetta 2 emulation layer...

Read the latest Blogs

Forums

Extract from sql.to multiple sheets

By Sqladmin1

Import-Module ImportExcel # Path to your .sql file $sqlFile = "C:\Data\MyQueries.sql" $excelPath = "C:\Data\SqlExtract_$(Get-Date...

sp_prepare and sp_execute vs sp_executesql

By rajemessage 14195

I have noticed sp_executesql also makes a single plan for a stmt with parameter...

Who am I?

By Steve Jones - SSC Editor

Comments posted to this topic are about the item Who am I?

Visit the forum

Question of the Day

Who am I?

If I want to track which login called a stored procedure and use the value in an audit, what function can I use to replace the xxx below?

create procedure AddNewCustomer
  @customername varchar(200)
AS
BEGIN
    DECLARE @added VARCHAR(100)
    SELECT @added = xxx

    IF @customername IS NOT NULL
      INSERT dbo.Customer
      (
          CustomerName,
          AddedBy 
      )
      VALUES
      (@customername, @added)
END

See possible answers