Modernizar processos de dados para organizações sem fins lucrativos

10-07-2019

Contexto

Uma grande organização sem fins lucrativos no espaço educacional trabalhou com a Keyrus em uma iniciativa de dados para combinar dados institucionais da educação e fornecer aos investigadores uma visão mais profunda das populações estudantis. Antes desse compromisso, a organização estava a fornecer às instituições oito PDFs estáticos, um para cada um de seus KPIs. 

A Keyrus conduziu varias acções, dentro das quais a análise das lacunas na fonte de dados, o desenvolvimento do painel e a configuração do servidor da Tableau, a modelagem de segurança em nível de linha e os processos de implantação automatizada.

Fase de pesquisa

O projeto começou com uma fase de pesquisa, a fim de obter um entendimento mais profundo dos objetivos e expectativas da iniciativa de painel do Tableau.

Anteriormente, os relatórios eram criados via Oracle Business Intelligence e entregues como PDFs. O objetivo era migrar os relatórios existentes para o Tableau e aumentar a funcionalidade geral e a sua profundidade.

Haveria oito relatórios de KPI e um relatório de resumo executivo. Esses relatórios ajudariam os pesquisadores a identificar padrões em diferentes populações estudantis, o que poderia explicar a razão de os alunos serem bem-sucedidos ou não. Por meio desses insights, as instituições e iniciativas estariam melhor equipadas para tomar decisões e desenvolver políticas que ajudariam os alunos a ter mais sucesso.

Os painéis precisavam de auto-atendimento e conter segurança ao nível da linha, de forma a conseguir restringir o acesso aos dados com base nos grupos de utilizadores identificados pela organização.

Análise de lacunas e desenvolvimento de painéis do Tableau

Antes de iniciar o desenvolvimento do painel, a Keyrus concluiu uma sessão de quadro branco para cada um dos painéis propostos, criando modelos para cada um deles. A Keyrus com os dados actualmente disponíveis no Oracle data mart da organização, fez uma referência cruzada desses modelos. Porem para serem feitas as alterações, houve várias mudanças que tiveram que ser feitas para atender aos requisitos dos modelos.

Após a análise das lacunas e paralelamente às mudanças na ETL, a Keyrus desenvolveu oito painéis no nível da instituição (o que significa que instituições únicas seriam o principal público desses relatórios).

Modelagem de segurança em nível de linha

Como os dados académicos dos alunos são privados da instituição que os enviou, os painéis do Tableau precisavam de incorporar a segurança em nível de linha para que as organizações pudessem ver apenas os dados que eles enviaram.

A organização sem fins lucrativos exigia três níveis de acesso:

  • Nível da instituição - utilizadores que podem ver apenas uma única instituição
  • Nível de sistema ou iniciativa - utilizadores que têm acesso aos dados de várias instituições
  • Nível de superutilizador - utilizadores internos que podem ver a visão global (todos os dados)

A solução Keyrus incluía uma tabela de acesso de usuário com um único registo por instituição, pois esse é o nível de segurança mais granular necessário.

Como existem vários utilizadores que terão acesso aos dados de uma instituição, os nomes de utilizadores com acesso serão organizados em uma única célula. O objetivo é evitar qualquer caso de duplicação de dados. A tabela está associada às visualizações que mantêm dados para os oito KPIs. No lado do Tableau, um filtro de fonte de dados foi aplicado na fonte com uma lógica como a apresentada de seguida:

CONTÉM ([USERNAME], USERNAME ()) OU ISMEMBEROF ("Superutilizador")

Portanto, se o registo contiver o nome de utilizador do utilizador que está a visualizar a pasta de trabalho, o utilizador poderá visualizá-lo. Se o utilizador for apelidado de superutilizador, ele será adicionado a um grupo correspondente no Tableau Server e, pela lógica acima, poderá ver todas as linhas de dados.

Implantação automatizada do Tableau

Em vez de executar implementações em ambientes superiores manualmente, a organização exigia o desenvolvimento de um processo de implementação automatizado. Esse processo é dividido em duas partes: implementação das fontes de dados do Tableau (extrações) e implementação das pastas de trabalho do Tableau.

Para automatizar a implementação, a Keyrus criou scripts python que utilizam a biblioteca tableauserverclient, que faz referência à API REST do Tableau Server.

Os scripts executam as seguintes ações:

  • Baixar a versão do conjunto de dados do Tableau Server com base na tag
  • Publicar em ambiente superior
  • Atualizar a conexão para refletir as credenciais do banco de dados Oracle do ambiente superior
  • Atualizar a extração
  • Pastas de trabalho
  • Baixar a versão mais recente do Tableau Server com base na tag
  • Alterar a conexão do servidor da fonte de dados (isso é feito usando a API do Tableau Document)
  • Publicar as pastas de trabalho em um ambiente superior
  • Adição automatizada do utilizador

O Tableau Server usa SAML para logon único. O Oracle Access Manager (OAM) é usado como provedor de identidade. Para que o SSO exista, o usuário deve existir no OAM e no Tableau Server (com autenticação local).

Para automatizar a adição do nome de utilizador correspondente ao Tableau Server, a Keyrus desenvolveu um script python para ser accionado quando um utilizador é adicionado ao OAM com uma função do Tableau. O script passa o argumento do nome de utilizador no OAM para a API REST do Tableau Server e adiciona o utilizador a um grupo no servidor com as permissões correspondentes ao nível de acesso.

Resultados

A organização agora usa análises de auto-atendimento em vez de depender de PDFs estáticos que costumavam exigir 3 semanas completas de 40 horas por semana para serem criadas. O novo conjunto de painéis está disponível imediatamente e é fácil para os usuários navegar, eliminando o trabalho manual tedioso. No geral, o processo de dados é mais eficiente e intuitivo para os usuários.

Pronto para começar?