Läsa in data med Petastorm
Petastorm är ett data åtkomst bibliotek med öppen källkod. Det här biblioteket möjliggör enkel-nod eller distribuerad utbildning och utvärdering av modeller för djup inlärning direkt från data uppsättningar i Apache Parquet-format och data uppsättningar som redan har lästs in som Apache Spark DataFrames. Petastorm stöder populära python-baserade Machine Learning-ramverk (ML) som Tensorflow, PyTorch och PySpark. Mer information om Petastorm finns i Petastorm GitHub-sidan och Petastorm API-dokumentationen.
Läsa in data från Spark-DataFrames med Petastorm
API för Petastorm Spark-omvandlare fören klar data konverteringen från Spark till TensorFlow eller PyTorch. DataFrame för indatamängds-Spark materialiseras först i Parquet-format och läses sedan in som tf.data.Dataset
eller torch.utils.data.DataLoader
.
Se API-avsnittet Spark dataset Converter API i Petastorm API-dokumentationen.
Rekommenderat arbets flöde är:
- Använd Apache Spark för att läsa in och eventuellt Förbearbeta data.
- Använd Petastorm-
spark_dataset_converter
metoden för att konvertera data från en spark-DataFrame till en TensorFlow-datauppsättning eller en PyTorch-DataLoader. - Mata in data i ett DL-ramverk för utbildning eller härledning.
Konfigurera cache-katalog
Petastorm Spark-konverteraren cachelagrar indata Spark-DataFrame i Parquet-format i en användardefinierad katalog plats för cache. Katalogen cache måste vara en DBFS-SÄKRINGs Sök väg file:///dbfs/
som börjar med, till exempel, file:///dbfs/tmp/foo/
som refererar till samma plats som dbfs:/tmp/foo/
. Du kan konfigurera cache-katalogen på två sätt:
Lägg till raden i kluster Spark-konfigurationen :
petastorm.spark.converter.parentCacheDirUrl file:///dbfs/...
Ring följande i din bärbara dator
spark.conf.set()
:from petastorm.spark import SparkDatasetConverter, make_spark_converter spark.conf.set(SparkDatasetConverter.PARENT_CACHE_DIR_URL_CONF, 'file:///dbfs/...')
Du kan antingen uttryckligen ta bort cacheminnet när du har använt det genom converter.delete()
att anropa eller hantera cachen implicit genom att konfigurera livs cykel reglerna i objekt lagringen.
Databricks har stöd för DL-utbildning i tre scenarier:
- Utbildning med en nod
- Justering av distribuerad grundparameter
- Distribuerad träning
Exempel på slut punkt till slut punkt finns i följande antecknings böcker:
- Förenkla data konvertering från Spark till TensorFlow
- Förenkla data konvertering från Spark till PyTorch
Läs in Parquet-filer direkt med Petastorm
Den här metoden är mindre önskad än Petastorm Spark Converter API.
Rekommenderat arbets flöde är:
- Använd Apache Spark för att läsa in och eventuellt Förbearbeta data.
- Spara data i Parquet-format i en DBFS-sökväg som har en kopplad SÄKRINGs anslutning.
- Läs in data i Petastorm-format via den säkra monterings punkten.
- Använd data i ett DL-ramverk för utbildning eller härledning.
Se exempel på en bärbar dator för ett slut punkt till slut punkts exempel.