recurso governança e linhagem
Esta página descreve os recursos de governança e linhagem da Recurso Engenharia em Unity Catalog.
Controle o acesso às tabelas de recursos
O controle de acesso para tabelas de recurso em Unity Catalog é gerenciado por Unity Catalog. Consulte os privilégios do Unity Catalog.
view tabela de recursos, função e linhagem de modelos
Ao logs um modelo usando FeatureEngineeringClient.log_model
, os recursos usados no modelo são rastreados automaticamente e podem ser view na Linhagem tab do Catalog Explorer. Além das tabelas de recursos, as UDFs do Python usadas para compute recursos sob demanda também são rastreadas.
Como capturar a linhagem de uma tabela, função ou modelo de recurso
A linhagem de informações de acompanhamento de tabelas e funções de recursos usadas nos modelos é capturada automaticamente quando você chama log_model
. Consulte o código de exemplo a seguir.
from databricks.feature_engineering import FeatureEngineeringClient, FeatureLookup, FeatureFunction
fe = FeatureEngineeringClient()
features = [
FeatureLookup(
table_name = "main.on_demand_demo.restaurant_features",
feature_names = ["latitude", "longitude"],
rename_outputs={"latitude": "restaurant_latitude", "longitude": "restaurant_longitude"},
lookup_key = "restaurant_id",
timestamp_lookup_key = "ts"
),
FeatureFunction(
udf_name="main.on_demand_demo.extract_user_latitude",
output_name="user_latitude",
input_bindings={"blob": "json_blob"},
),
FeatureFunction(
udf_name="main.on_demand_demo.extract_user_longitude",
output_name="user_longitude",
input_bindings={"blob": "json_blob"},
),
FeatureFunction(
udf_name="main.on_demand_demo.haversine_distance",
output_name="distance",
input_bindings={"x1": "restaurant_longitude", "y1": "restaurant_latitude", "x2": "user_longitude", "y2": "user_latitude"},
)
]
training_set = fe.create_training_set(
label_df, feature_lookups=features, label="label", exclude_columns=["restaurant_id", "json_blob", "restaurant_latitude", "restaurant_longitude", "user_latitude", "user_longitude", "ts"]
)
class IsClose(mlflow.pyfunc.PythonModel):
def predict(self, ctx, inp):
return (inp['distance'] < 2.5).values
model_name = "fe_packaged_model"
mlflow.set_registry_uri("databricks-uc")
fe.log_model(
IsClose(),
model_name,
flavor=mlflow.pyfunc,
training_set=training_set,
registered_model_name=registered_model_name
)
Visualize a linhagem de uma tabela, modelo ou função de recurso
Para view a linhagem de uma tabela, modelo ou função de recurso, siga estes passos:
Navegue até a tabela, versão do modelo ou página de função no Catalog Explorer.
Selecione a Linhagem tab. A barra lateral esquerda mostra os componentes Unity Catalog que foram logs com esta tabela, versão de modelo ou função.
Clique em Ver gráfico de linhagem. O gráfico de linhagem aparece. Para obter detalhes sobre como explorar o gráfico de linhagem, consulte Capturar e explorar linhagem.
Para fechar o gráfico de linhagem, clique em no canto superior direito.