sql >> Database >  >> RDS >> Sqlserver

Futures met hoge beschikbaarheid van SQL Server Standard Edition

Onlangs is er hier en hier nogal wat nerveuze speculatie geweest over welke hoge-beschikbaarheidsopties beschikbaar zullen zijn voor SQL Server Standard Edition, zodra Database Mirroring (DBM) daadwerkelijk is verwijderd in een toekomstige release van SQL Server.

Database Mirroring (DBM) is afgeschaft in SQL Server 2012, waarbij Microsoft voorstelde om te migreren naar AlwaysOn-beschikbaarheidsgroepen (waarvoor SQL Server Enterprise Edition vereist is), en verder opmerkend:"Als uw editie van SQL Server geen AlwaysOn-beschikbaarheidsgroepen ondersteunt, gebruikt u verzending loggen”.

De exacte depreciatietaal was "De volgende SQL Server Database Engine-functies worden ondersteund in de volgende versie van SQL Server, maar zullen in een latere versie worden verwijderd. De specifieke versie van SQL Server is niet vastgesteld. Het is de bedoeling dat deze functies in een toekomstige versie van SQL Server worden verwijderd. Verouderde functies mogen niet worden gebruikt in nieuwe applicaties.”

Betekent dit dat u voor nieuwe toepassingen per direct moet stoppen met het gebruik van Database Mirroring? Ik zou zeggen:"Natuurlijk niet!" Database Mirroring blijft werken zoals het in het verleden deed, en het zal nog geruime tijd niet uit het product worden verwijderd. Als het zinvol is om DBM te gebruiken om uw doelstellingen voor Recovery Point Objective (RPO) en Recovery Time Objective (RTO) te bereiken, gebruik die functie dan voor nieuwe toepassingen. In tegenstelling tot een verouderde T-SQL-taalfunctie (die veel moeilijker te herschrijven, testen en implementeren zou kunnen zijn), zal het in de toekomst veel gemakkelijker zijn om van DBM over te schakelen naar een andere HA/DR-techniek.

Historisch gezien is een verouderde SQL Server-functie niet echt verwijderd voor drie hoofdversies na de versie toen de depreciatie openbaar werd aangekondigd. Als Microsoft dat patroon volgt, wordt Database Mirroring pas echt verwijderd in "SQL Server 2018" (gezien SQL Server 2014, een speculatieve "SQL Server 2016" en een nog speculatievere "SQL Server 2018").

Volgens Mary Jo Foley zou SQL Server 2014 begin 2014 beschikbaar moeten zijn. Laten we aannemen dat "SQL Server 2016" beschikbaar is in januari 2016 en "SQL Server 2018" beschikbaar is in januari 2018. Als deze volledig speculatieve versietijdlijn eindigde als het juist is, zou dat betekenen dat een SQL Server Standard Edition-klant nog steeds Database Mirroring zou kunnen gebruiken in "SQL Server 2018", dat tot januari 2023 in de reguliere ondersteuning van Microsoft zou blijven, en tot januari 2028 in uitgebreide ondersteuning zou blijven . Dat is nog een hele tijd weg!

Dit geeft Microsoft (en hun Standard Edition-klanten) voldoende tijd om met een haalbare vervanging voor Database Mirroring te komen. Microsoft heeft hier verschillende voor de hand liggende keuzes. Ten eerste zouden ze het afschrijvingsbesluit voor DBM kunnen terugdraaien. Dat zou geen ontwikkel- en testwerk van Microsoft vereisen, maar het zou de ondersteuningslast voor DBM verder uitbreiden naar de toekomst. Ten tweede kunnen ze een beperkte versie van Beschikbaarheidsgroepen toestaan ​​in SQL Server Standard Edition (beperkt tot een of twee replica's). Ten derde lijkt het zeer waarschijnlijk dat er een functie met betrekking tot Azure zal zijn die zal worden aangeboden als vervanging voor DBM). Er zou tegen die tijd ook een geheel nieuwe HA/DR-technologie beschikbaar kunnen zijn.

Klanten van SQL Server Standard Edition hebben verschillende voor de hand liggende keuzes voor wat ze zullen doen naarmate DBM dichter bij verwijdering uit het product komt. Ten eerste kunnen ze ervoor kiezen om gewoon op een versie van SQL Server te blijven die nog steeds gebruikmaakt van Database Mirroring (dit kan elke versie zijn van SQL Server 2005 tot mijn denkbeeldige "SQL Server 2018"). Momenteel zijn er nog steeds een groot aantal SQL Server-klanten die graag oudere versies van SQL Server gebruiken, zoals SQL Server 2000 en SQL Server 2005, en het is waarschijnlijk dat deze trend zich zal voortzetten. Mijn ervaring is dat organisaties die om welke reden dan ook kiezen voor SQL Server Standard Edition of deze moeten gebruiken, ook langzamer zijn met upgraden naar nieuwe versies van SQL Server wanneer deze door Microsoft worden uitgebracht.

Ten tweede kunnen ze de komende jaren overstappen op SQL Server Enterprise Edition. Er zijn tenslotte tal van boeiende functies in SQL Server Enterprise Edition die zeer zinvol zijn om te gebruiken voor een missiekritieke toepassing die echt essentieel is voor uw bedrijf. Veel organisaties kunnen om een ​​aantal redenen in de toekomst de middelen vinden om SQL Server Enterprise Edition te betalen.

Ten derde ben ik er zeker van dat er veel sterke prikkels zullen zijn van Microsoft voor klanten om de komende jaren een groot deel van hun database-infrastructuur naar Azure te verplaatsen. Dit kan in veel situaties een perfect haalbaar alternatief zijn.

Natuurlijk zal niet iedereen blij zijn met een van deze alternatieven. Als je je echt zorgen maakt over de afschaffing van Database Mirroring (zonder dat een volledig haalbare vervanging publiekelijk wordt aangekondigd), heb je een aantal alternatieven.

Ten eerste zou je kunnen overwegen om te kalmeren en nog wat langer te wachten om te zien wat er gebeurt als we in de loop van de tijd meer leren over toekomstige versies van SQL Server. Het is zeer waarschijnlijk dat Microsoft op dit gebied nog geen definitieve beslissingen heeft genomen (maar je kunt er zeker van zijn dat ze er wel over hebben nagedacht). U kunt ook proberen persoonlijk contact op te nemen met mensen die u kent in de productgroep om uw zaak te verdedigen. De minst effectieve strategie (althans in mijn ervaring) zou zijn om luid en publiekelijk over dit probleem te klagen, vooral voordat Microsoft hun intenties voor de toekomst heeft aangekondigd. Het publieke "piepende wiel" zijn is soms contraproductief...

Wat vind je hiervan? Is de afschaffing van Database Mirroring (zonder aangekondigde, haalbare vervanging voor Standard Edition) een grote zorg voor u? Maakt dit deel uit van een groots ontwerp om u te dwingen Enterprise Edition of Azure te gebruiken? Ik zou graag uw mening horen!


  1. SQL Server cumulatieve som per groep

  2. SELECT COUNT(*) AS count - Hoe deze telling te gebruiken

  3. SQL-query's

  4. verwijst een externe sleutel altijd naar een unieke sleutel in een andere tabel?