ZODB - BD orientado a OBJETO
Por: Sara • 14/10/2018 • 703 Palavras (3 Páginas) • 420 Visualizações
...
---------------------------------------------------------------
Conceitos de Objeto (continuação)
• Os objetos geralmente são organizados hierarquicamente.
• A maioria dos bancos de dados de objetos são vinculados a um idioma específico, porque cada idioma implementa OOP de forma diferente.[pic 10]
---------------------------------------------------------------
8
---------------------------------------------------------------
Introdução ao ZODB
• Alta performance;
• Operação transparente e armazenamento em cache;
• Transacional: Ilimitado
• Undo Multi-threaded
• Plugins de armazenamento
• Necessário o uso de Python[pic 11]
---------------------------------------------------------------
ZODB - Estudo de caso 20/03/2017
9
---------------------------------------------------------------
Por que a Linguagem Python?
• Python é uma linguagem tipificada, forte e dinâmica.
• Tudo pode ser modificado em tempo de execução. Exemplo: Membros da Classe, base da classe, entre outros.[pic 12]
---------------------------------------------------------------
ZODB - Estudo de caso 20/03/2017
10
---------------------------------------------------------------
[pic 13]
O que significa Dinâmica?
Variáveis
Dinâmicas
Estáticas
Tipo Forte
Python
C, C++, Java
Tipo Fraco
Perl, PHP, JS,
Shell Script
*
---------------------------------------------------------------
ZODB - Estudo de caso 20/03/2017
11
---------------------------------------------------------------
Transações
As transações são atômicas
• As alterações feitas em uma transação são salvas na sua totalidade ou não.
• Isso torna o tratamento de erros muito mais fácil.[pic 14]
---------------------------------------------------------------
ZODB - Estudo de caso 20/03/2017
12
---------------------------------------------------------------
Transações (continuação)
As transações fornecem isolamento
• As transações permitem que vários segmentos lógicos (threads ou processos) acessem o BD.
• E assim, o banco de dados impede que os segmentos façam alterações conflitantes.[pic 15]
---------------------------------------------------------------
ZODB - Estudo de caso 20/03/2017
13
---------------------------------------------------------------
Transações (continuação)
Transações afetam vários objetos
• A maioria dos bancos de dados NoSQL não tem transações.
• Suas noções de consistência são muito mais fracas, geralmente aplicando-se a documentos únicos.[pic 16]
---------------------------------------------------------------
ZODB - Estudo de caso 20/03/2017
14
---------------------------------------------------------------
Suporte a transações ZODB Transações ACID com isolamento de instantâneo
• Suporte a transações distribuídas usando commit em duas fases.
• Isso permite que as transações abrange vários bancos de dados ZODB e não-ZODB.[pic 17]
---------------------------------------------------------------
ZODB - Estudo de caso 20/03/2017
15
---------------------------------------------------------------
Quando Usar o ZODB?
• Para ter um foco maior no aplicativo, sem precisar escrever muito de código de banco de dados;
• Para que o aplicativo tenha relações complexas e estruturas de dados;
• Ter acesso aos dados através de atributos de objeto e métodos;
• Quando houver mais leituras de dados do que escrita;
• Para se testar a lógica que usa em seu banco de dados.[pic 18]
---------------------------------------------------------------
...