Data Engineer
Quais são as características do uso de XCom no Airflow?
[nome] perguntou: Quais colunas devem ser Nullable e como isso deve ser especificado no DDL?
Como exatamente você lia Parquet?
O armazenamento foi construído de acordo com o esquema Data Vault — você também o desenvolveu, manteve? Adicionou hubs, links manualmente?
No PostgreSQL, é necessário otimizar o desempenho das transações através de um nível de isolamento mínimo, no qual: • transações paralelas podem ver alterações não finalizadas umas às outras; • são possíveis "leituras sujas" (dirty read). Qual nível de isolamento deve ser especificado para a transação para atingir esse objetivo? dirty read não é possível no PostgreSQL leitura repetível leitura não confirmada leitura confirmada serializável
Já trabalhou com FTP para obter ficheiros ou dados através do portal?
Que índices conhece no PostgreSQL?
O que é particionamento? O que é sharding? O que é replicação?
Trabalhou diretamente com Spark? Qual é a sua desvantagem?
A tabela notifications contém um campo status, no qual os valores são: 'sent', 'delivered', 'read'. Qual das consultas está correta? select * from notifications where status like '%sent%' order by created_at desc limit 5 select * from notifications where status = 'read' order by created_at desc limit 5 select * from notifications order by status desc limit 5 select * from notifications where status not in ('sent', 'delivered') order by created_at asc limit 5 select * from notifications where status in ('sent', 'delivered') order by created_at desc limit 5
Como são atualmente processados os dados? Se estiverem em formatos diferentes, como são normalizados e padronizados?
A ramificação feature contém vários commits com um arquivo config.yaml mal commitado, que foi corrigido posteriormente. Como resultado, a equipe decidiu remover completamente todas as alterações no arquivo da história para evitar a divulgação de configurações confidenciais. Estado original da ramificação (saída do git log --oneline): 1 a4b5c67 (HEAD -> feature) Refatorou a lógica do serviço 2 d9f0a11 Corrigiu erro de digitação no config.yaml 3 7c1d3f2 Adicionou um config.yaml temporário 4 e3a98cd Commit inicial 5 Após reescrever a história para remover o arquivo config.yaml, a saída do git log --oneline ficou assim: 6 b9e7d42 (HEAD -> feature) Refatorou a lógica do serviço 7 41f3b60 Commit inicial Que operação a equipe realizou? - Executou git revert no commit com o config.yaml - Executou git filter-branch --index-filter "git rm --cached config.yaml" -- --all - Executou git rebase -i removendo commits que continham alterações no arquivo - Executou git commit --amend e git push --force - Executou git cherry-pick para criar uma nova ramificação sem o config.yaml
O que é uma CTE (Expressão de Tabela Comum)?
Com que frequência eram calculadas as vitrinas? Era um cálculo incremental ou completo?
Com que fontes de dados conseguiu trabalhar? Como foi o processo de interação com as fontes?
Relatório para a empresa logística Você é um analista de uma empresa logística que mantém registros de operações nos armazéns. Você precisa elaborar um relatório sobre a eficiência de cada armazém. Para cada armazém, calcule: • o número total de operações (count_operations); • o número total de produtos processados no armazém (sum_quantity); • o tempo médio de processamento de uma operação (avg_processing_time), considerando apenas operações com tempo especificado (não NULL), arredondado para o número inteiro mais próximo; • o número máximo e mínimo de produtos processados em uma única operação (max_quantity, min_quantity); • o número de operações de cada tipo («fornecimento», «expedição», «transferência») em colunas separadas: supply_operations, shipment_operations, transfer_operations. Filtre os armazéns cujo número total de operações seja maior que 2 e o tempo médio de processamento não ultrapasse 60 minutos. Ordene o resultado pelo ID do armazém em ordem crescente. Formato de entrada Tabela operations: • operation_id (int) — identificador único da operação • warehouse_id (int) — identificador do armazém • operation_type (text) — tipo de operação: «fornecimento», «expedição», «transferência»
Dado uma string order que especifica a ordem desejada dos caracteres. É necessário reordenar os caracteres na string unsorted_str para que a ordem seja consistente com a string order. Ambas as strings consistem em caracteres do alfabeto inglês em minúsculas, todos os caracteres em order são diferentes. A ordem dos caracteres em unsorted_str é considerada consistente com a string order, se, a partir do fato de que o caractere x aparece antes do caractere y em order, qualquer ocorrência de x em unsorted_str deve estar antes de qualquer ocorrência de y. Situações em que order não contém caracteres de unsorted_str e vice-versa são permitidas. Retorne qualquer permutação permitida. unsorted_str = "abcd" order = "cba" resposta = "dcba" ("cdba", "cbda", "cbad") def CustomSort(unsorted_str: str, order: str) -> str: # código aqui
Já trabalhou com funções de janela? Quais tipos de funções de janela você conhece?
Já trabalhou com incidentes de qualidade de dados?
Por que não é aconselhável fazer muitos pequenos inserts no ClickHouse?