Beg Support | Sua empresa é o nosso compromisso

Author name: Guilherme Solon da Costa

Como Validar Alterações em Registros usando ORA_ROWSCN no Oracle Database

BlogDoBoss Como Validar Alterações em Registros usando ORA_ROWSCN no Oracle Database No último Oracle APEX Tour 2024 em Brasília, uma pergunta surgiu durante o painel de palestrantes: “É possível validar se o registro de uma “collection” sofreu alguma alteração na base de dados durante a sua manipulação ?”. A pergunta foi feita a meu colega André Souza, que fez uma apresentação sobre as vantagens e a melhoria de performance com o uso de coleções no APEX. Embora ele não tivesse enfrentado essa necessidade antes, mencionei durante o painel a utilização da pseudo-coluna ORA_ROWSCN como solução. Neste artigo apresento um guia prático para implementar essa ideia. 1. Criando a Tabela com ROWDEPENDENCIES Primeiro, é necessário criar a tabela com a opção ROWDEPENDENCIES, que permite rastrear o SCN (System Change Number) no nível da linha: CREATE TABLE Beg_Teste_Orarowscn ( “ID” NUMBER(*, 0) PRIMARY KEY, “DESCRICAO” VARCHAR2(150 BYTE) NOT NULL ENABLE ) ROWDEPENDENCIES; Por padrão, o Oracle rastreia o SCN no nível de bloco do banco de dados. Com ROWDEPENDENCIES, o SCN será armazenado por linha, permitindo maior granularidade. 2. Inserindo Dados na Tabela Adicione os registros para realizar os testes: INSERT INTO Beg_Teste_Orarowscn VALUES (1, ‘TESTE 1’); INSERT INTO Beg_Teste_Orarowscn VALUES (2, ‘TESTE 2’); INSERT INTO Beg_Teste_Orarowscn VALUES (3, ‘TESTE 3’); INSERT INTO Beg_Teste_Orarowscn VALUES (4, ‘TESTE 4’); INSERT INTO Beg_Teste_Orarowscn VALUES (5, ‘TESTE 5’); INSERT INTO Beg_Teste_Orarowscn VALUES (6, ‘TESTE 6’); INSERT INTO Beg_Teste_Orarowscn VALUES (7, ‘TESTE 7’); INSERT INTO Beg_Teste_Orarowscn VALUES (8, ‘TESTE 8’); INSERT INTO Beg_Teste_Orarowscn VALUES (9, ‘TESTE 9’); INSERT INTO Beg_Teste_Orarowscn VALUES (10, ‘TESTE 10’); COMMIT;   3. Verificando o SCN das Linhas Utilize a pseudo-coluna ORA_ROWSCN para visualizar o SCN associado a cada linha: SELECT A.Id, A.Descricao, A.Ora_Rowscn FROM Beg_Teste_Orarowscn A ORDER BY Id;   4. Alterando um Registro Realize uma atualização em um registro específico e confirme a transação: UPDATE Beg_Teste_Orarowscn SET Descricao = Descricao || ‘ REGISTRO ALTERADO’ WHERE Id = 4; COMMIT;   5. Confirmando a Mudança de SCN Após a atualização, execute novamente a consulta e observe o SCN modificado apenas no registro alterado: SELECT A.Id, A.Descricao, A.Ora_Rowscn FROM Beg_Teste_Orarowscn A ORDER BY Id; Dessa forma, ao carregar a coluna ORA_ROWSCN na collection em memória, será possível compará-la com o valor correspondente no banco de dados. Isso permitirá identificar se houve alguma modificação no registro durante o período de manipulação. Detalhes Técnicos ROWDEPENDENCIES: Armazena o SCN no nível da linha, garantindo rastreamento preciso. BLOCKDEPENDENCIES (padrão): O SCN é compartilhado por todas as linhas de um bloco de dados. Vantagens e Desvantagens do ROWDEPENDENCIES   Vantagens Precisão no rastreamento de mudanças: Ideal para auditorias detalhadas e sincronização incremental. Acesso ao SCN individual: Útil em cenários de replicação e validação de dados. Desvantagens Armazenamento adicional: Cada linha requer 6 bytes extras para armazenar o SCN. Impacto na performance: Inserções e atualizações podem ser levemente afetadas. Opinião do BOSS A decisão de usar ou não ROWDEPENDENCIES depende das necessidades do seu negócio. Valide em sua aplicação para verificar o impacto real no desempenho e no armazenamento. Lembre-se: o Oracle Database tem a solução, basta escolher a ideal para o seu caso. Posts Recentes All Post Data Modeler Oracle Database Como Validar Alterações em Registros usando ORA_ROWSCN no Oracle Database novembro 29, 2024 Criando ambiente de Desenvolvimento / Testes em minutos novembro 14, 2024 Dúvidas Frequentes Quais são os benefícios de utilizar a Oracle Cloud para minha empresa? Oracle Cloud oferece uma infraestrutura robusta, segura e escalável, permitindo que sua empresa melhore a eficiência operacional, reduza custos com TI e tenha acesso a uma plataforma de desenvolvimento de alta performance. Além disso, a Oracle Cloud suporta a inovação contínua com ferramentas integradas de IA e machine learning. Como a Beg Support pode ajudar na migração para a Oracle Cloud? A Beg Support oferece um serviço completo de migração para a Oracle Cloud, que inclui avaliação inicial, planejamento detalhado, execução da migração e suporte pós-migração. Nosso time de especialistas garante que a transição seja suave e que sua operação continue sem interrupções. Quais são os serviços de suporte a bancos de dados oferecidos pela Beg? Oferecemos suporte completo para bancos de dados, incluindo monitoramento proativo, otimização de desempenho, gerenciamento de backups e recuperação, atualizações e patching, e suporte técnico 24/7. Nosso objetivo é garantir que seus bancos de dados funcionem de maneira eficiente e segura. Como posso monitorar o desempenho das minhas instâncias na Oracle Cloud? A Beg Support fornece ferramentas e dashboards personalizados para monitoramento contínuo das suas instâncias na Oracle Cloud. Isso inclui métricas de desempenho em tempo real, alertas de uso de recursos, análises de tendências e relatórios detalhados. Assim, você pode identificar e resolver problemas antes que eles afetem sua operação.

Como Validar Alterações em Registros usando ORA_ROWSCN no Oracle Database Read More »

Criando ambiente de Desenvolvimento / Testes em minutos

BlogDoBoss Criando ambiente de Desenvolvimento / Testes em minutos Uma das tarefas mais frequentes no dia a dia da nossa equipe é a atualização ou criação de ambientes de desenvolvimento e teste para os clientes. Para aqueles clientes que possuem equipes internas de desenvolvimento, esses ambientes são tão fundamentais quanto a base de produção — pelo menos na visão do Gerente de Desenvolvimento. Problemas Comuns no Processo Imagine a seguinte situação: Uma adição de datafile no ambiente de produção é feita sem a devida atenção. Durante a madrugada, o velho script de “duplicate” tenta rodar com um backup anterior a essa alteração. Resultado: o script falha, e o dia começa com stress! Nessa hora, o Gerente de Desenvolvimento não aceita que a base de desenvolvimento ou teste fique fora do ar. Ele aciona o Gestor de TI, que informa o impacto no projeto, atrasos e equipes paradas, incapazes de produzir, devido a uma falha atribuída aos DBAs. Reconheceu o Cenário? Se sim, saiba que o Oracle Database Appliance (ODA) pode ser a solução! Oracle Database Appliance: A Solução Ideal Com o Oracle Database Appliance Manager Release 12.1.2, é possível criar snapshots de bancos de dados e VMs, permitindo a criação de ambientes de desenvolvimento e teste de forma rápida e eficiente, em apenas minutos. Aquele antigo script de “duplicate”? Já ficou no passado. Agora, com um único comando do oakcli, você cria uma nova instância do banco de dados sem comprometer a performance do storage ou do ambiente de produção. Como Funciona na Prática 1. Verificando o Espaço no ODA Antes de iniciar, podemos verificar: O espaço livre na área do ODA. O tamanho dos datafiles, redologs e tempfiles na base duplicada. — Tela do ASM + SQLs para espaço total dos datafiles, redologs, tempfiles. 2. Tempo de Criação de Bases No Grupo Agrale, que utiliza esse recurso, a atualização de uma base de desenvolvimento/teste de aproximadamente 1 TB, incluindo a remoção da base anterior, leva apenas 15 minutos! — Tela da atualização. 3. Criando uma Base para um Desenvolvedor Específico Caso necessário, é possível disponibilizar uma nova base para um desenvolvedor específico, a partir de um snapshot já criado. O tempo para isso é ainda menor! — Tela da atualização. 4. Economia de Espaço O impacto no armazenamento é mínimo, garantindo eficiência e economia. — Tela com espaço no ASM. Para Quem Ainda Não Possui um ODA Considere investir no Oracle Database Appliance na sua próxima negociação de hardware. Para Quem Já Possui um ODA Atualize o Oracle Database Appliance Manager para a release 12.1.2 e aproveite esses recursos incríveis! Depoimento de Um Cliente Satisfeito Eduardo, um dos nossos clientes, compartilhou sua experiência positiva com essa funcionalidade: — Depoimento do Eduardo a respeito dessa feature. Abraços a todos,Guilherme Costa Posts Recentes All Post Data Modeler Oracle Database Como Validar Alterações em Registros usando ORA_ROWSCN no Oracle Database novembro 29, 2024 Criando ambiente de Desenvolvimento / Testes em minutos novembro 14, 2024 Dúvidas Frequentes Quais são os benefícios de utilizar a Oracle Cloud para minha empresa? Oracle Cloud oferece uma infraestrutura robusta, segura e escalável, permitindo que sua empresa melhore a eficiência operacional, reduza custos com TI e tenha acesso a uma plataforma de desenvolvimento de alta performance. Além disso, a Oracle Cloud suporta a inovação contínua com ferramentas integradas de IA e machine learning. Como a Beg Support pode ajudar na migração para a Oracle Cloud? A Beg Support oferece um serviço completo de migração para a Oracle Cloud, que inclui avaliação inicial, planejamento detalhado, execução da migração e suporte pós-migração. Nosso time de especialistas garante que a transição seja suave e que sua operação continue sem interrupções. Quais são os serviços de suporte a bancos de dados oferecidos pela Beg? Oferecemos suporte completo para bancos de dados, incluindo monitoramento proativo, otimização de desempenho, gerenciamento de backups e recuperação, atualizações e patching, e suporte técnico 24/7. Nosso objetivo é garantir que seus bancos de dados funcionem de maneira eficiente e segura. Como posso monitorar o desempenho das minhas instâncias na Oracle Cloud? A Beg Support fornece ferramentas e dashboards personalizados para monitoramento contínuo das suas instâncias na Oracle Cloud. Isso inclui métricas de desempenho em tempo real, alertas de uso de recursos, análises de tendências e relatórios detalhados. Assim, você pode identificar e resolver problemas antes que eles afetem sua operação.

Criando ambiente de Desenvolvimento / Testes em minutos Read More »

Rolar para cima