top of page
pedrobusko

Detecção de Fraude com Apache Kafka, KSQL e Apache Flink

Este é um artigo traduzido originalmente publicado dia 25/10/2022 no blog do Kai Waehner: "Fraud Detection with Apache Kafka, KSQL and Apache Flink". Assine a newsletter do Kai para se manter atualizado com novas publicações.


A detecção de fraudes torna-se cada vez mais desafiadora em um mundo digital em todos os setores. O processamento de dados em tempo real com o Apache Kafka tornou-se o padrão de fato para correlacionar e prevenir fraudes continuamente antes que elas aconteçam. Esta postagem de blog explora estudos de caso para prevenção de fraudes de empresas como Paypal, Capital One, ING Bank, Grab e Kakao Games, que utilizam tecnologias de processamento de fluxo como Kafka Streams, KSQL e Apache Flink.

 

A detecção de fraudes torna-se cada vez mais desafiadora em um mundo digital em todos os setores. O processamento de dados em tempo real com o Apache Kafka tornou-se o padrão de fato para correlacionar e prevenir fraudes continuamente antes que elas aconteçam. Esta postagem de blog explora estudos de caso para prevenção de fraudes de empresas como Paypal, Capital One, ING Bank, Grab e Kakao Games, que utilizam tecnologias de processamento de fluxo como Kafka Streams, KSQL e Apache Flink.



Detecção de fraudes e a necessidade de dados em tempo real


A detecção e prevenção de fraudes é a resposta adequada às atividades fraudulentas nas empresas (como fraude, peculato e perda de ativos por ações de funcionários).

Um sistema de gerenciamento antifraude (AFMS) compreende tarefas de auditoria, prevenção e detecção de fraudes. Empresas maiores o utilizam como um sistema em toda a empresa para prevenir, detectar e responder adequadamente a atividades fraudulentas. Esses elementos distintos estão interconectados ou existem independentemente. Uma solução integrada costuma ser mais eficaz se a arquitetura considerar as interdependências durante o planejamento.

Dados em tempo real superam dados lentos em domínios de negócios e setores em quase todos os casos de uso. Mas existem poucos exemplos melhores do que prevenção e detecção de fraudes. Não é útil detectar fraudes em seu data warehouse ou data lake após horas ou mesmo minutos, pois o dinheiro já está perdido. Essa “arquitetura tardia” aumenta o risco, a perda de receita e a péssima experiência do cliente .

Não é nenhuma surpresa que as plataformas de pagamento mais modernas e os sistemas de gerenciamento antifraude implementem recursos em tempo real com tecnologias de análise de streaming para essas cargas de trabalho transacionais e analíticas. A arquitetura Kappa desenvolvida pelo Apache Kafka tornou-se o padrão de fato substituindo a arquitetura Lambda .


Um exemplo de processamento de fluxo em pagamentos


O processamento de fluxo é a base para a implementação da detecção e prevenção de fraude enquanto os dados estão em movimento (e relevantes) em vez de apenas armazenar dados em repouso para análise (tarde demais).

Não importa qual tecnologia moderna de processamento de fluxo você escolha (por exemplo, Kafka Streams, KSQL, Apache Flink), ela permite o processamento contínuo em tempo real e a correlação de diferentes conjuntos de dados . Frequentemente, a combinação de dados históricos e em tempo real ajuda a encontrar os insights e correlações corretos para detectar fraudes com alta probabilidade.

Vejamos alguns exemplos de processamento de fluxo sem estado e com estado para correlação de dados em tempo real com as ferramentas nativas do Kafka Kafka Streams e ksqlDB. Da mesma forma, o Apache Flink ou outros mecanismos de processamento de fluxo podem ser combinados com o fluxo de dados Kafka. Sempre tem prós e contras. Embora o Flink possa ser mais adequado para alguns projetos, é outro mecanismo e infraestrutura que você precisa combinar com o Kafka.

Certifique-se de entender seus SLAs de ponta a ponta e os requisitos em relação à latência, semântica exata, perda potencial de dados etc. Em seguida, use a combinação certa de ferramentas para o trabalho.


Monitoramento de transações stateless com Kafka Streams


Um aplicativo Kafka Streams, escrito em Java, processa cada evento de pagamento de forma sem estado, um por um:



Detecção de anomalias stateful com Kafka e KSQL


Um aplicativo ksqlDB, escrito com código SQL, analisa continuamente as transações da última hora por ID do cliente para identificar comportamento malicioso:



Kafka e Machine Learning com TensorFlow para pontuação em tempo real para detecção de fraude


Um KSQL UDF (função definida pelo usuário) incorpora um modelo analítico treinado com o TensorFlow para prevenção de fraudes em tempo real:



Estudos de caso em todas as indústrias


Existem vários estudos de caso para detecção de fraude com Kafka. Geralmente é combinado com tecnologias de processamento de fluxo, como Kafka Streams, KSQL e Apache Flink . Aqui estão algumas implantações do mundo real em vários setores, incluindo serviços financeiros, jogos e serviços de mobilidade:


Paypal processa bilhões de mensagens com Kafka para detecção de fraudes.


A Capital One considera os eventos como a execução de todo o seu negócio ( fornecido pela Confluent ), onde o processamento de fluxo evita US$ 150 de fraude por cliente em média por ano, evitando violações de informações de identificação pessoal (PII) de transações em andamento.


O ING Bank começou há muitos anos implementando detecção de fraude em tempo real com Kafka, Flink e modelos analíticos incorporados.


O Grab é um serviço de mobilidade na Ásia que utiliza Confluent Cloud, Kafka Streams e ML totalmente gerenciados para processamento de stream stateful em seu serviço GrabDefence SaaS interno.


Kakao Games , uma empresa de jogos sul-coreana usa streaming de dados para detectar e operar anomalias com mais de 300 padrões por meio do KSQL.


Vamos explorar o último estudo de caso com mais detalhes.


Mergulhe fundo na prevenção de fraudes com Kafka e KSQL em jogos para dispositivos móveis


A Kakao Games é uma editora global de videogames com sede na Coreia do Sul, especializada em jogos de vários gêneros para plataformas de PC, dispositivos móveis e realidade virtual. A empresa se apresentou no Current 2022 – The Next Generation of Kafka Summit em Austin, Texas.

Aqui está um resumo detalhado de seu caso de uso atraente e arquitetura para detecção de fraude com Kafka e KSQL.


Caso de uso: detectar comportamento malicioso de jogadores em tempo real


O desafio fica evidente quando você entende a história da empresa: a Kakao Games tem muitos jogos terceirizados adquiridos por meio de estúdios de jogos terceirizados. Cada jogo tem seu log exclusivo com sua estrutura padrão e formato de mensagem. A integração confiável de dados em tempo real em escala é necessária como base para processos de negócios analíticos, como detecção de fraudes.

O objetivo é analisar logs de jogo e dados de telemetria em tempo real . Esse recurso é fundamental para prevenir e corrigir ameaças ou ações suspeitas dos usuários.


Arquitetura: Altere a captura de dados e análises de streaming para prevenção de fraudes


A plataforma de streaming de eventos com tecnologia Confluent oferece suporte à padronização do log do jogo. O ksqlDB analisa os dados de telemetria de entrada para detecção de abuso e anomalia no jogo.


Fonte: Kakao Games (Current 2022 em Austin, Texas)


Implementação: receitas SQL para streaming de dados com KSQL


A Kakao Games detecta anomalias e evita fraudes com mais de 300 padrões por meio do KSQL. Os casos de uso incluem abuso de bônus, uso de várias contas, aquisição de conta, fraude de chargeback e fraude de afiliados .

Aqui estão alguns exemplos de código escritos com código SQL usando KSQL:


Fonte: Kakao Games (Current 2022 em Austin, Texas)


Resultados: Risco reduzido e melhor experiência do cliente


A Kakao Games pode fazer rastreamento e análise de dados em tempo real em escala. Os benefícios comerciais são um tempo de lançamento mais rápido no mercado, aumento de usuários ativos e mais receita graças a uma melhor experiência de jogo.


A detecção de fraude só funciona em tempo real


A ingestão de dados com Kafka em um data warehouse ou data lake é apenas parte de uma boa arquitetura corporativa. Ferramentas como Apache Spark, Databricks, Snowflake ou Google BigQuery permitem encontrar insights em dados históricos. Mas a prevenção de fraudes em tempo real só é possível se você agir enquanto os dados estão em movimento. Caso contrário, a fraude já aconteceu quando você a detectou .

O processamento de fluxo fornece uma infraestrutura escalonável e confiável para prevenção de fraudes em tempo real. A escolha da tecnologia certa é essencial. No entanto, todos os principais frameworks, como Kafka Streams, KSQL ou Apache Flink, são muito bons. Portanto, os estudos de caso do Paypal, Capital One, ING Bank, Grab e Kakao Games parecem diferentes . Ainda assim, eles têm a mesma base com o streaming de dados alimentado pelo padrão de fato Apache Kafka para reduzir riscos, aumentar a receita e melhorar a experiência do cliente.


Como você aproveita o streaming de dados para prevenção e detecção de fraudes? Como é a sua arquitetura? Quais tecnologias você combina? Conecte comigo e com o Kai no LinkedIn e vamos discutir isso! Mantenha-se informado sobre as novas postagens do blog assinando a newsletter.

347 visualizações0 comentário

Pedro Busko's blog

©2022 by Pedro Busko's blog. Proudly created with Wix.com

bottom of page