sql >> Databáze >  >> RDS >> Sqlserver

Velký obchod:SQL Server 2016 Service Pack 1

Nemohu tvrdit, že jste to tu slyšeli jako první, protože to dnes oznámil Scott Guthrie (@ScottGu ) na Connect(); // 2016 a také na blogu týmu SQL Server , ale SQL Server 2016 Service Pack 1 je sestavení SQL Server, které nakonec umožní téměř každému upgradovat ze všech předchozích verzí.

Proč? No, doufám, že sedíte:

Mnoho podnikových funkcí je nyní k dispozici ve verzích Standard, Web a Express.

Tohle je VELKÁ NABÍDKA.

Dlouho jsem byl zastáncem toho, aby byla plocha stejná ve všech edicích a omezení každé edice na limity hardwaru/zdrojů. To druhé je již případ Express Edition (1 CPU, 1 GB paměti, 10 GB velikosti databáze) a Standard Edition (24 jader, 128 GB), ale samotné funkce tam prostě neexistují. I když přidali některé funkce týkající se skupin dostupnosti (omezená podpora ve Standard Edition a možnost vzdát se domény), mnoho funkcí, které jsou v současnosti Enterprise, se vůbec nezdá být Enterprise-y. Zde jsou některé důvody a důsledky umístění tolika kritických funkcí pouze do Enterprise, alespoň podle mého názoru:

  1. Zabezpečení dat Zdá se, že v posledních letech ustoupilo do pozadí. Mělo by být ve všech vydáních; Byl jsem zklamán, když bylo vydáno Always Encrypted a bylo omezeno na Enterprise. Implicitní zpráva byla, že pokud jste malá firma, nemusíte umět šifrovat údaje o kreditních kartách (totéž říkají s Transparentním šifrováním dat, ale Always Encrypted je mnohem cennější nabídka).
  2. Funkce programovatelnosti že měsíční svit jako výkonnostní funkce – jako je komprese dat a dělení na oddíly – jsou pravděpodobně na straně Enterprise, i když jsem vždy cítil, že komprese dat je sladkou stránkou malé firmy, které si nemohou dovolit jen přidávat paměť, kupovat rychlejší disky, nebo upgradujte na Enterprise.

    Pokud chce dodavatel v současných verzích využít výhody komprese nebo rozdělení na oddíly, musí vzít v úvahu, že ne všichni jeho zákazníci budou používat Enterprise Edition. Podobně zákazníci chtějí používat stejnou kódovou základnu ve svých QA, produkčních a vývojových prostředích, ale nemusí mít všechna stejnou edici. Prodejci i zákazníci také chtějí mít možnost používat funkce, které jsou dostupné v cloudu i boxu, bez ohledu na úroveň nebo edici. V současné době potřebují buď napsat více kódových základen, nebo se prostě poddat nejmenšímu společnému jmenovateli.
  3. Míra přijetí je nízká protože v mnoha ohledech nebyly upgrady Standard Edition v posledních letech zdaleka tak přesvědčivé, což znamená, že mnoho lidí je spokojeno se svými instancemi Standard 2012. Přechodem na novější verzi toho ve skutečnosti příliš nezískají a v mnoha případech náklady na testování migrace a řešení regresí ve skutečnosti převažují nad všemi výhodami.

Kolegové jako Brent Ozar a Steve Jones měli podobné myšlenky – argumentovali tím, že nejlepší funkce zůstávají vyloučeny ze standardních a nižších edic z důvodů příjmů, ale tak by to nemělo být.

A teď není.

Funkce Standardní / Web Expresní Místní DB
Vždy šifrováno
Změnit zachycování dat
Columnstore
Komprese dat
Snímky databáze
Dynamické maskování dat
Jemný auditing
OLTP v paměti
Více kontejnerů pro streamování souborů
Rozdělení
PolyBase
Zabezpečení na úrovni řádků

1. Omezeno na 32 GB na instanci na Standard Edition, 352 MB na Express.
2. Omezeno na 32 GB na databázi na Standard Edition, 352 MB na Express.

Nemám pro to žádné důkazy, ale domnívám se, že kvůli pomalému zavádění SQL Server 2016 – a konkrétně Standard Edition – Microsoft konečně naslouchal . Možná si uvědomili, že zpřístupnění tolika přesvědčivých funkcí pouze v Enterprise Edition nefunguje. Nedá se dostat krev z kamene, říkají.

Zde uvedená tabulka ukazuje sadu funkcí, které jsou nyní povoleny mimo Enterprise Edition (některé funkce již byly ve Standardu, ale neměl jsem dobrý způsob, jak to ilustrovat). Musí to být pouze tabulka kvůli třem funkcím, které nefungují na Express a/nebo LocalDB (kvůli SQL Server Agent, oprávněním nebo externím závislostem).

To je můj rychlý cheat; zkontrolujte dokumentaci pro nejnovější aktualizace. Většinu funkcí jsem otestoval a fungují tak, jak byste očekávali – ne trivializovat úsilí, ale pouze odstranily kontroly, které blokovaly funkčnost na základě vydání. Myslel jsem, že je podrazím testováním nad rámec základů, jako jsou přírůstkové statistiky dělených tabulek a kombinací jako Columnstore nad komprimovanou tabulkou, abych zjistil, jestli jim něco neuniklo. Ale ne – vše v tabulce fungovalo stejně, jako kdybych spouštěl Enterprise Edition.

To znamená, že důraz zde byl na konzistentní programovací plochu (CPSA). Takže ne, najednou nezískáte všechny výhody Enterprise Edition zdarma nebo s výraznou slevou – viz níže funkce, které nebudou fungovat. A některé z výše uvedených funkcí mohou být stále omezeny na edici.

Nicméně to poskytuje skvělé řešení pro #2 výše:Pokud bude mnoho z těchto funkcí fungovat ve všech edicích, i když podporují různé úrovně rozsahu, bude pro zákazníky i dodavatele snazší vytvářet řešení, která fungují bez ohledu na to, kde se nacházejí. jsou nasazeny. Bude to obrovská výhra, a to i nad rámec čistého přínosu konečně moci používat věci jako Always Encrypted a rozdělování všude.

Co stále odlišuje edice?

V zásadě platí, že pokud se dříve jednalo o funkci provozu nebo dostupnosti na podnikové úrovni nebo v rámci určité sady funkcí výkonu, tak to zůstane. Následující seznam není vyčerpávající, ale pravděpodobně zachycuje většinu velkých rozdílů:

  • Funkce dostupnosti jako jsou online operace, postupné obnovení a plně funkční skupiny dostupnosti (např. repliky pouze pro čtení) jsou stále pouze Enterprise. Přeji si REBUILD + (ONLINE = ON) syntaxe by v nižších edicích mohla fungovat jako neoperativní s varováním namísto vracení chyby, ale zde nemohu být příliš úzkostlivý.
  • Funkce výkonu jako paralelismus stále nebude fungovat v Express Edition (nebo LocalDB). Automatické použití indexovaného zobrazení bez NOEXPAND rady a špičkové funkce, jako je hot-add memory/CPU, budou i nadále dostupné pouze v Enterprise.
  • Provozní funkce jako Resource Governor, Extensible Key Management (EKM) a Transparent Data Encryption zůstanou pouze Enterprise Edition. Jiné, jako je šifrování záloh, komprese záloh a rozšíření fondu vyrovnávacích pamětí, budou nadále fungovat ve standardu, ale stále nebudou fungovat v Express.
  • SQL Server Agent je stále nedostupný v Express a LocalDB. V důsledku toho, a jak je uvedeno výše, Change Data Capture nebude fungovat. Cross-server Service Broker zůstává v těchto edicích také nedostupný.
  • In-Memory OLTP a PolyBase jsou podporovány v Express, ale nejsou dostupné v LocalDB.
  • Práva na virtualizaci se nezměnily a jsou stále mnohem cennější v Enterprise Edition se Software Assurance.
  • Omezení zdrojů v edicích nižší úrovně zůstanou stejné . Zdá se, že počítadla fazolí stále kontrolují horní limit paměti ve Standard Edition, takže je to stále 128 GB (zatímco Enterprise Edition je nyní 24 TB). Osobně si myslím, že tato horní hranice by měla přinášet postupné zisky s každou novou verzí (Moorův zákon), protože mám pocit, že Standard Edition je dostatečně drahá, takže její paměťové limity by nikdy neměly být tak nebezpečně blízko horní hranici dobře vybaveného notebooku. Ale vezmu, co mohu získat, a když jste uvízli na Standard Edition a je vyžadováno škálování, můžete nyní používat výše uvedené podnikové funkce ve více krabicích nebo instancích Standard Edition, místo abyste se pokoušeli o škálování.

Shrnutí

Toto je odvážný krok společnosti Microsoft a určitě vidím, jak to zvýší standardní prodeje, aniž by došlo k kanibalizaci podnikových prodejů. Zákazníci Standard Edition mohou tyto funkce používat jak ke konsolidaci svých kódových bází, tak v mnoha scénářích k vytváření řešení, která nabízejí lepší výkon. A pro ty, kteří již využívají všech výhod Enterprise Edition, to pro vás nemusí být až tak zajímavé, ale je zde také spousta nových funkcí dostupných ve všech edicích SP1 . Takže bez ohledu na to, jakou edici nyní používáte, opravdu nemáte žádnou omluvu, abyste se drželi staré verze SQL Serveru.

Přejděte na upgrade na SQL Server 2016 SP1!


  1. PHP nenačítá php_pgsql.dll v systému Windows

  2. Nastavení NLS_NUMERIC_CHARACTERS pro desetinné místo

  3. Normalizace v MYSQL

  4. Práce s MyISAM v MySQL