I/O terkelola Dataflow

Konektor I/O terkelola adalah transformasi Apache Beam yang menyediakan API umum untuk membuat sumber dan sink. Di backend, Dataflow memperlakukan konektor I/O terkelola sebagai layanan, sehingga Dataflow dapat mengelola operasi runtime untuk konektor tersebut. Anda kemudian dapat berfokus pada logika bisnis di pipeline Anda, daripada mengelola detail ini.

Anda membuat konektor I/O terkelola menggunakan kode Apache Beam, sama seperti konektor I/O lainnya. Anda menentukan sumber atau sink untuk membuat instance dan meneruskan serangkaian parameter konfigurasi. Misalnya, sink Apache Iceberg memerlukan parameter catalog_name.

Contoh berikut menunjukkan cara membuat sink Apache Iceberg dengan meneruskan peta parameter konfigurasi:

Java

pipeline.apply(
  Managed.write(ICEBERG)
    .withConfig(ImmutableMap.<String, Map>.builder()
      .put("catalog_name", "<catalog_name>")
      .put("warehouse_location", "<warehouse_location>")
      .build()));

Anda juga dapat menempatkan parameter konfigurasi ke dalam file YAML dan memberikan URL ke file tersebut:

Java

pipeline.apply(
  Managed.write(ICEBERG)
    .withConfigUrl(<config_url>));

Untuk informasi selengkapnya, lihat class Managed di repositori GitHub Apache Beam.