Boa tarde Rafael! Bom, vou falar o entendimento que eu tenho - se eu falar alguma coisa errada conceitualmente, por favor, alguém me corrija até porque quero sempre aprender mais....
"Abrir" um arquivo pra leitura e/ou escrita do ponto de vista do sistema operacional eu imagino que seja algo MUITO simples - talvez seja apenas setar um bit para deixar o arquivo "marcado" como aberto. Quando vc abre um arquivo TEXTO muito grande no Notepad, por exemplo, realmente um computador vai demorar MUITO - dando a impressão de que vc travou a máquina. Repare que se vc fizer a mesma operação em outros editores - um notepad++ por exemplo, vc vai conseguir abrir arquivos grandes com muito mais eficácia - a diferença é a inteligência que o software usa para manipular este arquivo, jogando pra memória a parte que interessa. Quando falamos de datafiles, eles ficam sim abertos para leitura/gravação, porém, não é porque o arquivo tem 32GB que ele vai ficar INTEIRO em memória, ocupando 32GB de RAM. O SGBD vai fazer a leitura apenas dos trechos que interessam - o datafile pode ter 32GB, mas ao fazer a leitura de uma tabela, por exemplo, 50MB de dados já é uma quantidade bem considerável de registros! Vou jogar um pouco pro alto, vamos supor que seja uma query envolvendo uma meia dúzia de tabelas... 300MB? 500MB? 500MB se falando de DADOS de tabelas, ou seja, praticamente somente TEXTO é MUITA, MUITA coisa! Portanto o SGBD gerencia isso, de forma a trabalhar com esses dados em memória (quando se tem memória suficiente disponível), mas não joga TUDO pra memória, joga apenas o que interessa, apenas os dados que precisam ser lidos. Pra isso há também algoritmos que decidem se após a leitura esses dados continuam na memória, e quais dados devem sair da memória quando esta estiver toda ocupada e precisar dar espaço para novos dados. Não confunda com um editor de textos, pois quando vc manda abrir um arquivo texto no Notepad, ele PRECISA ler e carregar o arquivo INTEIRO na memória pra poder aparecer no seu monitor, correto? Esse não é o caso de um datafile.... "Ah, mas e se eu precisar rodar um SELECT que leia todos esses 30GB pra uma tela ou um relatorio gigante?" Bom, daí é outro caso, outra situação! Com algo tão monstruoso obviamente a máquina/servidor vai sim ser muito mais exigido, e talvez vc não tenha memória suficiente, e daí vai rolar SWAP, paginação, e por aí vai.... Mas daí estamos falando de casos realmente fora do comum. Esse é o meu entendimento... se eu tiver falado alguma besteira, pessoal, me corrijam! E claro, acrescentem mais informações, pois apesar de parecer ser algo básico, são essas dúvidas conceituais que MUITA gente precisava ter quando está estudando, isso é muito mais importante do que decorar comandos! 2013/8/26 Rafael Stoever <rstoe...@gmail.com> > ** > > > Boa tarde a todos, > > Irei fazer uma analogia sobre um arquivo texto de 10GB e um datafile > de 10GB e um de 32GB. > Se efetuarmos a abertura do arquivo de 10GB no sistema operacional > teremos um problema grande de memoria, podendo ate travar o sistema > operacional. > > Agora a questão são os datafiles grandes 32GB quando abertos pelo > Oracle para efetuar uma busca muito massiva de dados, ou mesmo somente > abrir-los, ele poderá ocasionar um problema de performance da mesma forma > que o editor de texto ? > Pois ao checar os arquivos abertos pelo Oracle ele fica com o alguns > datafiles abertos. > > Pergunta: O tamanho do arquivo irá influenciar na performance geral da > maquina quando o oracle for abrir o datafile? > > abs > Rafael Stoever / @rstoever > > [As partes desta mensagem que não continham texto foram removidas] > > > [As partes desta mensagem que não continham texto foram removidas] ------------------------------------ -------------------------------------------------------------------------------------------------------------------------- >Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira >responsabilidade de seus remetentes. Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ -------------------------------------------------------------------------------------------------------------------------- >Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » >Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: >http://www.oraclebr.com.br/ ------------------------------------------------------------------------------------------------------------------------ Links do Yahoo! Grupos <*> Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/oracle_br/ <*> Para sair deste grupo, envie um e-mail para: oracle_br-unsubscr...@yahoogrupos.com.br <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html