Partager via


DataSourceRegistration

Wrapper pour l’inscription de source de données.

Cette instance est accessible via spark.dataSource. Utilisez-la pour inscrire une sous-classe personnalisée DataSource afin qu’elle puisse être référencée par nom et spark.read.format()df.write.format().

Syntaxe

spark.dataSource.register(MyDataSource)

Méthodes

Méthode Description
register(dataSource) Inscrit une source de données définie par l’utilisateur Python. dataSource doit être une sous-classe de DataSource.

Exemples

Inscrivez une source de données personnalisée et lisez-la :

from pyspark.sql.datasource import DataSource, DataSourceReader

class MyDataSource(DataSource):
    @classmethod
    def name(cls):
        return "my_data_source"

    def schema(self):
        return "id INT, value STRING"

    def reader(self, schema):
        return MyDataSourceReader(schema)

class MyDataSourceReader(DataSourceReader):
    def read(self, partition):
        yield (1, "hello")
        yield (2, "world")

spark.dataSource.register(MyDataSource)
df = spark.read.format("my_data_source").load()
df.show()