【问题标题】:How to import single dataset in palantir foundry without using tranform or tranform_df如何在不使用 tranform 或 tranform_df 的情况下在 palantir Foundry 中导入单个数据集
【发布时间】:2021-02-12 15:16:02
【问题描述】:

我想全局导入一个数据集,以便可以在文件中访问该数据集。 在 Palantir Foundry 代码库中,有什么方法可以在不使用 transformtransform_df 的情况下导入单个文件。

基本上我想从数据集中提取数据并返回列表中的所有值。如果我使用 transform 或 transform_df 装饰器,那么在调用返回函数时我将无法访问该输入文件。

或者是否有任何其他方法可以通过使用一个数据帧作为 palantir 代码存储库中函数的输入来返回值列表。

【问题讨论】:

标签: palantir-foundry foundry-code-repositories foundry-code-workbooks


【解决方案1】:

此问题与此问题的意图非常相似(我已投票关闭):How to generate dynamic files using config file in palantir foundry

回答标题中的问题:

您不能使用转换将数据集导入代工厂。您需要改用数据连接并创建摄取。

回答正文中的问题:

正如您对“如何生成动态文件使用配置文件在 palantir-foundry”的其他问题的回答。您不能以编程方式基于其他数据集的内容创建转换。数据集是在 CI 时创建的。

但是,您可以在代码仓库中拥有一个常量文件,该文件可以在 CI 时读取,并使用它来生成转换。即:

myconfig.py:
dataset_pairs = [
  {
    "in": "/path/to/input/dataset,
    "out": "/path/to/output/dataset,
  },
  {
    "in": "/path/to/input/dataset2,
    "out": "/path/to/output/dataset2,
  },
  # ...
  {
    "in": "/path/to/input/datasetN,
    "out": "/path/to/output/datasetN,
  },

]

from myconfig import dataset_pairs

TRANSFORMS = []
for conf in dataset_pairs:
  @transform_df(Output(conf["out"]), my_input=Input(conf["in"]))
  def my_generated_transform(my_input)
     # ...
     return df

  TRANSFORMS.append(my_generated_transform)

要重新迭代,您不能基于数据集内容以编程方式创建 config.py,因为当此代码运行时,它处于 CI 时间,因此它无权访问数据集。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-02-19
    • 2016-11-04
    • 2022-07-06
    • 2021-06-23
    • 2021-03-14
    • 2021-01-27
    • 2022-08-19
    相关资源
    最近更新 更多