Bemærk
Adgang til denne side kræver godkendelse. Du kan prøve at logge på eller ændre mapper.
Adgang til denne side kræver godkendelse. Du kan prøve at ændre mapper.
Klassen MicrosoftSentinelProvider gør det muligt at interagere med den Microsoft Sentinel datasø, så du kan udføre handlinger som f.eks. at angive databaser, læse tabeller og gemme data. Denne klasse er udviklet til at fungere sammen med Spark-sessioner i Jupyter-notesbøger og indeholder metoder til at få adgang til og manipulere data, der er gemt i Microsoft Sentinel datasø.
Denne klasse er en del af sentinel.datalake modulet og indeholder metoder til at interagere med datasøen. Hvis du vil bruge denne klasse, skal du importere den og oprette en forekomst af klassen ved hjælp af sessionen spark .
from sentinel_lake.providers import MicrosoftSentinelProvider
data_provider = MicrosoftSentinelProvider(spark)
Du skal have de nødvendige tilladelser til at udføre handlinger som f.eks. læsning og skrivning af data. Du kan få flere oplysninger om tilladelser under Microsoft Sentinel tilladelser til datasøer.
Metoder
Klassen MicrosoftSentinelProvider indeholder flere metoder til at interagere med den Microsoft Sentinel datasø.
Hver metode, der er angivet nedenfor, forudsætter, at MicrosoftSentinelProvider klassen er blevet importeret, og at der er oprettet en forekomst ved hjælp af sessionen spark på følgende måde:
from sentinel_lake.providers import MicrosoftSentinelProvider
data_provider = MicrosoftSentinelProvider(spark)
list_databases
Vis alle tilgængelige databaser/Microsoft Sentinel arbejdsområder.
data_provider.list_databases()
Returnerer:
-
list[str]: En liste over databasenavne (arbejdsområder), der er tilgængelige i Microsoft Sentinel data lake.
list_tables
Vis alle tabeller i en given database.
data_provider.list_tables([database_name],[database_id])
Parametre:
-
database_name(str, valgfrit): Navnet på den database (arbejdsområde), der skal vises tabeller fra. HVIS ikke angivet, bruges systemtabellernes database. -
database_id(str, valgfrit): Databasens entydige id, hvis arbejdsområdenavnene ikke er entydige.
Returnerer:
-
list[str]: En liste over tabelnavne i den angivne database.
Eksempler:
Vis alle tabeller i databasen med systemtabeller:
data_provider.list_tables()
Vis alle tabeller i en bestemt database.
database_id Angiv for databasen, hvis navnene på arbejdsområdet ikke er entydige:
data_provider.list_tables("workspace1", database_id="ab1111112222ab333333")
read_table
Indlæs en DataFrame fra en tabel i Lake.
data_provider.read_table({table}, [database_name], [database_id])
Parametre:
-
table_name(str): Navnet på den tabel, der skal læses. -
database_name(str, valgfrit): Navnet på den database (arbejdsområde), der indeholder tabellen. Som standard .System tables -
database_id(str, valgfrit): Databasens entydige id, hvis arbejdsområdenavnene ikke er entydige.
Returnerer:
-
DataFrame: En DataFrame, der indeholder dataene fra den angivne tabel.
Eksempel:
df = data_provider.read_table("EntraGroups", "Workspace001")
save_as_table
Skriv en DataFrame som en administreret tabel. Du kan skrive til lake-niveauet ved hjælp af suffikset _SPRK i tabelnavnet eller til analyseniveauet ved hjælp af suffikset _SPRK_CL .
Bemærk!
Kun understøtter append tilstand for analyseniveauetsave_as_table.
overwrite -tilstand understøttes kun på lake-niveauet.
data_provider.save_as_table({DataFrame}, {table_name}, [database_name], [database_id], [write_options])
Parametre:
-
DataFrame(DataFrame): Den DataFrame, der skal skrives som en tabel. -
table_name(str): Navnet på den tabel, der skal oprettes eller overskrives. -
database_name(str, valgfrit): Navnet på den database (arbejdsområde), tabellen skal gemmes i. Som standard .System tables -
database_id(str, valgfrit, kun analyseniveau): Det entydige id for databasen på analyseniveauet, hvis arbejdsområdenavnene ikke er entydige. -
write_options(dikt, valgfrit): Indstillinger for skrivning af tabellen. Understøttede indstillinger: - tilstand:appendelleroverwrite(standard:append)overwritetilstand understøttes kun på lake-niveauet. - partitionBy: liste over kolonner, der skal partitioneres efter eksempel: {'mode': 'append', 'partitionBy': ['date']}
Returnerer:
-
str: Kørsels-id'et for skrivehandlingen.
Bemærk!
Partitionsindstillingen gælder kun for brugerdefinerede tabeller i databasen for systemtabeller (arbejdsområdet) på data lake-niveauet. Det understøttes ikke for tabeller på analyseniveauet eller for tabeller i andre databaser end systemtabeldatabasen på data lake-niveauet.
Eksempler:
Opret en ny brugerdefineret tabel på data lake-niveauet i System tables arbejdsområdet.
data_provider.save_as_table(dataframe, "CustomTable1_SPRK", "System tables")
Overskriv en tabel i systemtabellernes database (arbejdsområde) på niveauet data lake.
write_options = {
'mode': 'overwrite'
}
data_provider.save_as_table(dataframe, "CustomTable1_SPRK", write_options=write_options)
Opret ny brugerdefineret tabel på analyseniveauet.
data_provider.save_as_table(dataframe, "CustomTable1_SPRK_CL", "analyticstierworkspace")
Føj til en eksisterende brugerdefineret tabel på analyseniveauet.
write_options = {
'mode': 'append'
}
data_provider.save_as_table(dataframe, "CustomTable1_SPRK_CL", "analyticstierworkspace", write_options)
Føj til databasen med systemtabeller med partitionering i kolonnen TimeGenerated .
data_loader.save_as_table(dataframe, "table1", write_options: {'mode': 'append', 'partitionBy': ['TimeGenerated']})
delete_table
Sletter tabellen fra lake-niveauet. Du kan slette tabellen fra lake-niveauet ved hjælp af suffikset _SPRK i tabelnavnet. Du kan ikke slette en tabel fra analyseniveauet ved hjælp af denne funktion. Hvis du vil slette en brugerdefineret tabel på analyseniveauet, skal du bruge funktionerne til Log Analytics API. Du kan finde flere oplysninger under Tilføj eller slet tabeller og kolonner i Azure Overvåg logge.
data_provider.delete_table({table_name}, [database_name], [database_id])
Parametre:
-
table_name(str): Navnet på den tabel, der skal slettes. -
database_name(str, valgfrit): Navnet på den database (arbejdsområde), der indeholder tabellen. Som standard .System tables -
database_id(str, valgfrit): Databasens entydige id, hvis arbejdsområdenavnene ikke er entydige.
Returnerer:
-
dict: En ordbog, der indeholder resultatet af sletningen.
Eksempel:
data_provider.delete_table("customtable_SPRK", "System tables")