Pontos Principais
- A adoção de tecnologias Big Data e Data Science por uma organização é um projeto de transformação similar à transformação necessário para adoção de uma abordagem ágil, e com muitos desafios em comum.
- O uso de uma abordagem ágil funciona bem ao realizar uma transformação de negócios deste tipo desde que você tenha suporte da liderança sênior e inclua as partes interessadas relevantes.
- Concentre-se em resultados de negócio estratégicos e nas novas capacidades que sua organização precisa antes de falar sobre opções de tecnologia. Deixe todas as partes interessadas relevantes ter uma voz para priorizar estas capacidades e colaborar em escolhas tecnológicas subseqüentes.
- Evite arriscar com o uso tecnologias que não consigam acompanhar as mudanças de requisitos e busque obter mais do que simples benefícios incrementais.
- Seja consciente sobre a tensão existente entre a demanda pela disponibilidade dos dados para análise e a necessidade de manter a segurança das informações. A percepção também é importante nas questões relacionadas à segurança e requer consideração adicional além de conformidade com padrões estabelecidos.
As empresas vêm cada vez mais adotando tecnologias de Data Science e análise de dados (analytics). Isto vem influenciando seus produtos, serviços e tomada de decisões de forma crescente. Este contexto apresenta, com regularidade, o questionamento sobre qual é o melhor conjunto de ferramentas para Data Science. Superficialmente, esta questão parece estar associada a comparações tecnológicas e você pode acabar revisando uma longa lista de prós e contras sobre R, Spark ML e tecnologias relacionadas como Jupyter ou Zeppelin. De fato, poderíamos escrever toda uma série sobre comparações tecnológicas. Entretanto, para uma empresa, esta é, antes de mais nada, uma questão sobre quais recursos suportarão seus objetivos de negócios. Concentrar-se neles torna as escolhas tecnológicas mais fáceis, reduzindo o risco de desperdiçar tempo e esforço.
Como podemos chegar a uma estrutura para abordar o questionamento sobre como selecionar tecnologias de uma maneira pragmática e produtiva? Neste artigo exploramos uma possível estrutura com um exemplo do mundo real. Um ponto de partida típico para muitas organizações é um número exagerado de silos e uma infinidade de tecnologias adotadas. Você não quer adicionar mais silos e tecnologia apenas porque as partes interessadas pedem por isso. Novas tecnologias e novas estratégias para infra-estrutura devem substituir tecnologias existentes e desmembrar os silos. Mas isso não é trivial em um ambiente no qual os fornecedores de ferramentas de análise e inteligência de negócios tradicionais afirmam ter a resposta para os novos desafios e uma inundação de novas tecnologias. Muitas delas, de código aberto, adicionam ainda mais opções. Os representantes das novas tecnologias geralmente afirmam poder substituir as ferramentas tradicionais e trazer capacidades além do alcance destas. Os representantes das tecnologias tradicionais contestam, afirmando que oferecem melhores qualidades para as empresas como segurança e suporte.
O cliente do mundo real que será abordado nesse texto, abordou meu empregador há um ano atrás com um tremendo desafio que consistia em requisitos estratégicos imediatos e de longo prazo. Esta empresa, participante de um índice de 100 ações representativas da bolsa de Londres (FTSE100), estava em um momento transformador de sua vida. Ela estava mudando sua estrutura organizacional de forma significativa e precisava reinventar partes de sua plataforma atual por causa da fragmentação introduzida no passado e de dependências que não eram sustentáveis e não ofereciam valor de negócio. O pedido urgente que recebemos foi para endereçar necessidades de negócio em relatórios avançados e análise básicas para uma nova plataforma que se baseasse em dados históricos de forma totalmente transparente e com um prazo de entrega agressivo. A tecnologia de data warehouse existente, baseada em appliances, era dispendiosa e limitante. Novos relatórios e análises avançadas apresentavam desempenho muito ruim o que tornava seu processamento inviável ou eram impossíveis de executar sem o investimento de grandes somas, além de não adicionar novas capacidades futuras de análise.
O custo e as limitações eram grandes preocupações. O cliente reconheceu que o valor de longo prazo derivado de suas principais atividades de negócio iriam, inevitavelmente, encolher com o mercado aumentando sua competitividade a partir de mudanças tecnológicas disruptivas no horizonte. Os líderes da organização perceberam que novas capacidades eram necessárias para preparar o negócio para o futuro imediatamente após abordar o requisito urgente.
Trabalhamos com as principais partes interessadas e desenvolvemos um plano para agrupar em um local centralizado os principais conjuntos de dados, com total flexibilidade para processar e analisar seu conteúdo no futuro para a próxima evolução do negócio. Vale ressaltar que o data warehouse principal não foi abandonado mas meramente reduzido ao seu papel originalmente proposto. Ainda assim, inúmeros sistemas legados, que na sua maioria possuem dados e só podem ser consultados com dificuldade, foram colocados no planejamento para serem eliminados ou substituídos. Ao mesmo tempo, foi dada grande atenção para assegurar que os dados fluíssem corretamente através das diferentes plataformas, respeitando as diretrizes de governança e segurança.
O plano diferiu os detalhes nas questões avançadas de tecnologias Data Science e de análise de dados. Isto foi possível porque a nova plataforma pode adotar a maioria dos detalhes relevantes, conforme necessário e quando necessário. O benefício desta abordagem para o cliente foi significativo! Os detalhes dos futuros requisitos de negócios ainda estavam evoluindo enquanto uma necessidade imediata de negócios exigia ação. Dividir a tomada de decisões e a implementação em uma abordagem baseada em fases sem bloquear as futuras vias de inovação no lado da plataforma ofereceu o melhor dos dois mundos.
A primeira lição aqui é evitar apostar e arriscar em uma tecnologia que não consiga acompanhar as mudanças de requisitos. Além disso, é importante não fazer uma combinação única de tecnologias, ou seja, não apenas substituir uma tecnologia por uma nova e similar, que apenas ofereça pequenos benefícios. Pense no conjunto de tecnologias como um custo para o negócio e uma coleção de capacidades em troca. Queremos reduzir o custo com menos e mais baratas tecnologias ou obter mais capacidades necessárias para o negócio. Idealmente, nós entregamos ambos. No nosso exemplo, uma combinação de eliminação progressiva dos sistemas legados e redução da dimensão do armazém de dados trouxe economias que podem ser usadas para a nova plataforma de análise que, por sua vez, substitui algumas das capacidades e adiciona novas relevantes.
Com isso em mente, podemos nos concentrar no que estamos tentando alcançar. As empresas de hoje têm os mesmos desafios que as de ontem. Elas têm que reduzir o custo, melhorar a lucratividade, evoluir para se manterem compatíveis com o mercado e regulações, e talvez também precisem redefinir seus principais negócios em um mundo em mudança, impulsionado pela automação e comoditização de serviços, por exemplo. O que mudou nos últimos anos é que os dados e o seu uso de maneira produtiva estão se tornando a oportunidade fundamental para responder a estes desafios.
O problema é que a maioria das organizações não sabe o que molda essas respostas ou mesmo quais perguntas fazer. Algumas óbvias oportunidades de curto prazo geralmente estão disponíveis nas gavetas de várias áreas de negócios, e tais oportunidades assumem uma leve melhoria em relação ao status quo. A maioria das partes interessadas tornou-se tão acostumada à sua limitação que elas precisam de incentivo para sonhar um pouco. Quando perguntado o que elas gostariam de alcançar, elas pensam dentro das restrições das capacidades existentes de sua organização ou pedem que a lua atenda aos requisitos desconhecidos do futuro.
Assim, o atingimento dos requisitos fundamentais de longo prazo, algumas vezes com o negócio principal se reinventando, frequentemente é uma tarefa difícil ou mesmo impossível de ser realizada. A segunda lição, portanto, não era apontar para a lua, mas permanecer flexível para os requisitos emergentes em vez de tentar prever o futuro. No nosso exemplo, demonstramos que deixamos espaço para expandir iterativamente a plataforma no futuro sem restringir as opções ou ter que fazer retrabalho. Nós fizemos isso planejando várias etapas do desenvolvimento que mostraram a opção de adicionar um conjunto rico de recursos, como o processamento de fluxos (streams) ou processamento de conjuntos de dados do tipo chave-valor, para citar somente dois de muitos exemplos.
Entretanto, existe aqui um risco se nos tornarmos totalmente orientados a tecnologia e substituirmos a posterior reflexão interna e a coleta de requisitos com a expectativa de adicionar todas as capacidades e tecnologias. Podemos acabar por adotar tecnologias sem um propósito de negócio ou valor criando enormes custos e complexidade, ou pior ainda, falhar completamente. O burburinho em torno de Big Data e Data Science levou as partes interessadas a cair na armadilha de hype nesta situação. Eles acreditaram que a adoção de tecnologia poderia solucionar falhas nos objetivos, capacidades e requisitos do negócio. É crucial que as partes interessadas façam as perguntas certas de Big Data e Data Science para evitar confusão e desapontamento. Estas questões incluem metas e requisitos de negócios estratégicos específicos, que são pré-requisitos. Embora os objetivos estratégicos tenham que ser claros desde o início, os requisitos podem ser obtidos iterativamente ao longo do tempo, como no nosso exemplo.
Uma organização pode avaliar suas atuais capacidades, identificar capacidades necessárias e adotar novas capacidades em torno do armazenamento, processamento e análise de dados com uma correta estratégia de Big Data. De fato, essa agilidade é a base de empresas modernas baseadas em dados que permitem que elas funcionem em um cenário tecnológico de rápida evolução. Data Science aproveita as capacidades fornecidas por uma organização flexível que avalia e adota essas tecnologias. Data Science oferece em seguida uma profunda visão e soluções adaptativas para os desafios crescentes que vêm da tecnologia, por exemplo: dados em maior volume, mais rápidos e em maior diversidade, enquanto ao mesmo tempo a expectativa sobre o uso de dados para direcionar produtos, serviços, insights e decisões está crescendo sem limites.
Em nosso exemplo, a abordagem tradicional de data warehouse foi desafiada, sendo a primeira tarefa não suficientemente flexível para atender a necessidades futuras desconhecidas. A solução também não foi trivial, uma vez que este negócio em particular opera no setor financeiro com dados confidenciais e está altamente regulamentado. Mas o negócio precisa gerar uma visão profunda e para isso deve oferecer acesso a muitos cientistas de dados e usuários de negócio. Esta tensão existe na maioria das organizações, ou seja, disponibilizar todos os dados a todos os consumidores possíveis e, ao mesmo tempo, oferecer segurança e garantir que nenhum dado possa ser abusado ou vazado.
Com o governo, os clientes da área de saúde e de finanças, estes desafios também devem passar no "teste da primeira página", isto é, questões de segurança de dados, percebidas ou reais, podem levar a cobertura de notícias desastrosas. Portanto, a segurança é tanto uma questão de segurança real como também uma questão de percepção. Curiosamente, essa é uma razão pela qual muitos clientes hesitam sobre a nuvem (cloud), onde percepção e realidade divergem cada vez mais com a melhoria das opções de segurança. A conformidade pode ser um problema para algumas empresas (por exemplo: onde armazenar os dados) e os provedores de nuvem estão cada vez mais fornecendo presença em zonas regulatórias para atender a estas necessidades.
Para o nosso cliente, que escolheu uma solução hospedada em infra-estrutura própria, descrevemos os principais recursos necessários para os casos de uso imediato e criamos uma plataforma que pode ser ampliada com flexibilidade para o futuro. O primeiro objetivo foi construir uma plataforma usando o Hadoop e seu ecossistema no núcleo para ingestão de dados novos e legados, protegê-lo com máscaras e criptografia e, em seguida, gerar relatórios sobre esta plataforma. As ferramentas de análise necessárias foram decisões básicas e diretas em sua maioria utilizando interfaces SQL no ecossistema Hadoop para ferramentas legadas e usando o Apache Hive. O Apache Hive foi a primeira escolha, uma vez que é parte integrante da distribuição escolhida, é estável, tem rica cobertura de SQL, é acessível através de conexões padrão de sistemas legados e integra-se firmemente com o modelo de segurança da distribuição. Além disso, o desempenho necessário na primeira fase foi mais relevante ao lidar com pequenos e grandes lotes de dados para relatórios e análises.
A construção e integração da plataforma, bem como a conformidade com o PCI, foram os principais desafios nesta fase. Por causa do prazo apertado, o trabalho teve que começar imediatamente e todas as partes interessadas estavam felizes em "falhar rapidamente" com a implementação de provas de conceito de elementos chave da plataforma para encontrar bloqueios organizacionais e limitações tecnológicas com rapidez. Naturalmente, o fracasso rápido só é benéfico se os problemas descobertos forem abordados. Portanto, o trabalho foi acompanhado de workshops sempre que atingimos um marco ou falhamos neste processo, ou seja, sempre que aprendemos algo, para trazer novas partes interessadas do negócio e tecnologia para resolver problemas ou planejar os próximos passos.
Esta abordagem é eficaz com o apoio de liderança sênior, embora também seja difícil às vezes. Os processos e tecnologias existentes, bem como os fornecedores estabelecidos, podem precisar ser avaliados como parte da solução. As vezes, isso leva a conversas difíceis com vendedores e parceiros de negócios que precisam gerenciar o fracasso de forma honesta quando algum deles não consegue atender as expectativas. Os profissionais sêniores das partes interessadas precisam ter força para ter uma visão estratégica e enfrentar algumas questões, uma vez que estar na vanguarda do desenvolvimento direcionado pelos dados também significa ser um dos poucos a descobrir o que não funciona. Isso só é possível com uma abordagem construtiva e colaborativa e aqui a combinação de workshops para envolver as partes interessadas e ouvir suas necessidades e processos, com a capacidade de iterar em ambientes de prova de conceito para estabelecer caminhos viáveis e inviáveis foi essencial e nos permitiu progredir rapidamente com o trabalho.
Um bom exemplo de falhar rapidamente foi a escolha de ferramentas para criptografar e mascarar dados confidenciais. Uma proeminente empresa do mercado ofereceu sua solução e foi inflexível ao afirmar que seus casos de uso de finanças relevantes estabelecidos os tornavam a primeira escolha para avaliação. Ocorre que descobrimos que o mercado tinha se afastado deles e que as novas habilidades do ecossistema Hadoop, como a criptografia transparente de dados em combinação com um verdadeiro paradigma multi-tenancy, eram mudanças muito grandes para eles adaptarem à sua abordagem de produtos e segurança. A capacidade de falhar rapidamente e trazer outros fornecedores dentro do ambiente de prova de conceito significou que o atraso incorrido foi gerenciável e o trabalho progrediu com outro fornecedor após outra rodada de avaliações.
À medida que a conclusão da primeira fase do trabalho se aproximava, a demanda aumentou para o acesso à plataforma, aos dados e à adição de ferramentas para apoiar os cientistas de dados e analistas de negócios avançados em toda a organização. Os desejos variaram de análises exploratórias e relatórios avançados em tempo real para aplicações e produtos inteligentes. Essas necessidades exigem muitos recursos e ferramentas. Além disso, muitos cientistas de dados têm diferentes preferências de ferramentas, incluindo R, Python (scikit-learn), Spark ML (com Python, Scala ou Java), várias soluções comerciais além de notebooks como Jupyter ou Zeppelin. Juntos, os muitos requisitos e preferências, que muitas vezes ainda são pouco claros e preliminares, devem ser acompanhados das ferramentas que os atendam. Nós também precisamos ter em mente os aspectos freqüentemente ignorados de governança, segurança, continuidade de negócios, desenvolvimento e ciclo de vida de software e dados, bem como os aspectos de custo, complexidade e risco. Em resumo, a organização pode se tornar algo que pode inovar continuamente de forma oportuna e lucrativa com risco mínimo ou se afogará nas tecnologias?
Muita flexibilidade para inovar e a adoção massiva de tecnologias vão introduzir riscos e paralisar a organização. Os dados podem vazar ou diminuir em qualidade, por falta de governança ou segurança inadequada. Os recursos podem ser um problema quando muitas tecnologias precisam ser suportadas e a integração torna-se incontrolável. Por outro lado, escolhas de tecnologia minimalistas com apenas o aspecto de segurança em mente vão prejudicar a inovação na organização, ocorrerá a fuga de talentos, a perda de capacidades e a organização se verá incapaz de reagir a novas oportunidades e riscos. E a idéia ortogonal de um longo processo no modelo cascata para planejar a solução perfeita tem pouco mérito em uma situação de inovação onde os requisitos não podem ser reunidos e as capacidades tecnológicas continuam a mudar.
Quando visualizamos a organização corretamente, como uma entidade que tem um conjunto limitado de recursos e que visa obter o máximo de capacidades relevantes destes recursos, uma abordagem ágil torna-se a melhor alternativa. A estrutura para este desenvolvimento é semelhante aos workshops que usamos para avaliar escolhas de tecnologia e resolver problemas ao longo do caminho de desenvolvimento e construção da plataforma. Podemos reunir as vários partes interessadas de Data Science e análise de dados das unidades de negócio relevantes para discutir a situação. Quais são os casos de uso bem entendidos, sua prioridade e impacto para a organização? Quais são os recursos necessários para implementá-los? E quais idéias futuras inovadoras não foram tão bem compreendidas e que capacidades potencialmente necessárias elas demandam? A questão das tecnologias vem como uma segunda parte. Quais são as preferências de tecnologia e habilidades existentes em suas equipes? Quais são os requisitos do ciclo de vida do desenvolvimento das várias solicitações e padrões organizacionais que precisam ser satisfeitos? Idealmente, a última questão é apoiada por partes interessadas de unidades como segurança, infra-estrutura, operações e desenvolvimento de software.
Nosso cliente estava avançado e já tinha uma independência significativa por causa de importantes líderes seniores que são grandes especialistas em Big Data e análise de dados. No entanto, eles apreciaram o apoio externo, orientação independente e avaliação de especialistas que também faziam parte do desenvolvimento da plataforma e do futuro trabalho de análise. Para consultores, este é o resultado do sonho que acontece quando os clientes o aceitam como uma autoridade independente e um conselheiro confiável. Juntos, executamos um workshop em preparação para o trabalho de Data Science. Nós coletamos as informações e já durante o workshop conseguimos priorizar o trabalho em todas as unidades de negócios e excluímos candidatos tecnológicos inadequados.
O benefício do exercício é imediato. Todas as partes interessadas se conhecem, conhecem seus desejos e preferências, o que por si só já é valioso. Além disso, conseguimos identificar um componente significativo, um serviço de decisão baseado no processamento de fluxos de dados em tempo próximo ao tempo real, que poderia servir todos os envolvidos, ou seja, todos tinham um caso de uso que exigia tal serviço. Conseguimos evitar o desenvolvimento paralelo bem como priorizá-lo como um projeto piloto. Em uma situação não gerenciada, poderíamos ter acabado com múltiplas variações do serviço usando diferentes tecnologias desenvolvidas por várias unidades de negócios. Desta forma, conseguimos consolidar esforços e opções de ferramentas.
Nosso próximo passo foi selecionar o primeiro conjunto de tecnologias a serem adicionadas à plataforma para o trabalho de Data Science, em particular, Spark com ML, Java, Python e Kafka para processamento de fluxos de dados. Estas ferramentas trazem as capacidades necessárias para o caso de uso em mãos e também abrangem alguns dos casos de uso futuros e secundários. A escolha foi feita após a discussão e seleção de tecnologias candidatas em um workshop, e adição de aspectos operacionais e organizacionais. Por exemplo, precisávamos determinar quais tecnologias são líderes de mercado com ampla capacidade de suporte, maturidade e disponibilidade de profissionais no mercado. A última consideração foi um fator influente na escolha de Java ao invés de Scala nesta fase.
Um aspecto importante é não descartar quaisquer opções e envolver as partes interessadas em discussões construtivas. Mesmo quando as opções parecem improváveis, podemos despriorizá-las com essa estratégia.
Estamos prestes a nos envolver no desenvolvimento do serviço agora. O benefício futuro é que ele traz uma variedade de tecnologias e suas capacidades para a organização. Elas são imediatamente avaliadas em projetos críticos de negócios por suas habilidades não funcionais, por exemplo, segurança, confiabilidade e desempenho. Além disso, quando validadas, provavelmente serão adotadas pelas partes interessadas da empresa porque funcionam e estão disponíveis. Isso reduz a demanda por opções alternativas sobrepostas. Com uma boa seleção e um sucesso demonstrado, o desejo de adotar continuamente mais tecnologias diminui, e o gosto pelas soluções comprovadas e disponíveis em questão se torna generalizado.
O plano é continuar com a estrutura e solicitar feedback das partes interessadas e usuários para futura avaliação e adoção de tecnologias onde as capacidades existentes não desempenham um bom papel. Os workshops subsequentes naturalmente passarão de amplas discussões de adoção para conversas de manutenção e, eventualmente, para conversas em que discutiremos a eliminação progressiva das tecnologias à medida que o mercado continue a se desenvolver.
Sobre o autor
O Dr Christian Prokopp é o líder internacional da equipe de práticas de engenharia na Think Big, uma empresa do grupo Teradata, trabalhando com arquitetos, engenheiros de sistemas, de software e de dados para construir uma comunidade global de melhores práticas de engenharia e consultoria em Big Data. Christian trabalhou no passado como engenheiro de software, cientista de dados, arquiteto, consultor e gerente. Ele também escreveu e realizou palestras sobre Big Data. Ele fez parte de duas empresas que foram posteriormente saídas de sucesso, incluindo uma com o Google. Em seu tempo livre, Christian compete com sua esposa e filha sobre quem irá visitar todos os países do mundo primeiro.