Řešení moderních databázových požadavků pomocí Azure SQL Database
Po nakonfigurování prostředí můžete začít analyzovat a testovat určité komponenty potenciální architektury řešení. Ve scénáři sběrnice a v mnoha dalších moderních aplikacích potřebujete moderní databázi k ukládání, zpracování a obsluhování dat. Pojďme se podívat, jak Azure SQL Database splňuje potřeby moderních aplikací.
Škálování podle poptávky s flexibilními možnostmi azure SQL Database
Jedním ze základních prvků moderní aplikace je schopnost snadného vertikálního navýšení nebo snížení kapacity, aby bylo možné správně reagovat na využití úloh. Schopnost snadno aktualizovat a vyvíjet řešení spolu s deterministickým automatickým nasazením jsou také základní pilíře moderního vývoje aplikací. Tento princip také umožňuje aplikacím platit jenom za to, co je potřeba.
Azure SQL Database poskytuje silnou podporu pro všechny tyto požadované funkce. Pokud potřebujete databázi s vysokým výkonem, která je odolná proti budoucnosti, škálovatelná, zabezpečená a vysoce výkonná, poskytuje Azure SQL Hyperscale vše, co potřebujete, a další. Může vertikálně navýšit kapacitu až 100 TB a distribuovanou architekturu usnadňuje vertikální navýšení a snížení kapacity. Je to ideální databáze pro transakční a hybridní úlohy transakční analýzy.
Pokud chcete podporovat vývoj a vývojáře, můžete použít bezserverovou výpočetní úroveň Azure SQL Database, která může automaticky vertikálně navýšit a snížit kapacitu v rámci definovaného rozsahu a automaticky ji využít, pokud se nepoužívá k tomu, abyste mohli nákladově efektivní způsob vývoje a testování vašeho řešení. Vzhledem k tomu, že modul za službou Azure SQL Database je stejný, přesun na výpočetní úroveň bezserverové služby Azure SQL Database a Azure SQL Hyperscale nebude vyžadovat žádné změny kódu a žádné další úsilí.
Podpora vývojových pracovních postupů pomocí GitHub Actions
Vzhledem k tomu, že postup DevOps je teď všudypřítomný, je důležité, aby moderní řešení správně podporovalo a mělo v pořádku kanál kontinuální integrace a průběžného doručování a průběžného nasazování (CI/CD). Azure SQL Database nativně podporuje GitHub Actions, které můžete použít k nasazení změn do vývojové databáze pro testování a produkční databáze, až budou připravené. Akce Azure SQL Database používají přístup založený na stavu. DevOps pro data je zajímavé téma a další informace o nich najdete v epizodách Vystavených dat, na které se odkazuje na konci modulu.
Dalším klíčovým požadavkem moderní databáze je schopnost zpracovávat a podporovat nejnovější vývojové trendy a inovace. Azure SQL Database nabízí řadu funkcí, takže pro daný případ použití můžete použít nejlepší technologii nebo model. Na konci modulu poskytujeme přehled všech dostupných funkcí v blogovém příspěvku.
Budoucí testování aplikací pomocí Azure SQL Database
Během životnosti aplikace budete chtít používat různé technologie, aby byly co nejefektivnější. Můžete například chtít použít grafový model k snadnému sledování a modelování složitého síťového vztahu, jako je sociální síť nebo power grid. Nebo možná budete muset rychle agregovat obrovské množství dat, abyste vypočítali míru růstu určité hodnoty. Ve všech těchto případech a v mnoha dalších případech jste probrali službu Azure SQL Database. Podporuje grafové modely, indexy Columnstore a dokonce i tabulky optimalizované pro paměť pro nejvyšší propustnost (tyto tabulky jsou kompilované datové struktury, které se pak načtou v procesu, aby dosáhly vysokého výkonu).
Pro scénář zachytávání sběrnice použijete výpočetní úroveň bezserverové služby Azure SQL Database, takže platíte jenom za to, co potřebujete, a to kvůli podpoře automatického škálování a automatického pozastavení. Pomocí GitHub Actions vytvoříte kanál nasazení pro aktualizaci databáze podle potřeby. Pro tento scénář je potřeba několik dalších funkcí. Pojďme se na ně podívat podrobněji. V dalším cvičení získáte praktické informace o těchto možnostech.
Zpracování dat JSON pomocí nativních funkcí JSON
Azure SQL Database umožňuje vývojářům používat JSON k výměně dat s databází i k ukládání dokumentů JSON. Tímto způsobem můžete použít JSON jako efektivní transportní mechanismus pro odesílání sad dat, jako jsou pole a objekty, do uložené procedury, která se má zpracovat. Jakmile máte dokument JSON, můžete ho snadno manipulovat pomocí nativních funkcí JSON, jako jsou JSON_VALUE, JSON_MODIFY nebo OPENJSON. Tady je příklad:
DECLARE @json NVARCHAR(MAX) = '[{"user":{"id": 1, "name": "Anna"}},{"user":{"id": 2, "name": "Davide"}}]'
SELECT * FROM
OPENJSON(@json) WITH (
[Id] INT '$.user.id',
[Name] NVARCHAR(100) '$.user.name'
)
Další ukázky ukazující, jak můžete použít JSON ve službě Azure SQL Database, jsou k dispozici na konci modulu.
Analýza geoprostorových dat pomocí nativního geoprostorového modulu
Azure SQL Database má nativní geoprostorový modul, který můžete použít k provádění geoprostorových dotazů bez instalace externích knihoven nebo přesouvání dat, což může být nákladné u významných objemů dat. Azure SQL Database plně podporuje standard OGC (Open Geospatial Consortium), takže exportovaná data dají používat knihovny, jako jsou OpenLayers.
Následující příklad ukazuje, jak můžete vytvořit mnohoúhelník, který bude sloužit jako vaše geofence ve scénáři sběrnice a zkontrolovat, jestli bod, který bude sloužit jako datové body sběrnice v reálném čase, je uvnitř mnohoúhelníku.
-- Microsoft Building 44
declare @bldg44 as geography = geography::STGeomFromText('POLYGON((-122.13403149305233 47.64136608877112,-122.13398769073248 47.64058891712273,-122.13319924946629 47.64011342667547,-122.13285369830483 47.640106868176076,-122.13254221532335 47.640834858789844,-122.13257628383073 47.6410086568205,-122.13334039023833 47.64144150986729,-122.13403149305233 47.64136608877112))', 4326)
-- A point you want to check
declare @p as geography = geography::STPointFromText('POINT(-122.13315058040392 47.64101193601368)', 4326)
-- Is the point within the perimeter?
select @p.STWithin(@bldg44)
Vzhledem k tomu, POINT(-122.13315058040392 47.64101193601368)
že formát textu pro umístění (například) je standardní formát známý jako dobře známý text (WKT), je možné zobrazit obrazec promítaný na mapě pouze zkopírováním a vložením řetězce. V dalším cvičení ho otestujete sami pomocí Hřiště OpenStreetMap WKT.