A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

BANCOS DE DADOS ATIVOS Weyler M Lopes © Especialização em Banco de Dados Página 1.

Apresentações semelhantes


Apresentação em tema: "BANCOS DE DADOS ATIVOS Weyler M Lopes © Especialização em Banco de Dados Página 1."— Transcrição da apresentação:

1 BANCOS DE DADOS ATIVOS Weyler M Lopes © Especialização em Banco de Dados Página 1

2 O que é... É um SGBD ativo que pode automaticamente reagir a eventos, em contraste aos SGBD tradicionais. Um banco de dados que suporta ECA (Evento- Condição-Ação). Sistemas de Banco de Dados focados em mecanismos de evento-resposta. Banco de Dados que permite a especificação e implementação de comportamentos reativos. Weyler M Lopes © Especialização em Banco de Dados Página 2

3 Aspectos Importantes Tópico muito explorado e estudado nos últimos anos. A qualidade “ativa” em SGBD ainda não está definida com precisão. Há um manifesto com esta finalidade. Assim como outras tecnologias relacionadas com banco de dados, a grande fator motivador para a implementação de um SGDBA (SGBD Ativo) é a aplicação a que se destinará. Características genéricas são comumente definidas, enquanto características específicas dependem da natureza da aplicação SGBDA é, na verdade, uma extensão de um SGBD Weyler M Lopes © Especialização em Banco de Dados Página 3

4 Regras-ECA Consistem de evento, condições e ações; Significado de uma regra: quando um evento ocorre, a condição é checada, caso seja verdadeira, uma ação é executada; Outros termos são usados como referência a regras-ECA: Triggers, gatilhos; A SQL foi estendida para suportar a definição de regras-ECA; Eventos ocorrem dentro de transações e ações são executadas por de transações (triggered transactions); Uma transação de uma trigger (triggered transaction) pode ser executada antes ou depois da transação que a disparou (triggering transaction). Weyler M Lopes © Especialização em Banco de Dados Página 4

5 Características dos BD Ativos Definição de regras-ECA Um SGBDA é um SGBD; Possui um modelo de regras-ECA, capaz de definir eventos, condições e ações; Deve suportar o gerenciamento, incremento e decremento do conjunto de regras; Weyler M Lopes © Especialização em Banco de Dados Página 5

6 Características dos BD Ativos Execução de regras-ECA Deve possuir um modelo de execução que englobe: a detecção da ocorrência de um evento; ligue um evento a um item de dado; avalie a condição, execute a ação; Deve prover múltiplos de modos para execução da ação, no tangente a ocorrência do evento Deve gerenciar o histórico dos eventos Deve implementar resolução de conflitos Weyler M Lopes © Especialização em Banco de Dados Página 6

7 Características dos BD Ativos Usabilidade e Aplicação Deve suportar ambiente de programação Deve ser configurável Weyler M Lopes © Especialização em Banco de Dados Página 7

8 Classificação dos SGBDA Weyler M Lopes © Especialização em Banco de Dados Página 8 Para monitoração em sistemas de informação homogêneos Para controle em sistemas de informação homogêneos Para controle em sistemas de informação heterogêneos

9 Exemplos de Regras-ECA Weyler M Lopes © Especialização em Banco de Dados Página 9 SQL Server /* Trigger para inclusão de um movimento mediante a inclusão de um pedido */ create trigger inclui_cta_movto on pedido for insert as numeric numeric numeric float float = região.perc_vendendor from vendedor, região where vendedor.cod_região = região.cod_região and vendedor.matrícula = (select matrícula from inserted) = vl_pedido from inserted = max(cod_movto) from cta_movto is null = 1 else + 1 = inserted.matrícula from inserted = inserted.cod_pedido from inserted insert into @comissão, getdate(), "C", "B")

10 Exemplos de Regras-ECA Weyler M Lopes © Especialização em Banco de Dados Página 10 SQL Server /* Trigger para o desbloqueio do movimento mediante o pagamento de uma compra */ create trigger altera_sit_movto on pedido for update as varchar(1) if update(situação) = situação from inserted = "A" update cta_movto set situação = "D" from inserted where cta_movto.cod_pedido = inserted.cod_pedido = "C" update cta_movto set situação = "C" from inserted where cta_movto.cod_pedido = inserted.cod_pedido

11 Exemplos de Regras-ECA Weyler M Lopes © Especialização em Banco de Dados Página 11 SQL Server /* Trigger para o desbloqueio do movimento mediante o pagamento de uma compra */ create trigger altera_sit_movto on pedido for update as varchar(1) if update(situação) = situação from inserted = "A" update cta_movto set situação = "D" from inserted where cta_movto.cod_pedido = inserted.cod_pedido = "C" update cta_movto set situação = "C" from inserted where cta_movto.cod_pedido = inserted.cod_pedido

12 Exemplos de Regras-ECA Weyler M Lopes © Especialização em Banco de Dados Página 12 PostgreSQL CREATE TRIGGER if_dist_exists BEFORE INSERT OR UPDATE ON films FOR EACH ROW EXECUTE PROCEDURE check_primary_key ('did', 'distributors', 'did'); CREATE FUNCTION one() RETURNS integer AS 'SELECT 1 AS RESULT;' LANGUAGE SQL;

13 Exercício Weyler M Lopes © Especialização em Banco de Dados Página 13 Considerando o documento com um manifesto referente a SGBDA, compare o SQLServer e o PostgreSQL no tangente à s caracter í sticas relacionadas no manifesto.


Carregar ppt "BANCOS DE DADOS ATIVOS Weyler M Lopes © Especialização em Banco de Dados Página 1."

Apresentações semelhantes


Anúncios Google