次の方法で共有


DataSourceRegistration

データ ソース登録のラッパー。

このインスタンスには、 spark.dataSource経由でアクセスできます。 これを使用してカスタム DataSource サブクラスを登録し、 spark.read.format() および df.write.format()の名前で参照できるようにします。

構文

spark.dataSource.register(MyDataSource)

メソッド

メソッド 説明
register(dataSource) Python ユーザー定義データ ソースを登録します。 dataSource は、 DataSourceのサブクラスである必要があります。

例示

カスタム データ ソースを登録し、そこから読み取る:

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()