Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
SQL Saturday #488 SQL SERVER e ORACLE: Semelhanças e Diferenças para o DBA Marcelo Gonçalves Adade [email protected] www.dbbits.com.br Patrocinadores SQLSAT RIO Sp_help DBA • Team leader e especialista SQL SERVER na TIVIT • MCT – cursos SQL SERVER – Ka Solution e BFBiz • MCP e OCP • www.dbbits.com.br • www.dataside.com.br • DBA há 12 anos Agenda – Um comparativo rápido! 1. 2. 3. 4. Motivação Arquitetura Básica Administração Coisas que gostaríamos que cada um tivesse 5. Investimento Motivação 1 Gartner, 2014 Motivação 2 Gartner, 2015 Motivação - 3 RDBMS - arquitetura genérica Memory Process Process Process Process Data Data Data System Control Temp Log PC CPU Client CPU Server Storage Instance Database Sistemas Operacionais suportados ORACLE -> Linux (Oracle e Red Hat), compatível com praticamente todos os sistemas Operacionais; SQL SERVER -> Windows (integração mais otimizada) ....em breve.... Em Linux também! Para saber mais: https://www.microsoft.com/en/server-cloud/sqlserver-on-linux.aspx MS SQL SERVER & Linux Instância Oracle X SQL SERVER Oracle 12c SQL Server 2014 Host machine Instance Database Host machine Instance Database Schema Object Object Object Schema Object Object Object Instance Object Object Object Object Database Object Schema Object Object Object Object Schema Schema Object Object Schema Object Schema Object Object Schema Object Object Instance Objec t Object Arquitetura Oracle • SGA • PGA • Background processes • Pfile, Spfile • Control Files • Redo log files • Data files • Listener Arquitetura Oracle – simplificando... Instance Client User process Process monitor SGA User process Dispatcher Request queue Shared server Response queue Database buffer cache System monitor Redo log buffer Job queue Queue monitor Event monitor Client User process Dedicated server Client Recoverer Database writer Log writer Checkpoint Archiver Trace writer Users Database Data files Archive log files Control files Automatic storage management Redo log files Arquitetura SQL SERVER simplificada SQLOS Memory pool Database cleanup User process Buffer cache Worker thread Client User process Open data services Lazy writer Client User process Client Users Log cache Log writer Log files Worker thread Database shrinking Relational engine Data files ODBC Storage engine Estruturas de memória Oracle System Global Area (SGA) Buffer cache Redo buffers Fixed SGA Shared pool Large pool Streams pool Java pool SQL Server memory pool Buffer cache Columnstore cache Procedure cache Log cache System structures Connection context CLR hosting layer Estruturas de armazenamento Físico Data file Lógico Data file Data file Data file Data file Data file Temporary tablespace groups Tablespace Tablespace Filegroup Filegroup Segment Segment Heap/Index (hobt) Heap/Index Extent Extent Extent Extent Extent Extent Extent Blocks Blocks Blocks Blocks Pages Pages Pages Oracle SQL Server Heaps, Clustered Tables e IoTs ORACLE: Padrão: HEAP Secundária: IoT All about statistics! SQL SERVER: Padrão: BTREE Secundária: HEAP Detalhando as estruturas... Estrutura Oracle SQL Server Menor unidade de armazenamento l. Bloco Página Tamanho Variável (por TBS) 8 KB Alocação de espaço Feito em várias páginas, Feito em várias páginas, extents extents Tamanho do extent Variável Fixo em 64 KB Segmento Qualquer estrutura lógica alocada Não existe Detalhando as estruturas... System tablespace Data file Data file Data file Data file Master DB SysAux tablespace Data file Data file Data file Data file Resource DB Data file Data file Temp DB Data file Data file Model DB Data file Data file MSDB Tablespace group Temporary tablespace BigFile tablespace Data file Data file Data file Data file Data file User data tablespace Data file Data file User index tablespace Data file Data file Undo tablespace Data file Redo log files User database Data file Data file Data FG Data file Data file Index FG Data file Redo log Redo log Redo log User DB Log files Oracle database SQL Server instance instance Log file(s) Mecanismos de LOG (ACID) SQL SERVER: Transaction Log Virtual log 1 Virtual log 2 Virtual log 3 Virtual log 4 Virtual log 5 Unused Truncated MinLSN End of logical log Last checkpoint Start of logical log Virtual Log 1 Virtual Log 2 Virtual Log 3 Virtual Log 4 Truncated End of logical log MinLSN Start of logical log Last checkpoint Next to last checkpoint ORACLE: • REDO LOGs (mudanças realizadas no BD) • Tablespace de Undo (Dados antes da alteração/Version – Begin Tran) Recovery SQL SERVER: FULL BULK-LOGGED SIMPLE ORACLE: • ARCHIVELOG • NOARCHIVELOG Em qualquer um dos dois, é fundamental ter uma política de Backup/Restore bem definida e Validada! Ferramentas SQL SERVER SSMS Todas as ferramentas gráficas legais da MS! Ferramentas de Prompt Powershell ORACLE • SQLDEVELOPER e SQLPLUS • SDSQL (linha de comando) • RMAN • ENTERPRISE MANAGER (pago!) O que gostaríamos de ver no SQL SERVER ASM – Automatic Storage Management; RAC – Real Application Clusters; Planos Adaptáveis (Adaptive plan) Restore de tabelas Flashback Database Utilização em outros S.O.s O que gostaríamos de ver no ORACLE Management Studio; Ajuste dinâmico de memória (on the fly); Alterar o modo de recovery à quente; Dettach/Attach; Usabilidade... ASM e RAC Onde aprender? SQL SERVER: • Technet wiki • MVA • SQL Server Books Online • Eventos da comunidade • Cursos oficiais • Cursos extraoficiais ORACLE: • Oracle wiki • Oracle Books Online • Eventos da comunidade • Cursos oficiais: WDP e OAEC • Cursos extraoficiais E quanto custa tudo isso? Quer migrar? Microsoft fornece licenciamento para quem quer sair da Oracle (Software Assurance) https://www.microsoft.com/en/server-cloud/sql-license-migration.aspx Referências • http://www.microsoftvirtualacademy.com/training-courses/sql-server-para-dbas-oracle (pt-br) • http://www.microsoftvirtualacademy.com/training-courses/sql-server-2014-essentialsfor-oracle-dbas • Curso oficial Microsoft: 40074A - Microsoft SQL Server 2014 for Oracle DBAs • Blog do Ricardo Portilho: http://nervinformatica.com.br/blog/ • SQL SERVER Features I’d like to see: http://www.brentozar.com/archive/2015/10/sqlserver-features-id-like-to-see-oracle-edition/ • Oracle X SQL SERVER: Indexes: https://www.youtube.com/watch?v=OBUedC08lf8&list=WL&index=8 • Documentação Oracle: http://docs.oracle.com/en/ • Documentação SQL SERVER: https://msdn.microsoft.com/enus/library/bb545450.aspx Dúvidas? Obrigado 34