Schaalbare clouddatabases bouwen

Van toepassing op: Azure SQL Database

Het uitschalen van databases kan eenvoudig worden gerealiseerd met behulp van schaalbare hulpprogramma's en functies voor Azure SQL Database. U kunt met name de elastic database-clientbibliotheek gebruiken om uitgeschaalde databases te maken en te beheren. Met deze functie kunt u eenvoudig shardtoepassingen ontwikkelen met behulp van honderden of zelfs duizenden databases in Azure SQL Database.

Om te downloaden:

Documentatie

  1. Aan de slag met tools voor Elastic Database
  2. Functies van Elastic Database
  3. Shard-toewijzingsbeheer
  4. Bestaande databases migreren om uit te schalen
  5. Gegevensafhankelijke routering
  6. Query's met meerdere shards
  7. Een shard toevoegen met elastic database-hulpprogramma's
  8. Toepassingen met meerdere tenants met hulpprogramma's voor Elastic Database en beveiliging op rijniveau
  9. Clientbibliotheek-apps upgraden
  10. Overzicht van elastische query's
  11. Woordenlijst voor hulpprogramma's voor Elastic Database
  12. Elastic Database-clientbibliotheek met Entity Framework
  13. Elastic Database-clientbibliotheek met Dapper
  14. Hulpprogramma voor splitsen en samenvoegen
  15. Prestatiemeteritems voor shard-toewijzingsbeheer
  16. Veelgestelde vragen over elastic database-hulpprogramma's

Clientmogelijkheden

Het uitschalen van toepassingen met behulp van sharding brengt uitdagingen met zich mee voor zowel de ontwikkelaar als de beheerder. De clientbibliotheek vereenvoudigt de beheertaken door hulpprogramma's te bieden waarmee zowel ontwikkelaars als beheerders uitgeschaalde databases kunnen beheren. In een typisch voorbeeld zijn er veel databases, ook wel 'shards' genoemd, die moeten worden beheerd. Klanten bevinden zich in dezelfde database en er is één database per klant (een schema voor één tenant). De clientbibliotheek bevat de volgende functies:

  • Shard-toewijzingsbeheer: er wordt een speciale database met de naam shard-toewijzingsbeheer gemaakt. Shard-toewijzingsbeheer is de mogelijkheid voor een toepassing om metagegevens over de shards te beheren. Ontwikkelaars kunnen deze functionaliteit gebruiken om databases als shards te registreren, toewijzingen van afzonderlijke shardingsleutels of sleutelbereiken aan deze databases te beschrijven en deze metagegevens te behouden naarmate het aantal en de samenstelling van databases zich ontwikkelt om de capaciteitswijzigingen weer te geven. Zonder de elastic database-clientbibliotheek moet u veel tijd besteden aan het schrijven van de beheercode bij het implementeren van sharding. Zie Shard-toewijzingsbeheer voor meer informatie.

  • Gegevensafhankelijke routering: Stel dat er een aanvraag binnenkomt in de toepassing. Op basis van de sharding-sleutelwaarde van de aanvraag moet de toepassing de juiste database bepalen op basis van de sleutelwaarde. Vervolgens wordt een verbinding met de database geopend om de aanvraag te verwerken. Gegevensafhankelijke routering biedt de mogelijkheid om verbindingen te openen met één eenvoudige aanroep naar de shard-toewijzing van de toepassing. Gegevensafhankelijke routering was een ander gebied van infrastructuurcode dat nu wordt gedekt door functionaliteit in de elastic database-clientbibliotheek. Zie Gegevensafhankelijke routering voor meer informatie.

  • Multi-shard-query's (MSQ):multi-shardquery's werkt wanneer een aanvraag meerdere (of alle) shards omvat. Een multi-shardquery voert dezelfde T-SQL-code uit op alle shards of een set shards. De resultaten van de deelnemende shards worden samengevoegd in een algemene resultatenset met behulp van UNION ALL-semantiek. De functionaliteit die beschikbaar wordt gesteld via de clientbibliotheek verwerkt veel taken, waaronder: verbindingsbeheer, threadbeheer, foutafhandeling en tussenliggende resultatenverwerking. MSQ kan maximaal honderden shards opvragen. Zie Multi-shard-query's voor meer informatie.

Over het algemeen kunnen klanten die elastic database-hulpprogramma's gebruiken, volledige T-SQL-functionaliteit verwachten bij het verzenden van shard-lokale bewerkingen in plaats van cross-shardbewerkingen die hun eigen semantiek hebben.

Volgende stappen

Aanvullende bronnen

Gebruikt u nog geen hulpprogramma's voor elastische databases? Bekijk de handleiding Aan de slag. Neem voor vragen contact met ons op op de microsoft Q&A-vragenpagina voor SQL Database en voor functieaanvragen, voeg nieuwe ideeën toe of stem op bestaande ideeën in het feedbackforum van SQL Database.