5 Abril 2018

Is COBOL still alive?

Este artigo irá abordar o COBOL e mainframe, explicando as suas definições, distinções, aplicações, bem como a sua relevância em áreas importantes como o setor financeiro e o Regulamento Geral de Proteção de Dados (GDPR).

Transações comerciais e operações financeiras

A maioria das transações comercias realizadas no dia-a-dia assumem um papel relevante no quotidiano da maioria das pessoas, levantar dinheiro no ATM, tirar ou consultar o extrato bancário, reservar um voo ou mesmo efetuar uma compra online são bons exemplos disso.

COBOL mainframe financeiro BI4ALL business intelligence

 

É estimado que a cada segundo nos Estados Unidos são realizadas compras com cartão de crédito no valor de 4.7 milhões de dólares, num só tipo de transação comercial.

Por segundo, em todo o mundo, são realizadas 1.1 milhões de transações, mais do que as 60 mil pesquisas realizadas por segundo no Google. Representa uma média de 50 a 60 mil milhões de operações por dia executadas e armazenadas.

COBOL mainframe financeiro BI4ALL business intelligence

 

As empresas que guardam esta informação mostraram sempre uma crescente preocupação na operacionalidade dos dados, adotando medidas adicionais quer na segurança quer acessibilidade, por se tratar de informação bastante sensível.

E onde são guardados a maioria dos dados?

Onde estarão guardados os descontos da segurança social de um beneficiário? Onde poderá estar guardado o saldo bancário dos clientes de um Banco? E os impostos descontados pelos contribuintes? Onde ficaram registadas as declarações de IRS submetidas este ano via internet? A reserva de um voo? Os movimentos dos cartões de crédito?

COBOL mainframe financeiro BI4ALL business intelligence

 

Que tecnologia poderá estar na maior parte da gestão e armazenamento de todas estas operações? Quem na realidade é o maior orquestrador de todas estas tarefas? Quem nos bastidores assume uma grande parte deste papel?

O Front-end das aplicações

Tendencialmente, as aplicações são visualmente mais apelativas e mais simples de utilizar, recorrendo a tecnologias de ponta para o efeito com ganhos significativos quer para o utilizador quer para quem as desenvolve.

Cada vez mais as empresas têm feito um forte investimento na imagem das aplicações, sendo dado uma grande relevância ao front-end das aplicações sobretudo para a internet, na construção de sites, na captação dos dados, no aspeto e na usabilidade em diversas plataformas ou canais.

As melhorias são significativas comparativamente ao que se fazia há uns anos, hoje já não é necessário um manual de instruções para fazer uma compra online, está tudo à distância de um clique, tudo feito para agilizar o processo de compra e venda.

E o back-end? Que progressos foram feitos para suportar toda esta evolução? Que investimentos foram feitos para suportar este aumento significativo da informação diária, o crescente número de aplicações e canais de acesso? Que avanços se fizeram para gerir e guardar toda esta informação?

Se todos os dias nascem novas aplicações e o número de canais aumenta, a informação que é necessária processar e guardar aumenta de uma forma exponencial.

Isto leva-nos novamente à pergunta inicial, que tecnologia poderá assegurar um processamento e o armazenamento de um volume tão grande de informação, tão sensível e em tão curto espaço de tempo? Que sistema nos pode dar tanta confiabilidade, estabilidade e segurança?

A base do mercado financeiro

Na verdade, os últimos estudos continuam a apontar o mainframe da IBM como o grande pilar da maioria das operações do mercado financeiro.

Dos 100 maiores Bancos do mundo, 92 continuam a utilizar o Mainframe, 87% das transações com cartões de crédito são realizadas por esta tecnologia, 29 biliões de transações ATM e 4 biliões de voos de passageiros por ano são efetuados por este sistema.

Embora continue a ser referido como uma tecnologia obsoleta que remonta aos anos 50 e com tendência para acabar, é utilizado pela maioria das grandes empresas mundiais.
Mesmo com data marcada para o seu óbito, o mainframe teima em ficar!

No início dos anos 90, a revista InfoWorld anuncia a morte do velhinho Mainframe através do Stewart Alsop, um analista de mercado conceituado, que era editor e vice-presidente desta revista.

I predict that the last mainframe will be unplugged on March 15, 1996″

 

A profecia teve um impacto tão grande, que algumas empresas se apressaram a desligar o seu Mainframe, para não ficarem agarradas a uma tecnologia obsoleta.

Esta é das previsões mais citadas em apresentações sobre mainframe. Este sistema sobreviveu e a última edição da revista foi datada a 2 de abril de 2007. Hoje está acessível na internet.

Mas na realidade o que é um Mainframe?

Um mainframe é um computador que está na categoria dos computadores de grande porte, são computadores especificamente desenhados para processar e guardar grandes volumes de informação.

Um mainframe é diferente de um supercomputador, embora ambos partilhem semelhanças e características, como os altos níveis de performance. Contudo, foram construídos com propósitos diferentes.

Diferença entre um mainframe e um supercomputador

A maior diferença é que o supercomputador foi pensado para realizar cálculos complexos, ao passo que o mainframe foi desenhado para executar muitas tarefas num espaço curto de tempo.

Recorrendo ao mundo dos jogos, fica mais clara a diferença. O supercomputador seria o computador mais adequado para resolver um jogo de xadrez, um puzzle ou um Sudoku, já o mainframe seria o computador ideal para gerir o FarmVille.

Os mainframes possuem um papel fundamental nas operações diárias das maiores empresas do mundo, e são a base do negócio moderno pois estão posicionados nos principais sectores corporativos tais como a Banca, Seguros, Serviços Públicos, Aviação, Saúde e no Comércio eletrónico.

Grande parte dos sites mais movimentados do mundo utilizam o mainframe.

Estima-se que um utilizador diário de telemóvel que realize cerca de 37 transações diárias, 91% das suas apps comunicam-se via mainframe.

Ironically, the more mobile you are, the more you interact with a mainframe.

 

E os mainframes são muito antigos?

Os mais antigos nasceram nos anos 50, as marcas que iniciaram a construção destas máquinas e desenvolvimento de software para as mesmas foram a IBM, Unisys, NEC, Fujitsu e Hitachi.

Desde os anos 50 que estas marcas têm introduzido significantes melhorias quer no hardware quer no software destas máquinas.

O sistema operativo utilizado no mainframe varia conforme o fabricante, a maior parte dos mainframes utiliza o sistema operativo Z/OS da IBM ou variantes do Unix e Linux.

O mais utilizado continua a ser o mainframe da IBM, está presente há muitos anos nos mais importantes sectores de mercado da nossa sociedade.

COBOL mainframe financeiro BI4ALL business intelligence

 

Os primeiros mainframes utilizavam um sistema central onde só se conseguia aceder ao sistema através de um terminal.

O avanço nas comunicações e internet empurrou o mainframe para um sistema distribuído. O acesso ao sistema tornou-se possível a partir de qualquer lado, mesmo através da internet.

COBOL mainframe financeiro BI4ALL business intelligence

 

 “A sua popularidade e longevidade deve-se à confiabilidade e estabilidade destes sistemas, resultado de avanços tecnológicos cuidadosos e constantes…”

 

“Não há outra arquitetura que possa reivindicar tanta contínua melhoria evolutiva mantendo a compatibilidade com versões anteriores” 

 

Um dos grandes trunfos deste sistema é que versões mais antigas dos programas correm sem problemas num mainframe mais atual, assim, se executarmos um programa desenvolvido nos anos 60 num mainframe atual, o programa é executado sem erros.

As sucessivas versões do sistema foram evoluindo, mantendo sempre a compatibilidade com versões de programas mais antigos.

Nova geração de mainframes

Hoje, os mainframes são menores e mais ágeis do que eram décadas atrás, o seu tamanho é pouco mais do que o tamanho de um frigorifico e, tal como o tamanho, o preço também diminui consideravelmente.

COBOL mainframe financeiro BI4ALL business intelligence

 

O mainframe continua a fazer história, em julho deste ano a IBM lança o Z14.

Proteção e segurança dos dados

As novas exigências de regulamentação da informação e o cibercrime estão a mudar o paradigma das empresas, hoje a perspetiva com que as empresas olham para os seus dados mudou.

Este novo paradigma fez aumentar a corrida das empresas à proteção e segurança dos dados, aumentado significativamente o investimento nesta área.

COBOL mainframe financeiro BI4ALL business intelligence

 

O problema global da epidemia de violação de dados provocado pelo cibercrime tem aumentado cada vez mais, prevendo-se que esta epidemia irá afetar cerca de 8 biliões de dólares na economia global até 2022.

Dos mais de 9 biliões de dados perdidos ou roubados desde 2013, apenas 4% foram criptografados, o que faz com que a maioria desta informação esteja vulnerável ao cibercrime.

COBOL mainframe financeiro BI4ALL business intelligence

 

Recorrendo a hardware criptográfico especializado, surge o uso do mecanismo de Pervasive encryption, mecanismo este que representa uma das ofertas de hardware mais seguras disponíveis no mercado.

O mais recente mainframe tem a capacidade de executar 2 biliões de transações criptografadas por dia, esta máquina tem um poder operacional 35% maior do que o seu antecessor.

A avançada capacidade criptográfica deste sistema não está só nos dados, também se estende às redes, dispositivos externos e aplicações.

Serviços na Cloud

O Z14 também vai estar disponível na Cloud, aproveitando o avançado mecanismo de hardware criptográfico fornecido por este sistema, a IBM lança pela primeira vez um serviço de criptografia na cloud 24x7.

COBOL mainframe financeiro BI4ALL business intelligence

 

O que está dentro da infra-estrutura do z14?

Segundo a IBM, a 14ª geração da tecnologia mainframe tem os microprocessadores mais rápidos da indústria 5.2GHz.

Uma nova estrutura de sistema escalável que permite um aumento de 35% na capacidade de cargas de trabalho em Linux em comparação com a geração anterior z13.

COBOL mainframe financeiro BI4ALL business intelligence

 

• Mais de 12 biliões de transações criptografadas por dia num só sistema.
• A maior instância do mundo de MongoDB com 2,5 vezes mais velocidade de desempenho NodeJS que as plataformas x86.
• 2 milhões de Docker Containers.
• 1000 bases de dados NoSQL concorrentes.
• Três vezes mais memória que o antecessor, oferece um tempo de resposta mais rápido, maior produtividade e um maior desempenho na análise dos dados. Com 32TB de memória, é o sistema com mais memória do mercado.
• Triplo da velocidade I/O, processamento mais rápido de transações em comparação ao z13 no aumento dos dados, maior produtividade de transações e menor tempo de resposta.
• Capacidade de executar cargas de trabalho Java 50% mais rápido que as alternativas x86.
• É líder no tempo de resposta em Storage Area Network, com o zHyperLink
• Permite a realização de maiores cargas de trabalho quer em análise de dados quer em tempo real. Permite também a interação com dispositivos de Internet of Things (IoT) e aplicações da cloud, sem ser necessário código.

Todas estas melhorias do sistema são uma indicação clara de que a IBM quer atrair novos clientes para o Mainframe com o Z14 e manter os que já tem.

E o que é o COBOL?

COBOL (Common Business Oriented Language) é uma linguagem de programação orientada ao negócio, isto é, ao processamento de transações comerciais e financeiras.

O COBOL é uma das linguagens de programação mais utilizadas nos mainframes e está na base da maior parte dos programas executados em operações financeiras. Os números comprovam este facto, pois cerca de 70 a 80% de todas as transações comerciais no mundo estão desenvolvidas em COBOL.

COBOL mainframe financeiro BI4ALL business intelligence

 

Existe uma opinião formada e muito generalizada de que o COBOL já não existe, também existe outra corrente de opiniões que acham que o COBOL existe, mas tal como o Mainframe, tem os dias contados.

Nasceu 10 anos antes do homem ir à lua, sobreviveu à correria louca da passagem do milénio, e quase a fazer 60 anos, silenciosamente teima em ficar.

COBOL mainframe financeiro BI4ALL business intelligence

 

A palavra COBOL também é muito utilizada para identificar quem trabalha na área de Mainframes. Se perguntarem a um expert desta área com que tecnologia trabalha, poderão ouvir uma reposta como ZOS, MVS, JCL, CICS, Mainframe ou DB2, mas se a resposta for dada com a palavra mágica “COBOL”, já todos sabem do que se está a falar.

A base de dados do Mainframe

A base de dados utilizada no Mainframe é o DB2. Tal como o Cobol e o Mainframe, o DB2 também fez história e é considerado uma das bases de dados mais antigas, tendo sido alvo de várias melhorias ao longo dos anos.

COBOL mainframe financeiro BI4ALL business intelligence

 

No início dos anos 70, quando Edgar Frank Codd trabalhava para a IBM e desenvolveu a teoria da base de dados relacional, este criou uma linguagem para a base de dados relacional ao qual chamou Alpha de forma a poder aplicar o seu modelo.

A IBM nunca acreditou no potencial das ideias de Codd, deixando-o fora do projeto, desrespeitando as diversas ideias principais do modelo de Codd.

No entanto, no final da década de 70, foi desenvolvido um sistema baseado nas ideias do cientista, o “System R”, e junto com esse sistema foi criado a linguagem de consulta estruturada (SQL – Structured Query Language), que acabou por se tornar a linguagem padrão da base de dados relacionais dos dias de hoje.

COBOL mainframe financeiro BI4ALL business intelligence

 

Embora tenha contribuído para a evolução da base de dados relacional, o “System R” não teve sucesso comercialmente, mas os sistemas de base de dados que vieram a seguir basearam-se neste sistema.

Nos anos 80, surgem outras bases de dados, a Oracle apresenta o Oracle 2 e a IBM o SQL/DS (que se tornou DB2), só depois surgiu o SQL Server, MySQL, DBase III, Paradox...

COBOL mainframe financeiro BI4ALL business intelligence

 

Durante muitos anos, o DB2 foi desenvolvido exclusivamente para os mainframes da IBM e só posteriormente nos anos 90, a IBM introduziu o DB2 para outras plataformas e servidores, incluindo o Unix e o Windows, e mais tarde Linux e PDAs.

Outros recursos foram implementados mais tarde no DB2, o OLTP e a abertura do z/OS ao desenvolvimento para Business intelligence e Datawarehousing.

O último avanço do DB2 é a informação criptografada da base de dados, de uma forma transparente e sem tempo de inatividade da base dados, sem a necessidade da intervenção de um DBA ou a interrupção das operações.

Esta nova versão tem a capacidade de criptografar logs, catálogos, diretórios, tabelas e índices, incluindo todos os tipos de dados como grandes objetos binários de forma transparente.

Datawarehouse no mainframe

A IBM também tem feito grandes investimentos nesta área com um conjunto de ferramentas para BI em várias vertentes.

COBOL mainframe financeiro BI4ALL business intelligence

 

Existem varias opiniões quanto à implementação do DW num mainframe.

As mais céticas são da opinião de que ninguém colocaria um Datawarehouse no mainframe, que o DB2 do mainframe nunca suportaria com sucesso um Datawarehouse de grandes dimensões, que é muito dispendioso, muito demorado e muito difícil de implementar no mainframe.

Na realidade, existem empresas que ainda mantêm o seu DW no mainframe embora outras tenham optado por retirá-lo deste sistema.

A opinião de que as novas tecnologias apresentam soluções com custos mais baixos do que o mainframe requer sempre um estudo mais elaborado.

Se a empresa já tem um Mainframe instalado e a funcionar, acaba por reduzir o custo com a infra-estrutura ao invés de optar por uma solução nova que requer a instalação de novas máquinas e software de apoio.

Aqui há que ter sempre em conta que a infraestrutura é a mesma, os recursos do operacional vão ser partilhados com o Datawarehouse. Na mesma máquina vamos ter a convivência da base de dados do operacional com a do Datawarehouse, o que nem sempre é uma boa opção.

A solução

Em algumas situações, o mainframe poderá ser a solução para a implementação de um avançado e robusto Datawarehouse, e é um erro descartar esta opção.

Em outras situações, o mainframe poderá não ser a melhor solução... Contudo e qualquer que seja a opção, é sempre necessário avaliar cada situação e tentar rentabilizar ao máximo a solução, na medida em que este tipo de soluções é sempre um investimento a longo prazo para uma organização.

O custo, a operacionalidade, a performance, consistência e a segurança são algumas das variáveis a ter em conta e que, bem medidas, poderão contribuir para o sucesso da solução.

Nunca devemos colocar de lado soluções que à primeira vista parecem não fazer sentido.

Há muitos anos que o mainframe parece não fazer sentido, mas, ao longo dos anos, tem provado que também pode ser parte da solução.

COBOL mainframe financeiro BI4ALL business intelligence