Data Engineer
Kā apvienot divas tabulas SQL?
git submodule update --init
Kura darba forma jums ir ērtāka — birojs, hibrīds vai attālināts darbs? Mums ir divi biroji, Kutuzovskaja un Tula.
Vai EXPLAIN izpildes plāns vienmēr atbilst tam, kas patiesībā tiek izpildīts?
Kā nodrošināt, lai mobilais klients piekļūtu tiem pašiem pasūtījumiem, bet ar mazāku lauku kopumu? Kas ir BFF?
Tev ir vaicājums, kas darbojas slikti, ir lēns vai krīt — kā to optimizēt?
Vai jūs pazīstat kopējo tabulu izteiksmes (CTE)? Sniedziet piemēru izmantošanai.
Pastāstiet par PL/SQL procedūru izmantošanu jūsu darbā.
no interview.utils importēt get_clickhouse_client no airflow importēt DAG no airflow.operators.python importēt PythonOperator no airflow.sensors.external_task importēt ExternalTaskSensor no datetime importēt datetime importēt pandas kā pd importēt clickhouse_driver importēt os CLICKHOUSE_CLIENT = get_clickhouse_client() default_args = { "start_date": datetime(2024, 1, 1) } ar DAG( dag_id="datamarts.daily_revenue_per_country", default_args=default_args, schedule_interval="@daily", catchup=False ) kā 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( ... )
Jūs minējāt Docker procesus, vai varat pastāstīt sīkāk, kā tas ir organizēts jūsu uzņēmumā?
Kā rīkoties, ja user_id ir skew (nepareiza sadalīšana) pievienojoties transakciju un lietotāju tabulām? Kā izvēlēties optimālo sadalījuma atslēgu?
Kā izvairīties no aptuveni 700 DAG izpildes vienlaikus catchup/backfill laikā Airflow?
Vai jūs pārvaldījāt Airflow vai tikai strādājāt kā izstrādātājs?
Ar kuru Airflow versiju jūs strādājāt?
Pastāsti par savu iepriekšējo projektu, kādas bija tavas pienākumi?
Kopējais lejupielāžu skaits — augstākās līmeņa darbi, pavedieni?
Kā dati no ārējās tabulas tika ielādēti galamērķa tabulās?
Kāda ir atšķirība starp operatoriem is un == Python?
Kam paredzēti dekoratori Apache Airflow?
Kādiem uzdevumiem ClickHouse nav piemērots un ko jūs izvēlētos vietā?