As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Etapa 12: Consulte os dados no data lake usando o Amazon Redshift Spectrum
Você pode configurar o Amazon Redshift Spectrum para consultar os dados importados para o data lake do Amazon Simple Storage Service (Amazon S3). Primeiro, crie uma função AWS Identity and Access Management (IAM) que seja usada para iniciar o cluster Amazon Redshift e consultar os dados do Amazon S3. Em seguida, conceda a essa função as permissões Select
nas tabelas que você deseja consultar. Em seguida, conceder permissões do usuário para usar o Editor de consultas do Amazon Redshift. Por fim, crie um cluster do Amazon Redshift e execute consultas.
Você cria o cluster como administrador e consulta o cluster como analista de dados.
Para obter mais informações sobre o Amazon Redshift Spectrum, consulte Usar o Amazon Redshift Spectrum para consultar dados externos no Guia do desenvolvedor de banco de dados do Amazon Redshift.
Para configurar permissões para executar consultas do Amazon Redshift
-
Abra o console IAM em https://console.aws.amazon.com/iam/
. Entre como o usuário administrador que você criou Criar um usuário com acesso administrativo (nome de usuário Administrator
) ou como um usuário com a políticaAdministratorAccess
AWS gerenciada. -
No painel de navegação, escolha Policies.
Se essa for a primeira vez que você escolhe Políticas, a página Bem-vindo às políticas gerenciadas será exibida. Escolha Começar.
-
Escolha Criar política.
-
Escolha a guia JSON.
-
Cole no seguinte documento de política JSON.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "lakeformation:GetDataAccess", "glue:GetTable", "glue:GetTables", "glue:SearchTables", "glue:GetDatabase", "glue:GetDatabases", "glue:GetPartitions", "lakeformation:GetResourceLFTags", "lakeformation:ListLFTags", "lakeformation:GetLFTag", "lakeformation:SearchTablesByLFTags", "lakeformation:SearchDatabasesByLFTags" ], "Resource": "*" } ] }
-
Ao terminar, escolha Review (Revisar) para revisar a política. O validador de política indica se há qualquer erro de sintaxe.
-
Na página Revisar política, insira o Nome como
RedshiftLakeFormationPolicy
na política que você está criando. Insira uma Description (Descrição) (opcional). Revise o Resumo da política para ver as permissões que são concedidas pela política. Em seguida, escolha Criar política para salvar seu trabalho. -
No painel de navegação do console do IAM, escolha Roles (Perfis) e, em seguida, Create role (Criar perfil).
-
Em Select trusted entity (Selecionar entidade confiável), escolha AWS Service (Serviço).
-
Escolha o serviço do Amazon Redshift para assumir essa função.
-
Escolha o caso de uso Redshift Customizable (Personalizável pelo Redshift) para o serviço. Então, escolha Próximo: Permissões.
-
Procure a política de permissões que você criou,
RedshiftLakeFormationPolicy
e marque a caixa de seleção ao lado do nome da política na lista. -
Escolha Próximo: etiquetas.
-
Selecione Next: Review (Próximo: revisar).
-
Em Role name (Nome da função), insira o nome
RedshiftLakeFormationRole
. -
(Opcional) Em Descrição da função, insira uma descrição para o novo perfil.
-
Reveja a função e escolha Criar função.
Para conceder permissões Select
na tabela a ser consultada no banco de dados do Lake Formation
-
Abra o console do Lake Formation em https://console.aws.amazon.com/lakeformation/
. Faça login como administrador de data lake. -
No painel de navegação, em Permissões, escolha Permissões do Data Lake e, em seguida, escolha Conceder.
-
Forneça as informações a seguir:
-
Para usuários e funções do IAM, selecione o perfil do IAM criado,
RedshiftLakeFormationRole
. Ao executar o editor de consulta do Amazon Redshift, ele usa esse perfil do IAM para conceder permissão aos dados. -
Para o Banco de dados, selecione
lakeformation_tutorial
.A lista de tabelas é preenchida.
-
Em Tabela, escolha uma tabela na fonte de dados a ser consultada.
-
Escolha a permissão Selecionar tabela.
-
-
Selecione Conceder.
Para configurar o Amazon Redshift Spectrum e executar consultas
-
Abra o console do Amazon Redshift em https://console.aws.amazon.com/redshift
. Faça login como usuário Administrator
. -
Selecione Criar cluster.
-
Na página Criar cluster, insira
redshift-lakeformation-demo
o Identificador do cluster. -
Para o Tipo de nó, selecione dc2.large.
-
Role para baixo e, em Configurações do banco de dados, insira ou aceite estes parâmetros:
-
Nome de usuário administrador:
awsuser
-
Senha do usuário administrador:
(
Choose a password
)
-
-
Expanda as permissões do cluster e, em Funções do IAM disponíveis, escolha RedshiftLakeFormationRole. Depois, escolha Add IAM role (Adicionar perfil do IAM).
-
Se você precisar usar uma porta diferente do valor padrão de 5439, ao lado de Configurações adicionais, desative a opção Usar padrões. Expanda a seção Configurações do banco de dados e, em seguida, insira um novo número de Porta do banco de dados.
-
Selecione Criar cluster.
A página Clusters é carregada.
-
Espere até que o status do cluster se torne Disponível. Escolha o ícone de atualização periodicamente.
-
Conceda permissão ao analista de dados para executar consultas no cluster. Para fazer isso, execute as etapas a seguir:
-
Abra o console do IAM em https://console.aws.amazon.com/iam/
e faça login como usuário Administrator
. -
No painel de navegação, escolha Usuários e anexe as seguintes políticas gerenciadas ao usuário
datalake_user
.-
AmazonRedshiftQueryEditor
-
AmazonRedshiftReadOnlyAccess
-
-
-
Saia do console do Amazon Redshift e entre novamente como usuário
datalake_user
. -
Na barra de ferramentas vertical esquerda, escolha o ícone EDITOR para abrir o editor de consultas e conectar-se ao cluster. Se a caixa de diálogo Conectar ao banco de dados for exibida, escolha o nome do cluster
redshift-lakeformation-demo
e insira o nome do banco de dadosdev
, o nome do usuárioawsuser
e a senha que você criou. Então escolha Connect to database (Conectar-se ao banco de dados).nota
Se os parâmetros de conexão não forem solicitados e outro cluster já estiver selecionado no editor de consultas, escolha Alterar conexão para abrir a caixa de diálogo Conectar ao banco de dados.
-
Na caixa de texto Nova consulta 1, insira e execute a seguinte instrução para mapear o banco de dados
lakeformation_tutorial
no Lake Formation para o nome do esquema Amazon Redshiftredshift_jdbc
:Importante
<account-id>Substitua por um número de AWS conta válido e
<region>por um nome de AWS região válido (por exemplo,
us-east-1
).create external schema if not exists redshift_jdbc from DATA CATALOG database 'lakeformation_tutorial' iam_role 'arn:aws:iam::
<account-id>
:role/RedshiftLakeFormationRole' region '<region>
'; -
Na lista de esquemas, em Selecionar esquema, escolha redshift_jdbc.
A lista de tabelas é preenchida. O editor de consultas mostra somente as tabelas nas quais você recebeu permissões de data lake do Lake Formation.
-
No menu pop-up ao lado do nome da tabela, escolha Visualizar dados.
O Amazon Redshift retorna as 10 primeiras linhas.
Agora você pode executar consultas nas tabelas e colunas para as quais você tem permissões.