Megosztás a következőn keresztül:


Átalakítás érvényesítése a leképezési adatfolyamban

A következőkre vonatkozik: Azure Data Factory Azure Synapse Analytics

Tipp.

Próbálja ki a Data Factoryt a Microsoft Fabricben, amely egy teljes körű elemzési megoldás a nagyvállalatok számára. A Microsoft Fabric az adattovábbítástól az adatelemzésig, a valós idejű elemzésig, az üzleti intelligenciáig és a jelentéskészítésig mindent lefed. Ismerje meg, hogyan indíthat új próbaverziót ingyenesen!

Az adatfolyamok az Azure Data Factoryben és az Azure Synapse Pipelinesban is elérhetők. Ez a cikk az adatfolyamok leképezésére vonatkozik. Ha még nem használta az átalakításokat, tekintse meg az adatok leképezési adatfolyam használatával történő átalakításáról szóló bevezető cikket.

Az igényátalakítással egyéni szabályokat hozhat létre a leképezési adatfolyamokban az adatminőség és az adatérvényesítés érdekében. Létrehozhat olyan szabályokat, amelyek meghatározzák, hogy az értékek megfelelnek-e a várt értéktartománynak. Emellett létrehozhat olyan szabályokat is, amelyek ellenőrzik a sorok egyediségét. Az igényátalakítás segít megállapítani, hogy az adatok minden sora megfelel-e egy feltételkészletnek. Az igényátalakítással egyéni hibaüzeneteket is beállíthat, ha az adatérvényesítési szabályok nem teljesülnek.

Igény típusa

Konfiguráció

Az érvényesség-átalakítási konfigurációs panelen kiválaszthatja az érvényesség típusát, egyedi nevet ad az állításnak, opcionális leírást, és definiálja a kifejezést és az opcionális szűrőt. Az adatmegjelenítő panel jelzi, hogy mely sorok hibásak az állítások során. Emellett tesztelheti az egyes sorcímkék alsóbb rétegbeli használatát isError() és hasError() a hibás állításokat tartalmazó sorokat is.

Érvényességi beállítások

Igény típusa

  1. Várt igaz: A kifejezés eredményének logikai igaz eredményként kell kiértékelnie. Ezzel ellenőrizheti az adatok tartományértéktartományait.
  2. Egyedi várakozás: Oszlop vagy kifejezés beállítása egyediségi szabályként az adatokban. Ezzel címkézhet meg ismétlődő sorokat.
  3. A várakozás létezik: Ez a beállítás csak akkor érhető el, ha egy második bejövő streamet választott ki. A Exists mindkét streamet megtekinti, és meghatározza, hogy a sorok mindkét streamben léteznek-e a megadott oszlopok vagy kifejezések alapján. A második stream hozzáadásához válassza a Additional streamslehetőséget.

Konfigurálás érvényesítése

Feladat adatfolyama

Válassza ki fail data flow , ha azt szeretné, hogy az adatfolyam-tevékenység azonnal meghiúsuljon, amint az érvényesítési szabály meghiúsul.

Érvényességi azonosító

Az igényazonosító egy olyan tulajdonság, amelyben meg kell adnia egy (sztring) nevet az állításhoz. Az azonosítót az adatfolyam későbbi szakaszában használhatja a helyességi hibakód használatával hasError() vagy kimeneteléhez. Az érvényes azonosítóknak egyedinek kell lenniük az egyes adatfolyamokban.

Érvényesség leírása

Itt adja meg az állítás sztringleírását. Itt is használhat kifejezéseket és sorkörnyezeti oszlopértékeket.

Szűrő

A Szűrő egy nem kötelező tulajdonság, amelyben az állítást csak a sorok egy részhalmazára szűrheti a kifejezés értéke alapján.

Expression

Adjon meg egy kiértékelési kifejezést az egyes állításokhoz. Az egyes érvényességi átalakításokhoz több állítás is megadható. Minden állítástípushoz szükség van egy kifejezésre, amelyet az ADF-nek ki kell értékelnie annak ellenőrzéséhez, hogy az állítás sikeres volt-e.

NULL-ek figyelmen kívül hagyása

Alapértelmezés szerint az igényátalakítás nULL-eket tartalmaz a sorérvényesítés kiértékelése során. Ezzel a tulajdonsággal figyelmen kívül hagyhatja az NULL-eket.

Közvetlen érvényesítés sorhibái

Ha egy állítás meghiúsul, ezeket a hibasorokat igény szerint egy Azure-fájlba irányíthatja a fogadóátalakítás "Hibák" lapján. A fogadó-átalakításon is lehetősége lesz arra, hogy a hibasorok figyelmen kívül hagyásával egyáltalán ne adjon ki helyességi hibákat tartalmazó sorokat.

Példák

source(output(
		AddressID as integer,
		AddressLine1 as string,
		AddressLine2 as string,
		City as string,
		StateProvince as string,
		CountryRegion as string,
		PostalCode as string,
		rowguid as string,
		ModifiedDate as timestamp
	),
	allowSchemaDrift: true,
	validateSchema: false,
	isolationLevel: 'READ_UNCOMMITTED',
	format: 'table') ~> source1
source(output(
		CustomerID as integer,
		AddressID as integer,
		AddressType as string,
		rowguid as string,
		ModifiedDate as timestamp
	),
	allowSchemaDrift: true,
	validateSchema: false,
	isolationLevel: 'READ_UNCOMMITTED',
	format: 'table') ~> source2
source1, source2 assert(expectExists(AddressLine1 == AddressLine1, false, 'nonUS', true(), 'only valid for U.S. addresses')) ~> Assert1

Adatfolyamszkript

Példák

source1, source2 assert(expectTrue(CountryRegion == 'United States', false, 'nonUS', null, 'only valid for U.S. addresses'),
	expectExists(source1@AddressID == source2@AddressID, false, 'assertExist', StateProvince == 'Washington', toString(source1@AddressID) + ' already exists in Washington'),
	expectUnique(source1@AddressID, false, 'uniqueness', null, toString(source1@AddressID) + ' is not unqiue')) ~> Assert1