Skip to content

MS_DotNetForApacheSparkSQL

nishi_74322014 edited this page Sep 1, 2026 · 1 revision

.NET for Apache SparkのSQL

概要

Spark SQL を、.NET for Apache Spark で書く。

詳細

操作

基本

https://github.com/dotnet/spark/blob/main/examples/Microsoft.Spark.CSharp.Examples/Sql/Batch/Basic.cs

(Spark SQL の一般的な説明は
https://dotnetdevelopmentinfrastructure.osscons.jp/index.php?Spark%20SQL を参照)

列の分割

Column arrayCol = Split(lines.Col("value"), " ");
DataFrame df = null;
df = lines.WithColumn("col1", arrayCol.GetItem(0));
df = df.WithColumn("col2", arrayCol.GetItem(1));
df = df.WithColumn("col3", arrayCol.GetItem(2));

補足(Split は静的インポート): 上記の Split
Microsoft.Spark.Sql.Functions の静的メソッドで、
using static Microsoft.Spark.Sql.Functions; を書いた前提のコードである。
書かない場合は Functions.Split(...) と修飾する。
なお、arrayColWithColumn で 3 回展開しているが、
区切りが 3 個に満たない行では GetItemnull を返す点に注意する
(エラーにはならない。
チュートリアル
「出力に null の行が並ぶ理由」も参照)。

集計

移行メモ(未記述): 「集計」の節は元ページでも見出しのみで、
本文が書かれていない。原文のまま残す。

参考

Spark SQL - 開発基盤部会 Wiki

https://dotnetdevelopmentinfrastructure.osscons.jp/index.php?Spark%20SQL

本 Wiki 内


Tags: クラウド, Azure, .NET開発, .NET Core, .NET Standard

NetDevInfraWiki

マイクロソフト系技術情報 Wiki
Open 棟梁 Wiki

(未着手)

開発基盤部会 Wiki

移行管理: DONETODO

Clone this wiki locally