Jak mohu přístup Databricks Repo operace metadata?

0

Otázka

Existuje způsob, jak pro přístup k datům, jako jsou Repo url a název Pobočky uvnitř notebooku v rámci Repo? Možná něco v dbutils.

databricks
2021-11-20 11:57:19
1

Nejlepší odpověď

1

Můžete použít Repo operace API pro to - konkrétně Se velení. Můžete extrahovat notebook cesta z notebooku kontextu k dispozici prostřednictvím dbutils, a pak udělat dva dotazy:

  1. Dostat repo ID cestu přes Workspace API (repo cesta se vždy skládá z 3 složek - /Repos, adresář (pro uživatele nebo vlastní), a skutečné jméno repozitáře)
  2. Fetch repo údaje

Něco jako toto:

import json
import requests

ctx = json.loads(
  dbutils.notebook.entry_point.getDbutils().notebook().getContext().toJson())

notebook_path = ctx['extraContext']['notebook_path']
repo_path = '/'.join(notebook_path.split('/')[:4])
api_url = ctx['extraContext']['api_url']
api_token = ctx['extraContext']['api_token']

repo_dir_data = requests.get(f"{api_url}/api/2.0/workspace/get-status",  
                             headers = {"Authorization": f"Bearer {api_token}"},
                             json={"path": repo_path}).json()
repo_id = repo_dir_data['object_id']
repo_data = requests.get(f"{api_url}/api/2.0/repos/{repo_id}",  
                         headers = {"Authorization": f"Bearer {api_token}"}
                        ).json()
2021-11-20 16:05:56

Přemýšlel jsem o tomto přístupu příliš, protože jsem již pracoval s Repo obchody API, ale já jsem doufal, že tam by být jednodušší způsob. Každopádně díky, budu pravděpodobně používat.
Stanislav Žoldak

můžu se zeptat - proč to potřebujete? Něco jako sledovací kód, který byl použit k vytvoření modelu? Možná bychom mohli postavit v jednodušší způsob?
Alex Ott

Někdo v mém týmu zeptal, jestli by to mohlo být provedeno, takže jsem se začal dívat, protože jsem se zajímal o to sám. Zeptám se na to v pondělí.
Stanislav Žoldak

V jiných jazycích

Tato stránka je v jiných jazycích

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................