💡

Microsoft FabricのNotebookを使ってみる-①

2024/02/02に公開

やってみること

Microsoft FabricのNotebookを使ってみる

検証手順

  1. Microsoft Fabric(https://app.fabric.microsoft.com/home)にアクセス
  2. 「Synapse Data Engineering」をクリック
  3. 「ワークスペース」をクリック

    4.作業を行うワークスペースをクリック

    5.「+新規」をクリック

    6.「ノートブック」をクリック

    7.ノートブックが開くことを確認

    8.「Add」をクリック

    9.「新しいレイクハウス」をクリックし、「追加」をクリック

    10.名前を入力し、「作成」をクリック

    11.レイクハウスが作成されたことを確認

    12.下記のコードを入力
import random
import datetime
from zoneinfo import ZoneInfo
from pyspark.sql.functions import lit

# 温度と湿度の乱数を生成
temperature = random.uniform(10.0, 20.0)  # 10.0 ~ 20.0 の範囲で乱数生成
humidity = random.randint(0, 100)  # 0 ~ 100 の範囲で乱数生成

# 現在の日時を取得
nowDatetime = datetime.datetime.now(ZoneInfo("Asia/Tokyo"))

# 生成したデータをデータフレームに追加
data = {"temperature": temperature, "humidity": humidity}
temperatureHumidityRDD = sc.parallelize([data])
temperatureHumidityDF = spark.read.json(temperatureHumidityRDD)

temperatureHumidityDF = temperatureHumidityDF.withColumn("temperature", temperatureHumidityDF.temperature.cast("float"))\
.withColumn("humidity", temperatureHumidityDF.humidity.cast("int"))\
.withColumn("timestamp_utc", lit(nowDatetime).cast("timestamp"))\
.withColumn("year", lit(nowDatetime.strftime("%Y")).cast("string"))\
.withColumn("month", lit(nowDatetime.strftime("%m")).cast("string"))\
.withColumn("day", lit(nowDatetime.strftime("%d")).cast("string"))

temperatureHumidityDF.write.mode("append").format("delta").partitionBy("year","month","day").save("Tables/temperature_humidity") 

13.「すべて実行」をクリック

14.テーブルが作成されていることを確認

15.下記のコードを実行し、テーブルの中身を確認

df = spark.sql("SELECT * FROM test01.temperature_humidity LIMIT 1000")
display(df)

次回

このノートブックを定期実行する

ヘッドウォータース

Discussion