[oracle_br] Re: Criar Tabela :: Clausula "COMPRESS"
Eu usei o pai google mesmo, pesquisando por +oracle +10g +compress +"create table" um dos primeiros resultados foi ele, mas acessando o technet por http://www.oracle.com/technology/index.html (pra já cair direto na parte de tech, que é o q interessa) click em BI 7 data Warehousing , link Oracle by Example: BI Tutorials , vc verá a lista completa, com links também pras versões arquivadas, que ainda são de total interesse - inclusive, seguindo pelos links, vc acaba chegando em http://www.oracle.com/technology/obe/start/index.html , que é o apontador geral pros papers anteriores : isso é valioso, pois (como foi o seu caso) a cláusula de COMPRESS, que é antiga, pra quem não conhece é pura novidade... Explore que é um cabedal de conhecimento valioso, e absolutamente free []s Chiappa --- Em oracle_br@yahoogrupos.com.br, "fsilva6" escreveu > > Chiappa, > Adorei o paper é simplesmente extremante esclarecedor. Confesso a > vc que não sou um frequentador assíduo do portal da ORACLE, mas acabei de me > render as dicas presentes no mesmo. > Amigão, gostaria de saber qual a Functional Category que vc usou para achar > esse material? > > > > > --- Em oracle_br@yahoogrupos.com.br, José Laurindo escreveu > > > > > > Colega, PMFJI mas antes de mais nada, se ainda não o fez, recomendo uma > > leitura do paper em > > http://www.oracle.com/technology/products/bi/db/10g/pdf/twp_data_compression_10gr2_0505.pdf > > , que explica muito bem o mecanismo e consequências da compressão, mas de > > modo geral : > > > > "As consultas realizadas sobre essas tabelas com a clausula "COMPRESS" > > seriam > > menos performaticas do que as consultas realizadas sobre as tabelas sem a > > referida clausula?" > > > > Podem ser, não é uma garantia : como especificado, a questão é que o bloco > > compactado fica compactado tanto em disco quanto na memória (cache), apenas > > quando a informação precisa ser recuperada é descompactado - o ponto é que > > realmente vc gastou um pouco de CPU pra descompactar antes de acessar a > > informação MAS em contrapartida vc teve (em caso de table scan) ler MUITO > > MENOS blocos A pergunta é, os I/Os poupados tendo que se ler menos > > blocos Compensam o gasto maior de CPU ? A resposta é, DEPENDE, isso varia > > caso a caso, mas de modo geral em bancos DW-like, aonde os I/Os se contam > > por toneladas e o servidor é potente, com poder de CPU " sobrando" , acaba > > valendo a pena, sim, mas só vc testando pra estar certo no seu ambiente e > > na sua app... Em vários casos em clientes anteriores eu fui Obrigado a usar > > a compressão por questão de espaço em disco, se não compactasse os dados > > antigos simplesmente não tinha espaço disponível... E evidente, eu > > compactava os dados após o fechamento do mês, quando o dado se tornava > > read-only , pois cfrme o paper alerta esa compactação interfere com DMLs. > > > > "A aplicação da clausula "COMPRESS" sobre as tabelas de um data warehouse, > > é valida?" > > > > De modo geral sim, mas vc TEM que testar Adequadamente pro seu caso. > > > > "Ou, simplesmente ganharemos espaço em disco e aumentaremos o consumo de > > CPU quando efetuarmos a leitura dessa tabela?" > > > > Não, cfrme eu disse acima o fato de mais dados serem encaixados em menos > > blocos com a compactação pode levar a poupar I/Os em caso de scans á custa > > de mais CPU, o que via de regra é exatamente o caso para DWs, normalmente > > esse tipo de ambiente é relativamente "folgado" em CPUs mas starvado em > > I/Os. > > > > []s > > > > Chiappa > > > > --- Em oracle_br@yahoogrupos.com.br, "fsilva6" escreveu > > > > > > As consultas realizadas sobre essas tabelas com a clausula "COMPRESS" > > > seriam menos performaticas do que as consultas realizadas sobre as > > > tabelas sem a referida clausula? > > > > > > A aplicação da clausula "COMPRESS" sobre as tabelas de um data warehouse, > > > é valida? Ou, simplesmente ganharemos espaço em disco e aumentaremos o > > > consumo de CPU quando efetuarmos a leitura dessa tabela? > > > > > > > > > --- Em oracle_br@yahoogrupos.com.br, "Alessandro Guimaraes" > > > escreveu > > > > > > > > Oi, > > > > A tabela é armazenada "compressed" tanto em disco como no database > > > > buffer cache. O dado é "descomprimido" no momento em que for acessado > > > > > > > > Atc > > > > Alessandro Guimaraes > > > > > > > > --- Em oracle_br@yahoogrupos.com.br, "fsilva6" escreveu > > > > > > > > > > Ola para todos. > > > > > Minha duvida é a seguinte, quando crio uma tabela com a opção > > > > > compress como select vai fazer para coletar as informções desta > > > > > tabela. O oracle vai manter as informações desta tabela no cache ou > > > > > descompacta as informações presentes na tabela em tempo de execução? > > > > > > > > > > Desde já obrigado a todos. > > > > > > > > > > > > > > >
[oracle_br] Re: Criar Tabela :: Clausula "COMPRESS"
Chiappa, Adorei o paper é simplesmente extremante esclarecedor. Confesso a vc que não sou um frequentador assíduo do portal da ORACLE, mas acabei de me render as dicas presentes no mesmo. Amigão, gostaria de saber qual a Functional Category que vc usou para achar esse material? --- Em oracle_br@yahoogrupos.com.br, José Laurindo escreveu > > > Colega, PMFJI mas antes de mais nada, se ainda não o fez, recomendo uma > leitura do paper em > http://www.oracle.com/technology/products/bi/db/10g/pdf/twp_data_compression_10gr2_0505.pdf > , que explica muito bem o mecanismo e consequências da compressão, mas de > modo geral : > > "As consultas realizadas sobre essas tabelas com a clausula "COMPRESS" seriam > menos performaticas do que as consultas realizadas sobre as tabelas sem a > referida clausula?" > > Podem ser, não é uma garantia : como especificado, a questão é que o bloco > compactado fica compactado tanto em disco quanto na memória (cache), apenas > quando a informação precisa ser recuperada é descompactado - o ponto é que > realmente vc gastou um pouco de CPU pra descompactar antes de acessar a > informação MAS em contrapartida vc teve (em caso de table scan) ler MUITO > MENOS blocos A pergunta é, os I/Os poupados tendo que se ler menos blocos > Compensam o gasto maior de CPU ? A resposta é, DEPENDE, isso varia caso a > caso, mas de modo geral em bancos DW-like, aonde os I/Os se contam por > toneladas e o servidor é potente, com poder de CPU " sobrando" , acaba > valendo a pena, sim, mas só vc testando pra estar certo no seu ambiente e na > sua app... Em vários casos em clientes anteriores eu fui Obrigado a usar a > compressão por questão de espaço em disco, se não compactasse os dados > antigos simplesmente não tinha espaço disponível... E evidente, eu compactava > os dados após o fechamento do mês, quando o dado se tornava read-only , pois > cfrme o paper alerta esa compactação interfere com DMLs. > > "A aplicação da clausula "COMPRESS" sobre as tabelas de um data warehouse, é > valida?" > > De modo geral sim, mas vc TEM que testar Adequadamente pro seu caso. > > "Ou, simplesmente ganharemos espaço em disco e aumentaremos o consumo de CPU > quando efetuarmos a leitura dessa tabela?" > > Não, cfrme eu disse acima o fato de mais dados serem encaixados em menos > blocos com a compactação pode levar a poupar I/Os em caso de scans á custa de > mais CPU, o que via de regra é exatamente o caso para DWs, normalmente esse > tipo de ambiente é relativamente "folgado" em CPUs mas starvado em I/Os. > > []s > > Chiappa > > --- Em oracle_br@yahoogrupos.com.br, "fsilva6" escreveu > > > > As consultas realizadas sobre essas tabelas com a clausula "COMPRESS" > > seriam menos performaticas do que as consultas realizadas sobre as tabelas > > sem a referida clausula? > > > > A aplicação da clausula "COMPRESS" sobre as tabelas de um data warehouse, é > > valida? Ou, simplesmente ganharemos espaço em disco e aumentaremos o > > consumo de CPU quando efetuarmos a leitura dessa tabela? > > > > > > --- Em oracle_br@yahoogrupos.com.br, "Alessandro Guimaraes" > > escreveu > > > > > > Oi, > > > A tabela é armazenada "compressed" tanto em disco como no database buffer > > > cache. O dado é "descomprimido" no momento em que for acessado > > > > > > Atc > > > Alessandro Guimaraes > > > > > > --- Em oracle_br@yahoogrupos.com.br, "fsilva6" escreveu > > > > > > > > Ola para todos. > > > > Minha duvida é a seguinte, quando crio uma tabela com a opção compress > > > > como select vai fazer para coletar as informções desta tabela. O > > > > oracle vai manter as informações desta tabela no cache ou descompacta > > > > as informações presentes na tabela em tempo de execução? > > > > > > > > Desde já obrigado a todos. > > > > > > > > > >
[oracle_br] Re: Criar Tabela :: Clausula "COMPRESS"
Muito obrigado a todos. --- Em oracle_br@yahoogrupos.com.br, José Laurindo escreveu > > > Colega, PMFJI mas antes de mais nada, se ainda não o fez, recomendo uma > leitura do paper em > http://www.oracle.com/technology/products/bi/db/10g/pdf/twp_data_compression_10gr2_0505.pdf > , que explica muito bem o mecanismo e consequências da compressão, mas de > modo geral : > > "As consultas realizadas sobre essas tabelas com a clausula "COMPRESS" seriam > menos performaticas do que as consultas realizadas sobre as tabelas sem a > referida clausula?" > > Podem ser, não é uma garantia : como especificado, a questão é que o bloco > compactado fica compactado tanto em disco quanto na memória (cache), apenas > quando a informação precisa ser recuperada é descompactado - o ponto é que > realmente vc gastou um pouco de CPU pra descompactar antes de acessar a > informação MAS em contrapartida vc teve (em caso de table scan) ler MUITO > MENOS blocos A pergunta é, os I/Os poupados tendo que se ler menos blocos > Compensam o gasto maior de CPU ? A resposta é, DEPENDE, isso varia caso a > caso, mas de modo geral em bancos DW-like, aonde os I/Os se contam por > toneladas e o servidor é potente, com poder de CPU " sobrando" , acaba > valendo a pena, sim, mas só vc testando pra estar certo no seu ambiente e na > sua app... Em vários casos em clientes anteriores eu fui Obrigado a usar a > compressão por questão de espaço em disco, se não compactasse os dados > antigos simplesmente não tinha espaço disponível... E evidente, eu compactava > os dados após o fechamento do mês, quando o dado se tornava read-only , pois > cfrme o paper alerta esa compactação interfere com DMLs. > > "A aplicação da clausula "COMPRESS" sobre as tabelas de um data warehouse, é > valida?" > > De modo geral sim, mas vc TEM que testar Adequadamente pro seu caso. > > "Ou, simplesmente ganharemos espaço em disco e aumentaremos o consumo de CPU > quando efetuarmos a leitura dessa tabela?" > > Não, cfrme eu disse acima o fato de mais dados serem encaixados em menos > blocos com a compactação pode levar a poupar I/Os em caso de scans á custa de > mais CPU, o que via de regra é exatamente o caso para DWs, normalmente esse > tipo de ambiente é relativamente "folgado" em CPUs mas starvado em I/Os. > > []s > > Chiappa > > --- Em oracle_br@yahoogrupos.com.br, "fsilva6" escreveu > > > > As consultas realizadas sobre essas tabelas com a clausula "COMPRESS" > > seriam menos performaticas do que as consultas realizadas sobre as tabelas > > sem a referida clausula? > > > > A aplicação da clausula "COMPRESS" sobre as tabelas de um data warehouse, é > > valida? Ou, simplesmente ganharemos espaço em disco e aumentaremos o > > consumo de CPU quando efetuarmos a leitura dessa tabela? > > > > > > --- Em oracle_br@yahoogrupos.com.br, "Alessandro Guimaraes" > > escreveu > > > > > > Oi, > > > A tabela é armazenada "compressed" tanto em disco como no database buffer > > > cache. O dado é "descomprimido" no momento em que for acessado > > > > > > Atc > > > Alessandro Guimaraes > > > > > > --- Em oracle_br@yahoogrupos.com.br, "fsilva6" escreveu > > > > > > > > Ola para todos. > > > > Minha duvida é a seguinte, quando crio uma tabela com a opção compress > > > > como select vai fazer para coletar as informções desta tabela. O > > > > oracle vai manter as informações desta tabela no cache ou descompacta > > > > as informações presentes na tabela em tempo de execução? > > > > > > > > Desde já obrigado a todos. > > > > > > > > > >
[oracle_br] Re: Criar Tabela :: Clausula "COMPRESS"
Colega, PMFJI mas antes de mais nada, se ainda não o fez, recomendo uma leitura do paper em http://www.oracle.com/technology/products/bi/db/10g/pdf/twp_data_compression_10gr2_0505.pdf , que explica muito bem o mecanismo e consequências da compressão, mas de modo geral : "As consultas realizadas sobre essas tabelas com a clausula "COMPRESS" seriam menos performaticas do que as consultas realizadas sobre as tabelas sem a referida clausula?" Podem ser, não é uma garantia : como especificado, a questão é que o bloco compactado fica compactado tanto em disco quanto na memória (cache), apenas quando a informação precisa ser recuperada é descompactado - o ponto é que realmente vc gastou um pouco de CPU pra descompactar antes de acessar a informação MAS em contrapartida vc teve (em caso de table scan) ler MUITO MENOS blocos A pergunta é, os I/Os poupados tendo que se ler menos blocos Compensam o gasto maior de CPU ? A resposta é, DEPENDE, isso varia caso a caso, mas de modo geral em bancos DW-like, aonde os I/Os se contam por toneladas e o servidor é potente, com poder de CPU " sobrando" , acaba valendo a pena, sim, mas só vc testando pra estar certo no seu ambiente e na sua app... Em vários casos em clientes anteriores eu fui Obrigado a usar a compressão por questão de espaço em disco, se não compactasse os dados antigos simplesmente não tinha espaço disponível... E evidente, eu compactava os dados após o fechamento do mês, quando o dado se tornava read-only , pois cfrme o paper alerta esa compactação interfere com DMLs. "A aplicação da clausula "COMPRESS" sobre as tabelas de um data warehouse, é valida?" De modo geral sim, mas vc TEM que testar Adequadamente pro seu caso. "Ou, simplesmente ganharemos espaço em disco e aumentaremos o consumo de CPU quando efetuarmos a leitura dessa tabela?" Não, cfrme eu disse acima o fato de mais dados serem encaixados em menos blocos com a compactação pode levar a poupar I/Os em caso de scans á custa de mais CPU, o que via de regra é exatamente o caso para DWs, normalmente esse tipo de ambiente é relativamente "folgado" em CPUs mas starvado em I/Os. []s Chiappa --- Em oracle_br@yahoogrupos.com.br, "fsilva6" escreveu > > As consultas realizadas sobre essas tabelas com a clausula "COMPRESS" seriam > menos performaticas do que as consultas realizadas sobre as tabelas sem a > referida clausula? > > A aplicação da clausula "COMPRESS" sobre as tabelas de um data warehouse, é > valida? Ou, simplesmente ganharemos espaço em disco e aumentaremos o consumo > de CPU quando efetuarmos a leitura dessa tabela? > > > --- Em oracle_br@yahoogrupos.com.br, "Alessandro Guimaraes" > escreveu > > > > Oi, > > A tabela é armazenada "compressed" tanto em disco como no database buffer > > cache. O dado é "descomprimido" no momento em que for acessado > > > > Atc > > Alessandro Guimaraes > > > > --- Em oracle_br@yahoogrupos.com.br, "fsilva6" escreveu > > > > > > Ola para todos. > > > Minha duvida é a seguinte, quando crio uma tabela com a opção compress > > > como select vai fazer para coletar as informções desta tabela. O oracle > > > vai manter as informações desta tabela no cache ou descompacta as > > > informações presentes na tabela em tempo de execução? > > > > > > Desde já obrigado a todos. > > > > > >
[oracle_br] Re: Criar Tabela :: Clausula "COMPRESS"
Em alguns casos as consultas são até mais rapidas. É ideal para ambientes com muita leitura como em uma aplicação BI, principalmente tabelas fato e visões materializadas do esquema estrela. A desvantagem das tabelas compressed é se vc tiver que fazer DML nelas. Ai sim vai ter um overhead de CPU. Particularmente no 11gR1 a Oracle adicionou uma tipo de compressão chamada de tabela OLTP. Que permite compressão em qualquer tipo de manipulação de dados, diminuindo o overheade de gravação nas operações de insert, update e delete. No entanto esta nova feature gera muito REDO. Atc Alessandro Guimaraes --- Em oracle_br@yahoogrupos.com.br, "fsilva6" escreveu > > As consultas realizadas sobre essas tabelas com a clausula "COMPRESS" seriam > menos performaticas do que as consultas realizadas sobre as tabelas sem a > referida clausula? > > A aplicação da clausula "COMPRESS" sobre as tabelas de um data warehouse, é > valida? Ou, simplesmente ganharemos espaço em disco e aumentaremos o consumo > de CPU quando efetuarmos a leitura dessa tabela? > > > --- Em oracle_br@yahoogrupos.com.br, "Alessandro Guimaraes" > escreveu > > > > Oi, > > A tabela é armazenada "compressed" tanto em disco como no database buffer > > cache. O dado é "descomprimido" no momento em que for acessado > > > > Atc > > Alessandro Guimaraes > > > > --- Em oracle_br@yahoogrupos.com.br, "fsilva6" escreveu > > > > > > Ola para todos. > > > Minha duvida é a seguinte, quando crio uma tabela com a opção compress > > > como select vai fazer para coletar as informções desta tabela. O oracle > > > vai manter as informações desta tabela no cache ou descompacta as > > > informações presentes na tabela em tempo de execução? > > > > > > Desde já obrigado a todos. > > > > > >
[oracle_br] Re: Criar Tabela :: Clausula "COMPRESS"
As consultas realizadas sobre essas tabelas com a clausula "COMPRESS" seriam menos performaticas do que as consultas realizadas sobre as tabelas sem a referida clausula? A aplicação da clausula "COMPRESS" sobre as tabelas de um data warehouse, é valida? Ou, simplesmente ganharemos espaço em disco e aumentaremos o consumo de CPU quando efetuarmos a leitura dessa tabela? --- Em oracle_br@yahoogrupos.com.br, "Alessandro Guimaraes" escreveu > > Oi, > A tabela é armazenada "compressed" tanto em disco como no database buffer > cache. O dado é "descomprimido" no momento em que for acessado > > Atc > Alessandro Guimaraes > > --- Em oracle_br@yahoogrupos.com.br, "fsilva6" escreveu > > > > Ola para todos. > > Minha duvida é a seguinte, quando crio uma tabela com a opção compress como > > select vai fazer para coletar as informções desta tabela. O oracle vai > > manter as informações desta tabela no cache ou descompacta as informações > > presentes na tabela em tempo de execução? > > > > Desde já obrigado a todos. > > >