Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
platí pro: SQL Server
Azure SQL Database
Azure SQL Managed Instance
Toto téma popisuje funkce SYSTÉMU SQL Server, které nejsou podporovány pro použití s objekty optimalizovanými pro paměť. Poslední část navíc uvádí funkce, které nebyly podporovány pro In-Memory OLTP, ale později se staly podporovanými.
Funkce SQL Serveru nejsou podporované pro In-Memory OLTP
Následující funkce SQL Serveru nejsou podporovány v databázi, která obsahuje objekty optimalizované pro paměť (včetně skupiny datových souborů optimalizovaných pro paměť).
| Nepodporovaná funkce | Popis funkce |
|---|---|
| Komprese dat pro tabulky optimalizované pro paměť. | Pomocí funkce komprese dat můžete zkomprimovat data uvnitř databáze a snížit velikost databáze. Další informace naleznete v tématu Komprese dat. |
| Dělení tabulek optimalizovaných pro paměť a indexů HASH a neclusterovaných indexů | Data dělených tabulek a indexů jsou rozdělena do jednotek, které je možné rozdělit do více než jedné skupiny souborů v databázi. Další informace najdete v tématu dělené tabulky a indexy. |
| Replication | Konfigurace replikace, jiné než transakční replikace do tabulek optimalizovaných pro paměť pro předplatitele, nejsou kompatibilní s tabulkami nebo zobrazeními odkazujícími na tabulky optimalizované pro paměť. Pokud existuje skupina souborů optimalizovaná pro paměť, replikace využívající sync_mode='snímek databáze' se nepodporuje. Další informace najdete v tématu Replikace tabulky optimalizované pro paměť pro předplatitele. |
| Zrcadlení | Zrcadlení databáze se nepodporuje u databází se skupinou souborů MEMORY_OPTIMIZED_DATA. Další informace o zrcadlení naleznete v tématu Zrcadlení databáze (SQL Server). |
| Opětovné sestavení protokolu | Opětovné sestavení záznamu pomocí příkazu attach nebo ALTER DATABASE není podporováno pro databáze se skupinou souborů MEMORY_OPTIMIZED_DATA. |
| Odkazovaný server | Nelze získat přístup k propojeným serverům ve stejném dotazu nebo transakci jako tabulky optimalizované pro paměť. Další informace naleznete v tématu odkazované servery (databázový stroj). |
| Hromadné protokolování | Bez ohledu na model obnovení databáze jsou všechny operace s tabulkami optimalizovanými pro odolnou paměť vždy plně protokolovány. |
| Minimální protokolování | Minimální protokolování není podporováno pro tabulky optimalizované pro paměť. Další informace o minimálním protokolování naleznete v tématu Transakční protokol (SQL Server) a požadavky pro minimální protokolování hromadného importu. |
| Sledování změn | Sledování změn není podporováno pro tabulky optimalizované pro paměť. |
| Spouště DDL | Triggery na úrovni databáze a triggery DDL na úrovni serveru nejsou podporovány v tabulkách OLTP In-Memory ani s nativně kompilovanými moduly. |
| Zachycení změn dat (Change Data Capture, CDC) | SQL Server 2017 CU15 a vyšší podporují povolení CDC v databázi s tabulkami optimalizovanými pro paměť. To platí jenom pro databázi a všechny tabulky na disku v databázi. V dřívějších verzích SQL Serveru nelze cdC použít s databází, která obsahuje tabulky optimalizované pro paměť, protože interně CDC používá trigger DDL pro DROP TABLE. |
| Režim vláken | Režim vláken není podporován u tabulek optimalizovaných pro paměť: Pokud je režim vláken aktivní, nemůžete vytvářet databáze se skupinami souborů optimalizovanými pro paměť ani do existujících databází přidávat skupiny souborů optimalizované pro paměť. Režim vláken můžete povolit, pokud existují databáze se skupinami souborů optimalizovanými pro paměť. Povolení režimu vláken ale vyžaduje restartování serveru. V takovém případě by se nepodařilo obnovit databáze se skupinami souborů optimalizovanými pro paměť. Pak se zobrazí chybová zpráva s oznámením, že zakážete režim vláken pro použití databází se skupinami souborů optimalizovanými pro paměť. Pokud je režim vláken aktivní, připojení a obnovení databáze, která má skupinu souborů optimalizovanou pro paměť, selže. Databáze by byly označeny jako podezřelé. Další informace najdete v tématu Zjednodušené možnosti konfigurace serveru fondu. |
| Omezení služby Service Broker | Nelze získat přístup k frontě z nativně zkompilované uložené procedury. Nelze získat přístup k frontě ve vzdálené databázi v transakci, která přistupuje k paměťově optimalizovaným tabulkám. |
| Replikace u předplatitelů | Transakční replikace do tabulek optimalizovaných pro paměť pro předplatitele je podporovaná, ale s určitými omezeními. Další informace najdete v tématu Replikace tabulky optimalizované pro paměť pro předplatitele |
Dotazy a transakce napříč databázemi
S několika výjimkami se transakce mezi databázemi nepodporují. Následující tabulka popisuje podporované případy a odpovídající omezení. (Viz také dotazy napříč databázemi.)
| Databases | Povoleno | Description |
|---|---|---|
| Uživatelské databáze, model a msdb. | Ne | Ve většině případů se nepodporují dotazy a transakce napříč databázemi. Dotaz nemá přístup k jiným databázím, pokud dotaz používá tabulku optimalizovanou pro paměť nebo nativně zkompilovanou uloženou proceduru. Toto omezení platí pro transakce a dotazy. Výjimkou jsou systémové databáze tempdb a hlavní databáze. Tady je hlavní databáze dostupná pro přístup jen pro čtení. |
| Databáze prostředků, databáze tempdb | Ano | V transakci, která se dotkne In-Memory OLTP objekty, lze bez omezení použít systémové databáze Resource a tempdb . |
Nepodporovaná scénáře
Přístup k tabulkám optimalizovaným pro paměť pomocí kontextového připojení z uložených procedur CLR.
Sada klíčů a dynamické kurzory na dotazech, které přistupují k tabulkám optimalizovaným pro paměť. Tyto kurzory jsou degradované na statické a jen pro čtení.
Použití MERGE INTOtarget, kde target je tabulka optimalizovaná pro paměť, není podporováno.
- MERGE USINGsource je podporován pro tabulky optimalizované pro paměť.
Datový typ ROWVERSION (TIMESTAMP) není podporován. Další informace najdete v tématu FROM (Transact-SQL).
Automatické zavření není podporováno u databází, které mají skupinu souborů MEMORY_OPTIMIZED_DATA.
Transakční DDL, například CREATE/ALTER/DROP s objekty In-Memory OLTP, nejsou podporovány v uživatelských transakcích.
Oznámení o události.
Správa založená na zásadách (PBM).
- Režimy prevence a protokolování pbm nejsou podporovány. Existence těchto zásad na serveru může zabránit úspěšnému spuštění In-Memory OLTP DDL. Podporují se režimy na vyžádání a podle plánu.
U In-Memory OLTP se nepodporuje zahrnutí databáze (obsažené databáze).
- Podporuje se interní ověřování databáze. Nicméně, všechny objekty In-Memory OLTP jsou v zobrazení dynamické správy (DMV) dm_db_uncontained_entities označeny jako narušující uzavřenost.
Nedávno přidaná podpora
Někdy novější verze SQL Serveru přidává podporu funkce, která se dříve nepodporovala. Tato část uvádí funkce, které se pro In-Memory OLTP nepodporovaly, ale později byly podporovány pro In-Memory OLTP.
V následující tabulce hodnoty verze, například (15.x), odkazují na hodnotu vrácenou příkazem SELECT @@Version; Transact-SQL.
| Název funkce | Verze SQL Serveru | Comments |
|---|---|---|
| Snímky databáze | 2019 (15.x) | Snímky databáze jsou teď podporované pro databáze, které mají skupinu souborů MEMORY_OPTIMIZED_DATA. |