Este publish é cowritten com Sean Zou, Terry Quan e Audrey Yuan de Mulesoft.
Em nossa postagem anterior de liderança de liderança de pensamento Por que um modelo operacional em nuvem Definimos uma estrutura de COE e mostramos por que Mulesoft implementou -o e os benefícios que receberam dele. Neste publish, mergulharemos na implementação técnica que descreve como o mulesoft usado Amazon EventbridgeAssim, Amazon RedshiftAssim, Espectro do Amazon RedshiftAssim, Amazon S3& Aws cola para implementá -lo.
Visão geral da solução
A solução da Mulesoft foi construir um lago construído sobre os serviços da AWS, ilustrado no diagrama a seguir, apoiando um portal. Para fornecer análises próximas em tempo actual, usamos uma estratégia orientada a eventos que desencadearia os trabalhos da AWS cola uma atualização de vistas materializadas. Também implementamos uma abordagem em camadas que incluía coleta, preparação e enriquecimento, tornando -o simples para identificar áreas que afetam a precisão dos dados.
Para a solução de ponta a ponta da Lakehouse da Mulesoft, as seguintes fases são fundamentais:
- Fase de preparação
- Fase de enriquecimento
- Fase de ação
Nas seções a seguir, discutimos essas fases com mais detalhes.
Fase de preparação
Usando a estrutura do COE, nos envolvemos com as partes interessadas na fase de preparação para determinar as metas de negócios e identificar as fontes de dados para ingerir. Exemplos de fontes de dados foram inventário de ativos em nuvem, Relatórios de custo e uso da AWSe Dados de consultor confiáveis da AWS. Os dados ingeridos são processados na casa Lakehouse para implementar os pilares bem arquitetados, a utilização, a segurança e as verificações de standing de conformidade.
Como você configura os dados do CUR e os dados do consultor confiável para pousar no S3?
O processo de configuração envolve vários componentes para o CUR e o armazenamento de dados do CUR e Confessor Advisor. Para a configuração do CUR, os clientes precisam configurar um balde S3, onde o relatório do CU será entregue, selecionando um balde existente ou criando um novo. O balde S3 exige que uma política seja aplicada e os clientes devem especificar um prefixo do caminho S3 que cria uma subpasta para a entrega do arquivo CUR.
Os dados do Advisor Trusted estão configurados para usar a Kinesis Firehose para fornecer dados de resumo do cliente ao bucket de suporte Information Lake S3. O processo de ingestão de dados usa parâmetros de buffer de fogueira (tamanho do buffer de 1 MB e tempo de buffer de 60 segundos) para gerenciar o fluxo de dados para o balde S3.
Os dados de consultor confiável são armazenados no formato JSON e GZIP, seguindo uma estrutura de pasta específica com partições por hora usando o formato “AAAA-MM-DD-HH”.
A estrutura de partição S3 para os dados de resumo do cliente do Consultor Confiável inclui caminhos separados para dados de sucesso e erro, e os dados são criptografados usando uma chave KMS específica para dados de consultores confiáveis.
A Mulesoft usou serviços gerenciados e ferramentas de ingestão de dados da AWS para extrair de várias fontes de dados e que podem suportar personalizações. CloudQuery é a ferramenta usada para coletar informações de infraestrutura em nuvem, que podem conectar muitas fontes de dados de infraestrutura fora da caixa e colocá -las em um balde da Amazon S3. O Mulesoft Anypoint Platform Fornece uma camada de integração para integrar ferramentas de infraestrutura, acomodando muitas fontes de dados, como o native native, SaaS e software program comercial no meio-milha (COTS). Custodiante da nuvem foi usado por sua capacidade de gerenciar recursos em nuvem e remediação automática com personalizações.
Fase de enriquecimento
A fase de enriquecimento inclui a ingestão de dados brutos que se alinham com nossos objetivos de negócios na casa de Lakehouse através de nossos oleodutos e consolidação dos dados para criar um único painel de vidro.
Os oleodutos adotam a arquitetura orientada a eventos que consiste em eventbridge, Amazon Easy Fileue Service (Amazon SQS)e Notificações de eventos Amazon S3 fornecer dados quase em tempo actual para análise. Quando novos dados chegam ao balde de origem, a criação de novos objetos é capturada pela regra do Eventbridge, que chama o fluxo de trabalho da AWS Glue, consistindo em trabalhos de rastreamento de cola da AWS e cola da AWS, transformação e carga (ETL). Nós também configuramos Notificações de eventos S3 Para enviar mensagens para a fila do SQS para garantir que o pipeline processe apenas os novos dados.
O trabalho do AWS Glue ETL limpa e padroniza os dados, para que esteja pronto para ser analisado usando o Amazon Redshift. Para combater dados com estruturas complexas, o processamento adicional é realizado para achatar os formatos de dados aninhados em um modelo relacional. A etapa de achatamento também extrai as tags dos ativos da AWS dos objetos JSON aninhados e os gira em colunas individuais, permitindo controles de aplicação de marcação e atribuição de propriedade. A atribuição de propriedade dos dados de infraestrutura fornece responsabilidade e responsabiliza as equipes responsáveis pelos custos, utilização, segurança, conformidade e remediação de seus ativos em nuvem. Uma tag importante é a propriedade de ativos, que é das tags extraídas da etapa de achatamento, esses dados podem ser atribuídos aos proprietários correspondentes pelos scripts SQL.
Quando o fluxo de trabalho está concluído, os dados brutos de diferentes fontes e com várias estruturas agora estão centralizados no information warehouse. A partir daí, dados desarticulados com diferentes propósitos estão prontos para serem consolidados e traduzidos em inteligência acionável nos pilares bem arquitetados, codificando a lógica de negócios.
Soluções para a fase de enriquecimento
Na fase de enriquecimento, enfrentamos vários desafios de armazenamento, eficiência e escalabilidade, dado o grande quantity de dados. Utilizamos três técnicas (particionamento de arquivos, espectro do desvio para o vermelho e visualizações materializadas) para abordar esses problemas e escalar sem comprometer o desempenho.
Particionamento de arquivos
Os dados de infraestrutura da Mulesoft são armazenados na estrutura da pasta: ano, mês, dia, hora, conta e região em um balde S3, de modo que os rastreadores da AWS Glue podem identificar e adicionar automaticamente partições às tabelas no catálogo de dados da AWS Glue. O particionamento ajuda a melhorar significativamente o desempenho da consulta, pois otimiza o processamento paralelo para consultas. A quantidade de dados digitalizados por cada consulta é restrita com base nas chaves de partição, ajudando a reduzir as transferências gerais de dados, o tempo de processamento e os custos de computação. Embora o particionamento seja uma técnica de otimização que ajuda a melhorar a eficiência da consulta, é importante ter em mente dois pontos -chave enquanto usa esta técnica:
- O catálogo de dados tem uma tampa máxima de 10 milhões de partições por tabela
- O desempenho da consulta é comprometido à medida que as partições crescem rapidamente
Portanto, é essencial equilibrar o número de partições nas tabelas de catálogo de dados e a eficiência da consulta. Decidimos uma política de retenção de dados de 3 meses e configuramos uma regra do ciclo de vida para expirar os dados mais antigos que isso.
Nosso evento de Eventbridge, orientado a eventos, é invocado quando os objetos são colocados ou removidos de um balde S3, as mensagens de evento são publicadas na fila do SQS usando notificações de eventos S3, que invoca um rastreador da AWS para adicionar novas partições ou remover antigos Partições do catálogo de dados com base nas mensagens que lidam com a limpeza da partição.
Amazon Redshift e escala de simultaneidade
O MuleSoft usa o Amazon Redshift para consultar os dados no S3, pois fornece computação em larga escala e redundância de dados minimizada. O Mulesoft também usou o Amazon Redshift Concorrência Scaling para executar consultas simultâneas com desempenho consistentemente rápido da consulta. O Amazon Redshift adicionou automaticamente o poder de processamento de consulta em segundos para processar um alto número de consultas simultâneas sem atrasos.
Vistas materializadas
Outra técnica que usamos são as vistas materializadas do Amazon Redshift. Vistas materializadas armazenam resultados de consultas predefinidas que futuras consultas semelhantes podem usar, tantas etapas de computação podem ser ignoradas. Portanto, dados relevantes podem ser acessados com eficiência, o que leva à otimização de consultas. Além disso, as vistas materializadas podem ser atualizadas automaticamente e incrementalmente. Portanto, podemos obter um único painel de vidro em nossa infraestrutura em nuvem, com as projeções, tendências e insights acionáveis mais atualizados para nossa organização com melhor desempenho de consulta.
As vistas materializadas do Amazon Redshift (MVs) são amplamente utilizadas para relatar no portal central da nuvem da Mulesoft, mas se os usuários precisavam perfurar em uma visão granular, eles poderiam fazer referência a tabelas externas.
Atualmente, a Mulesoft está atualizando manualmente as vistas materializadas através da arquitetura orientada por eventos, mas está avaliando uma mudança para uma atualização automática.
Fase de ação
Usando vistas materializadas no Amazon Redshift, desenvolvemos um portal central de nuvem de autoatendimento no Tableau para fornecer um portal de exibição para cada equipe, engenheiro e gerente, oferecendo orientação e recomendações para ajudá-los a operar de uma maneira que se alinhe aos requisitos da organização, padrões da organização, e orçamento. Os gerentes são capacitados com informações de monitoramento e tomada de decisão para suas equipes. Os engenheiros podem identificar e identificar ativos com informações de marcação obrigatórias, além de remediar recursos não compatíveis. Um recurso essencial do portal é a personalização, o que significa que o portal pode preencher visualizações e análises com base nos dados relevantes associados às informações de login de um gerente ou engenheiro.
A Cloud Central também ajuda as equipes de engenharia a melhorar sua maturidade em nuvem nos seis pilares da bem arquitetura: excelência operacional, segurança, confiabilidade, eficiência de desempenho, otimização de custos e sustentabilidade. A equipe provou a “arte de possível”, poc’ing Amazon Q para ajudar com 100 e 200 consultas bem arquitetadas e como fazer. A captura de tela a seguir ilustra a implementação do Mulesoft do portal, Cloud Central. Outras empresas projetarão portais que sejam mais personalizados para seus próprios casos e requisitos de uso.
Conclusão
O impacto técnico e comercial da estrutura COE da Mulesoft permite uma otimização estratégia e a Uso da nuvem Mostre a abordagem de volta que ajuda a Mulesoft a continuar a crescer com uma infraestrutura de nuvem escalável e sustentável. A estrutura também gera maturidade e benefícios contínuos na infraestrutura de nuvem, centrados nos seis pilares bem-cultura mostrados na figura a seguir.
A estrutura ajuda as organizações com infraestrutura de nuvem pública expandida a alcançar seus objetivos de negócios guiados pelos benefícios bem arquitetados alimentados por uma arquitetura orientada a eventos.
A Solução de Arquitetura Lakehouse do Amazon Redshift, orientada a eventos, oferece insights acionáveis em tempo actual sobre tomada de decisão, controle e responsabilidade. O arquiteto orientado a eventos pode ser destilado em módulos que podem ser adicionados ou excluídos, dependendo de suas metas técnicas/comerciais.
A equipe está explorando novas maneiras de diminuir o custo complete de propriedade. Eles estão avaliando o Amazon Redshift sem servidor para cargas de trabalho de banco de dados transitórias, além de explorar o Amazon Datazone para agregar e correlacionar fontes de dados em um catálogo de dados para compartilhar entre equipes, aplicativos e linhas de empresas de maneira democratizada. Podemos aumentar a visibilidade, a produtividade e a escalabilidade com uma solução bem pensada Lakehouse.
Convidamos organizações e empresas a adotar uma abordagem holística para entender seus recursos em nuvem, infraestrutura e aplicativos. Você pode habilitar e educar suas equipes através de um único painel de vidro, enquanto executa em um lakehouse de modernização de dados que aplica conceitos bem arquitetados, práticas recomendadas e princípios centrados na nuvem. Esta solução pode, em última análise, ativar o streaming quase em tempo actual, nivelando uma estrutura de COE no futuro.
Sobre os autores
Sean Zou é um líder de operações em nuvem na Mulesoft no Salesforce. Sean esteve envolvido em muitos aspectos das operações em nuvem da Mulesoft e ajudou a impulsionar a infraestrutura em nuvem da Mulesoft a escalar mais de dez vezes em 7 anos. Ele construiu a função de engenharia de supervisão em Mulesoft do zero.
Terry Quan concentra -se nas questões do FINOPS. Ele trabalha em engenharia de Mulesoft em orçamentos de computação em nuvem e previsão, esforços de redução de custos, custos a serve e coordenadas com o Salesforce Finance. Terry é praticante do FINOPS e certificado profissional.
Audrey Yuan é um engenheiro de software program da Mulesoft no Salesforce. Audrey trabalha na Information Lakehouse Options para ajudar a impulsionar a maturidade em nuvem nos seis pilares da estrutura bem arquitetada.
Rueben Jimenez é um arquiteto sênior de soluções da AWS, projetando e implementando soluções complexas de análise de dados, IA/ML e infraestrutura em nuvem.
Avijit Goswami é um arquiteto de soluções principais da AWS especializado em dados e análises. Ele suporta clientes estratégicos da AWS na construção de soluções de alto desempenho, seguro e escalável no AWS usando serviços gerenciados da AWS e soluções de código aberto. Fora de seu trabalho, Avijit gosta de viajar, caminhar, assistir esportes e ouvir música.