Can we create clustered/non-clustered columnstore index on a memory optimized table in SQL Server 2014?
Columnstore Index is not supported with memory optimized tables.
Nope, you can't create a columnstore index on a memory optimized table, only nonclustered hash and nonclustered indexes are allowed, see here for more details:
Guidelines for Using Indexes on Memory-Optimized Tables
ColumnStore indexes are going to be supported on Top on In-memory/hekaton tables in SQL Server 2016.
Related
In SQL Server 2016, I want to move ALL Clustered indexes in a DB to a secondary filegroup. What's the easiest way to do this?
This question is only for Nonclustered Indexes.
Moving all non-clustered indexes to another filegroup in SQL Server
Note: Want to retain Nonclustered indexes in same filegroup, and prevent creating additional unique indexes on primary key
In the process of optimizing an older legacy database
I have to migrate SQL Sever 2008 database to the SQL Server 2012. 2008 is the enterprise version and 2012 is standard version. As we know, standard version does not support table partitioning.
The table which is partitioned in the enterprise version has 1 clustered and around 8 non-clustered indexed. I need to drop this partition but do not know how. Can someone please shed little light on how should I go about it?
Thanks.
To unpartition a table, you'll need to recreate all the indexes with a filegroup specification instead of parttion scheme. I suggest you drop all the non-clustered indexes and then rebuild the existing partitioned clustered index using CREATE INDEX...WITH(DROP_EXISTING-ON) with a filegroup specification. Then recreate the non-clustered indexes with a filegroup specfied.
I want to have an automatically updated structure in SQL Server that can handle aggregate queries well. Can I create an indexed view in SQL server 2014 that has a columnstore index as its clustered index?
You can't create a columnstore index on a view as per the documentation:
CREATE COLUMNSTORE INDEX (Transact-SQL)
In the limitations and restrictions it explicitly states:
"Cannot be created on a view or indexed view."
There is an option called "ColumnStore Index" available in SQL Server 2012.
Is it comparable with columnar databases such as Cassandra, HBase?
Few advantages of going with SQL Server 2012 can be:
It is Updateable
It is Relational
What other factors can be considered to choose between SQL Server 2012 and other Columnar databases in case faster query performance is a requirement.
I'm not sure what you mean by "it is updatable", but in SQL Server 2012 tables that have a columnstore index cannot be updated. You must first drop the columnstore index or you must partition around the columnstore index in order to support changes to the underlying data.
Also, columnstore indexes are useful in DW systems where very large amounts of data have to be aggregated and accessed quickly.
In SQL Server 2012 you have the alternative of indexed (materialized) views.
I need to combine files in a filegroup in SQL Server 2005. How do I do this? I've run the EMPTYFILE DBCC Shrinkfile but it's crawling..
One way (for the tables at least) would be to drop the clustered index and then re-create the clustered index specifying the filegroup you are trying to combine them into. Since the clustered index is applied to the actual table this would accomplish what you are trying to do (for the tables).
You can read more about this approach on this MSDN forum topic.
http://social.msdn.microsoft.com/Forums/en-US/sqlreplication/thread/043c2bd4-07a1-4361-8c2b-7f375dd72107