Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Třída MicrosoftSentinelProvider poskytuje způsob, jak pracovat s Microsoft Sentinel data lake, což umožňuje provádět operace, jako je výpis databází, čtení tabulek a ukládání dat. Tato třída je navržená pro práci s relacemi Sparku v poznámkových blocích Jupyter a poskytuje metody pro přístup k datům uloženým v Microsoft Sentinel Data Lake a manipulaci s nimi.
Tato třída je součástí sentinel.datalake modulu a poskytuje metody pro interakci s datovým jezerem. Chcete-li použít tuto třídu, naimportujte ji a pomocí relace vytvořte instanci třídy spark .
from sentinel_lake.providers import MicrosoftSentinelProvider
data_provider = MicrosoftSentinelProvider(spark)
Musíte mít potřebná oprávnění k provádění operací, jako je čtení a zápis dat. Další informace o oprávněních najdete v tématu Microsoft Sentinel oprávnění data lake.
Metody
Třída MicrosoftSentinelProvider poskytuje několik metod pro interakci s Microsoft Sentinel data lake.
Každá níže uvedená metoda předpokládá, že MicrosoftSentinelProvider třída byla importována a instance byla vytvořena pomocí spark relace následujícím způsobem:
from sentinel_lake.providers import MicrosoftSentinelProvider
data_provider = MicrosoftSentinelProvider(spark)
list_databases
Zobrazí seznam všech dostupných databází / Microsoft Sentinel pracovních prostorů.
data_provider.list_databases()
Vrátí:
-
list[str]: Seznam názvů databází (pracovních prostorů) dostupných v Microsoft Sentinel Data Lake.
list_tables
Zobrazí seznam všech tabulek v dané databázi.
data_provider.list_tables([database_name],[database_id])
Parametry:
-
database_name(str, volitelné): Název databáze (pracovního prostoru), ze které se mají tabulky vypsat. POKUD není zadáno, použije se databáze systémových tabulek. -
database_id(str, volitelné): Jedinečný identifikátor databáze, pokud názvy pracovních prostorů nejsou jedinečné.
Vrátí:
-
list[str]: Seznam názvů tabulek v zadané databázi.
Příklady:
Seznam všech tabulek v databázi systémových tabulek:
data_provider.list_tables()
Zobrazí seznam všech tabulek v konkrétní databázi.
database_id Pokud názvy pracovních prostorů nejsou jedinečné, zadejte hodnotu databáze:
data_provider.list_tables("workspace1", database_id="ab1111112222ab333333")
read_table
Načtěte datový rámec z tabulky v Lake.
data_provider.read_table({table}, [database_name], [database_id])
Parametry:
-
table_name(str): Název tabulky, která se má přečíst. -
database_name(str, volitelné): Název databáze (pracovního prostoru) obsahující tabulku. Výchozí hodnota jeSystem tables. -
database_id(str, volitelné): Jedinečný identifikátor databáze, pokud názvy pracovních prostorů nejsou jedinečné.
Vrátí:
-
DataFrame: Datový rámec obsahující data ze zadané tabulky.
Příklad:
df = data_provider.read_table("EntraGroups", "Workspace001")
save_as_table
Napište datový rámec jako spravovanou tabulku. Do vrstvy Lake můžete zapisovat pomocí přípony _SPRK v názvu tabulky nebo do analytické vrstvy pomocí přípony _SPRK_CL .
Poznámka
Pro analytickou úroveň save_as_table podporuje append pouze režim.
overwrite režim se podporuje jenom na úrovni lake.
data_provider.save_as_table({DataFrame}, {table_name}, [database_name], [database_id], [write_options])
Parametry:
-
DataFrame(DataFrame): Datový rámec pro zápis jako tabulku. -
table_name(str): Název tabulky, která se má vytvořit nebo přepsat. -
database_name(str, volitelné): Název databáze (pracovního prostoru), do které chcete tabulku uložit. Výchozí hodnota jeSystem tables. -
database_id(str, volitelné, pouze úroveň analýzy): Jedinečný identifikátor databáze v analytické vrstvě, pokud názvy pracovních prostorů nejsou jedinečné. -
write_options(diktování, volitelné): Možnosti pro zápis tabulky. Podporované možnosti: – režim:appendnebooverwrite(výchozí:append)overwritese podporuje jenom na úrovni lake. - partitionBy: seznam sloupců k dělení podle příkladu: {'mode': 'append', 'partitionBy': ['date']}
Vrátí:
-
str: ID spuštění operace zápisu.
Poznámka
Možnost dělení na oddíly se vztahuje pouze na vlastní tabulky v databázi systémových tabulek (pracovním prostoru) na úrovni Data Lake. Nepodporuje se pro tabulky na úrovni analýzy ani pro tabulky v jiných databázích, než je databáze systémových tabulek na úrovni Data Lake.
Příklady:
Vytvořte novou vlastní tabulku na úrovni Data Lake v System tables pracovním prostoru.
data_provider.save_as_table(dataframe, "CustomTable1_SPRK", "System tables")
Přepište tabulku v databázi systémových tabulek (pracovním prostoru) na úrovni Data Lake.
write_options = {
'mode': 'overwrite'
}
data_provider.save_as_table(dataframe, "CustomTable1_SPRK", write_options=write_options)
Vytvořte novou vlastní tabulku na úrovni analýzy.
data_provider.save_as_table(dataframe, "CustomTable1_SPRK_CL", "analyticstierworkspace")
Připojte se k existující vlastní tabulce na úrovni analýzy.
write_options = {
'mode': 'append'
}
data_provider.save_as_table(dataframe, "CustomTable1_SPRK_CL", "analyticstierworkspace", write_options)
Připojte se k databázi systémových tabulek s dělením na TimeGenerated sloupec.
data_loader.save_as_table(dataframe, "table1", write_options: {'mode': 'append', 'partitionBy': ['TimeGenerated']})
delete_table
Odstraní tabulku z úrovně lake. Tabulku z vrstvy Lake můžete odstranit pomocí přípony _SPRK v názvu tabulky. Pomocí této funkce nemůžete odstranit tabulku z analytické vrstvy. Pokud chcete odstranit vlastní tabulku na úrovni analýzy, použijte funkce rozhraní API služby Log Analytics. Další informace najdete v tématu Přidání nebo odstranění tabulek a sloupců v protokolech monitorování Azure.
data_provider.delete_table({table_name}, [database_name], [database_id])
Parametry:
-
table_name(str): Název tabulky, která se má odstranit. -
database_name(str, volitelné): Název databáze (pracovního prostoru) obsahující tabulku. Výchozí hodnota jeSystem tables. -
database_id(str, volitelné): Jedinečný identifikátor databáze, pokud názvy pracovních prostorů nejsou jedinečné.
Vrátí:
-
dict: Slovník obsahující výsledek operace odstranění.
Příklad:
data_provider.delete_table("customtable_SPRK", "System tables")