AWS Data Processing Flashcards

1
Q

Processing Services

A

AWS Lambda
Amazon ML
AWS Glue
Sagemaker
EMR
Data Pipeline

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

O que é o AWS Lambda?

A

Serviço que permite executar código sem provisionar ou gerenciar servidor.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Exemplos de uso do AWS Lambda

A

Executa código em resposta a eventos como alterações de dados no S3, atualizações em bancos de dados NoSQL, atividades de streaming de dados, etc.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Why not just run a server?

A
  • Server management (patches, monitoring, hardware failures,
    etc.)
  • Servers can be cheap, but scaling gets expensive really fast
  • You don’t pay for processing time you don’t use
  • Easier to split up development between front-end and back-end
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Por que não apenas executar um servidor?

A
  • Gerenciamento de servidores (patches, monitoramento, falhas de hardware,
    etc)
  • Os servidores podem ser baratos, mas o escalonamento fica caro muito rápido
  • Você não paga pelo tempo de processamento que não usa
  • Mais fácil de dividir o desenvolvimento entre front-end e back-end
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Main uses of Lambda

A
  • Real-time file processing
  • Real-time stream processing
  • ETL
  • Cron replacement
  • Process AWS events
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Principais usos do Lambda

A
  • Processamento de arquivos em tempo real
  • Processamento de fluxo em tempo real
  • ETL
  • Substituição do cron
  • Processar eventos da AWS
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Supported languages

A
  • Node.js * Python * Java * C# * Go * Powershell * Ruby
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

No Lambda com Kinesis como configurar o acionador?

A

Você especifica um tamanho de lote ao configurar o acionador (até 10.000 registros)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Como o Lambda atua com o Kinesis através de código?

A

Código Lambda recebe um evento com um lote de registros de stream

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Qual o limite de carga útil entre Lambda e Kinesis

A

6MB

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

O que acontece se o lote for muito grande ao acionar o Kinesis com o Lambda?

A

Pode causar timeouts

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Cost Model Lambda

A
  • “Pay for what you use”
  • Generous free tier (1M requests/month, 400K GB-seconds compute time)
  • $0.20 / million requests
  • $.00001667 per GB/second
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Modelo de custo do Lambda

A
  • “Pague pelo que usar”
  • Generoso nível gratuito (1M
    solicitações/mês, computação de 400K GB por segundo)
  • US$ 0,20/milhão de solicitações
  • $.00001667 por GB/segundo
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Other promises Lambda

A
  • High availability
  • No scheduled downtime
  • Retries failed code 3 times
  • Unlimited scalability*
  • Safety throttle of 1,000 concurrent executions per region
  • High performance
  • New functions callable in seconds
  • Events processed in milliseconds
  • Code is cached automatically
  • But you do specify a timeout! This can cause problems. Max is 900 seconds (15 min)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Lambda - Outras promessas

A
  • Alta disponibilidade
  • Sem tempo de inatividade programado
  • Novas tentativas de código com falha 3 vezes
  • Escalabilidade ilimitada
  • Limite de segurança de 1.000
    execuções simultâneas por região
  • Alto desempenho
  • Novas funções que podem ser chamadas em segundos
  • Eventos processados em milissegundos
  • O código é armazenado em cache automaticamente
  • Mas você especifica um tempo limite!
    Isso pode causar problemas. máximo é
    900 segundos (15 minutos)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Anti-Patterns

A
  • Long-running applications
  • Use EC2 instead, or chain functions
  • Dynamic websites
  • Although Lambda can be used to develop “serverless” apps that rely on client-side AJAX
  • Stateful applications
  • But you can work in DynamoDB or S3 to keep track of state
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

O que é serviço Elasticsearch

A

Serviço de busca e análise de dados em tempo real, baseado em código aberto e distribuído sob a licença Apache.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

What is Glue?

A
  • Serverless discovery and definition
    of table definitions and schema * S3 “data lakes” * RDS * Redshift * DynamoDB * Most other SQL databases
  • Custom ETL jobs * Trigger-driven, on a schedule, or on demand
  • Fully managed
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

O que é o Glue?

A

Serviço de integração de dados sem servidor que facilita a descoberta, preparação, movimentação e integração de dados de várias fontes de análise, ML e aplicações.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

Glue + Hive

A
  • Hive lets you run SQL like queries from EMR
  • The Glue Data Catalog can serve as a Hive metastore
  • You can also import a Hive metastore into Glue
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

Como o catálogo de dados do Glue pode servir em relação ao Hive?

A

O catálogo de dados do Glue pode servir como um “metastore” do Hive

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

Qual o comando no AWS Lambda para carregar dados no Redshift?

A

Para carregar dados no Redshift a partir do AWS Lambda, você pode usar a biblioteca do AWS SDK para JavaScript para executar o comando COPY do Redshift.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

Glue ETL

A
  • Automatic code generation
  • Scala or Python
  • Encryption
  • Server-side (at rest)
  • SSL (in transit)
  • Can be event-driven
  • Can provision additional “DPU’s” (data processing units) to increase
    performance of underlying Spark jobs
  • Enabling job metrics can help you understand the maximum capacity in
    DPU’s you need
  • Errors reported to CloudWatch
  • Could tie into SNS for notification
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Q

Glue ETL Funções

A
  • Geração automática de código
  • Scala ou Python
  • Criptografia
  • Lado do servidor (em repouso)
  • SSL (em trânsito)
  • Pode ser orientado a eventos
  • Pode provisionar “DPUs” adicionais (unidades de processamento de dados) para aumentar desempenho de trabalhos Spark subjacentes
  • A ativação de métricas de trabalho pode ajudá-lo a entender a capacidade máxima em
    DPUs que você precisa
  • Erros relatados ao CloudWatch
  • Pode vincular ao SNS para notificação
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
26
Q

Glue ETL functions

A
  • Transform data, Clean Data, Enrich Data (before doing analysis)
  • Generate ETL code in Python or Scala, you can modify the code
  • Can provide your own Spark or PySpark scripts
  • Target can be S3, JDBC (RDS, Redshift), or in Glue Data Catalog
  • Fully managed, cost effective, pay only for the resources consumed
  • Jobs are run on a serverless Spark platform
  • Glue Scheduler to schedule the jobs
  • Glue Triggers to automate job runs based on “events”
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
27
Q

Glue ETL: The DynamicFrame

A
  • A DynamicFrame is a collection of DynamicRecords
  • DynamicRecords are self-describing, have a schema
  • Very much like a Spark DataFrame, but with more ETL stuff
  • Scala and Python APIs
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
28
Q

O que é o DynamicFrame no Glue?

A

O DynamicFrame é uma estrutura de dados semelhante a um DataFrame do Pandas ou Spark, mas que é projetada para trabalhar com dados sem esquema definido, ou seja, com dados semi-estruturados ou não estruturados

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
29
Q

O que são DynamicRecords no Glue?

A

DynamicRecords é um recurso do AWS Glue que permite que dados sem esquema definido sejam processados e transformados em um formato tabular para facilitar a análise.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
30
Q

Glue ETL: The DynamicFrame (Frame Dinâmico)

A
  • Um DynamicFrame é uma coleção de DynamicRecords
  • DynamicRecords são autodescritivos, têm um esquema
  • Muito parecido com um Spark DataFrame, mas com mais coisas ETL
  • APIs Scala e Python
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
31
Q

Glue ETL - Transformations

A
  • Bundled Transformations:
  • DropFields, DropNullFields – remove (null) fields
  • Filter – specify a function to filter records
  • Join – to enrich data
  • Map - add fields, delete fields, perform external lookups
  • Machine Learning Transformations:
  • FindMatches ML: identify duplicate or matching records in your dataset,
    even when the records do not have a common unique identifier and no fields
    match exactly.
  • Format conversions: CSV, JSON, Avro, Parquet, ORC, XML
  • Apache Spark transformations (example: K-Means)
  • Can convert between Spark DataFrame and Glue DynamicFrame
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
32
Q

Glue ETL: ResolveChoice

A
  • Deals with ambiguities in a DynamicFrame and returns a new one
  • For example, two fields with the same name.
  • make_cols: creates a new column for each type
  • price_double, price_string
  • cast: casts all values to specified type
  • make_struct: Creates a structure that contains each data type
  • project: Projects every type to a given type, for example project:string
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
33
Q

Glue ETL: Resolução de Problemas

A
  • Lida com ambiguidades em um DynamicFrame e retorna um novo
  • Por exemplo, dois campos com o mesmo nome.
  • make_cols: cria uma nova coluna para cada tipo
  • preço_duplo, preço_string
  • cast: converte todos os valores para o tipo especificado
  • make_struct: Cria uma estrutura que contém cada tipo de dados
  • projeto: projeta cada tipo para um determinado tipo, por exemplo projeto: string
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
34
Q

O que o Glue pode fazer em relação a DPU’s?

A

Pode provisionar DPU’s adicionais para aumentar desempenho de trabalho Spark subjacente.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
35
Q

Qual a especialidade do AWS Lambda?

A

Executar trechos de código na nuvem sem servidor.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
36
Q

Qual o tipo de escalabilidade do AWS Lambda?

A

Contínua

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
37
Q

Como é frequentemente utilizado o AWS Lambda?

A

Frequentemente utilizado para processar dados conforme eles são movidos.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
38
Q

Quais os serviços de processamento?

A

Lambda, ML, Glue, Sagemaker, EMR, Data Pipeline

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
39
Q

Como o Lambda processa dados de fragmentos no Kinesis?

A

De forma síncrona

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
40
Q

Qual o limite de segurança de execuções por região?

A

1000 execuções simultâneas

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
41
Q

Glue ETL - Transformations
Bundled Transformations:

A
  • DropFields, DropNullFields – remove (null) fields
  • Filter – specify a function to filter records
  • Join – to enrich data
  • Map - add fields, delete fields, perform external lookups
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
42
Q

Glue ETL - Transformações
Transformações agrupadas:

A
  • DropFields, DropNullFields – remover campos (nulos)
  • Filter – especifique uma função para filtrar registros
  • Join – para enriquecer os dados
  • Map - adicionar campos, excluir campos, realizar pesquisas externas
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
43
Q

Glue - Machine Learning Transformations:

A
  • FindMatches ML: identify duplicate or matching records in your dataset,
    even when the records do not have a common unique identifier and no fields
    match exactly.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
44
Q

Glue Format conversions

A

CSV, JSON, Avro, Parquet, ORC, XML

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
45
Q

Glue - Apache Spark transformations (example: K-Means)

A

Can convert between Spark DataFrame and Glue DynamicFrame

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
46
Q

Glue ETL: ResolveChoice

A
  • Deals with ambiguities in a DynamicFrame and returns a new one
  • For example, two fields with the same name.
  • make_cols: creates a new column for each type
  • price_double, price_string
  • cast: casts all values to specified type
  • make_struct: Creates a structure that contains each data type
  • project: Projects every type to a given type, for example project:string
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
47
Q

Glue ETL: Modifying the Data Catalog
Adding new partitions

A
  • Re-run the crawler, or
  • Have the script use enableUpdateCatalog and partitionKeys options
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
48
Q

Glue Updating table schema

A
  • Re-run the crawler, or
  • Use enableUpdateCatalog / updateBehavior from script
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
49
Q

Glue - Creating new tables

A

enableUpdateCatalog / updateBehavior with setCatalogInfo

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
50
Q

Glue Restrictions

A
  • S3 only
  • Json, csv, avro, parquet only
  • Parquet requires special code
  • Nested schemas are not supported
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
51
Q

Develop ETL scripts using a notebook

A
  • Then create an ETL job that runs your
    script (using Spark and Glue)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
52
Q

Glue - Endpoint is in a VPC controlled by
security groups, connect via:

A
  • Apache Zeppelin on your local machine
  • Zeppelin notebook server on EC2 (via
    Glue console)
  • SageMaker notebook
  • Terminal window
  • PyCharm professional edition
  • Use Elastic IP’s to access a private
    endpoint address
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
53
Q

Running Glue jobs

A
  • Time-based schedules (cron style)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
54
Q

Glue - Job bookmarks

A
  • Persists state from the job run
  • Prevents reprocessing of old data * Allows you to process new data only when re-running on a schedule
  • Works with S3 sources in a variety of formats
  • Works with relational databases via JDBC (if PK’s are in sequential order)
  • Only handles new rows, not updated rows
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
55
Q

Glue - CloudWatch Events

A
  • Fire off a Lambda function or SNS notification when ETL succeeds or fails
  • Invoke EC2 run, send event to Kinesis, activate a Step
    Function
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
56
Q

Glue cost model

A
  • Billed by the second for crawler
    and ETL jobs
  • First million objects stored and
    accesses are free for the Glue
    Data Catalog
  • Development endpoints for
    developing ETL code charged by
    the minute
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
57
Q

Glue Anti-patterns

A

Multiple ETL engines :
* Glue ETL is based on Spark * If you want to use other engines (Hive, Pig, etc) Data Pipeline EMR would be a better fit.

58
Q

No longer an anti-pattern: streaming
As of April 2020, Glue ETL supports serverless streaming ETL

A
  • Consumes from Kinesis or Kafka
  • Clean & transform in-flight
  • Store results into S3 or other data stores
59
Q

AWS Glue Studio

A

Visual interface for ETL workflows

60
Q

Glue - Visual job editor

A
  • Create DAG’s for complex
    workflows
  • Sources include S3, Kinesis,
    Kafka, JDBC
  • Transform / sample / join data * Target to S3 or Glue Data
    Catalog
  • Support partitioning
61
Q

Visual job dashboard

A
  • Overviews, status, run times
62
Q

AWS Glue DataBrew

A

A visual data preparation tool

63
Q

Glue data preparation tool (DataBrew)

A
  • UI for pre-processing large data sets
  • Input from S3, data warehouse, or database * Output to S3
64
Q

Glue - Security DataBrew

A
  • Can integrate with KMS (with customer master keys only)
  • SSL in transit
  • IAM can restrict who can do what
  • CloudWatch & CloudTrail
65
Q

Qual o modelo de custos do Glue?

A
  • Faturado por segundo para rastreador
    e trabalhos de ETL
  • Primeiro milhão de objetos armazenados e
    os acessos são gratuitos para o Catálogo de Dados do Glue
  • Pontos finais de desenvolvimento para
    desenvolvimento de código ETL cobrado por
    minuto
66
Q

AWS Glue Studio

A

Visual interface for ETL
workflows

67
Q

Quais as principais funções do editor visual de job do Glue?

A
  • Criação de DAGs para complexos
    fluxos de trabalho
  • As fontes incluem S3, Kinesis, Kafka, JDBC
  • Transform / sample / join data
  • Direcionar para S3 ou Glue Data Catalog
    Catálogo
  • Suporta particionamento
68
Q

Informações do dashboard do Glue Studio

A

Visões gerais, status, tempos de execução

69
Q

O que é o Glue DataBrew?

A

Serviço de preparação de dados totalmente gerenciado fornecido pela Amazon Web Services (AWS). Ele permite que os usuários limpem e normalizem dados brutos, realizem transformações e apliquem outras operações de preparação de dados sem a necessidade de escrever código manualmente

70
Q

DataBrew Security

A

Can integrate with KMS (with customer master keys only) * SSL in transit * IAM can restrict who can do what * CloudWatch & CloudTrail

71
Q

Como o DataBrew pode criar conjuntos de dados?

A

Pode criar conjuntos de dados com SQL personalizado do Redshift
e Snowflake

72
Q

O que é o AWS Glue Elastic Views?

A

Serviço da Amazon Web Services (AWS) que permite criar visualizações em tempo real e acessar dados de várias fontes de maneira unificada. Ele permite que os usuários criem visualizações de dados em tempo real a partir de diversas fontes de dados, incluindo bancos de dados relacionais, data lakes e outras fontes de dados em nuvem.

73
Q

O que é o Lake Formation

A

“Facilita a configuração de um data lake seguro em dias”

74
Q

Quais as principais funções do Lake Formation?

A
  • Carregar dados e monitorando fluxos de dados
  • Configurar partições
  • Criptografia e gerenciamento de chaves
  • Definir trabalhos de transformação e monitorá-los
  • Controle de acesso
  • Auditoria
  • Construído em cima do Glue
75
Q

Como funciona a precificação no Lake Formation?

A

Sem custo para a formação do lago em si * Mas os serviços subjacentes incorrem
cargas * Glue* S3 * EMR * Athena * Redshift

76
Q

Cross-account Lake Formation permission

A
  • Recipient must be set up as a data lake
    administrator
  • Can use AWS Resource Access Manager
    for accounts external to your organization
  • IAM permissions for cross-account access
77
Q

Como funciona o Lake Formation em relação aos manifestos em Consultas Athena ou Redshift?

A

O Lake Formation não suporta manifestos em Consultas Athena ou Redshift

78
Q

Quais as permissões necessárias para os dados criptografados no Lake Formation?

A

Permissões IAM na chave de criptografia KMS são necessárias.

79
Q

Quais os tipos de permissões de dados no Lake Formation?

A

Pode vincular-se a usuários/funções do IAM,
SAML ou contas externas da AWS
* Pode usar tags de política em bancos de dados, tabelas ou colunas
* Pode selecionar permissões específicas
para tabelas ou colunas

80
Q

Data Permissions
in Lake Formation

A
  • Can tie to IAM users/roles,
    SAML, or external AWS accounts
  • Can use policy tags on
    databases, tables, or columns
  • Can select specific permissions
    for tables or columns
81
Q

What is EMR?

A
  • Elastic MapReduce
  • Managed Hadoop framework on EC2 instances
  • Includes Spark, HBase, Presto, Flink,
    Hive & more
  • EMR Notebooks
  • Several integration points with AWS
82
Q

O que é o EMR?

A

EMR significa “Elastic MapReduce” e é um serviço AWS que fornece um cluster de computação em nuvem para processamento de big data distribuído

83
Q

O que é o Master Node no EMR?

A

O Master Node é um nó principal que gerencia o cluster EMR e coordena as atividades dos demais nós.

84
Q

Quais as principais tarefas do Master Node?

A

Responsável por várias tarefas essenciais, incluindo a inicialização e configuração dos nós do cluster, o gerenciamento do fluxo de trabalho de processamento de dados e a execução de serviços internos do EMR, como o NameNode do Hadoop e ResourceManager do YARN

85
Q

Master node in EMR

A
  • manages the cluster
  • Tracks status of tasks, monitors cluster
    health
  • Single EC2 instance (it can be a single
    node cluster even)
  • AKA “leader node
86
Q

Core node in EMR

A

Hosts HDFS data and runs tasks
* Can be scaled up & down, but with some risk
* Multi-node clusters have at least one

87
Q

Task node in EMR

A

Runs tasks, does not host data
* Optional
* No risk of data loss when removing
* Good use of spot instance

88
Q

Other EMR / Hadoop Tools

A
  • Ganglia (monitoring)
  • Mahout (machine learning)
  • Accumulo (another NoSQL database)
  • Sqoop (relational database connector)
  • HCatalog (table and storage management for Hive metastore)
  • Kinesis Connector (directly access Kinesis streams in your scripts)
  • Tachyon (accelerator for Spark)
  • Derby (open-source relational DB in Java)
  • Ranger (data security manager for Hadoop)
  • Install whatever you want
89
Q

O que é o Core node?

A

O Core Node é um dos tipos de instância de nó no EMR. Ele é responsável por executar tarefas de processamento de dados no cluster do EMR. O Core Node contém o DataNode e o NodeManager, que são componentes do Hadoop.

90
Q

O que é o Task node no EMR?

A

O Task Node é um tipo de nó no EMR que é usado para executar tarefas específicas no cluster de processamento de dados distribuído. Os Task Nodes são responsáveis por executar tarefas que são designadas pelo nó mestre (Master Node) do cluster.

91
Q

Qual a diferença do task node para os nós principais do cluster (master node e core nodes)?

A

Não armazenam dados persistentes do Hadoop HDFS.

92
Q

EMR - Transient clusters terminate once all steps are complete

A
  • Loading data, processing, storing – then shut down
  • Saves money
93
Q

Quando os clusters transitórios terminam?

A

Quando as etapas são concluídas

94
Q

Como os clusters de longa duração devem ser encerrados?

A

Devem ser encerrados manualmente.

95
Q

Por quê usar instâncias reservadas em clusters de longa duração?

A

Para economizar $

96
Q

EMR / AWS Integration EC2

A

Amazon EC2 for the instances that comprise the nodes in the cluster

97
Q

EMR / AWS Integration VPC

A

Amazon VPC to configure the virtual network in which you launch your instances

98
Q

EMR / AWS Integration S3

A

To store input and output data

99
Q

EMR / AWS Integration CloudWatch

A

Amazon CloudWatch to monitor cluster performance and configure alarms

100
Q

EMR / AWS Integration IAM

A

To configure permissions

101
Q

EMR / AWS Integration CloudTrail

A

AWS CloudTrail to audit requests made to the service

102
Q

EMR / AWS Integration AWS Data Pipeline

A

To schedule and start your clusters

103
Q

Integração EMR/AWS Amazon EC2

A

Para as instâncias que compõem os nós no
cluster

104
Q

Integração EMR/AWS Amazon VPC

A

Para configurar a rede virtual na qual você
lança suas instâncias

105
Q

Integração EMR/AWS Amazon S3

A

Amazon S3 para armazenar dados de entrada e saída

106
Q

Integração EMR/AWS Amazon CloudWatch

A

Amazon CloudWatch para monitorar o desempenho do cluster e configurar alarmes

107
Q

Integração EMR/AWS Amazon IAM

A

AWS IAM para configurar permissões

108
Q

Integração EMR/AWS Amazon CloudTrail

A

AWS CloudTrail para auditar solicitações feitas ao serviço

109
Q

Integração EMR/AWS Amazon Data Pipeline

A

AWS Data Pipeline para agendar e iniciar seus clusters

110
Q

EMR Storage

A
  • Local file system
  • Suitable only for temporary data (buffers, caches, etc)
  • EBS for HDFS
  • Allows use of EMR on EBS-only types (M4, C4)
  • Deleted when cluster is terminated
  • EBS volumes can only be attached when launching a cluster
  • If you manually detach an EBS volume, EMR treats that as a failure and replaces it
111
Q

Promessas do EMR

A
  • EMR cobra por hora
  • Mais cobranças de EC2
  • Provisiona novos nós se um nó principal falhar
  • Pode adicionar e remover nós de tarefas em tempo real
  • Aumente a capacidade de processamento, mas não a capacidade HDFS
  • Pode redimensionar os nós principais de um cluster em execução
  • Aumenta a capacidade de processamento e HDFS
  • Nós principais também podem ser adicionados ou removidos
  • Mas a remoção corre o risco de perda de dados.
112
Q

EMR Automatic Scaling

A
  • The old way of doing it
  • Custom scaling rules based on CloudWatch metrics
  • Supports instance groups only
113
Q

EMR Managed Scaling

A
  • Introduced in 2020
  • Support instance groups and instance fleets * Scales spot, on-demand, and instances in a Savings Plan within the same cluster
  • Available for Spark, Hive, YARN workloads
114
Q

EMR Scale-up Strategy

A

First adds core nodes, then task nodes, up to max units specified

115
Q

Scale-down Strategy

A
  • First removes task nodes, then core nodes, no further than minimum constraints
  • Spot nodes always removed before on
    -demand instances
116
Q

EMR Automatic Scaling

A
  • Escala automática EMR
  • A maneira antiga de fazer
  • Regras de dimensionamento personalizadas com base nas métricas do CloudWatch
  • Suporta apenas grupos de instâncias
117
Q

Escalonamento Gerenciado EMR

A
  • Introduzido em 2020
    • Suporte a grupos de instâncias e frotas de instâncias
  • Dimensiona localmente, sob demanda e instâncias em um Savings Plan dentro do mesmo cluster
  • Disponível para cargas de trabalho Spark, Hive e YARN
118
Q

EMR Estratégia de expansão

A
  • Primeiro adiciona nós principais, depois nós de tarefas, até o máximo de unidades
    especificadas
119
Q

EMR Estratégia de redução

A
  • Primeiro remove os nós de tarefa, depois os nós principais, não mais do que restrições mínimas
  • Nós spot sempre removidos antes das instâncias sob demanda
120
Q

O que é o EMR Serverless?

A

O EMR Serverless é uma extensão do Amazon EMR (Elastic MapReduce), que é um serviço de processamento de big data da AWS baseado no framework Apache Hadoop.

121
Q

O que é o EMR Serverless Application Lifecycle?

A

Conjunto de práticas recomendadas para desenvolver, implantar e gerenciar aplicativos de big data no serviço EMR Serverless da Amazon Web Services (AWS).

122
Q

Qual o ciclo de vida do EMR Serverless Application Lifecycle?

A

O ciclo de vida do aplicativo consiste em quatro fases principais: desenvolvimento, teste, implantação e operações.

123
Q

Pré-Capacidade inicializada no EMR, explique:

A
  • O Spark adiciona 10% de sobrecarga
    à memória solicitada para drivers e executores
  • Certifique-se de que a capacidade inicial seja pelo menos 10% a mais do que solicitado pelo trabalho
124
Q

EMR Serverless Security EMRFS

A
  • S3 encryption (SSE or CSE) at rest
  • TLS in transit between EMR nodes and S3
125
Q

EMR Serverless Security S3

A

SSE-S3, SSE-KMS

126
Q

Hadoop MapReduce

A

Estrutura para processamento de dados distribuídos
Mapeia dados para pares chave/valor
Reduz os resultados intermediários para a saída final
Amplamente suplantado pelo Spark atualmente

127
Q

O que é o Hadoop YARN?

A

Yet Another Recourse Negotiator
Gerencia recursos de cluster para vários dados e estruturas de processamento

128
Q

O que é o Hadoop HDFS?

A

Sistema de Arquivos Distribuídos Hadoop
Distribui blocos de dados pelo cluster de
maneira redundante
Efêmero em EMR; dados são perdidos na rescisão

129
Q

Apache Spark

A
  • Distributed processing framework for big data
  • In-memory caching, optimized query execution
  • Supports Java, Scala, Python, and R
  • Supports code reuse across
130
Q

O que é o Apache Spark?

A

-Estrutura de processamento distribuído para big data
* Cache na memória, execução de consulta otimizada
* Compatível com Java, Scala, Python e R
* Suporta reutilização de código

131
Q

How Spark Works

A
  • Os aplicativos Spark são executados como processos independentes em um cluster
  • O SparkContext (programa de driver) os coordena
  • O SparkContext funciona por meio de um Cluster Manager
  • Os executores executam cálculos e armazenam dados
  • O SparkContext envia o código do aplicativo e as tarefas aos executores
132
Q

Spark Components

A

Spark Streaming, Spark SQL, MLLib, Graphx, Spark Core

133
Q

O que é o componente Apache Streaming?

A

Análise de streaming em tempo real
Streaming estruturado
Twitter, Kafka, Flume, HDFS,
ZeroMQ

134
Q

O que é o componente Spark SQL

A

Até 100x mais rápido que
MapReduce
JDBC, ODBC, JSON, HDFS, ORC,
Parquet, HiveQL

135
Q

O que é o componente MLLib do Spark?

A

Classificação, regressão,
agrupamento, colaboração
filtragem, mineração de padrão
Leia de HDFS, HBase…

136
Q

O que é o componente GraphX?

A

Processamento gráfico
ETL, análise, gráfico iterativo
computação
Não é mais amplamente utilizado

137
Q

O que é o Spark Core?

A

Gerenciamento de memória, recuperação de falhas, agendamento, distribuição e monitoramento de tarefas, interação com armazenamento
Scala, Python, Java, R

138
Q

Spark + Redshift

A
  • spark-redshift package allows Spark datasets from Redshift
  • It’s a Spark SQL data source
  • Useful for ETL using Spark
139
Q

Explique a configuração Spark + Redshift

A
  • pacote spark-redshift permite conjuntos de dados Spark do Redshift
  • É uma fonte de dados Spark SQL
  • Útil para ETL usando Spark
140
Q

O que é o Apache Streaming?

A

Spark Structured Streaming é um módulo do Apache Spark que permite o processamento de dados em tempo real com a linguagem SQL e a API DataFrame do Spark

141
Q

Why Hive?

A
  • Uses familiar SQL syntax (HiveQL)
  • Interactive
  • Scalable – works with “big data” on a
    cluster
  • Really most appropriate for data warehouse
    applications
  • Easy OLAP queries
    – WAY easier than
    writing MapReduce in Java
  • Highly optimized
  • Highly extensible
  • User defined functions
  • Thrift server
  • JDBC / ODBC driver