Recursos/White Papers

Tecnologia

Está na hora de usar as APIs para Business Analytics

Com tantas informações fluindo por meio de APIs, o sistema de gerenciamento de APIs oferece um hub central para insights de negócios

Srinath Perera , InfoWorld/EUA

Publicada em 02 de julho de 2018 às 09h00

As APIs se tornaram o mecanismo de escolha para conectar serviços, aplicativos, dados, identidades e outros ativos digitais internos e externos. Como resultado, as APIs agora têm o potencial de servir como um mecanismo valioso também para o Business Analytics. Igualmente importante, as APIs podem fornecer uma alternativa significativamente mais fácil de usar para as abordagens tradicionais e ad hoc de coleta de dados e análise de dados.

Normalmente, uma organização começará sua Transformação Digital adotando APIs para aprimorar a integração de sistemas e a automação de processos. Com várias soluções completas de gerenciamento de APIs prontas para uso no mercado, os desenvolvedores corporativos podem colocar um sistema em produção em semanas ou meses, construindo integrações para preencher facilmente qualquer lacuna. A partir daí, a equipe pode melhorar continuamente a implementação.

O próximo passo na Transformação Digital é a análise, à medida que as empresas evoluem para se tornar negócios orientados a dados. Entre as tecnologias que estão sendo empregadas para entender a dinâmica de uma organização e ajudar na tomada de decisões estão a sofisticada agregação de dados, Machine Learning, mineração de dados e visualização de dados. Juntos, eles permitem que as equipes corporativas entendam a dinâmica do negócio, detectem padrões e prevejam desenvolvimentos futuros. No entanto, os desafios associados à coleta de dados e à criação de análises personalizadas dificultaram a adoção do Business Analytics. E mesmo quando adotada, a análise está longe de ter o impacto transformacional previsto.

Este artigo explora os desafios de adotar a análise usando abordagens tradicionais, examina como o gerenciamento de APIs pode lidar com esses desafios e apresenta um modelo de solução para uso do gerenciamento de APIs para extração de valiosos dados para análise.

Bloqueios para a adoção de Analytics
Ao implementar Analytics, as organizações enfrentam três desafios críticos, com potencial de retardar ou desviar o projeto.

Primeiro, diferentemente do gerenciamento de APIs, não há soluções analíticas prontas para uso. Em vez disso, a organização precisa criar uma solução de análise personalizada combinando diferentes tecnologias analíticas. Isso, por sua vez, exige que a equipe de desenvolvimento escreva uma quantidade significativa de código para integrar as tecnologias necessárias, bem como os sistemas existentes.

Segundo, a organização precisará empregar engenheiros de dados (desenvolvedores) e cientistas de dados (arquitetos) que tenham um profundo conhecimento de estatística, Machine Learning e sistemas. Esses profissionais (que são escassos) precisarão decidir quais insights são úteis, determinar quais indicadores principais de desempenho (KPIs) devem rastrear, criar um sistema para coletar dados e fazer com que outros grupos na organização adicionem código de coleta de dados. Eles também terão que escrever sua própria lógica de análise, realizar as ações com base nos resultados da análise escrevendo mais código e compreender, do primeiro ao enésimo nível, as repercussões dessas observações.

Em terceiro lugar, para coletar dados as organizações precisam adicionar instrumentação (sensores) em toda a organização para gerar eventos que sinalizem atividades notáveis. Tal projeto exige coordenação em vários grupos - variando de 10 a 20 equipes em grandes empresas. Além disso, as organizações podem precisar aguardar que os sensores sejam enviados para eles. Como resultado, o processo de instrumentação é frequentemente caro e demorado.

Todos esses obstáculos limitaram a adoção de análises até o momento.

As vantagens da análise orientada por APIs
O gerenciamento de APIs tem o potencial de permitir o uso mais amplo de Analytics devido a dois fatores. A primeira é a ampla adoção de soluções de gerenciamento de APIs, que vem crescendo mais de 35% ao ano desde 2016, impulsionada pela demanda de clientes e parceiros para permitir uma integração mais próxima e uma automação mais fácil. Essa tecnologia de APIs é apoiada por ferramentas maduras e um ecossistema forte.

Segundo, o posicionamento estratégico do gerenciamento de APIs em todos os fluxos de mensagens de uma organização. As APIs estão se tornando as portas pelas quais todas as interações internas e externas de uma empresa fluem. Até mesmo sites e outras interfaces de usuário contam com essas APIs para executar suas funções de back-end. É fácil ver como o tráfego da APIs pode permitir que as equipes verifiquem como a organização funciona ao longo do tempo. À medida que as APIs se tornam mediadoras de todas as interações, a solução de gerenciamento de APIs pode se tornar um portal que mostra como uma organização funciona.

Portanto, em vez de criar uma solução de análise pronta para uso, devemos pensar em terr uma solução de análise orientada por APIs completa como parte integrante das ferramentas de gerenciamento de APIs. Tal solução é viável por alguns motivos.

Para começar, como o gerenciamento de APIs está no cruzamento de todas as comunicações dentro ou fora da organização, podemos instrumentar as ferramentas de gerenciamento de APIs em vez dos sistemas reais. Isso pode ser feito como parte da estrutura de gerenciamento da APIs, que pode ser atualizada conforme necessário. Em seguida, coletando mensagens que passam pelas APIs, podemos ter uma visão completa da organização. Essa abordagem centralizada elimina a necessidade de uma empresa coordenar 10 ou 20 equipes para adicionar instrumentação a todos os sistemas. Também elimina o desafio de gerenciar os vários formatos de dados coletados por meio das instrumentações do sistema de análise tradicional.

Em vez disso, como todos os dados são coletados por meio de uma camada lógica com o sistema de gerenciamento da APIs, o formato dos dados é conhecido. Isso permite o desenvolvimento de uma solução de análise orientada por APIs pronta para uso que oferece suporte a casos de uso comuns, como detecção de fraude, rastreamento de jornada do cliente e análise de segmento, entre outros, também como cenários prontos para uso. Uma equipe de cientistas de dados qualificados - seja dentro de um fornecedor de software, empresa de integração de sistemas ou equipe de desenvolvimento empresarial - pode investir na criação de análises complexas que cubram a maioria dos casos de uso comum. As análises para esses cenários podem, então, ser usadas por várias organizações ou vários grupos em uma grande empresa.

Um modelo para análise orientada por APIs
Em uma solução de análise orientada por APIs pronta para uso, podemos instrumentar ferramentas de gerenciamento de APIs em vez de instrumentar cada sistema ou subsistema em toda a empresa. Os dados coletados ao instrumentar todas as atividades da API podem fornecer informações suficientes para analisar e obter uma compreensão rica da organização e de seu funcionamento interno. Além disso, a atualização dos recursos de análise pode ser obtida com a atualização do software de gerenciamento de APIs - um sistema gerenciado por um único grupo, em vez de envolver vários sistemas e equipes na organização.

A figura a seguir mostra um plano de alto nível de uma solução de análise orientada por APIs que é colocada em camadas no topo do gerenciamento de APIs.

análise conduzida por API

Na abordagem ilustrada aqui, os dados coletados na camada da API incluiriam informações sobre o seguinte:

- A solicitação e a resposta, incluindo registros de data e hora, cabeçalhos, mensagem completa, tamanho da mensagem e URL do caminho da solicitação

- A chamada, o endereço IP, o nome de usuário e o agente do usuário

- Processamento, incluindo o tempo iniciado, o tempo final, o resultado, os erros, o nome da API, o nome do host e o protocolo

Apenas usando as informações acima, o sistema de análise pode criar uma imagem detalhada de quais usuários estão chamando quais APIs, de onde e quando. Essa visão pode ser analisada para entender a jornada do cliente, por exemplo, entender quais atividades levaram o cliente a comprar e entender as cargas recebidas por uma API.

No entanto, as visualizações listadas acima serão muito técnicas para muitos usuários sem mais um nível de mapeamento para os conceitos de negócios. A seguir, alguns exemplos desses mapeamentos:

- Além de saber quantas solicitações são recebidas, seria útil conhecer os fluxos de dinheiro relacionados a cada solicitação.

- Além de saber apenas o nome da API, seria útil saber a qual unidade de negócios a API pertence e o custo médio para atender a uma solicitação.

- Além de saber o nome do cliente, seria útil incluir informações demográficas do cliente e dividir e dividir os dados com base em informações demográficas.

Em suma, para fornecer mais insights em nível de negócio, a camada de coleta de dados precisa ir além do óbvio e coletar informações adicionais. Vamos explorar duas técnicas para realizar isso.

A primeira técnica é anotar a definição da API com informações sobre quais dados interessantes estão disponíveis no conteúdo da mensagem. Isso permite que a camada de coleta de dados extraia automaticamente essas informações e as envie para o sistema analítico. A maioria das mensagens usa XML ou XPath, e instruções para extrair informações podem ser fornecidas como expressões XPath ou JSON XPath.

A segunda técnica é anotar as definições da API com detalhes sobre conjuntos de dados que podem ser associados aos dados coletados para permitir processamento adicional. Por exemplo, um conjunto de dados pode fornecer dados demográficos de clientes que podem ser unidos em relação a nomes de clientes ou outras informações, como a unidade de negócios à qual a API pertence e o custo médio para atender a uma solicitação.

Como mencionado anteriormente, todos os dados são coletados através de uma camada lógica, portanto, o formato dos dados é conhecido. Portanto, uma equipe de cientistas de dados qualificados poderia criar análises complexas que cubram a maioria dos casos de uso comum. Por exemplo:

- A análise detalhada de contribuição de receita e custo por diferentes unidades de negócios, APIs, atividades de negócios, diferentes segmentos de clientes e geografias de forma contínua.

- A análise de tendências e previsão de fluxos de entrada e saída de dinheiro com base em tendências e dados históricos.

- A análise de jornada do cliente que explora como o canal de vendas é convertido para os clientes e quais atividades têm maior probabilidade de gerar conversões.

- Detecção de fraude com base nas atividades gerais, bem como clientes individuais, quando eles se desviam do comportamento normal.

A implementação dessas soluções permitiria que as empresas concentrassem seus recursos - investissem seu tempo e conhecimento na entrega das melhores ofertas e experiências - em vez de redescobrir as análises e construí-las a partir do zero. A análise turnkey não abrange todos os casos de uso, mas eles podem agregar valor imediatamente reconhecido desde o primeiro dia. Com os principais casos de uso abordados, as equipes podem criar seus próprios aplicativos de análise sobre os dados coletados para lidar com casos de borda. Por fim, as próprias APIs podem acionar ações com o suporte da solução pronta para uso.

A solução proposta descrita aqui poderia ser construída sobre as soluções de análise existentes, como sistemas MapReduce, estruturas de Machine Learning e processadores de fluxo. Em vez de substituir essas tecnologias, a solução trabalharia com elas para definir formatos de dados, fornecer mecanismos de coleta de dados prontos para uso e fornecer aplicativos analíticos prontos para uso que funcionam desde o primeiro dia.

API

Desafios da análise orientada por APIs
A abordagem analítica orientada por APIs apresentada neste artigo não é isenta de desafios.

O primeiro desafio é adicionar anotações às definições das APIs que descrevem como extrair informações interessantes das mensagens como parte da experiência de desenvolvimento de cada API. É importante tornar este passo tão indolor quanto possível. Conseguir isso pode incluir o fornecimento de ferramentas para explorar as mensagens, selecionar uma determinada área para extração e até sugerir pontos de dados importantes a serem extraídos.

O segundo desafio é implementar etapas de extração de dados e coleta de dados com eficiência nos gateways da API que atuariam como proxies entre clientes e implementações de serviço. Como eles estão no caminho crítico de todas as invocações da API, implementações abaixo do ideal poderiam afetar drasticamente o desempenho.

O terceiro desafio é identificar e implementar soluções analíticas comuns que podem ser criadas com base nos dados coletados das chamadas da API. Isso inclui descobrir os melhores algoritmos, bem como a melhor maneira de representar os dados e as melhores experiências do usuário. Este é um problema difícil. No entanto, em comparação com o status quo, em que cada organização ou unidade de negócios precisa descobrir suas próprias análises, a abordagem proposta permite o desenvolvimento de soluções reutilizáveis ​​para cenários analíticos. 

As APIs servem como um portal que mostra como uma organização funciona, fornecendo informações sobre as operações, interações e detalhes da unidade de negócios da empresa, entre outras percepções. Isso representa uma oportunidade para instrumentar ferramentas de gerenciamento de APIs para coletar dados em vez de instrumentar toda a empresa.



Reportagens mais lidas

Acesse a comunidade da CIO

LinkedIn
A partir da comunidade no LinkedIn, a CIO promove a troca de informações entre os líderes de TI. Acesse aqui