2

我尝试将字符串参数传递到完全用 .NET Spark C# 编写的 Spark NoteBook 中,无论我尝试什么,它都不起作用。最后做的工作是

  1. 将笔记本定义为 PySharp
  2. 定义参数 - PySharp
  3. 将参数值放在临时表中 - PySharp
  4. 然后从 C# 我可以从临时表中提取值并执行我的逻辑。

请参阅底部的示例代码,但有没有人有办法在 C# 中完成这项工作而无需所有的跳跃?

--- parameter cell ---
sourcefilepath = "test" 
--- cell 1 ---
from pyspark.sql.types import StructType,StructField, StringType

schema = StructType([ StructField("sourcefilepath",StringType(),True)])
df = spark.createDataFrame([[sourcefilepath]],schema)
df.createOrReplaceTempView("sourcefilepathTable") ;

--- cell 2 ---
%%csharp
using System;
using System.Collections.Generic;
using Microsoft.Spark.Sql;
using Microsoft.Spark.Sql.Types;
using System.Diagnostics;
using System.IO ;
using System.Text.Json;

using System.IO.Compression ;
var dfSql = spark.Sql("Select sourcefilepath from sourcefilepathTable");

string sourcefilepath = dfSql.First().GetAs<string>("sourcefilepath");

-- remainder of my code goes here


4

0 回答 0