A keresési tevékenység lekérheti az adathalmazt az adat-előállító és a Synapse-folyamatok által támogatott adatforrásokból. Ezzel dinamikusan meghatározhatja, hogy mely objektumok működjenek egy későbbi tevékenység során az objektumnév kemény kódolása helyett. Néhány objektum például fájlok és táblák.
A keresési tevékenység beolvassa és visszaadja egy konfigurációs fájl vagy tábla tartalmát. A lekérdezés vagy a tárolt eljárás végrehajtásának eredményét is visszaadja. A kimenet lehet egyetlen vagy attribútumtömb, amely felhasználható egy későbbi másolási, átalakítási vagy vezérlőfolyamat-tevékenységekben, például a ForEach-tevékenységben.
Keresési tevékenység létrehozása felhasználói felülettel
Ha keresési tevékenységet szeretne használni egy folyamatban, hajtsa végre a következő lépéseket:
Keressen rá a Keresés gombra a folyamattevékenységek panelen, és húzzon egy keresési tevékenységet a folyamatvászonra.
Jelölje ki az új keresési tevékenységet a vásznon, ha még nincs kijelölve, és a Beállítások fület a részletek szerkesztéséhez.
Válasszon ki egy meglévő forrásadatkészletet, vagy az Új gombra kattintva hozzon létre egy újat.
A forrásadatkészletből belefoglalandó sorok azonosításának lehetőségei az adathalmaz típusától függően változnak. A fenti példa egy tagolt szöveges adatkészlet konfigurációs beállításait mutatja be. Az alábbiakban példákat talál egy Azure SQL-táblaadatkészlet és egy OData-adatkészlet konfigurációs beállításaira.
Támogatott képességek
Vegye figyelembe a következőket:
A keresési tevékenység legfeljebb 5000 sort adhat vissza; ha az eredményhalmaz több rekordot tartalmaz, a rendszer az első 5000 sort adja vissza.
A keresési tevékenység kimenete legfeljebb 4 MB méretű, a tevékenység sikertelen lesz, ha a méret meghaladja a korlátot.
A keresési tevékenység időtúllépés előtti leghosszabb időtartama 24 óra.
Megjegyzés
Amikor lekérdezéssel vagy tárolt eljárással keres adatokat, mindenképpen adjon vissza egy és pontos eredményhalmazt. Ellenkező esetben a keresési tevékenység meghiúsul.
A keresési tevékenységhez az alábbi adatforrások támogatottak.
Az előzetes verzió jelölésű összekötőket kipróbálhatja, és visszajelzést küldhet róluk. Ha függőséget szeretne felvenni a megoldásában található előzetes verziójú összekötőkre, lépjen kapcsolatba az Azure-támogatással.
Megadja a keresés adathalmaz-referenciáját. Az egyes összekötőkről szóló cikkek Adathalmaz tulajdonságai szakaszából kaphat részletes információkat.
Kulcs/érték pár
Igen
forrás
Adatkészlet-specifikus forrástulajdonságokat tartalmaz, ugyanazzal, mint a Másolási tevékenység forrása. Az egyes összekötőkről szóló cikkek másolási tevékenység tulajdonságainak szakaszából tájékozódhat.
Kulcs/érték pár
Igen
firstRowOnly
Azt jelzi, hogy csak az első sort vagy az összes sort adja vissza.
Logikai
Szám Az alapértelmezett érték true.
Megjegyzés
A ByteArray típusú forrásoszlopok nem támogatottak.
Az adathalmaz-definíciók nem támogatják a struktúrát . Szövegformátumú fájlok esetén a fejlécsor használatával adja meg az oszlop nevét.
Ha a keresési forrás JSON-fájl, a jsonPathDefinition JSON-objektum átalakításának beállítása nem támogatott. A rendszer a teljes objektumot lekéri.
A keresési tevékenység eredményének használata
A keresési eredmény a output tevékenységfuttatás eredményének szakaszában jelenik meg.
Ha firstRowOnly (alapértelmezett) értékre true van állítva, a kimeneti formátum az alábbi kódban látható módon jelenik meg. A keresési eredmény rögzített firstRow kulcs alatt van. Az eredmény későbbi tevékenységben való használatához használja a következő mintát @{activity('LookupActivity').output.firstRow.table}: .
Ha firstRowOnly be van állítva false, a kimeneti formátum az alábbi kódban látható módon jelenik meg. A count mező azt jelzi, hogy hány rekordot ad vissza a rendszer. A részletes értékek rögzített value tömb alatt jelennek meg. Ilyen esetben a Keresési tevékenységet egy Foreach-tevékenység követi. A tömböt a value ForEach tevékenységmezőbe items a következő mintával @activity('MyLookupActivity').output.valueadhatja át: . A tömb elemeinek eléréséhez használja a value következő szintaxist: @{activity('lookupActivity').output.value[zero based index].propertyname}. Például: @{activity('lookupActivity').output.value[0].schema}.
Ebben a példában a folyamat két tevékenységet tartalmaz: Keresés és másolás. A másolási tevékenység adatokat másol az Azure SQL Database-példány egy SQL-táblájából az Azure Blob Storage-ba. Az SQL-tábla nevét egy JSON-fájl tárolja a Blob Storage-ban. A Keresési tevékenység futásidőben megkeresi a tábla nevét. A JSON dinamikusan módosul ezzel a módszerrel. Nem kell újra üzembe helyeznie a folyamatokat vagy adathalmazokat.
Ez a példa csak az első sor keresését mutatja be. Az összes sor kereséséhez és az eredmények ForEach-tevékenységgel való láncolásához tekintse meg a több tábla tömeges másolása című témakör mintáit.
Folyamat
A keresési tevékenység a LookupDataset használatára van konfigurálva, amely az Azure Blob Storage egy helyére hivatkozik. A keresési tevékenység beolvassa az SQL-tábla nevét egy JSON-fájlból ezen a helyen.
A Másolási tevékenység a Keresési tevékenység kimenetét használja, amely az SQL-tábla neve. A SourceDataset tableName tulajdonsága úgy van konfigurálva, hogy a keresési tevékenység kimenetét használja. A másolási tevékenység adatokat másol az SQL-táblából egy Azure Blob Storage-beli helyre. A helyet a SinkDataset tulajdonság adja meg.
A forrásadatkészlet a Keresési tevékenység kimenetét használja, amely az SQL-tábla neve. A másolási tevékenység adatokat másol ebből az SQL-táblából egy Azure Blob Storage-beli helyre. A helyet a fogadó adatkészlete adja meg.
A másolási tevékenység adatokat másol az SQL-táblából az Azure Storage csv mappájának filebylookup.csv fájljába. A fájlt az AzureBlobStorageLinkedService tulajdonság adja meg.
Íme néhány korlátozás a keresési tevékenységre és a javasolt kerülő megoldásokra.
Korlátozás
Áthidaló megoldás
A keresési tevékenység legfeljebb 5000 sort és legfeljebb 4 MB méretű lehet.
Tervezzen kétszintű folyamatot, amelyben a külső folyamat egy belső folyamaton halad át, amely olyan adatokat kér le, amelyek nem lépik túl a maximális sorokat vagy méretet.
Kapcsolódó tartalom
Tekintse meg az Azure Data Factory és a Synapse-folyamatok által támogatott egyéb vezérlési folyamatokat:
Demonstrate understanding of common data engineering tasks to implement and manage data engineering workloads on Microsoft Azure, using a number of Azure services.