Ich habe eine Apache Beam-Pipeline erfolgreich als Dataflow-Vorlage ausgeführt. Ich habe jedoch eine Optionsklasse (die DataflowPipelineOptions erweitert). Diese Klasse hat Argumente von Pom oder der Befehlszeilenschnittstelle erhalten, wenn die Vorlage generiert wird. Ich würde gerne wissen, ob eine Klasse existiert, damit ich diese Parameter direkt aus der Eigenschaftendatei laden kann. Auf diese Weise wäre es einfacher, von Umgebung zu Umgebung zu wechseln und es wäre saubererApache Beam Optionen von Property-Datei
2
A
Antwort
2
Ich bin mir nicht sicher, ob ich Ihre Frage verstehe. Ich denke, dass Sie fragen, ob es eine Möglichkeit gibt, Standardvorlagenparameter an Werte zu binden, die von einer Ressourcendatei anstatt von der Befehlszeile oder pom.xml
-Datei bereitgestellt werden.
Parameter, die als PipelineOptions
angegeben sind, können mit @Default.InstanceFactory
kommentiert werden, um eine vom Benutzer bereitgestellte Factory-Methode zum Generieren von Standardwerten für einen Parameter anzugeben. Damit könnten Sie den Standardwert aus einer Ressourcendatei innerhalb Ihrer DefaultValueFactory
Implementierung lesen.
Ein Beispiel sehen Sie, wie WindowedWordCount
DefaultToCurrentSystemTime
definiert ein annotiert die minTimestampMillis Parameter:
/** A {@link DefaultValueFactory} that returns the current system time. */
public static class DefaultToCurrentSystemTime implements DefaultValueFactory<Long> {
@Override
public Long create(PipelineOptions options) {
return System.currentTimeMillis();
}
}
@Description("Minimum randomly assigned timestamp, in milliseconds-since-epoch")
@Default.InstanceFactory(DefaultToCurrentSystemTime.class)
Long getMinTimestampMillis();
void setMinTimestampMillis(Long value);
Verwandte Themen
- 1. DymanicDestinations in Apache Beam
- 2. Apache Beam/Flink ExceptionInChainedStubException
- 3. Apache Beam: FlatMap vs Karte?
- 4. Apache Beam Kombinieren Werte gruppiert
- 5. Apache Beam: Registrar für GS
- 6. Apache Beam PubSub Reader-Ausnahmen
- 7. Apache Beam In-Memory-Speicher
- 8. Apache Beam Quelle erhalten Dateiname
- 9. Apache Beam Programmausführung ohne Maven
- 10. Erklären Apache Beam Python-Syntax
- 11. Apache Beam: DoFn vs PTransform
- 12. Apache Beam: PTransform vs PValue
- 13. Verwenden Sie Apache Beam als Abhängigkeit
- 14. Tuple-basierte Fenster in Apache Beam
- 15. Python-Unterstützung für SparkRunner in Apache Beam
- 16. Überprüfen, ob PCollection leer ist - Apache Beam
- 17. google-cloud-dataflow vs apache-beam
- 18. Apache Beam - Sliding Windows Ausgabe mehrerer Fenster
- 19. Apache Beam: Batch-Pipeline mit unbegrenzter Quelle
- 20. Apache Beam TextIO glob erhalten ursprünglichen Dateinamen
- 21. Apache Beam Windowing und Sharing BigQuery-Ausgabetabellen
- 22. Apache Beam Kombinieren Funktion nichts zu tun
- 23. Apache Beam -BigQueryIO mit Apex-Runner
- 24. Python Apache Beam Pipeline Status API Anruf
- 25. Apache Beam-Vorlage: Runtime Context Fehler
- 26. Apache Beam: Programmatisch partitionierte Tabellen erstellen
- 27. ParDo vs FlatMap in Apache Beam?
- 28. Wählen Sie Elemente in processElement() - Apache Beam
- 29. Wert aus ValueProvider in Apache Beam extrahieren
- 30. Apache Beam-Google-Datenspeicher ReadFromDatastore Einheit protobuf