Актуализация:30 ноември 2015 г.
Екипът на SQL Server публикува публикация в блог с някои нови функции за In-Memory OLTP в CTP 3.1:
- Преглед на технологиите на общността 3.1 на SQL Server 2016 е наличен
Актуализация:17 ноември 2015 г.
Jos de Bruijn публикува актуализиран списък с промени в OLTP в паметта от CTP 3.0:
- In-Memory OLTP – какво е новото в SQL2016 CTP3
По-рано публикувах за промените в групите за наличност в SQL Server 2016, за които научих в MS Ignite до голяма степен от сесия на Джоуи Д'Антони и Дени Чери. Друга страхотна сесия беше от Кевин Фарли и Сунил Агарвал относно промените, които се очакват за In-Memory OLTP (функцията, известна преди като "Hekaton"). Интересна странична бележка:видеото от тази сесия показва демонстрация, в която Кевин изпълнява CTP2.0 (build 13.0.200) – макар че вероятно не е билдът, който ще видим публично това лято.
Функция/Ограничение | SQL Server 2014 | SQL Server 2016 |
---|---|---|
Максимален комбиниран размер на издръжливи маси | 256 GB | 2 TB |
LOB (varbinary(max), [n]varchar(max)) | Не се поддържа | Поддържа се* |
Прозрачно криптиране на данни (TDE) | Не се поддържа | Поддържа се |
Офлайн контролни точки | 1 | 1 на контейнер |
ПРОМЕНЯ ПРОЦЕДУРА / sp_recompile | Не се поддържа | Поддържа се (напълно онлайн) |
Вложени извиквания на естествени процедури | Не се поддържа | Поддържа се |
Нативно компилирани скаларни UDF | Не се поддържа | Поддържа се |
ПРОМЕНЯ ТАБЛИЦА | Не се поддържа (ОТПУСКАНЕ / СЪЗДАВАЙТЕ повторно) | Частично се поддържа (офлайн – подробности по-долу) |
DML задействания | Не се поддържа | Частично поддържан (СЛЕД, първоначално компилиран) |
Индекси на NULL колони | Не се поддържа | Поддържа се |
Колации, които не са BIN2 в колоните на индексния ключ | Не се поддържа | Поддържа се |
Нелатински кодови страници за [var]char колони | Не се поддържа | Поддържа се |
Сравнение/сортиране без BIN2 в собствени модули | Не се поддържа | Поддържа се |
Външни ключове | Не се поддържа | Поддържа се |
Проверка/уникални ограничения | Не се поддържа | Поддържа се |
Паралелизъм | Не се поддържа | Поддържа се |
ВЪНШНО ПРИСЪЕДИНЕНЕ, ИЛИ, НЕ, СЪЕДИНЕНИЕ [ВСИЧКИ], РАЗЛИЧНО, СЪЩЕСТВУВА, В | Не се поддържа | Поддържа се |
Множество активни набори от резултати (MARS) (Означава по-добра поддръжка на Entity Framework.) | Не се поддържа | Поддържа се |
Конструктор на SSMS таблици | Не се поддържа | Поддържа се |
* Поддръжката на LOB няма да е налична в CTP доставката това лято.
ALTER TABLE
е офлайн операция и ще поддържа добавяне/отпадане на колони, индекси и ограничения. Ще има нови разширения за синтаксис, които да поддържат някои от тези действия. Можете да промените стойностите на броя на кофичките си с просто възстановяване (но имайте предвид, че всяко повторно изграждане ще изисква 2X памет):
ALTER TABLE dbo.InMemoryTable ALTER INDEX IX_NC_Hash REBUILD WITH (BUCKET_COUNT = 1048576);
В допълнение към тези подобрения на капацитета / функциите, има и някои допълнителни подобрения в производителността. Например, ще има възможност за добавяне на в паметта, обновяем, неклъстериран индекс на columnstore върху базирани на диск или таблици в паметта. И те опростиха начина, по който се обработват изтритите редове (през 2014 г. тези операции използват FileStream; през 2016 г. те ще пропуснат тази стъпка). Има подобрения и на съветниците по миграцията и на анализатора на най-добри практики – те вече са по-леки при събирането на данни и предоставят повече контекст за сложността на миграцията.
Все още има някои ограничения с някои от тези промени. TDE, като пример, изисква допълнителни стъпки при надграждане на база данни. Но е ясно, че тъй като OLTP в паметта става по-зрял, те премахват много от най-големите пречки пред приемането.
Но чакайте, има още! Ако искате да използвате OLTP в паметта в Azure SQL база данни, това лято ще има публичен преглед с пълна поддръжка. Така че няма да се нуждаете от собствен физически сървър с 2 TB памет, за да докарате тази функция до нейните граници. Не очаквайте обаче да влязат тази функция в стандартното издание.