Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

In-Memory OLTP:Co nowego w SQL Server 2016

Zespół programistów SQL Server dodał nowe funkcje do OLTP w pamięci. Wszystkie te funkcje umożliwiają tworzenie nowych aplikacji, a także zwiększenie ogólnej wydajności i skalowania. Poniżej znajduje się lista ulepszeń OLTP w pamięci, które są dostępne w SQL Server 2016 CTP3.

Ulepszenia języka Transact-SQL:

Zapytanie o powierzchnię w modułach natywnych dla:

  • Rozłączenie (LUB, NIE)
  • UNON i UNION ALL
  • WYBIERZ WYRÓŻNIENIE
  • ZŁĄCZENIE ZEWNĘTRZNE
  • Podzapytania w instrukcjach SELECT (EXISTS, IN, podzapytania skalarne)
  • Zagnieżdżone wykonanie (EXECUTE) natywnie skompilowanych modułów
  • Natywnie skompilowane wbudowane funkcje z wartościami tabeli (TVF)
  • Obsługa EXECUTE AS CALLER – klauzula EXECUTE AS nie jest już wymagana dla modułów natywnych
  • Wbudowane funkcje bezpieczeństwa i zwiększona obsługa wbudowanych funkcji matematycznych

Obsługa tabel zoptymalizowanych pod kątem pamięci:

  • Ograniczenia KLUCZA OBCEGO między tabelami zoptymalizowanymi pod kątem pamięci
  • SPRAWDŹ ograniczenia
  • UNIKALNE ograniczenia
  • Wyzwalacze (AFTER) dla operacji INSERT/UPDATE/DELETE. Wyzwalacze w tabelach zoptymalizowanych pod kątem pamięci są kompilowane natywnie i dlatego używają WITH NATIVE_COMPILATION.

Obsługa ALTER i sp_recompile dla natywnie kompilowanych procedur, funkcji i wyzwalaczy

Obsługa ALTER TABLE dla zmian schematu i indeksu
Nowa składnia ALTER TABLE … ADD/DROP/ALTER INDEX została wprowadzona do zmian indeksów w tabelach zoptymalizowanych pod kątem pamięci.

Pełna obsługa sortowania i stron kodowych:

  • Kolumny (var)char mogą używać dowolnej strony kodowej obsługiwanej przez SQL Server
  • Kolumny znaków w kluczach indeksu mogą używać dowolnego sortowania SQL Server
  • Wyrażenia w natywnie skompilowanych modułach, a także ograniczenia dotyczące tabel zoptymalizowanych pod kątem pamięci, mogą używać dowolnego sortowania SQL Server

Skalarne funkcje zdefiniowane przez użytkownika dla OLTP w pamięci

Ulepszenia wydajności i skalowania:

  • Zwiększony rozmiar danych:baza danych może teraz zawierać do 2 terabajtów danych użytkownika w tabelach zoptymalizowanych pod kątem pamięci za pomocą SCHEMA_AND_DATA
  • Ulepszenia skalowalności w warstwie trwałości
  • Obsługa planów równoległych dla dostępu do tabel zoptymalizowanych pod kątem pamięci przy użyciu interpretowanego języka Transact-SQL
  • Obsługa skanowania równoległego dla indeksów HASH

Ulepszenia w SQL Server Management Studio:

  • Raport analizy transakcji nie wymaga już konfiguracji kolektorów danych ani zarządzania hurtownią danych. Raport można teraz uruchomić bezpośrednio w produkcyjnej bazie danych. Po prostu kliknij prawym przyciskiem myszy bazę danych i wybierz Raporty -> Raporty standardowe -> Raport analizy wyników transakcji.
  • Polecenie cmdlet PowerShell do oceny migracji do oceny sprawności migracji wielu obiektów w bazie danych SQL Server.
  • Generuj listy kontrolne migracji, klikając prawym przyciskiem myszy bazę danych i wybierając Zadania -> Generuj listy kontrolne migracji OLTP w pamięci

Obsługa wielu funkcji:

  • Wiele połączeń aktywnych zestawów wyników (MARS) może teraz uzyskać dostęp do tabel zoptymalizowanych pod kątem pamięci i natywnie skompilowanych procedur składowanych
  • Obsługa przezroczystego szyfrowania danych. Jeśli baza danych jest skonfigurowana do SZYFROWANIA, pliki w grupie plików MEMORY_OPTIMIZED_DATA są teraz również szyfrowane.
  • Obsługa korzystania z tymczasowego wersjonowania systemu za pomocą protokołu OLTP w pamięci. Aby uzyskać więcej informacji, zobacz Systemowe tablice czasowe z tablicami zoptymalizowanymi pod kątem pamięci
  • Obsługa magazynu zapytań dla natywnie skompilowanego kodu z obciążeń OLTP w pamięci. Aby uzyskać więcej informacji, zobacz Używanie magazynu zapytań z OLTP w pamięci.
  • Bezpieczeństwo na poziomie wiersza w tabelach zoptymalizowanych pod kątem pamięci

Jeszcze więcej!


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jaka jest różnica między Scope_Identity(), Identity(), @@Identity i Ident_Current()?

  2. Powiadomienie o zmianach w SQL Server 2008

  3. 3 pytania dotyczące monitorowania serwera SQL przy przejmowaniu stanowiska DBA

  4. HAS_DBACCESS() – Dowiedz się, czy użytkownik może uzyskać dostęp do bazy danych w SQL Server

  5. Jak zachować kolejność wstawiania w SQL Server