砖工作任务之间共享信息

您可以使用任务值通过砖工作任务之间的任意参数。你通过任务值使用taskValues subutility在砖实用工具。的taskValues subutility提供了一个简单的API,允许任务输出值,可以引用在后续任务,使其更容易创造更多的富有表现力的工作流。例如,您可以沟通标识符或指标,如机器学习模型的评价信息,不同工作中的任务运行。每个任务可以设置多个任务值。在Python中任务值可以设置和检索笔记本。

使用任务值

的taskValues subutility提供了两个命令:dbutils.jobs.taskValues.set ()设置一个变量dbutils.jobs.taskValues.get ()获取一个值。假设你有两个笔记本的任务:Get_user_dataAnalyze_user_data并希望通过用户的姓名和年龄Get_user_data任务的Analyze_user_data的任务。下面的示例设置用户的姓名和年龄Get_user_data任务:

dbutils工作taskValues(关键=“名字”,价值=一些用户的)dbutils工作taskValues(关键=“年龄”,价值=30.)
  • 关键是关键任务的名称值。这个名称必须是唯一的任务。

  • 价值是这个任务的价值价值的关键。该命令必须能够代表内部以JSON格式的值。价值的JSON表示的大小不能超过48简约。

下面的例子然后中的值Analyze_user_data任务:

dbutils工作taskValues得到(taskKey=“Get_user_data”,关键=“年龄”,默认的=42,debugValue=0)dbutils工作taskValues得到(taskKey=“Get_user_data”,关键=“名称”,默认的=“简”)
  • taskKey是工作任务的名称设置值。如果命令无法找到这个任务,ValueError是提高。

  • 关键是任务的名字价值的关键。如果命令无法找到这个任务价值的关键ValueError提高(除非默认的指定)。

  • 默认的返回的是一个可选值,如果关键不能被发现。默认的不能没有一个

  • debugValue返回的是一个可选值,如果你试图从内部获得任务价值之外的笔记本运行工作。这可能是有用的在调试手动当你想运行你的笔记本并返回一个值而不是提高TypeError默认情况下。debugValue不能没有一个

任务之间的共享上下文的更复杂的示例,假设您有一个应用程序,该应用程序包括几个机器学习模型来预测一个人的收入给不同个人属性和任务,确定最佳模型使用基于先前的三个任务的输出。模型由三个任务命名Logistic_Regression,Decision_Tree,Random_Forest,Best_Model任务决定了最佳模型,使用基于输出前面的三个任务。

图的分类应用程序示例

每个模型的准确性(如何分类器预测收入)是通过在一个任务价值确定表现最好的算法。例如,与相关的逻辑回归的笔记本Logistic_Regression任务包括以下命令:

dbutils工作taskValues(关键=“model_performance”,价值=结果)

每个模型的任务设置的值model_performance关键。的Best_Model每个任务任务读取的值,并使用这个值来确定最优模型。下面的例子读取设定的值Logistic_Regression任务:

logistic_regression=dbutils工作taskValues得到(taskKey=“Logistic_Regression”,关键=“model_performance”)

查看任务值

查看任务的价值值后运行一个任务,去任务运行历史的任务。结果显示在任务的价值输出面板。