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
Pokud chcete vytvořit tabulky optimalizované pro paměť, musíte nejprve vytvořit skupinu souborů optimalizovanou pro paměť. Skupina souborů optimalizovaná pro paměť obsahuje jeden nebo více kontejnerů. Každý kontejner obsahuje buď datové soubory, rozdílové soubory, nebo obojí.
I když se neuchovávají řádky dat z SCHEMA_ONLY
tabulek a metadata pro tabulky optimalizované pro paměť a nativně kompilované uložené procedury jsou uloženy v tradičních katalogech, modul In-Memory OLTP stále vyžaduje skupinu souborů optimalizovanou pro paměť pro tabulky optimalizované pro SCHEMA_ONLY
paměť, aby poskytoval jednotné prostředí pro databáze s tabulkami optimalizovanými pro paměť.
Skupina souborů optimalizovaná pro paměť je založená na skupině souborů filestream s následujícími rozdíly:
Pro každou databázi můžete vytvořit pouze jednu skupinu souborů optimalizovanou pro paměť. Skupinu souborů musíte explicitně označit jako obsahující memory_optimized_data. Skupinu souborů můžete vytvořit při vytváření databáze nebo ji můžete přidat později:
ALTER DATABASE imoltp ADD FILEGROUP imoltp_mod CONTAINS MEMORY_OPTIMIZED_DATA
Do skupiny souborů je potřeba přidat jeden nebo více kontejnerů
MEMORY_OPTIMIZED_DATA
. Například:ALTER DATABASE imoltp ADD FILE (name='imoltp_mod1', filename='c:\data\imoltp_mod1') TO FILEGROUP imoltp_mod
K vytvoření skupiny souborů optimalizované pro paměť není nutné povolit filestream (povolit a nakonfigurovat FILESTREAM). Mapování na souborový stream provádí modul In-Memory OLTP.
Nové kontejnery můžete přidat do skupiny souborů optimalizované pro paměť. Možná budete potřebovat nový kontejner k rozšíření úložiště potřebného pro tabulku optimalizovanou pro odolnou paměť a také k distribuci vstupně-výstupních operací mezi více kontejnerů.
Přesun dat pomocí skupiny souborů optimalizované pro paměť je v konfiguraci skupiny dostupnosti Always On efektivně optimalizován. Na rozdíl od filestream souborů, které se odesílají do sekundárních replik, kontrolní soubory (jak data, tak rozdílové soubory) ve skupině souborů optimalizované pro paměť se do sekundárních replik neodesílají. Data a rozdílové soubory jsou vytvářeny pomocí transakčního protokolu na sekundární replice.
Poznámka:
V systému SQL Server 2022 (16.x) a starších verzích lze souborovou skupinu optimalizovanou pro paměť odebrat pouze tak, že odstraníte celou databázi. Nemůžete pustit kontejner, který není prázdný, ani poslední zbývající kontejner, i když je prázdný. Nemůžete také přesunout páry dat a rozdílových souborů do jiného kontejneru ve skupině souborů optimalizované pro paměť.
Od verze SQL Server 2025 (17.x) Preview můžete odebrat poslední zbývající kontejner a odebrat skupinu souborů optimalizovanou pro paměť. Další informace naleznete v tématu Odebrání kontejneru a skupiny souborů optimalizované pro paměť.
Konfigurace skupiny souborů Memory-Optimized
Zvažte vytvoření více kontejnerů ve skupině souborů optimalizovaných pro paměť a jejich distribuci na různých jednotkách, abyste dosáhli větší šířky pásma pro streamování dat do paměti.
Ve scénáři s více kontejnery a více jednotkami jsou data a rozdílové soubory přidělovány do kontejnerů rotačně. První datový soubor se přidělí z prvního kontejneru a rozdílový soubor se přidělí z dalšího kontejneru a tento vzor přidělení se opakuje. Toto schéma přidělování distribuuje data a rozdílové soubory rovnoměrně mezi kontejnery, pokud máte lichý počet disků, namapovaných na jeden kontejner. Pokud ale máte sudý počet disků, každý přiřazený k určité skupině, může to vést k nevyváženému úložišti, kde jsou datové soubory přiřazeny k lichým diskům a rozdílové soubory k sudým diskům. Pokud chcete získat vyvážený proud dat při operacích vstupně-výstupních během obnovení, zvažte uložení dvojic datových a rozdílových souborů na stejnou jednotku/disky nebo úložiště.
Při konfiguraci úložiště musíte poskytnout volné místo na disku, které je čtyřikrát větší než velikost tabulek optimalizovaných pro odolnou paměť. Ujistěte se také, že váš subsystém vstupně-výstupních operací podporuje požadované IOPS pro vaši úlohu. Pokud jsou páry dat a rozdílových souborů vyplněné při daném IOPS, potřebujete třikrát vyšší IOPS pro ukládání a slučování operací. Kapacitu úložiště a IOPS můžete přidat přidáním jednoho nebo více kontejnerů do skupiny souborů optimalizované pro paměť.
Upozornění
MAXSIZE
Pokud je pro skupinu souborů optimalizovanou pro paměť nastavená hodnota a soubory kontrolních bodů překračují maximální velikost kontejneru, databáze se stane PODEZŘELÝm.
V takovém případě se nepokoušejte nastavit databázi do režimu OFFLINE a ONLINE, což způsobí, že databáze zůstane ve stavu RECOVERY_PENDING.
Viz také
Vytváření a správa úložiště pro objekty Memory-Optimized
Databázové soubory a skupiny souborů
možnosti souborů a skupin souborů ALTER DATABASE (Transact-SQL)