Использование широковещательной переменной в блоках данных искры с python UDF - PullRequest
0 голосов
/ 13 июля 2020

Я определяю функцию, используя logi c of https://databricks.com/blog/2017/10/30/introducing-vectorized-udfs-for-pyspark.html

, чтобы создать функцию, которая принимает строки фрейма данных и что-то вычисляет.

           schema = StructType([
          StructField('sensorid', IntegerType(), True), StructField('sensortimestamp', LongType(), True), StructField('calculatedvalue', DoubleType(), True)
        ])
        @pandas_udf(schema, PandasUDFType.GROUPED_MAP)
        def rawToSomthing(rawData):
          df = pd.DataFrame(columns=['sensorid','sensortimestamp','calculatedvalue'])
          sensor = rawData.sensorid[0]
          rawChunkSize=60*24
          rawData = rawData.sort_values(by=['sensortimestamp'], ascending=True)
          rawData = rawData.append(pullRef())
          return rawData

         def pullRef():
           return refDataframe
         DF_sqlRawData.groupby('sensorid').apply(rawToSomthing)

Я хотел бы иметь возможность извлекать данные из «refDataframe» в каждом из искровых заданий. Есть ли способ сделать это с помощью широковещательной переменной. Если да, то как бы я попал в @ pandas_udf

...