Estratégias para o Carregamento Massivo de Dados num Data Warehouse

Tamanho: px
Começar a partir da página:

Download "Estratégias para o Carregamento Massivo de Dados num Data Warehouse"

Transcrição

1 Estratégias para o Carregamento Massivo de Dados num Data Warehouse André Vilaça e Jorge Abreu Departamento de Informática, Escola de Engenharia, Universidade do Minho Campus de Gualtar, Braga, PORTUGAL {andrevilaca, jorgeabreu.lesi}@gmail.com Abstract. O povoamento é uma das actividades mais importantes de um sistema de data warehousing. A criticidade desta actividade está muitas vezes associada ao enorme volume de dados envolvido. Quanto maior é este volume, mais tempo é necessário para o seu processamento e para o seu consequente carregamento no data warehouse. Porém, o tempo disponível para esta operação (janela de oportunidade) é finito e, por vezes, torna-se insuficiente, por exemplo, quando se verificam falhas no processo. Assim, neste artigo, abordam-se três estratégias gerais, e respectivas variantes, para melhorar o carregamento de dados num data warehouse com particular ênfase em tabelas de factos com o objectivo de reduzir o seu tempo de processamento, permitindo assim maiores aberturas em termos de janela de oportunidade. Através da realização de testes intensivos, são ainda exploradas possíveis optimizações a essas estratégias. Keywords: Carregamento, ETL, Bulk Loading, Prepared Statements, Batches. 1 Introdução Diariamente, as empresas com grande volume de dados a processar pelos seus sistemas de povoamento de Data Warehouses debatem-se com grandes problemas de optimização. Os problemas surgem ao longo das três fases dos sistemas de povoamento de um data warehouse, também denominados de sistemas de ETL (do inglês Extract- Transform-Load), devido principalmente ao constante aumento da quantidade e complexidade da informação a processar [15]. Os sistemas de ETL são os responsáveis pela recolha da informação proveniente das fontes de dados, pelo seu tratamento e posterior carregamento nos sistemas de data warehousing, executando de forma parcialmente automática esta complicada passagem da informação dos sistemas operacionais (organizados segundo um modelo relacional) para os sistemas de data warehousing (organizados segundo um modelo dimensional) [6]. É vital para o sucesso de um sistema de ETL que todo o processo seja executado durante a janela de oportunidade (espaço de tempo, habitualmente diminuto, disponível para a execução das 3 fases de ETL), prevendo desde logo possíveis falhas

2 em sub-processos, e consequente reinício dos mesmos, acessos impossíveis às fontes ou complexidades na transformação dos dados. De facto, a tarefa de transformação da informação é a mais complexa em todo o processo, devido principalmente ao facto de ser aquela que mais dependente está das regras de negócio envolvidas. Por esse facto, existe muito trabalho efectuado ao nível do fluxo de dados, tendo em vista a optimização desta etapa. Já nas fases de Extracção e Carregamento, as estratégias de optimização disponibilizadas revelam-se mais genéricas, ou seja, são facilmente aplicáveis a qualquer sistema. Desta forma, torna-se mais aliciante e motivador o estudo destas últimas. Neste caso de estudo, a atenção recai sobre o processo de carregamento. A etapa final de qualquer processo de ETL consiste no carregamento dos dados para as estruturas dimensionais, e é tida como uma das operações críticas do data warehouse. Este carregamento não ocorre continuamente, mas sim num curto espaço de tempo, não podendo haver lugar a atrasos, e envolvendo um grande volume de informação [3]. No entanto, e apesar da sua criticidade, o carregamento dos dados é muitas vezes menosprezado aquando da construção dos sistemas de ETL [12]. De facto, este menor interesse revelado por esta etapa deve-se à aparente simplicidade da mesma, que consiste na passagem dos registos tratados da área de retenção para o data warehouse. No que concerne à optimização da operação de loading, ao serem implementadas estratégias que visam a diminuição do tempo de processamento e carregamento dos dados, liberta-se desta forma tempo precioso para as outras etapas de ETL. Da mesma forma, previnem-se também possíveis baixas de performance que possam ocorrer aquando de aumentos consideráveis no volume de dados a integrar, num futuro próximo. Com este artigo, pretende-se então abordar algumas técnicas de carregamento de grandes quantidades de dados num data warehouse, com particular ênfase nas tabelas de factos (devido à enorme quantidade de registos envolvidos), de forma a permitir uma diminuição significativa do tempo de execução desta tarefa e, consequentemente, do tempo de execução de todo o processo de ETL. Pretende-se igualmente analisar o comportamento destas estratégias e verificar se revelam quebras de performance para determinados volumes de dados. O restante artigo está organizado da seguinte forma. No capítulo a seguir são abordadas três estratégias de carregamento de dados. Na terceira secção, apresentamos algumas dicas de optimização que podem ser aplicadas a cada estratégia. No capítulo 4 descrevem-se o ambiente de testes e as fontes de dados utilizadas. Os testes efectuados, respectivos resultados, e consequente análise, estão presentes na secção 5. Por último, o capítulo 6 refere as conclusões retiradas da elaboração deste estudo, e os aspectos que poderão ser alvo de aperfeiçoamento. 2 Estratégias de Carregamento de Dados Muitas das soluções para a redução do tempo de processamento em inserções de grande volume de dados em tabelas passam pela eliminação temporária dos índices criados sobre essa tabela e posterior reconstrução dos mesmos, conseguindo-se

3 ganhos consideráveis. Assim, muito é o trabalho desenvolvido nesta área, com vista à optimização do tempo de reconstrução dos índices. Neste artigo, serão estudadas soluções limpas da actuação de índices, ou seja, os índices são eliminados, não havendo assim preocupação com a sua influência no carregamento de dados. Obviamente, esta opção revela algumas vantagens, pois não existe preocupação com o desempenho das queries lançadas sobre as tabelas, onde os índices desempenham um papel de extrema importância. Consequentemente, existirão elevados ganhos em termos de performance, sendo esse ganho directamente proporcional à complexidade do índice (quanto maior a complexidade do índice, maiores serão os ganhos conseguidos ao ignorar os mesmos). No entanto, sempre que necessário, irá ser referida a título exemplificativo a sua influência. 2.1 Estratégia Convencional Grande parte dos sistemas de data warehousing adoptam esta estratégia, que consiste no carregamento individual e sequencial dos registos para as estruturas do data warehouse, imediatamente após o tratamento do mesmo. Não existe uma diferenciação entre a fase de Transformação e a fase de Carregamento, visto que cada registo é integrado no data warehouse no momento em que as transformações sobre o mesmo terminam. Esta estratégia é típica de data warehouses assíncronos ou data warehouses em tempo real, como facilmente é perceptível, dadas as características e exigências destes. A instrução de SQL INSERT assume o principal papel nesta estratégia, dado que o carregamento de cada registo é feito através da mesma, revelando assim algumas parecenças com os sistemas operacionais, tipicamente caracterizados pela sua optimização para a inserção de registos. O carregamento é efectuado da forma mais trivial, recorrendo quase unicamente a simples instruções de inserção na tabela de factos. A complexidade desta estratégia prende-se com o facto de o motor de base de dados necessitar de efectuar um conjunto de operações de forma a determinar a melhor forma de executar a instrução pedida (query plan), antes de proceder à inserção do registo. Para tal, o motor de BD executa as seguintes tarefas [14]: Análise da sintaxe da query; Identificação de existência de índices, constraints ou triggers; Identificação da localização da tabela destino, bem como dos seus índices; Determinação dos atributos envolvidos na query; Definição da melhor forma de efectuar a query. Como é de fácil percepção, na inserção de grandes quantidades de registos, todo este processo de preparação da query começa a ter um peso significativo, tornando-se uma opção de fraca viabilidade. Como forma de colmatar este problema podemos recorrer ao uso de Prepared Statements.

4 2.2 Estratégia com uso de Prepared Statements O uso de prepared statements constitui mais um dos métodos de optimização de querying. Segundo a literatura actual, sempre que uma query é usada várias vezes, podemos optimizar significativamente o seu desempenho, recorrendo a prepared statements [14, 11]. Como abordado na estratégia anterior, em cada query de inserção é criado um novo plano de execução, tornando grande parte do trabalho do motor de base de dados repetitivo. É neste ponto que as prepared statements são mais eficientes, fazendo uma reutilização do mesmo plano de execução para todas as utilizações da query. Por exemplo, na abordagem anterior, para 1 inserções, seriam realizados 1 planos de execução contra apenas um plano aquando do uso de prepared statements. No entanto, com o uso de prepared statments, o motor de base de dados tem de disponibilizar recursos para guardar o plano de execução e, dependendo do tipo de detalhe da query, terá ainda de garantir a validade do plano de execução caso surjam mudanças na BD [14]. No caso em estudo, e visto que o número de tabelas de factos é reduzido, este factor negativo não se aplica, pois apenas é realizada uma instrução de inserção, sendo o seu plano válido desde o começo até ao final da operação de carregamento em cada tabela de factos. 2.3 Estratégia de Bulk Load A estratégia de bulk load é uma das estratégias mais eficazes para a inserção massiva de dados e está implementada nativamente na maioria dos motores de Bases de Dados conhecidos. Consiste numa boa alternativa à inserção no data warehouse de um registo de cada vez, como se de um sistema transaccional se tratasse. A maior vantagem desta estratégia é a possibilidade de, paralelamente, desactivar o logging da base de dados e carregar os registos. De facto, a escrita do log provoca uma grande sobrecarga em operações de leitura/escrita, e pode revelar-se desnecessária em data warehouses [6]. Pouco se sabe sobre o seu método de funcionamento. As ferramentas de bulk load são vistas como caixas negras que geram programas que não são facilmente costumizáveis [1]. Esta falta de informação deve-se em grande parte às diferentes formas de implementação utilizadas por cada empresa desenvolvedora dos sistemas de gestão de bases de dados. Entre a literatura actual, revelou-se um grande obstáculo encontrar fontes credíveis que fornecessem informações sobre a especificação do método de funcionamento/implementação das estratégias de bulk load. Por norma, o tipo de informação disponível prende-se mais com factores de utilização ou formas de optimização. No que ao Oracle diz respeito, sabe-se que é usado um conjunto privado de buffers para inserir as páginas do disco, contendo os novos registos, na tabela. Só após a confirmação do fim da operação de inserção é que os novos registos ficam disponíveis para leitura na tabela [2]. A estratégia de bulk load utiliza como única fonte de dados um simples ficheiro de texto no sistema de ficheiros. Estes ficheiros de texto podem ser de dois formatos: comprimento fixo e delimitado. No primeiro são especificados todos os campos

5 existentes no ficheiro, bem como o nome do ficheiro, onde começa cada campo, o seu comprimento e o tipo de dados, sendo por vezes fornecida também a posição final. Já os ficheiros de texto no formato delimitado incluem separadores (por norma vírgula, ponto-e-vírgula, pipe ou tabulação) entre cada campo, como alternativa à indicação da posição de início e fim de cada campo. A partir do momento em que o ficheiro segue uma destas delimitações, o processador de bulk load consegue abrir o ficheiro, ler os registos presentes no ficheiro e efectuar a sua integração no data warehouse [6]. Uma das limitações da estratégia de bulk é o facto de não permitir a manipulação/tratamento dos dados durante o processo, pelo que todos os tratamentos desejados devem ser efectuados previamente, na fase de Transformação do processo de ETL [4]. Para que se obtenha o máximo de desempenho possível no carregamento bulk de um ficheiro, é aconselhado que o mesmo seja copiado previamente para a mesma máquina em que se encontra o servidor de BD. Desta forma, o desempenho da operação não fica sujeita a qualquer tipo de limitação de transferência da rede [4]. Por fim, é de salientar ainda algumas das configurações que, por exemplo, o bulk insert (implementação do SQLServer) considera aquando da sua utilização mais básica. O bulk insert, independentemente do tamanho/cardinalidade do ficheiro, carrega todos os dados numa única transacção [1], ou seja, num ficheiro de 1 milhão de entradas, a confirmação (commit) da inserção dos dados só é efectuada no final de tudo. Isto pode ser visto como uma vantagem por muitos utilizadores, pois evita sucessivos commits. No entanto, tem a desvantagem de, no caso de ocorrer um erro no processo, todos os dados voltam a ser retirados (rollback), regressando ao início da operação, o que pode ter um grande impacto no tempo total de realização do processo. No entanto, este problema pode ser parcialmente resolvido com a utilização de batches (lotes de registos). A existência de triggers revela-se como um dos responsáveis pela degradação na importação de dados. No entanto, nem sempre nos queremos ver livres deles. Por isso, deve-se ter em atenção o facto do bulk insert ter a particularidade de, por omissão, os desactivar. Um outro aspecto a ter em consideração é a presença de valores nulos, em que um simples Insert mantém o atributo como nulo. Já o bulk insert, caso exista um valor por omissão para o atributo a nulo, irá colocar este em substituição do nulo [9]. 3 Dicas para um melhor desempenho Independentemente dos mecanismos de inserção utilizados, existe uma variedade de outros aspectos a ter em consideração que podem oferecer uma melhoria significativa ao processo de carregamento de dados. De seguida, apresentamos os que consideramos mais influentes. Como já foi referido, um dos principais, senão o principal factor de degradação na inserção de grandes volumes de dados, passa pela existência de índices na tabela de factos. Nesta situação, terá de se proceder à actualização dos mesmos ao longo da inserção, operação esta que com o passar do tempo vai ficando cada vez mais penosa

6 de realizar, sendo por isso aconselhável, à priori, proceder à destruição dos índices e posteriormente reconstruir os mesmos [6, 13]. Contudo, nem sempre esta degradação está presente, ou seja, no caso de um primeiro povoamento de uma tabela em que exista, por exemplo, um índice cluster, se se proceder à ordenação prévia dos dados sob a mesma forma, a diferença de desempenho pode não ser relevante [8]. Os triggers representam outro aspecto a levar em consideração. Os triggers são procedimentos que são executados na ocorrência de um evento de inserção, actualização ou remoção sobre uma tabela [6]. Dependendo do tipo de triggers existentes, estes podem provocar grandes sobrecargas no processamento. Assim sendo, deve-se, sempre que possível, evitar o seu uso em carregamentos de dados. Tomando como exemplo um simples trigger que faz o log para outra tabela de todas as operações efectuadas sobre a tabela em que estamos a proceder à inserção. Na prática, com a presença deste trigger, seriam realizadas o dobro das inserções. As constraints sobre determinados campos podem, em certos casos, ser um ponto a ter em consideração. No entanto, e lembrando que o tema de estudo são as estratégias para inserções em data warehouses, as constraints podem ser retiradas sem qualquer problema, pois os dados para inserção no DW são provenientes de um sistema totalmente controlado (ETL) [6]. Durante o processo de ETL, o processo de surrogate key pipeline 1 assegura a integridade referencial. Assim sendo, durante a inserção, esta verificação pode ser temporariamente desactivada para permitir um melhor desempenho. O tipo de log da BD pode ter um impacto relevante na eficácia do processo de inserção, podendo-se usar um tipo de log mais redutor durante mesmo, evitando assim um overhead adicional de escrita e processamento. A frequência com que os commits são efectuados contribui também para o desempenho das estratégias de carregamento. Nos termos de estudo, a execução de confirmações a cada registo inserido pode provocar um overhead excessivo, degenerando todo o processo de inserção. Segundo [16], executar o commit após a inserção de um conjunto de vários registos, pode levar a uma melhoria de desempenho até 1 vezes. Temos também a abordagem de processamento paralelo. Com este tipo de abordagem podemos tirar partido das máquinas multi-processador. Para tal pode-se dividir, por exemplo, uma fonte de dados em formato de texto, em várias fontes, e correr várias instâncias do mecanismo de inserção em paralelo. Em SDW, tipicamente existe uma janela de oportunidade para proceder à inserção de novos dados. Como tal, durante esse período, o data warehouse está 1% disponível para as inserções, o que deixa em aberto a possibilidade de controlarmos convenientemente o tipo de locks que são efectuados durante todo o processo de alimentação. Assim, o uso de lock à tabela, em vez de locks linha a linha, pode também oferecer uma melhoria de desempenho no carregamento de dados. Muitos mecanismos de carregamentos de dados inserem, por omissão, todos os dados de uma vez só, ou seja, são inseridos numa única transacção. Neste caso, se a transacção falhar, independentemente da quantidade de dados inserida, terá de se fazer rollback a toda a transacção. Este problema pode ser ultrapassado recorrendo ao 1 Processo de substituição das chaves naturais operacionais dos registos da tabela de factos pela chave do registo correspondente na dimensão [7].

7 uso de lotes de registos (batches). Com esta abordagem, pode-se especificar a quantidade de registos em cada batch de inserção. Desta forma, fragmenta-se uma grande e pesada transacção em pequenas e rápidas transacções. No caso de falha de uma das transacções, isso não implica fazer o rollback às transacções já terminadas com sucesso, podendo-se retomar o processo de inserção a partir do fim da última transacção bem sucedida. 4 Caracterização das Fontes e do Ambiente de Testes 4.1 Fontes de Dados Na impossibilidade de utilizar dados reais, provenientes de um sistema de povoamento já completamente implementado, tornou-se imperativa a simulação de grandes quantidades de registos, que conseguissem representar o melhor possível a informação contida num sistema real. Uma vez que as tabelas de factos contêm habitualmente valores inteiros, referentes às chaves de substituição e às medidas utilizadas, revela-se adequada a utilização de registos compostos unicamente por valores inteiros. Assim sendo, cada registo utilizado é composto por 11 atributos inteiros, com os seguintes nomes e gamas de valores: A1(1 a 5M), A2(5 a 2), A3(1 a 1), A4(1 a 2), A5(5 a 25), A6(2 a 8), A7(1 a 3), A8(1 a 1), A9(1 a 2), A1(1 a 5), A11(1 a 7). Uma vez que o objectivo consiste no estudo de estratégias de carregamento de elevados volumes de dados, é necessário testar cada estratégia para diferentes quantidades de registos. Para isso, foi criado um único ficheiro contendo 5 milhões de registos. Depois, estes 5 milhões de registos foram divididos por diversos outros ficheiros, com cardinalidades variáveis: 1 mil, 2 mil, 4 mil, 6 mil, 8 mil, 1 milhão, 2 milhões, 4 milhões, 6 milhões, 8 milhões, 1 milhões, 2 milhões, 3 milhões, 4 milhões, 5 milhões, 6 milhões, 7 milhões, 8 milhões, 9 milhões, 1 milhões, 2 milhões, 3 milhões e 4 milhões. Para a criação destes 24 ficheiros de texto foi usado um programa Java que, recorrendo à geração aleatória de valores, consegue assim simular os dados pretendidos. 4.2 Ambiente de Testes Todos os testes foram realizados na mesma máquina, tendo sido feitos todos os possíveis para simular exactamente as mesmas condições para cada teste. Em termos de hardware, foi utilizada uma máquina com processador Dual Core Intel Pentium E214, com frequência de relógio 1.6GHz, cache L1 32KB por core e cache L2 de 1MB; memória RAM 2x Kingston 1GB DDR2-667 double sided, CL5; disco rígido 3.5 Hitachi HDT72525VLA38 SATA-II de 25GB, 72RPM com 8MB de buffer.

8 Já no que ao software diz respeito, o Sistema Operativo instalado foi o Microsoft Windows XP Professional Service Pack 2, sendo o Sistema de Gestão de Bases de Dados utilizado o Microsoft SQL Server 25, Standard Edition. De referir apenas que foram realizados alguns testes complementares utilizando um disco externo 2.5 Western Digital, 54 RPM, tendo sido decidido abdicar deste, após a verificação de piores performances. O carregamento foi então realizado numa nova partição formatada do disco interno. 5 Avaliação Experimental 5.1 Melhoria das estratégias simples Para avaliar a performance de cada uma das estratégias expostas anteriormente, é então necessário proceder à realização de testes em condições idênticas para diferentes volumes de dados. Após a realização dos primeiros testes, verificou-se uma performance abaixo do esperado para as estratégias convencional e usando Prepared Statements. Assim, e aplicando desde logo algumas das optimizações propostas, procedeu-se à comparação (ver Fig. 1) dos tempos de carregamento da estratégia convencional básica (A1), em que se procede à confirmação (commit) da inserção a cada registo inserido, e a estratégia convencional ligeiramente optimizada (A2), em que se realiza o commit depois de finalizada toda a inserção da fonte em causa. Da mesma forma, comparamse também o desempenho da estratégia de Prepared Statements básica (B1) e optimizada (B2). t(min) A1 A2 t(min) B1 B2 Fig. 1. Impacto da realização de commit apenas no final do carregamento, comparativamente com commits após a inserção de cada registo. Verifica-se um ganho na ordem dos 5% em cada uma das estratégias quando se realiza apenas um commit no final do carregamento, como aliás era de esperar. Assim sendo, estas estratégias optimizadas passam agora a ser usadas para a realização dos testes seguintes. Denote-se que, para uma melhor compreensão das figuras presentes, adopta-se a seguinte nomenclatura: Carregamento convencional: estratégia A; Carregamento com Prepared Statements: estratégia B; Carregamento Bulk: estratégia C.

9 5.2 Carregamentos simples Por carregamento simples, entenda-se o carregamento dos registos dos ficheiros de texto para a tabela de factos destino, numa única transacção. A análise do desempenho das três estratégias anteriormente mencionadas é efectuada realizando vários testes para cada um dos diferentes volumes de registos e para cada estratégia. Para que os resultados demonstrem uma maior precisão, foram repetidos os testes para os volumes de dados mais pequenos, sendo o valor referido obtido pela média. t (min) A B C Fig. 2. Comparação das Estratégias A, B e C, para o carregamento simples. As três estratégias revelam um comportamento linear ao longo da variação da cardinalidade. Existe um claro baixo desempenho da estratégia convencional, comportamento que se agrava com o aumento do volume de dados. Com o uso de prepared statements consegue-se um ganho superior a 3% relativamente à estratégia anterior, a partir de 1M de registos. No entanto, a estratégia de Bulk bate claramente qualquer uma das outras, conseguindo ganhos inesperados de 8-9% e 86-93%, a partir de volumes de dados de 1M de registos, quando comparado com a estratégia convencional e de prepared statements, respectivamente. Tomando como exemplo o carregamento de 2 milhões de registos, o carregamento convencional demora mais de 2h, sendo reduzido para quase 14h usando prepared statements, e com a estratégia de Bulk o carregamento demora apenas 1h2min. Para uma menor quantidade de registos, o Bulk continua a revelar-se como a melhor opção, apesar de os ganhos serem consideravelmente menores. 5.3 Optimização com recurso a lotes de registos Após a realização de alguns testes ocasionais às estratégias A e B, verificaram-se melhorias consideráveis aquando da utilização de batches durante o carregamento.

10 Tornou-se então essencial, para a correcta análise do desempenho destas estratégias, a utilização de lotes de registos. É de salientar que, de forma a melhorar o desempenho das estratégias A e B com recurso a batches, é executado um commit para a tabela de factos após o carregamento de cada batch. Esta modificação consegue um ganho variável de alternativa para alternativa, mas sempre superior a 2%, e conseguindo mesmo ser 5% melhor em alguns casos. De seguida, elaborou-se um estudo intensivo do comportamento dos primeiros carregamentos, comparando o carregamento simples com o carregamento através de diferentes batches, para cada estratégia. Para uma melhor avaliação do comportamento do carregamento via batches, é vital experimentar diferentes cardinalidades para cada lote, pelo que foram então testadas cinco alternativas: batches variáveis de 1% da cardinalidade original do ficheiro, de 5%, 1% e também batches de tamanho fixo de 5 mil e 1 mil registos. Mais alguns testes experimentais foram executados, no entanto, apenas serão disponibilizados os resultados de maior relevância. t(min) x A A(1%) A(5%) A(1%) A(5K) A(1K) Fig. 3. Comportamento das alternativas da estratégia convencional, com uso de batches. Como se pode verificar na Fig. 3, não foi possível efectuar os testes para as alternativas que utilizam batches de 1%, 5% e 1% a partir de determinados volumes de dados. Esta impossibilidade deveu-se ao consumo excessivo de memória, ao qual a máquina de testes não conseguiu dar resposta, cancelando o carregamento quase de imediato. Comparando as estratégias com batches de tamanho fixo, verifica-se que o uso de 5 mil registos por lote se revela melhor do que lotes de 1 mil registos. No entanto, para volumes de dados inferiores, o resultado é inverso, ou seja, batches de 1 mil são preferíveis aos de 5 mil, apesar de as diferenças serem muito ligeiras. Como já referido anteriormente, a utilização de batches bate significativamente a estratégia simples, conseguindo para um volume de 2 milhões de registos, por exemplo, uma passagem de mais de 21 horas de carregamento para menos de 6 horas (redução de mais de 7% do tempo total de carregamento).

11 t(min) x B B(1%) B(5%) B(1%) B(5K) B(1K) Fig. 4. Comportamento das alternativas da estratégia prepared statements, com uso de batches. No que diz respeito à estratégia de prepared statements, não foi novamente possível executar testes com 1%, 5% e 1% do volume total de dados, quando a cardinalidade de cada batch excedia os 1 mil registos. Seria necessário aumentar os 2GB de memória física da máquina de testes para os conseguir levar a cabo. Nesta estratégia, os lotes de 1 mil registos revelam-se sempre melhores que os lotes de 5 mil, apesar de as diferenças serem muito pequenas. Novamente, comparando com o carregamento sem batches, são conseguidos ganhos de aproximadamente 72% (redução de 14 horas para 4 horas), isto para um volume total de 2 milhões de registos. Mesmo para volumes de dados menores, o ganho médio conseguido através do uso de batches de 1 mil registos, é sempre superior a 7%. t(min) ,5 1,25 1,75,5, x C C(1%) C(5%) C(1%) C(5K) C(1K) Fig. 5. Comportamento das alternativas da estratégia de bulk loading, com uso de batches.

12 Nos testes realizados à estratégia de Bulk Loading, não se verificaram quaisquer problemas ao nível da memória física, uma vez que esta estratégia carrega directamente as páginas do disco para a tabela de factos, não havendo necessidade de colocar os registos em memória. Qualquer uma das alternativas com batches revelam um melhor desempenho relativamente ao bulk simples, sendo as diferenças entre cada uma delas relativamente pequenas. As estratégias de batches de dimensão variável apresentam-se como as melhores nos testes, com clarividência para o bulk loading com batches de 1%, verificando-se ainda um comportamento muito instável quando os lotes são constituídos por 1 mil registos ou menos. Note-se que, contrariamente ao carregamento simples, os carregamentos com uso de batches não revelam um comportamento linear, o que poderá demonstrar uma certa influência da máquina de testes, em particular do comportamento do disco. Regressando agora ao confronto entre as estratégias de carregamento, é importante comparar a utilização de batches para cada uma das estratégias. Ora, uma vez que não existem dados suficientes para a comparação do carregamento através de batches variáveis de 1%, 5% e 1% do total de registos, irão apenas ser analisados os carregamentos com lotes fixos, no caso, de 1 mil e 5 mil registos. t(min) A(5K) A(1K) B(5K) B(1K) C(5K) C(1K) Fig. 6. Comparação das estratégias de carregamento com batches de dimensão fixa. Como já havia sido denotado no carregamento simples, também o carregamento com recurso a lotes de registos tem um comportamento semelhante. Verifica-se uma clara diminuição no tempo de processamento com prepared statements, relativamente à estratégia convencional, e uma melhoria ainda mais notável quando é aplicado o Bulk Loading. Fornecendo valores mais concretos, o ganho obtido quando se utilizam prepared statements reside nos 3-33% a partir de um volume total de 4 milhões de registos. Por sua vez, a estratégia de Bulk Loading representa ganhos médios de 79% e 87% relativamente ao carregamento com prepared statements e convencional, respectivamente.

13 5.4 The best of the best Para finalizar, efectua-se agora uma comparação entre a melhor alternativa testada para cada uma das estratégias de carregamento de dados. Como foi possível verificar na subsecção anterior, as estratégias que revelaram um melhor desempenho foram a estratégia convencional com recurso a batches de tamanho fixo 5 mil registos - A(5K); a estratégia com prepared statements recorrendo também a batches, de cardinalidade fixa 1 mil registos - B(1K); e ainda a estratégia de bulk loading com batches de tamanho variável, correspondente a 1% do número total de registos - C(1%). t(min) A(5K) B(1K) C(1%) Fig. 7. Desempenho de cada uma das melhores alternativas testadas. Mesmo tendo por base de comparação a melhor implementação de cada alternativa, verifica-se uma esmagadora superioridade da estratégia de Bulk sobre as restantes. Concretizando, os ganhos obtidos por este tipo de carregamento rondam em média os 82 e 88 pontos percentuais, relativamente às estratégias B(1K) e A(5K), respectivamente. Esta diferença percentual corresponde, em tempo efectivo, e para um total de 4 milhões de registos, à passagem de mais de 11 horas de carregamento para 7 horas e meia (através do uso de Prepared Statements) ou 1 hora e 2 minutos no caso da utilização de bulk. Ainda assim, a estratégia B(1K) revela uma melhoria sobre a convencional, que varia entre 31 e 39% conforme o volume de dados testado. Por uma questão meramente indicativa, comparando a abordagem que revelou a pior performance com o carregamento de 2 milhões de registos através da melhor estratégia, verifica-se um ganho a rondar os 97%. Na primeira, o carregamento demoraria mais de 21 horas, enquanto na segunda bastariam uns meros 4 minutos para que todo o processo estivesse concluído. Estes resultados demonstram que o frequente desprezo demonstrado em relação à última fase do processo de povoamento dos sistemas de data warehousing, aquando da sua implementação, origina frequentemente uma grande deterioração do desempenho no carregamento dos dados para o data warehouse quando se verifica um grande aumento do volume de dados a inserir.

14 6 Conclusões e Trabalho Futuro Neste artigo, abordámos o problema do carregamento de elevados volumes de dados para as tabelas de facto de um data warehouse, tendo como fonte de dados ficheiros de texto. Apresentámos três tipos de estratégias para esse carregamento, bem como diversas formas de optimização das mesmas, com vista à redução do tempo levado a cabo por essa tarefa. Os testes experimentais demonstram que a estratégia de carregamento Bulk se revela notoriamente como a melhor para o caso testado, sendo a utilização de batches uma adição importante para a sua optimização. No entanto, não foi possível identificar o tamanho ideal de cada batch, devido a limitações de testes. Para os volumes de dados testados, não se verificaram pontos claros de degradação em qualquer uma das estratégias testadas, apesar de haver uma ligeira percepção de uma pioria na performance de algumas das estratégias, o que indica que estas poderão degenerar a partir de volumes de dados superiores aos testados. Num futuro próximo, pretende-se aplicar os testes a diferentes sistemas reais de povoamento, que utilizam estratégias com um maior nível de optimização, de forma a verificar se os resultados obtidos se mantêm válidos. Outra estratégia a comparar passa pela utilização do comando Import, presente no DB2, da IBM, que consiste basicamente numa optimização da estratégia convencional [5]. Pretendemos, adicionalmente, aprofundar os testes realizados, em especial para a determinação do tamanho ideal de cada lote de registos para a estratégia que implementa o Bulk Loading, de forma a criar um modelo de recomendação, em que, tomando como ponto de partida a estimativa do volume de dados para carregamento, seja possível indicar os parâmetros que permitam um desempenho óptimo. Referências 1. Amer-Yahia, S. and Cluet, S. 24. A declarative approach to optimize bulk loading into databases. ACM Trans. Database Syst., vol. 29, pp (24) 2. Bridge, W., Joshi, A., Keihl, M., Lahiri, T., Loaiza, J., MacNaughton, N.: The Oracle Universal Server Buffer Manager. In Proceedings of the 23rd International Conference on Very Large Data Bases (VLDB 97, Athens, Greece, Aug.). pp (1997) 3. Fenk, R., Kawakami, A., Markl, V., Bayer, R., and Osaki, S.: Bulk Loading a Data Warehouse Built Upon a UB-Tree. In Proceedings of the 2 international Symposium on Database Engineering & Applications, pp IDEAS. IEEE Computer Society, Washington (2). 4. Henderson, K.: The Guru's Guide to SQL Server Architecture and Internals. Addison Wesley, USA (23) 5. IBM, uw.admin.cmd.doc/doc/r834.html 6. Kimball, R., Caserta, J.: The Data Warehouse ETL Toolkit: Practical Techniques for Extracting, Cleaning, Conforming and Delivering Data. John Wiley & Sons, Indianapolis (24) 7. Kimball, R., Reeves, L., Ross, M., Thornthwaite, W., Becker, B.: The data Warehouse Lifecycle Toolkit: Practical Techniques for Building Data Warehouse and Business Intelligence Systems, Second Edition. Wiley Publishing, Inc., Indianapolis (28).

15 8. Microsoft Developer Network, 9. Microsoft Developer Network, 1. Microsoft Developer Network, Parsian, M.: JDBC Recipes: A Problem-Solution Approach. Apress, USA (25) 12. Raghavan, V. V Loading the Data Warehouse Across Various Parallel Architectures. In Proceedings of the 22th international Conference on Very Large Data Bases, Morgan Kaufmann, San Francisco (1996) 13. Rausch, N.A. and Wills, N.J.: "Super Size It!!! Maximize the Performance of Your ETL Processes." Proceedings of the SAS Global Forum 27 Conference, (28) 14. Shirazi, J.: Java Performance Tuning, 2nd Edition. O'Reilly & Associates, Inc., California (23) 15. Venugopal, V., Bhat, S.G., Fang, J.: Performance Driven Data Integration: an optimized approach. SAS Global Forum (27) 16. Wilkins, B.: Tips for improving INSERT performance in DB2 Universal Database, IBM (24)

Manual de Utilizador. Disciplina de Projecto de Sistemas Industriais. Escola Superior de Tecnologia. Instituto Politécnico de Castelo Branco

Manual de Utilizador. Disciplina de Projecto de Sistemas Industriais. Escola Superior de Tecnologia. Instituto Politécnico de Castelo Branco Escola Superior de Tecnologia Instituto Politécnico de Castelo Branco Departamento de Informática Curso de Engenharia Informática Disciplina de Projecto de Sistemas Industriais Ano Lectivo de 2005/2006

Leia mais

DOCBASE. 1. Conceitos gerais. 2. Estrutura da pasta de associações. 3. A área de documentos reservados. 4. Associação de Imagens

DOCBASE. 1. Conceitos gerais. 2. Estrutura da pasta de associações. 3. A área de documentos reservados. 4. Associação de Imagens Documentação, Informática e Desenvolvimento 1 DOCBASE ASSOCIAÇÔES MULTIMÉDIA 1. Conceitos gerais 2. Estrutura da pasta de associações 3. A área de documentos reservados 4. Associação de Imagens 5. Procedimentos

Leia mais

Bases de Dados. Lab 1: Introdução ao ambiente

Bases de Dados. Lab 1: Introdução ao ambiente Departamento de Engenharia Informática 2010/2011 Bases de Dados Lab 1: Introdução ao ambiente 1º semestre O ficheiro bank.sql contém um conjunto de instruções SQL para criar a base de dados de exemplo

Leia mais

Modelo Cascata ou Clássico

Modelo Cascata ou Clássico Modelo Cascata ou Clássico INTRODUÇÃO O modelo clássico ou cascata, que também é conhecido por abordagem top-down, foi proposto por Royce em 1970. Até meados da década de 1980 foi o único modelo com aceitação

Leia mais

Acronis Servidor de Licença. Manual do Utilizador

Acronis Servidor de Licença. Manual do Utilizador Acronis Servidor de Licença Manual do Utilizador ÍNDICE 1. INTRODUÇÃO... 3 1.1 Descrição geral... 3 1.2 Política de licenças... 3 2. SISTEMAS OPERATIVOS SUPORTADOS... 4 3. INSTALAR O SERVIDOR DE LICENÇA

Leia mais

Manual do Utilizador

Manual do Utilizador Faculdade de Ciências e Tecnologia da Universidade de Coimbra Departamento de Engenharia Electrotécnica e Computadores Software de Localização GSM para o modem Siemens MC35i Manual do Utilizador Índice

Leia mais

Manual do Gestor da Informação do Sistema

Manual do Gestor da Informação do Sistema Faculdade de Engenharia da Universidade do Porto Licenciatura Informática e Computação Laboratório de Informática Avançada Automatização de Horários Manual do Gestor da Informação do Sistema João Braga

Leia mais

Desenvolvimento de uma Aplicação WEB para monitorização de BD Oracle

Desenvolvimento de uma Aplicação WEB para monitorização de BD Oracle Desenvolvimento de uma Aplicação WEB para monitorização de BD Oracle Luís Filipe Borges Pinto Resumo: Este projecto consiste na implementação de uma aplicação WEB para monitorização

Leia mais

Servidores Virtuais. Um servidor à medida da sua empresa, sem investimento nem custos de manutenção.

Servidores Virtuais. Um servidor à medida da sua empresa, sem investimento nem custos de manutenção. es Virtuais Um servidor à medida da sua empresa, sem investimento nem custos de manutenção. O que são os es Virtuais? Virtual é um produto destinado a empresas que necessitam de um servidor dedicado ligado

Leia mais

Bases de Dados II Engª. Informática + Ensino Informática

Bases de Dados II Engª. Informática + Ensino Informática Introdução SQL SERVER hugomcp@di-ubi.pt, 2004 Arranque do MS SQLServer UNIVERSIDADE DA BEIRA INTERIOR Departamento de Informática Bases de Dados II Engª. Informática + Ensino Informática Pode-se usar o

Leia mais

Timer e serviços do Timer

Timer e serviços do Timer Como é que se justifica a utilização de temporizadores em sistemas embebido e em tempo-real? 1. Nestes sistemas, tarefas do sistema e do utilizador fazem escalonamento e execução de actividades após decorrer

Leia mais

Relatório SHST - 2003

Relatório SHST - 2003 Relatório da Actividade dos Serviços de Segurança, Higiene e Saúde no Trabalho Relatório SHST - 2003 Programa de Validação e Encriptação Manual de Operação Versão 1.1 DEEP Departamento de Estudos, Estatística

Leia mais

TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO. SISTEMAS DE GESTÃO DE BASE DE DADOS Microsoft Access TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO

TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO. SISTEMAS DE GESTÃO DE BASE DE DADOS Microsoft Access TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO Microsoft Access TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO CONCEITOS BÁSICOS 1 Necessidade das base de dados Permite guardar dados dos mais variados tipos; Permite

Leia mais

Manual de Utilização de Certificados Digitais. Microsoft Word 2003

Manual de Utilização de Certificados Digitais. Microsoft Word 2003 Manual de Utilização de Certificados Digitais Microsoft Página 2 de 11 CONTROLO DOCUMENTAL REGISTO DE MODIFICAÇÕES Versão Data Motivo da Modificação 1.9 08/02/2013 Actualização do conteúdo do manual de

Leia mais

4 Implementação e Resultados Experimentais

4 Implementação e Resultados Experimentais 4 Implementação e Resultados Experimentais Com o objetivo de fazer a criação automática de visões materializadas, ou seja, prover uma solução on-the-fly para o problema de seleção de visões materializadas,

Leia mais

Hugo Pedro Proença, 2007

Hugo Pedro Proença, 2007 Stored Procedures À medida que a complexidade dos sistemas aumenta, torna-se cada vez mais difícil a tarefa de integrar o SQL com as aplicações cliente. Além disto, é necessário que todas as aplicações

Leia mais

Manual do GesFiliais

Manual do GesFiliais Manual do GesFiliais Introdução... 3 Arquitectura e Interligação dos elementos do sistema... 4 Configuração do GesPOS Back-Office... 7 Utilização do GesFiliais... 12 Outros modos de utilização do GesFiliais...

Leia mais

Internet Update de PaintManager TM. Manual de instalação e utilização do programa de actualização

Internet Update de PaintManager TM. Manual de instalação e utilização do programa de actualização Internet Update de PaintManager TM Manual de instalação e utilização do programa de actualização ÍNDICE O que é o programa Internet Update? 3 Como se instala e executa o programa? 3 Aceder ao programa

Leia mais

Utilização do SOLVER do EXCEL

Utilização do SOLVER do EXCEL Utilização do SOLVER do EXCEL 1 Utilização do SOLVER do EXCEL José Fernando Oliveira DEEC FACULDADE DE ENGENHARIA DA UNIVERSIDADE DO PORTO MAIO 1998 Para ilustrar a utilização do Solver na resolução de

Leia mais

Instalação do Sistema Operativo Windows XP

Instalação do Sistema Operativo Windows XP Curso Profissional - Técnico de Informática de Gestão 10ºB Prof. Pedro Lopes Ficha de Trabalho nº1 S i s t e m a s d e I n f o r m a ç ã o Instalação do Sistema Operativo Windows XP A instalação de um

Leia mais

BRAlarmExpert. Software para Gerenciamento de Alarmes. BENEFÍCIOS obtidos com a utilização do BRAlarmExpert:

BRAlarmExpert. Software para Gerenciamento de Alarmes. BENEFÍCIOS obtidos com a utilização do BRAlarmExpert: BRAlarmExpert Software para Gerenciamento de Alarmes A TriSolutions conta com um produto diferenciado para gerenciamento de alarmes que é totalmente flexível e amigável. O software BRAlarmExpert é uma

Leia mais

Engenharia de Software Sistemas Distribuídos

Engenharia de Software Sistemas Distribuídos Engenharia de Software Sistemas Distribuídos 2 o Semestre de 2009/2010 FEARSe Requisitos para a 1 a entrega 18 de Março de 2010 1 Introdução O projecto conjunto das disciplinas de Engenharia de Software

Leia mais

SISTEMAS OPERACIONAIS CAPÍTULO 3 CONCORRÊNCIA

SISTEMAS OPERACIONAIS CAPÍTULO 3 CONCORRÊNCIA SISTEMAS OPERACIONAIS CAPÍTULO 3 CONCORRÊNCIA 1. INTRODUÇÃO O conceito de concorrência é o princípio básico para o projeto e a implementação dos sistemas operacionais multiprogramáveis. O sistemas multiprogramáveis

Leia mais

Iniciação à Informática

Iniciação à Informática Meu computador e Windows Explorer Justificativa Toda informação ou dado trabalhado no computador, quando armazenado em uma unidade de disco, transforma-se em um arquivo. Saber manipular os arquivos através

Leia mais

Tarefa Orientada 16 Vistas

Tarefa Orientada 16 Vistas Tarefa Orientada 16 Vistas Objectivos: Vistas só de leitura Vistas de manipulação de dados Uma vista consiste numa instrução de SELECT que é armazenada como um objecto na base de dados. Deste modo, um

Leia mais

Processo do Serviços de Manutenção de Sistemas de Informação

Processo do Serviços de Manutenção de Sistemas de Informação Processo do Serviços de Manutenção de Sistemas de Informação 070112=SINFIC HM Processo Manutencao MSI.doc, Página 1 Ex.mo(s) Senhor(es): A SINFIC agradece a possibilidade de poder apresentar uma proposta

Leia mais

MANUAL DE INSTALAÇÃO

MANUAL DE INSTALAÇÃO MANUAL DE INSTALAÇÃO V3.0.0 AVAplayer Índice Requisito Mínimos...2 Computador de emissão...2 Computadores de produção postos de trabalho...2 Instalação...3 Instalar o AVAplayer a partir do CD-ROM fornecido...3

Leia mais

COMPUTAÇÃO e PROGRAMAÇÃO

COMPUTAÇÃO e PROGRAMAÇÃO COMPUTAÇÃO e PROGRAMAÇÃO 2º Trabalho Ano lectivo 2009/2010 MEMec e LEAN Data e hora limite de entrega: 6 de Janeiro de 2010, até às 23h59m Entrega: Submissão electrónica, via Fénix (ver instruções na secção:

Leia mais

TIC Unidade 2 Base de Dados. Informação é todo o conjunto de dados devidamente ordenados e organizados de forma a terem significado.

TIC Unidade 2 Base de Dados. Informação é todo o conjunto de dados devidamente ordenados e organizados de forma a terem significado. Conceitos relativos à Informação 1. Informação O que á a informação? Informação é todo o conjunto de dados devidamente ordenados e organizados de forma a terem significado. 2. Dados Em informática designa-se

Leia mais

No VirtualBox, carregar no Botão Novo (New), que irá abrir o Assistente de Criação de Máquina Virtual para criar uma nova VM.

No VirtualBox, carregar no Botão Novo (New), que irá abrir o Assistente de Criação de Máquina Virtual para criar uma nova VM. INSTALAÇÃO E GESTÃO DE REDES INFORMÁTICAS EFA NS/NÍVEL III UFCD 5 FORMADOR: PAULO RELVAS Fontes: http://www.formatds.org/instalar-ubuntu-no-virtualbox/ MANUAL DE INSTALAÇÃO UBUNTU 8.10 SOBRE VBOX DA SUN

Leia mais

Manual de Utilização de Certificados Digitais. Microsoft Word 2010

Manual de Utilização de Certificados Digitais. Microsoft Word 2010 Manual de Utilização de Certificados Digitais Microsoft Página 2 de 11 CONTROLO DOCUMENTAL REGISTO DE MODIFICAÇÕES Versão Data Motivo da Modificação 1.1 08/02/2013 Alteração do conteúdo do manual de suporte

Leia mais

SAFT para siscom. Manual do Utilizador. Data última versão: 07.11.2008 Versão: 1.01. Data criação: 21.12.2007

SAFT para siscom. Manual do Utilizador. Data última versão: 07.11.2008 Versão: 1.01. Data criação: 21.12.2007 Manual do Utilizador SAFT para siscom Data última versão: 07.11.2008 Versão: 1.01 Data criação: 21.12.2007 Faro R. Dr. José Filipe Alvares, 31 8005-220 FARO Telf. +351 289 899 620 Fax. +351 289 899 629

Leia mais

Gestão dos Níveis de Serviço

Gestão dos Níveis de Serviço A Gestão dos Níveis de Serviço (SLM) Os sistemas e tecnologias de informação e comunicação têm nas empresas um papel cada vez mais importante evoluindo, hoje em dia, para níveis mais elevados de funcionamento

Leia mais

Capítulo 3. Avaliação de Desempenho. 3.1 Definição de Desempenho

Capítulo 3. Avaliação de Desempenho. 3.1 Definição de Desempenho 20 Capítulo 3 Avaliação de Desempenho Este capítulo aborda como medir, informar e documentar aspectos relativos ao desempenho de um computador. Além disso, descreve os principais fatores que influenciam

Leia mais

ARQUIVO DIGITAL e Gestão de Documentos

ARQUIVO DIGITAL e Gestão de Documentos ARQUIVO DIGITAL e Gestão de Documentos TECNOLOGIA INOVAÇÃO SOFTWARE SERVIÇOS A MISTER DOC foi constituída com o objectivo de se tornar uma referência no mercado de fornecimento de soluções de gestão de

Leia mais

PLANEAMENTO DA INSTALAÇÃO DO WINDOWS SERVER 2003

PLANEAMENTO DA INSTALAÇÃO DO WINDOWS SERVER 2003 PLANEAMENTO DA INSTALAÇÃO DO WINDOWS SERVER 2003 1 PLANEAMENTO DA INSTALAÇÃO Instalar o Windows Server 2003 requer alguma preparação, devido à sua complexidade: Ao correr o programa de setup (configuração)

Leia mais

Dadas a base e a altura de um triangulo, determinar sua área.

Dadas a base e a altura de um triangulo, determinar sua área. Disciplina Lógica de Programação Visual Ana Rita Dutra dos Santos Especialista em Novas Tecnologias aplicadas a Educação Mestranda em Informática aplicada a Educação ana.santos@qi.edu.br Conceitos Preliminares

Leia mais

Bases de Dados. O ficheiro create-bank.sql contém um conjunto de instruções SQL para criar a base de dados de exemplo ilustrada na figura 1.

Bases de Dados. O ficheiro create-bank.sql contém um conjunto de instruções SQL para criar a base de dados de exemplo ilustrada na figura 1. Departamento de Engenharia Informática 2008/2009 Bases de Dados Lab 1: Introdução ao ambiente 1º semestre O ficheiro create-bank.sql contém um conjunto de instruções SQL para criar a base de dados de exemplo

Leia mais

AP_ Conta Aplicativo para digitação e envio de contas médicas no padrão TISS

AP_ Conta Aplicativo para digitação e envio de contas médicas no padrão TISS AP_ Conta Aplicativo para digitação e envio de contas médicas no padrão TISS Manual de Instalação Tempro Software StavTISS Sumário 1. INTRODUÇÃO... 2 2. REQUISITOS DO SISTEMA... 3 3. INSTALAÇÃO... 4 4.

Leia mais

MANUAL DE INSTALAÇÃO 1) ORACLE VIRTUALBOX ; 2) MICROSOFT WINDOWS ; 3) SUMÁRIOS GENEPLUS.

MANUAL DE INSTALAÇÃO 1) ORACLE VIRTUALBOX ; 2) MICROSOFT WINDOWS ; 3) SUMÁRIOS GENEPLUS. PROGRAMA EMBRAPA DE MELHORAMENTO DE GADO DE CORTE MANUAL DE INSTALAÇÃO 1) ORACLE VIRTUALBOX ; 2) MICROSOFT WINDOWS ; 3) SUMÁRIOS GENEPLUS. MANUAL DE INSTALAÇÃO: 1) ORACLE VIRTUALBOX ; 2) MICROSOFT WINDOWS

Leia mais

COMPETÊNCIAS BÁSICAS EM TIC NAS EB1

COMPETÊNCIAS BÁSICAS EM TIC NAS EB1 COMPETÊNCIAS BÁSICAS EM TIC NAS EB1 Oficina do Correio Para saber mais sobre Correio electrónico 1. Dicas para melhor gerir e organizar o Correio Electrónico utilizando o Outlook Express Criar Pastas Escrever

Leia mais

NOTIFICAÇÃO DE NEGÓCIO

NOTIFICAÇÃO DE NEGÓCIO NOTIFICAÇÃO DE NEGÓCIO O Microsoft Business Solutions for Supply Chain Management Navision Business Notification ajudao a gerir a sua empresa mais facilmente e eficazmente. Pode identificar qualquer problema

Leia mais

AULA 5 Sistemas Operacionais

AULA 5 Sistemas Operacionais AULA 5 Sistemas Operacionais Disciplina: Introdução à Informática Professora: Gustavo Leitão Email: gustavo.leitao@ifrn.edu.br Sistemas Operacionais Conteúdo: Partições Formatação Fragmentação Gerenciamento

Leia mais

Software GEFISEME Aplicação destinada ao auxílio do serviço de Metrologia. Rua D. Afonso Henriques, 1726 4435-003 Rio Tinto www.worldsolutions.

Software GEFISEME Aplicação destinada ao auxílio do serviço de Metrologia. Rua D. Afonso Henriques, 1726 4435-003 Rio Tinto www.worldsolutions. Software GEFISEME Aplicação destinada ao auxílio do serviço de Metrologia Rua D. Afonso Henriques, 1726 4435-003 Rio Tinto www.worldsolutions.pt Conteúdo Introdução... 2 Gestão de acessos... 3 Ficha de

Leia mais

ZSRest. Manual de Configuração. CheckOutPDA. V2011-Certificado

ZSRest. Manual de Configuração. CheckOutPDA. V2011-Certificado Manual de Configuração CheckOutPDA V2011-Certificado 1 1. Índice 2. Introdução... 2 3. Pré-requisitos... 3 a) Base de dados... 3 b) Firewall... 3 c) Rede sem fios... 3 d) PDA... 3 4. Instalar PDA... 4

Leia mais

Ministério das Finanças Instituto de Informática. Departamento de Sistemas de Informação

Ministério das Finanças Instituto de Informática. Departamento de Sistemas de Informação Ministério das Finanças Instituto de Informática Departamento de Sistemas de Informação Assiduidade para Calendários Específicos Junho 2010 Versão 6.0-2010 SUMÁRIO 1 OBJECTIVO 4 2 ECRÃ ELIMINADO 4 3 NOVOS

Leia mais

Comunicação documentos de transporte AT via Webservice Singest Sistema Integrado de Gestão. 22-05-2013 Cambragest Serviços de Gestão e Software

Comunicação documentos de transporte AT via Webservice Singest Sistema Integrado de Gestão. 22-05-2013 Cambragest Serviços de Gestão e Software Comunicação documentos de transporte AT via Webservice 22-05-2013 Cambragest Serviços de Gestão e Software I. Índice I. Índice... 1 II. Introdução... 2 III. Configuração de documentos de transporte...

Leia mais

Bases de Dados. Lab 1: Introdução ao ambiente. Figura 1. Base de dados de exemplo

Bases de Dados. Lab 1: Introdução ao ambiente. Figura 1. Base de dados de exemplo Departamento de Engenharia Informática 2012/2013 Bases de Dados Lab 1: Introdução ao ambiente 1º semestre O ficheiro bank.sql contém um conjunto de instruções SQL para criar a base de dados de exemplo

Leia mais

Computação Paralela. Desenvolvimento de Aplicações Paralelas João Luís Ferreira Sobral Departamento do Informática Universidade do Minho.

Computação Paralela. Desenvolvimento de Aplicações Paralelas João Luís Ferreira Sobral Departamento do Informática Universidade do Minho. Computação Paralela Desenvolvimento de Aplicações Paralelas João Luís Ferreira Sobral Departamento do Informática Universidade do Minho Outubro 2005 Desenvolvimento de Aplicações Paralelas Uma Metodologia

Leia mais

bit Tecnologia ao Serviço do Mundo Rural www.ruralbit.pt

bit Tecnologia ao Serviço do Mundo Rural www.ruralbit.pt bit Tecnologia ao Serviço do Mundo Rural www.ruralbit.pt :: Ruralbit :: http://www.ruralbit.pt :: Índice :: Ruralbit :: http://www.ruralbit.pt :: Pág. 1 Introdução O Pocket Genbeef Base é uma aplicação

Leia mais

INSTALAÇÃO DO SAGE 2008 NO WINDOWS XP

INSTALAÇÃO DO SAGE 2008 NO WINDOWS XP INSTALAÇÃO DO SAGE 2008 NO WINDOWS XP Inserir o cd de instalação do programa e executar a opção Next ERP Clicar em instalar Alguns instantes depois aparecerá a mensagem: o Sage Next utiliza o Microsoft

Leia mais

A VISTA BACKSTAGE PRINCIPAIS OPÇÕES NO ECRÃ DE ACESSO

A VISTA BACKSTAGE PRINCIPAIS OPÇÕES NO ECRÃ DE ACESSO DOMINE A 110% ACCESS 2010 A VISTA BACKSTAGE Assim que é activado o Access, é visualizado o ecrã principal de acesso na nova vista Backstage. Após aceder ao Access 2010, no canto superior esquerdo do Friso,

Leia mais

www.leitejunior.com.br 29/06/2012 14:30 Leite Júnior QUESTÕES CESPE BACKUP

www.leitejunior.com.br 29/06/2012 14:30 Leite Júnior QUESTÕES CESPE BACKUP QUESTÕES CESPE BACKUP QUESTÃO 01 - Analise as seguintes afirmações relativas a cópias de segurança. I. No Windows é possível fazer automaticamente um backup, em um servidor de rede, dos arquivos que estão

Leia mais

Comparativo de desempenho do Pervasive PSQL v11

Comparativo de desempenho do Pervasive PSQL v11 Comparativo de desempenho do Pervasive PSQL v11 Um artigo Pervasive PSQL Setembro de 2010 Conteúdo Resumo executivo... 3 O impacto das novas arquiteturas de hardware nos aplicativos... 3 O projeto do Pervasive

Leia mais

O que é RAID? Tipos de RAID:

O que é RAID? Tipos de RAID: O que é RAID? RAID é a sigla para Redundant Array of Independent Disks. É um conjunto de HD's que funcionam como se fosse um só, isso quer dizer que permite uma tolerância alta contra falhas, pois se um

Leia mais

Guia de instalação do Player Displr Windows 7, 8.1 e 10

Guia de instalação do Player Displr Windows 7, 8.1 e 10 Guia de instalação do Player Displr Windows 7, 8.1 e 10 Versão 1.0 www.displr.com Índice 1- Requisitos mínimos do sistema... 3 2- Preparação da instalação... 3 3- Assistente de instalação... 4 3.1 Bem-vindo

Leia mais

GereComSaber. Desenvolvimento de Sistemas de Software. Universidade do Minho Conselho de Cursos de Engenharia Licenciatura em Engenharia Informática

GereComSaber. Desenvolvimento de Sistemas de Software. Universidade do Minho Conselho de Cursos de Engenharia Licenciatura em Engenharia Informática Universidade do Minho Conselho de Cursos de Engenharia Licenciatura em Engenharia Informática Desenvolvimento de Sistemas de Software Ano Lectivo de 2009/10 GereComSaber Ana Duarte, André Guedes, Eduardo

Leia mais

Tarefa Orientada 14 Subconsultas

Tarefa Orientada 14 Subconsultas Tarefa Orientada 14 Subconsultas Objectivos: Subconsultas não correlacionadas Operadores ALL, SOME e ANY Subconsultas correlacionadas Operador EXISTS Subconsultas incluídas na cláusula FROM de uma consulta

Leia mais

Chord. Tecnologias de Middleware. Fernando Martins - fmp.martins@gmail.com

Chord. Tecnologias de Middleware. Fernando Martins - fmp.martins@gmail.com Chord Tecnologias de Middleware 2006/2007 Fernando Martins - fmp.martins@gmail.com Tópicos Objectivo Motivação Peer-To-Peer Chord Descrição Geral Características Distintivas Comparação DNS Modelo do Sistema

Leia mais

ZS Rest. Manual Avançado. Instalação em Rede. v2011

ZS Rest. Manual Avançado. Instalação em Rede. v2011 Manual Avançado Instalação em Rede v2011 1 1. Índice 2. Introdução... 2 3. Hardware... 3 b) Servidor:... 3 c) Rede:... 3 d) Pontos de Venda... 4 4. SQL Server... 5 e) Configurar porta estática:... 5 5.

Leia mais

PRIMAVERA EXPRESS: Funcionalidades do Produto

PRIMAVERA EXPRESS: Funcionalidades do Produto PRIMAVERA EXPRESS: Funcionalidades do Produto Como efetuo a mudança de ano do Ponto de Venda? No Programa Express aceda a Tabelas Pontos de Venda Postos de Venda abrir o separador Movimentos Caixa e: -

Leia mais

Técnicas de Caixa Preta de Teste de Software

Técnicas de Caixa Preta de Teste de Software Técnicas de Caixa Preta de Teste de Software Na maioria de projetos de teste, o tempo para a realização dos mesmos sempre é curto e os números de testes a serem realizados nas aplicações são inúmeros.

Leia mais

Considerações sobre o Disaster Recovery

Considerações sobre o Disaster Recovery Considerações sobre o Disaster Recovery I M P O R T A N T E O backup completo para Disaster Recovery não dispensa o uso de outros tipos de trabalhos de backup para garantir a integridadedo sistema. No

Leia mais

Orientação a Objetos

Orientação a Objetos 1. Domínio e Aplicação Orientação a Objetos Um domínio é composto pelas entidades, informações e processos relacionados a um determinado contexto. Uma aplicação pode ser desenvolvida para automatizar ou

Leia mais

Consistem num conjunto de apontadores para instâncias especificas de cada relação.

Consistem num conjunto de apontadores para instâncias especificas de cada relação. Mecanismo usado para mais fácil e rapidamente aceder à informação existente numa base de dados. Bases de Dados de elevadas dimensões. Consistem num conjunto de apontadores para instâncias especificas de

Leia mais

Programação de Sistemas

Programação de Sistemas Programação de Sistemas Introdução à gestão de memória Programação de Sistemas Gestão de memória : 1/16 Introdução (1) A memória central de um computador é escassa. [1981] IBM PC lançado com 64KB na motherboard,

Leia mais

Sistema de Controle de Solicitação de Desenvolvimento

Sistema de Controle de Solicitação de Desenvolvimento Sistema de Controle de Solicitação de Desenvolvimento Introdução O presente documento descreverá de forma objetiva as principais operações para abertura e consulta de uma solicitação ao Setor de Desenvolvimento

Leia mais

GIAE VERSÃO 2.1.1 28 JUNHO DE 2011 MUITO IMPORTANTE

GIAE VERSÃO 2.1.1 28 JUNHO DE 2011 MUITO IMPORTANTE GIAE VERSÃO 2.1.1 28 JUNHO DE 2011 MUITO IMPORTANTE Devido a um bug detectado no motor da base de dados, situação agora corrigida pelo fabricante, esta nova actualização do GIAE é disponibilizada numa

Leia mais

SISTEMA DE ARQUIVOS. Instrutor: Mawro Klinger

SISTEMA DE ARQUIVOS. Instrutor: Mawro Klinger SISTEMA DE ARQUIVOS Instrutor: Mawro Klinger Estrutura dos Discos As informações digitais, quer sejam programas ou dados do usuário, são gravadas em unidades de armazenamento. O HD é uma unidade de armazenamento

Leia mais

EAmb V.1 ESPOSENDE AMBIENTE. GestProcessos Online. Manual do Utilizador

EAmb V.1 ESPOSENDE AMBIENTE. GestProcessos Online. Manual do Utilizador EAmb V.1 ESPOSENDE AMBIENTE GestProcessos Online Manual do Utilizador GestProcessos Online GABINETE DE SISTEMAS DE INFORMAÇÃO E COMUNICAÇÃO EAmb Esposende Ambiente, EEM Rua da Ribeira 4740-245 - Esposende

Leia mais

Configuração do Ambiente de Trabalho

Configuração do Ambiente de Trabalho pag. 1 Configuração do Ambiente de Trabalho 1. Utilização da Área de Trabalho Criação de Atalhos: O Windows NT apresenta um Ambiente de Trabalho flexível, adaptável às necessidades e preferências do utilizador.

Leia mais

Uma peça estratégica para o seu negócio

Uma peça estratégica para o seu negócio Uma peça estratégica para o seu negócio INFORMAÇÃO GERAL DA EMPRESA CASO DE SUCESSO EM IMPLEMENTAÇÃO BI PERGUNTAS E RESPOSTAS Fundada em 1997, Habber Tec é uma empresa especializada na oferta de soluções

Leia mais

CAP. I ERROS EM CÁLCULO NUMÉRICO

CAP. I ERROS EM CÁLCULO NUMÉRICO CAP. I ERROS EM CÁLCULO NUMÉRICO 0. Introdução Por método numérico entende-se um método para calcular a solução de um problema realizando apenas uma sequência finita de operações aritméticas. A obtenção

Leia mais

SISTEMA DE GESTÃO AMBIENTAL

SISTEMA DE GESTÃO AMBIENTAL Automatização do processo de Controlo Ambiental Auto-controlo ambiental Sendo a Indústria que detém fontes poluidoras (Cimenteiras, Produção de energia, Incineradoras, etc.), uma das mais intervenientes

Leia mais

Versão 1.0. GEP Gabinete de Estratégia e Planeamento. aneamento. Rua Castilho, Nº 24 Lisboa 1250-069 Lisboa Homepage : http://www.gep.mtss.gov.

Versão 1.0. GEP Gabinete de Estratégia e Planeamento. aneamento. Rua Castilho, Nº 24 Lisboa 1250-069 Lisboa Homepage : http://www.gep.mtss.gov. Versão 1.0 GEP Gabinete de Estratégia e Planeamento aneamento. Rua Castilho, Nº 24 Lisboa 1250-069 Lisboa Homepage : http://www.gep.mtss.gov.pt Índice Folha 2 ÍNDICE Folha 1 - Requisitos -------------------------------------------------------------

Leia mais

Faculdade de Engenharia Optimização. Prof. Doutor Engº Jorge Nhambiu

Faculdade de Engenharia Optimização. Prof. Doutor Engº Jorge Nhambiu 1 Programação Não Linear Aula 25: Programação Não-Linear - Funções de Uma única variável Mínimo; Mínimo Global; Mínimo Local; Optimização Irrestrita; Condições Óptimas; Método da Bissecção; Método de Newton.

Leia mais

GUIA PARA O PREENCHIMENTO DOS FORMULÁRIOS ENTIDADE GESTORA ERP PORTUGAL

GUIA PARA O PREENCHIMENTO DOS FORMULÁRIOS ENTIDADE GESTORA ERP PORTUGAL GUIA PARA O PREENCHIMENTO DOS FORMULÁRIOS ENTIDADE GESTORA ERP PORTUGAL Versão: 1.0 Data: 05-06-2009 Índice Acesso e estados dos Formulários... 3 Escolha do Formulário e submissão... 4 Bases para a navegação

Leia mais

Compensação. de Factor de Potência

Compensação. de Factor de Potência Compensação de Factor de Potência oje em dia, praticamente todas as instalações eléctricas têm associadas aparelhos indutivos, nomeadamente, motores e transformadores. Este equipamentos necessitam de energia

Leia mais

Guia rápido do utilizador

Guia rápido do utilizador Guia rápido do utilizador Índice Relatório de roubo 3 Criar um novo relatório de roubo 4 Fornecer detalhes do relatório de roubo Secção 1. Especificar o computador 5 Fornecer detalhes do relatório de roubo

Leia mais

Tarefa Orientada 19 Triggers

Tarefa Orientada 19 Triggers Tarefa Orientada 19 Triggers Objectivos: Criar triggers AFTER Criar triggers INSTEAD OF Exemplos de utilização Os triggers são um tipo especial de procedimento que são invocados, ou activados, de forma

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Aula 13 Gerência de Memória Prof.: Edilberto M. Silva http://www.edilms.eti.br Baseado no material disponibilizado por: SO - Prof. Edilberto Silva Prof. José Juan Espantoso Sumário

Leia mais

DESENVOLVIMENTO DE UM SOFTWARE NA LINGUAGEM R PARA CÁLCULO DE TAMANHOS DE AMOSTRAS NA ÁREA DE SAÚDE

DESENVOLVIMENTO DE UM SOFTWARE NA LINGUAGEM R PARA CÁLCULO DE TAMANHOS DE AMOSTRAS NA ÁREA DE SAÚDE DESENVOLVIMENTO DE UM SOFTWARE NA LINGUAGEM R PARA CÁLCULO DE TAMANHOS DE AMOSTRAS NA ÁREA DE SAÚDE Mariane Alves Gomes da Silva Eliana Zandonade 1. INTRODUÇÃO Um aspecto fundamental de um levantamento

Leia mais

Introdução a Banco de Dados

Introdução a Banco de Dados Introdução a Banco de Dados Ricardo Henrique Tassi - Departamento de Replicação Índice 1- Introdução... 03 2- Quais são os bancos de dados mais conhecidos hoje em dia...04 3- Quais são os tipos de banco...05

Leia mais

Cefaleia crónica diária

Cefaleia crónica diária Cefaleia crónica diária Cefaleia crónica diária O que é a cefaleia crónica diária? Comecei a ter dores de cabeça que apareciam a meio da tarde. Conseguia continuar a trabalhar mas tinha dificuldade em

Leia mais

Manual de Utilizador

Manual de Utilizador Instituto Politécnico de Setúbal Escola Superior de Tecnologia Engenharia Informática Industrial Sistemas Operativos 2006 Manual de Utilizador Docente: Professor António Corral Trabalho elaborado por:

Leia mais

por João Gomes, Director Executivo do Instituto de Planeamento e Desenvolvimento do Turismo e Professor Associado da Universidade Fernando Pessoa

por João Gomes, Director Executivo do Instituto de Planeamento e Desenvolvimento do Turismo e Professor Associado da Universidade Fernando Pessoa COMO AUMENTAR AS RECEITAS DE UM NEGÓCIO: O CONCEITO DE GESTÃO DE RECEITAS (revenue management) (Publicado na Revista Hotéis de Portugal Maio/Junho 2004) por João Gomes, Director Executivo do Instituto

Leia mais

Manual Gespos Passagem de Dados Fecho de Ano

Manual Gespos Passagem de Dados Fecho de Ano Manual Gespos Passagem de Dados Fecho de Ano ÍNDICE PASSAGEM DE DADOS / FECHO DE ANO... 1 Objectivo da função... 1 Antes de efectuar a Passagem de dados / Fecho de Ano... 1 Cópia de segurança da base de

Leia mais

Instalações Máquinas Equipamentos Pessoal de produção

Instalações Máquinas Equipamentos Pessoal de produção Fascículo 6 Arranjo físico e fluxo O arranjo físico (em inglês layout) de uma operação produtiva preocupa-se com o posicionamento dos recursos de transformação. Isto é, definir onde colocar: Instalações

Leia mais

Novo Formato de Logins Manual de Consulta

Novo Formato de Logins Manual de Consulta Gestão Integrada de Acessos Novo Formato de Logins Manual de Consulta Gestão Integrada de Acessos Histórico de Alterações Versão Descrição Autor Data 1.0 Versão inicial DSI/PPQ 2014-07-11 Controlo do documento

Leia mais

RECOLHA DE INFORMAÇÃO DE REMUNERAÇÕES, SUPLEMENTOS E DOS PONTOS DECORRENTES DA AVALIAÇÃO DE DESEMPENHO

RECOLHA DE INFORMAÇÃO DE REMUNERAÇÕES, SUPLEMENTOS E DOS PONTOS DECORRENTES DA AVALIAÇÃO DE DESEMPENHO RECOLHA DE INFORMAÇÃO DE REMUNERAÇÕES, SUPLEMENTOS E DOS PONTOS DECORRENTES DA AVALIAÇÃO DE DESEMPENHO MANUAL DO UTILIZADOR 1 RECOLHA DE INFORMAÇÃO DE REMUNERAÇÕES E DE DESEMPENHO MANUAL DO UTILIZADOR

Leia mais

DEPARTAMENTO DE MATEMÁTICA E CIÊNCIAS EXPERIMENTAIS

DEPARTAMENTO DE MATEMÁTICA E CIÊNCIAS EXPERIMENTAIS DEPARTAMENTO DE MATEMÁTICA E CIÊNCIAS EXPERIMENTAIS Planificação Anual da Disciplina de TIC Módulos 1,2,3-10.ºD CURSO PROFISSIONAL DE TÉCNICO DE APOIO À GESTÃO DESPORTIVA Ano Letivo 2015-2016 Manual adotado:

Leia mais

Informática I. Aula 5. http://www.ic.uff.br/~bianca/informatica1/ Aula 5-13/05/2006 1

Informática I. Aula 5. http://www.ic.uff.br/~bianca/informatica1/ Aula 5-13/05/2006 1 Informática I Aula 5 http://www.ic.uff.br/~bianca/informatica1/ Aula 5-13/05/2006 1 Ementa Histórico dos Computadores Noções de Hardware e Software Microprocessadores Sistemas Numéricos e Representação

Leia mais

Instituto Politécnico de Beja. Escola Superior de Tecnologia e Gestão

Instituto Politécnico de Beja. Escola Superior de Tecnologia e Gestão Instituto Politécnico de Beja Escola Superior de Tecnologia e Gestão Curso de Engenharia Informática Disciplina de Estrutura de dados e Algoritmos 2º Ano - 1º Semestre Relatório Connected Component Labeling

Leia mais

Manual Sistema MLBC. Manual do Sistema do Módulo Administrativo

Manual Sistema MLBC. Manual do Sistema do Módulo Administrativo Manual Sistema MLBC Manual do Sistema do Módulo Administrativo Este documento tem por objetivo descrever as principais funcionalidades do sistema administrador desenvolvido pela MLBC Comunicação Digital.

Leia mais

Reconhecer a estrutura de um sistema operativo. Definir um plano de instalação de um servidor de rede local.

Reconhecer a estrutura de um sistema operativo. Definir um plano de instalação de um servidor de rede local. FICHA TÉCNICA Exercício nº 7 Data de Aplicação 12/02/2009 NOME DO EXERCÍCIO Selecção de Hardware para Rede Local 773 DESTINATÁRIOS Duração Pré Requisitos Recursos / Equipamentos Orientações Pedagógicas

Leia mais

Iniciar o Data Adapter Configuration Wizard. Toolbox Data Duplo clique em OleDbDataAdapter. Botão next na caixa de diálogo

Iniciar o Data Adapter Configuration Wizard. Toolbox Data Duplo clique em OleDbDataAdapter. Botão next na caixa de diálogo Iniciar o Data Adapter Configuration Wizard Toolbox Data Duplo clique em OleDbDataAdapter Botão next na caixa de diálogo Se carregar em Cancel, o wizard é cancelado e podemos depois definir as propriedades

Leia mais