Kannst du erklären, was wir hier am Ende bekommen? Du musst jeden Schritt kommentieren, wie es funktioniert.
Data Engineer
Trino in diesem Schema ist für die Datenverarbeitung verantwortlich — wie ermöglicht der Technologiestapel die Trennung von Speicherung und Berechnungen?
Data Vault ist ein praktisches Tool, aber es gibt zu viele Objekte. Kannst du den Unterschied zwischen Hubs, Links und Satelliten erklären?
Was ist der Unterschied zwischen einem CTE und einer Unterabfrage?
Kennst du eine in Rust geschriebene, Multithread-fähige Bibliothek, die sehr schnell ist und Pandas für Data Science und Big Data ersetzen kann?
Welche Technologien wurden verwendet, um die Daten in Parquet zu laden, und welche Mechanismen wurden genutzt, um die Daten zu erhalten und zu laden?
Wie teilt man eine Anfrage in Phasen auf? Was tun wir dafür?
Wie hast du den Airflow DAG und die Jobs geschrieben – manuell oder mit Vorlagen?
Wie wurden die Daten aus der externen Tabelle in die Zieltabellen geladen?
Haben Sie Daten von Spark nach S3 im Parquet-Format geladen und dann von Parquet nach Greenplum — wie verläuft der Ladeprozess?
Beim Streaming hat Iceberg funktioniert, hast du gehört? Es ist ein Müll-File-Storage.
Das ist in Echtzeit, wie kann man das zwischen Kafka und ClickHouse Spark umsetzen?
Mit Abhängigkeiten zwischen Jobs, zwischen DAGs — hast du Sensoren verwendet, damit sie nacheinander mehrere Jobs starten?
Wie hast du das Schema der Datenbank gestaltet – hast du es manuell in der Datenbank gemacht, die Skripte irgendwo gespeichert, oder hast du überhaupt Liquibase verwendet? Wie war der Prozess?
Hat es Sinn, eine CTE zu verwenden, wenn sie nur einmal in der Abfrage verwendet wird?
Wir werden JSON parsen — wer wird JSON parsen? Soweit ich weiß, gibt es in ClickHouse keine Funktionen.
Mussten Sie direkt mit Spark arbeiten? Was ist sein Nachteil?
Haben Sie mit Git gearbeitet? Was haben Sie in Git gespeichert?
Wir brauchen eine Pipeline-Engine — einen Mechanismus, der es ermöglicht, sehr schnell Flüsse zu erstellen, indem Verträge und Parameter eingegeben werden. Wie würdest du das auf einer höheren Ebene umsetzen?
Welchen Lesetyp verwendet Greenplum: Zeile oder Spalte?