LES PRATIQUES D’ENSEIGNEMENT
Niveau 2 : Quantité d’instruction par élève
III- 2- Les recherches françaises
Como o teste de restauração foi realizado com uma baixa quantidade de dados, a equipe técnica da knowhow consultoria levantou a seguinte questão: Como a ferramenta se
comportaria quanto a geração de arquivos BKPMLcom diferentes volumes de dados? E quanto tempo esses dados levariam para ser restaurados? A partir desses questiona-
mentos, sentiu-se a necessidade de realizar esse tipo de teste e, para isso, foi solicitado um computador para que o ambiente de testes pudesse ser configurado. A knowhow con- sultoria cedeu um computador com as seguintes configurações: processador intel DUAL
CORE 2.1GHZ com 2GB de RAM e HD de 200GB.
A configuração do ambiente de testes foi iniciada com a instalação doSGBDPOST- GRES8.4, as configurações necessárias para execução da ferramenta BKPML Manager,
a criação de uma tabela no SGBDinstalado, o desenvolvimento de uma aplicação res- ponsável pela inserção de dados aleatórios na tabela de testes, a execução da BKPML
Manager, a realização de todos os cadastros para o objeto de tipo tabela, e o cadastro
do SGBDenvolvido. É importante ressaltar que a restauração dos dados foi realizada no próprio POSTGRES8.4, ou seja, o mesmo foi utilizado comoSGBDde origem e de destino.
Para se obter melhores conclusões sobre os testes, é importante conhecer a estrutura criada para a tabela de testes. A tabela de testes é composta por três campos não indexa- dos. O campo nome, do tipo texto, com tamanho máximo para 100 caracteres; o campo
fone, do tipo inteiro; e o campo endereço, do tipo texto, com tamanho máximo de 255
caracteres. Essas informações se fazem necessárias uma vez que o tempo e tamanho dos arquivos tendem a variar para tabelas com estrutura de tamanhos diversificados.
Após a finalização da configuração do ambiente de testes e dos cadastros obrigató- rios na ferramenta, o próximo passo tomado foi a definição de quantos arquivos seriam gerados e qual seria o volume de dados para cada um. Com isso, foram definidos os seguintes volumes em quantidade de registros: [500, 1.000, 2.000, 4.000, 8.000, 16.000, 32.000, 64.000, 128.000, 256.000, 512.000 e 1.024,000]. Concluiu-se que a partir des- ses volumes seria possível verificar o desempenho da ferramenta em relação a diferentes volumes de dados, tanto para geração dos arquivosBKPMLquanto para restauração dos mesmos.
Após isso, o sistema responsável por gerar os dados aleatórios foi executado de acordo com os volumes definidos, e a BKPML Manager foi usada para gerar os ar- quivosBKPMLpara cada volume inserido na tabela de testes. Após o termino da carga dos dados e a execução da BKPML Manager, oito arquivos de teste em formatoBKPML
5.5. PREPARANDO O AMBIENTE DE RESTAURAÇÃO E MIGRAÇÃO
de diferentes tamanhos e volume de dados foram gerados. Os testes foram iniciados a partir da restauração dos arquivos gerados para o SGBDPOSTGRES8.4. No final de
cada teste, foram recuperados o tempo utilizado para restauração dos arquivosBKPML. Os resultados obtidos neste teste podem ser observados conforme Tabela5.2.
Tabela 5.2 Geração dos arquivos BKPML por volume e tempo
Quantidade Tamanho Geração Restauração (mm:ss.ms) (mm:ss.ms) 500 26.5 KB 217ms 828ms 1000 52.7 KB 257ms 1.093seg 2000 104 KB 299ms 2.077seg 4000 207 KB 553ms 3.364seg 8000 414 KB 721ms 6.386seg 16000 830 KB 1.182seg 12.414seg 32000 1.62 MB 2.069seg 23.673seg 64000 3.25 MB 3.723seg 45.394seg 128000 6.08 MB 6.557seg 1:4.967min 256000 12.1 MB 9.456seg 3:0.962min 512000 24.3 MB 19.408seg 5:9.002min 1024000 48.6 MB 40.626seg 12:8.012min
De acordo com os resultados obtidos, percebe-se que o tempo para geração dos ar- quivos BKPML não gerou resultados tão elevados, mas que ainda precisam ser com- parados com resultado de outras ferramentas para torná-los aceitáveis. Quanto ao uso da ferramenta, todas as funcionalidades e objetivos propostos foram desenvolvidos e al- cançados, tornando o uso da ferramenta viável para gerenciamento e processamento dos arquivos BKPML. Vale ressaltar que os resultados obtidos são relativos, uma vez que os mesmos foram gerados da mesma tabela e, além disso, os mesmos foram realizados em umSGBDonde não há concorrência de acesso aos dados. Em um ambiente onde os dados são constantemente concorridos, esse tempo tenderá a sofrer variações.
Já com relação aos resultados obtidos no processo de restauração dos dados é possí- vel notar que os tempos obtidos são maiores que os do processo de geração. A partir dos dados apresentados é possível estimar que para 1 Gygabyte de informação ou 24.000.000 de registros em um arquivo de backup, a BKPML Manager levaria em média 17hs de processamento para restaurar todos esses dados em umSGBD, ou seja, um tempo pouco eficiente para volumes de dados muito grandes.
Apesar de ser uma ferramenta estudantil e em fase de constantes mudanças e apri- moramentos, as principais funcionalidades como: backup de dados, transformação, res-
5.6. CONSIDERAÇÕES FINAIS
tauração e migração de objetos complexos obtiveram bons resultados, mas que ainda assim precisam ser aprimorados.
5.6
Considerações finais
Esse Capítulo apresentou o estudo de caso realizado na empresa Knowhow consultoria, empresa localizada na cidade de Manaus e que presta serviços de consultoria e treina- mento para empresas e profissionais interessados. Essa empresa aceitou a realização dos testes da ferramenta em um ambiente real. Isso se fez necessário uma vez que os testes iniciais foram realizados no mesmo computador utilizado para desenvolvimento da ferramenta, espelhando resultados viciosos e não conclusivos quanto à eficiência da ferramenta em outros ambientes.
Os primeiros testes realizados foram referentes às funcionalidades de cadastros bá- sicos, que demonstraram bom desempenho quanto a inserção, alteração e exclusão de dados neste ambiente. Além disso, esses cadastros foram necessários uma vez que os mesmos são requisitos importantes para o funcionamento das próximas funcionalidades a serem testadas.
O segundo teste consistiu na execução dos backups dos objetos cedidos pela em- presa, e no final todos os arquivos gerados foram analisados para verificar se as estrutu- ras dos mesmos haviam sido geradas de acordo com as regras impostas pela taxonomia da BKPML. Os resultados obtidos nesses testes se mostraram satisfatórios quanto ao resultado do processamento dos dados e geração dos arquivosBKPML.
A partir da geração desses arquivos de backup, o próximo teste a ser realizado foi o de restauração e transformação dos dados dos arquivos BKPML gerados nos testes anteriores. Primeiramente foi testado o processo de restauração dos objetos do tipo tabela disponibilizados pela empresa. Esse teste mostrou bons resultados em relação à restauração dos dados, mais nada conclusivo, uma vez que a quantidade de dados era mínima. O teste de transformação foi realizado gerando os arquivos secundários de forma correta. Em seguida, os testes de migração de dados complexos foram realizados gerando bons resultados quanto a migração de objetos complexos paraSGBDdistintos. O mais demorado nesse processo é a adaptação do objeto para a sintaxe exigida pelo
SGBDde destino.
Por fim, para analisar o comportamento da ferramenta quanto a testes de grandes vo- lumes de dados foi necessária a solicitação de um novo computador para configurar um novo ambiente de testes. Após isso, os testes foram iniciados. A partir dos resultados
5.6. CONSIDERAÇÕES FINAIS
obtidos pode-se concluir que a funcionalidade de backup de dados gerou resultados con- forme esperado quanto a grande volume de dados. Já a funcionalidade de restauração, a partir dos testes, foi possível estimar um desempenho fraco para volumes de dados muito grandes. É importante ressaltar que apesar do resultado obtido, os testes de uma forma geral foram eficientes quanto a seus objetivos, mas que necessitam de ajustes quanto a pontos específicos.
6
Conclusões e Trabalhos Futuros
Este capítulo apresenta as considerações finais do trabalho desenvolvido, as dificulda- des enfrentadas na fase de pesquisa e desenvolvimento da estruturaBKPML, bem como do protótipo da ferramenta proposta. Além das dificuldades, serão apresentadas as li- mitações da ferramenta quanto aos processos de cadastros básicos e funcionalidades de
backup, restauração e migração de dados. Por fim, serão apresentadas as propostas de
possíveis trabalhos futuros a serem desenvolvidos para aperfeiçoamento e continuidade deste projeto.
6.1
Conclusões e contribuições
O desenvolvimento deste trabalho foi motivado principalmente pelos problemas enfren- tados por projetos de migração de dados para diferentes plataformas de SGBD, e das dificuldades enfrentadas para manipulação e integração de dados mantidos em arquivos de backup em formato proprietário. Esses problemas foram observados através de ex- periências e estudos de caso que relatam as principais dificuldades enfrentadas como: não cumprimento dos prazos, aumento do tempo e custos envolvidos em tais projetos e problemas relacionados às ferramentas existentes que limitam-se a atender níveis es- pecíficos de migração. Níveis importantes como a migração de objetos índices, visão,
permissão, gatilhos, entre outros, em muitos casos não são atendidos.
Outro fator que tende a levar projetos de migração a tempos mais elevados são pro- blemas relacionados aos arquivos de backup proprietários que, na maioria das vezes, detêm uma quantidade grande de informações e que só podem ser manipulados por ou- trosSGBD perante a restauração dos mesmos em seu ambiente de origem, elevando o tempo do projeto e por consequência os custos envolvidos.
6.1. CONCLUSÕES E CONTRIBUIÇÕES
vida com objetivo de desvincular a dependência dos dados dos arquivos de formato proprietários, facilitando a sua manipulação entre diversos ambientes deSGBD. Mais especificamente, esse formato visa auxiliar os projetos de migração de dados em rela- ção às dificuldades enfrentadas. Esse formato foi desenvolvido baseado na linguagem de marcaçãoXML, denominadoBKPML. Além disso, foi utilizada a tecnologia XML
Schema para definição da taxonomia daBKPMLe dos objetos aceitos por ela, proporci- onando assim maior segurança quanto à validação dessa estrutura.
Após o desenvolvimento da estrutura proposta, foi necessário o desenvolvimento de um protótipo para validação daBKPMLdenominado BKPML Manager. A BKPML Ma-
nager foi desenvolvida em uma plataforma cliente/servidor e utilizando a linguagem de
programação Java para Web, disponibilizando assim acesso a BKPML Manager e suas funcionalidades através da Internet. A BKPML Manager foi desenvolvida para gerar e validar arquivos de backup em formatoBKPML, bem como para auxiliar a restauração e migração dos dados para diversas plataformas de SGBD como: Oracle, SQLServer,
MYSQL e Postgres.
Além de auxiliar os processos supracitados, essa ferramenta possui duas implemen- tações de grande importância para portabilidade das informações e segurança dos dados. A portabilidade das informações é garantida através do processo de transformação dos dados. Esse processo consiste em restaurar os dados de um arquivoBKPMLpara arqui- vos secundário nos formatos: CSV,JSON,YAML, EXCEL,XMLe TEXTO. Esses são muito utilizados porSGBDpara migração de grandes volumes de dados como oCSV, ou para intercâmbio de informações através da Web como oJSONe oXML. Além disso, a ferramenta implementa dois métodos para armazenamento dos dados, armazenamento local ou em nuvens. O armazenamento local consiste em salvar os dados em servidores locais ou remotos. Já o armazenamento em nuvens utiliza os servidores da Amazon Web
Service para armazenamento dos dados utilizando o serviçoS3. Para implementação de outros serviços, faz-se necessário a implementação dos mesmos conforme especificação do provedor desejado.
Após o desenvolvimento da BKPML Manager, foi necessária a realização de testes para verificar o desempenho da ferramenta e das funcionalidades desenvolvidas. Para isso, foi apresentado um estudo de caso, mostrando todo o processo de cadastro e con- figuração do ambiente de backup, restauração e migração de dados, desde os cadastros básicos até às funcionalidades de backup, restauração e migração. Após isso, foi dado início aos testes de desempenho da ferramenta quando a grandes volumes de dados. No final dos testes, foram apresentadas as conclusões sobre os resultados obtidos.