Data Engineer
Na zobrazené obrazovce jsou dvě datové struktury; ve které bude hledání hodnoty 2 rychlejší a proč?
Máš zkušenosti s Table Engine Join v ClickHouse?
Jak hodnotit konfiguraci pro přenos jednoho terabajtu dat z PostgreSQL do ClickHouse?
Jaké skupiny SQL operátorů znáte? Čemu patří?
z interview.utils import get_clickhouse_client from airflow import DAG from airflow.operators.python import PythonOperator from airflow.sensors.external_task import ExternalTaskSensor from datetime import datetime import pandas as pd import clickhouse_driver import os CLICKHOUSE_CLIENT = get_clickhouse_client() default_args = { "start_date": datetime(2024, 1, 1) } with DAG( dag_id="datamarts.daily_revenue_per_country", default_args=default_args, schedule_interval="@daily", catchup=False ) as dag: transactions_sensor = S3KeySensor( task_id="transactions_sensor", bucket_key="data/transactions_{}.csv".format(datetime.now().strftime("%Y-%m-%d")), bucket_name="my-bucket", aws_conn_id="aws_default", timeout=600, poke_interval=30, mode="poke" ) def extract_from_s3(**kwargs): df = pd.read_csv("s3://my-bucket/data/transactions_{}.csv".format(datetime.now().strftime("%Y-%m-%d"))) kwargs["ti"].xcom_push(key="df", value=df.to_dict()) def load_to_raw_table(**kwargs): df = pd.DataFrame(kwargs["ti"].xcom_pull(task_ids="extract", key="df")) rows = [tuple(r) for r in df[["transaction_id", "user_id", "amount", "created_at"]].to_numpy()] CLICKHOUSE_CLIENT.execute( ... )
Konečný výsledek: | customer_id | gap_days | |-------------|----------| | 1 | 123 | | 2 | 120 | s cte jako( vyberte order_id, customer_id, order_dt, lag(order_dt) přes(částice podle customer_id řadit podle order_dt) jako prev_order_ft, datediff(dne, prev_order_ft, order_dt) jako gap_days z Orders ) vyberte customer_id, max(gap_days) jako gap_days z cte kde gap_days > 60 group by customer_id
Jaký typ typizace se používá v Pythonu: statická nebo dynamická?
Jak zorganizovat čtení stejné zprávy z Kafka několika různými spotřebiteli (fan-out)?
V jakém týmu a pod jakým vedením se cítíte nejpohodlněji při práci?
Jakou roli jsi hrál v týmu o čtyřech lidech a jak vidíš svou kariéru za 3-4 roky, jaké cíle si stanovíš?
Jak načíst data z Kafka do ClickHouse pomocí streamingu pro reporty v reálném čase?
Povězte o své zkušenosti s migrací ze Spring Boot 2 na Spring Boot 3
Jak uložit JSON do složky (v kontextu Airflow DAG)
Jak v Airflow vytvořit mnoho stejných úkolů paralelně (například nahrát mnoho stejných souborů)?
V jakých případech se používá normalizace a v jakých denormalizace?
Jaké technologie jste použili k načítání dat do Parquet a jaké mechanismy byly použity k získání a načtení dat?
Co je to RDD v Apache Spark a čím se liší od jiných abstrakcí Spark?
Co je to semantické verzování? Kdy zvyšovat major, minor, patch?
Pracoval jsi s oknovými funkcemi? Jaké druhy oknových funkcí znáš?
Máme tabulku zákazníků (id, jméno, adresa atd.), produkty (id, název atd.), pohyb zboží (zde máme id zákazníka, produkt, datum, množství, suma), je třeba zjistit, které produkty byly prodány 1. ledna, pouze ty jedinečné, a také zobrazit jméno kupujícího a...