Dirigindo a produção sustentável de alumínio: como calcular a taxa de recuperação de materials com grafframes
A produção sustentável tornou -se um imperativo no mercado de fabricação atual. De acordo com Uma pesquisa de 2022 Pela Associação Nacional de Fabricantes, 79% dos fabricantes têm metas específicas de sustentabilidade. Um líder world em folha de alumínio e produção de folhas adotou esse desafio de frente, usando os bancos de dados para analisar os dados da linha de produção. Esta empresa de fabricação de alumínio tem como objetivo melhorar a qualidade do produto, otimizar os recursos e reduzir o impacto ambiental.
O desafio: complexidade no monitoramento de produção e emissões
A produção de alumínio é um processo complexo, com muitos estágios envolvidos na transformação de matérias -primas em produtos acabados. Para garantir a sustentabilidade ao longo deste processo, a empresa desenvolveu sistemas de relatórios que acompanham o impacto ambiental do início ao fim. Uma das principais métricas desse esforço é a taxa de recuperação – a porcentagem de alumínio reciclada com sucesso de materiais de sucata em novos produtos. Para medir isso com precisão, a empresa deve primeiro identificar cada etapa necessária na criação do produto remaining (por exemplo, “rastreamento de lote”) e depois calcular o resíduo de materials associado a cada estágio.
Os dados, no entanto, são enormes. Os sistemas de produção registraram mais de 1 bilhão de linhas com até 40 níveis de lotes de produção vinculados. Os métodos tradicionais de quadro de dados não foram adequados para analisar esses relacionamentos com os dados. A empresa considerou o uso do PANDAS UDFS, mas esses UDFs mostraram limitações de desempenho à medida que o tamanho e a complexidade dos dados aumentavam. Identificar relacionamentos profundamente aninhados em um conjunto de dados tão grande exigia modelar os relacionamentos como um gráfico. Uma solução construída com GraphFrames-uma estrutura de processamento de gráficos distribuído incluído em Databricks ML Runtime e otimizado com Motor de fótons do Databricks-Performou o rastreamento de lote de ponta a ponta com bom desempenho e escalabilidade.
Trabalhando com gráficos
Os sistemas de fabricação podem refinar uma única matéria-prima em centenas de produtos finais com centenas de etapas intermediárias. Embora cada subprocesso possa emitir informações sobre seus próprios materiais de entrada e saída, medir os principais indicadores de sustentabilidade, como a taxa de recuperação, requer análise da sequência de ponta a ponta. O objetivo é conectar um lote de saída com um lote de origem através de uma série de IDs de lote intermediário. Depois que o rastro completo estiver disponível, podemos determinar o materials perdido em cada etapa.

Rastrear lotes de produção armazenados como linhas em um quadro de dados-para calcular o materials whole perdido na produção de um produto remaining, por exemplo-pode ser difícil. Embora os quadros de dados sejam úteis para muitas consultas analíticas sobre conjuntos de objetos de negócios, eles não têm funcionalidade para modelar e analisar hierarquias complexas de objetos. O GraphFrames é uma estrutura de dados útil para lidar com grandes hierarquias de objetos. Eles modelam hierarquias como Gráficos com:
- Vértices Representando os objetos de negócios (por exemplo, lote A de um processo de fabricação)
- Bordas Representando as relações pareadas entre os objetos (por exemplo, lote a é a fonte do lote B)
A biblioteca GraphFrames possui muitas ferramentas internas para processamento de dados gráficos. Uma classe de algoritmos, Pregelenvia informações ao longo das bordas do gráfico para calcular os resultados. Para rastreamento de lote, usamos o Pregel para enviar informações sobre as etapas anteriores de produção (por exemplo, o número do lote de saída) ao longo do gráfico, gerando uma lista completa de todos os lotes de materials a montante para cada produto remaining.
Entendendo Pregel
O Pregel é uma estrutura que permite que os usuários criem algoritmos personalizados e paralelos de passagem de mensagens adequados aos seus problemas de negócios exclusivos. Cada vértice é inicializado com um valor padrão. Os resultados são calculados sobre iterações chamadas Supersteps. Em cada superstegrap, os vértices do gráfico podem:
- Passe uma mensagem para seus vizinhos
- Mensagens agregadas recebido de seus vizinhos
- Processar as mensagens e atualizar seu estado interno

As funções definidas pelo usuário (UDFS) controlam como as mensagens são passadas e usadas para atualizar o estado de um vértice. Essa flexibilidade permite que os usuários implementem algoritmos Pregel para uma variedade de casos de uso. Para rastrear lotes em nosso processo de fabricação, enviamos o número do lote de entrada de um vértice para outro, atualizando os números de profundidade e fonte de cada vértice quando uma mensagem foi recebida.
Definindo funções para rastreamento de lotes
Para implementar o rastreamento em lote com o Pregel, queríamos enviar números de lote ao longo do gráfico. Começamos definindo uma estrutura de mensagens – nossas nossas incluíam a profundidade do nó, o número do lote e quaisquer números anteriores de lote (também conhecidos como “rastreio”). Com o nosso esquema de mensagens definido, criamos um UDF para garantir que as mensagens fossem enviadas de pai para filho em lote com base na profundidade de cada vértice.

Como os sistemas de fabricação podem envolver vários insumos, precisávamos de uma maneira de lidar com mensagens de vários vértices a montante. Criamos uma função para coletar uma única lista de números de lote recebidos de cada linha de produção a montante.

Por fim, criamos uma função para atualizar cada vértice com os números agregados de lote.

Pré-processamento dos dados
Nosso primeiro passo foi identificar lotes de origem em nosso conjunto de dados. Criamos um quadro de gráfico a partir de nossos dados em lote e usamos o inDegrees
propriedade para determinar o número de lotes de entrada para cada lote de saída.

Depois que encontramos os lotes de origem, fomos capazes de construir um algoritmo prégel para passar o número do lote ao longo de cada borda, da entrada à saída até que a linhagem completa fosse rastreada para cada lote.
Executando o algoritmo Pregel
A imagem abaixo mostra as chamadas da estrutura do Pregel para executar o algoritmo e rastrear a linhagem.

GRAPHFRAMES SPED-UPED HIERÁRIO TRAVERSAL POR 24X (4 horas a cerca de 10 minutos) por 1 milhão de lotes vs. Pandas UDFs em execução no mesmo cluster. Enquanto os Pandas UDFs só poderiam ser escalonados aumentando o tamanho do trabalhador, os testes mostraram que os quadros de gráficos escalaram horizontalmente quando os trabalhadores foram adicionados ao cluster.

Conclusão
O uso de gráficos no Databricks forneceu a esse fabricante maior visibilidade em seu processo de produção. Com os relatórios desenvolvidos a partir de dados de rastreamento em lote, os gerentes de operações podem identificar defeitos mais cedo, reduzir o desperdício e fornecer qualidade mais consistente do produto. O rastreamento de resíduos e emissões com mais precisão ajudará a empresa a minimizar seu impacto ambiental, garantir a conformidade com regulamentos cada vez mais rigorosos e se alinhar melhor aos valores de seus clientes.
A adoção de soluções orientadas a dados ajudou esse fabricante a encontrar maneiras mais eficientes e sustentáveis de produzir mercadorias. O GraphFrames fornece funcionalidade gráfica conveniente e nativa de faísca que pode ser usada por muitos fabricantes para entender seus processos de produção em escala.
Interessado em impulsionar a sustentabilidade em seus negócios? Confira o nosso Análise de desempenho ESG Acelerador de soluções para começar!