42

SQL Day 2016 - SQL Server x Oracle

Embed Size (px)

Citation preview

Page 1: SQL Day 2016 - SQL Server x Oracle
Page 2: SQL Day 2016 - SQL Server x Oracle

SQL SERVER E ORACLE: SEMELHANÇAS E DIFERENÇAS PARA O DBA

Marcelo Gonçalves [email protected]

Page 3: SQL Day 2016 - SQL Server x Oracle

ORGANIZAÇÃO

Page 4: SQL Day 2016 - SQL Server x Oracle

APOIADORES

Page 5: SQL Day 2016 - SQL Server x Oracle

SQL SOLIDÁRIO

• https://flaviofarias.wordpress.com/2016/08/13/sql-solidrio/

Page 6: SQL Day 2016 - SQL Server x Oracle

PRÓXIMOS EVENTOS

08/10 26/11

Page 7: SQL Day 2016 - SQL Server x Oracle

STAY INVOLVED !

• Sign up for a free membership today at sqlpass.org.

• Linked In: http://www.sqlpass.org/linkedin

• Facebook: http://www.sqlpass.org/facebook

• Twitter: @SQLPASS

• PASS: http://www.sqlpass.org

Page 8: SQL Day 2016 - SQL Server x Oracle

• 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

SP_HELP DBA

Marcelo.Adade

@marceloadade

https://br.linkedin.com/in/marcelo.adade

[email protected]

http://www.youtube.com/user/dbbits1

Page 9: SQL Day 2016 - SQL Server x Oracle
Page 10: SQL Day 2016 - SQL Server x Oracle

• 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

SP_HELP DBA

Marcelo.Adade

@marceloadade

https://br.linkedin.com/in/marcelo.adade

[email protected]

http://www.youtube.com/user/dbbits1

Page 11: SQL Day 2016 - SQL Server x Oracle
Page 12: SQL Day 2016 - SQL Server x Oracle

1. Motivação

2. Arquitetura Básica

3. Administração

4. Coisas que gostaríamos que cada um tivesse

5. Onde aprender

6. Investimento

AGENDA – UM COMPARATIVO RÁPIDO!

Page 13: SQL Day 2016 - SQL Server x Oracle

Gartner, 2014

MOTIVAÇÃO 1

Page 14: SQL Day 2016 - SQL Server x Oracle

Gartner, 2015

MOTIVAÇÃO 2

Page 15: SQL Day 2016 - SQL Server x Oracle

MOTIVAÇÃO 2

Page 16: SQL Day 2016 - SQL Server x Oracle

MOTIVAÇÃO - 3

16 |

Page 17: SQL Day 2016 - SQL Server x Oracle

HISTÓRICO

17 |

Version Release Year1.0 19891.1 19914.2 1992

4.21 19946.0 19956.5 19967.0 1998

2000 20002005 20052008 2008

2008 R2 20102012 20122014 2014

SQL Server Version Release Year

2.0 19793.0 19834.0 19845.0 19856.0 19887.0 19928.0 1997

8i 19989i 2001

10g 200311g 200712c 2012

Oracle Versions

Page 18: SQL Day 2016 - SQL Server x Oracle

RDBMS - ARQUITETURA GENÉRICA

18 |

PC

Server Storage

Instance DatabaseClient

Memory Process

ProcessProcessProcess

CPUCPU Temp Log

Control

System

DataData Data

Page 19: SQL Day 2016 - SQL Server x Oracle

SISTEMAS OPERACIONAIS SUPORTADOS

19 |

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/sql-server-on-linux.aspx

Page 20: SQL Day 2016 - SQL Server x Oracle

INSTÂNCIA ORACLE X SQL SERVER

20 |

DatabaseSchema

Object

Object

Object

SchemaObje

ctObje

ctObje

ct

SchemaObje

ctObje

ctObje

ctSchema

Object

Object

Object

InstanceHost machine

Instance

DatabaseSchema

Object

Object

Object

SchemaObje

ctObje

ctObje

ct

InstanceHost machine

Instance

DatabaseSchema

Object

Object

Object

SchemaObje

ctObje

ctObje

ct

Oracle 12c SQL Server 2014

Page 21: SQL Day 2016 - SQL Server x Oracle

ARQUITETURA ORACLE

21 |

• SGA• PGA• Background

processes• Pfile, Spfile• Control Files• Redo log files• Data files• Listener

Page 22: SQL Day 2016 - SQL Server x Oracle

MULTITENANT ORACLE

22 |

Page 23: SQL Day 2016 - SQL Server x Oracle

ARQUITETURA ORACLE – SIMPLIFICANDO...

23 |

Users

Userprocess

Userprocess

Userprocess

ProcessmonitorSystemmonitor

JobqueueQueue

monitorEvent

monitor

Recoverer

Trace writer

Dispatcher

Shared server

Dedicated server

Checkpoint

Redolog

buffer

SGAInstance

Automatic storage management

Database

Data files Archive log files

Control files

Redo log files

Response

queue

Requestqueue

Database writer Log writer

Archiver

Database

buffercache

Client

Client

Client

Page 24: SQL Day 2016 - SQL Server x Oracle

ARQUITETURA SQL SERVER SIMPLIFICADA

24 |

Users

Userprocess

Userprocess

Userprocess

Relationalengine

Memorypool

Database buffercache

SQLOS

ODBC Storageengine

LogcacheOpen

dataservice

s

Databasecleanup

Workerthread

Logwriter

Lazy writer

Workerthread

Databaseshrinking Data

files

Log files

Client

Client

Client

Page 25: SQL Day 2016 - SQL Server x Oracle

ESTRUTURAS DE MEMÓRIA

25 |

Buffer cache Shared pool

Buffer cacheColumnstore cache

Procedure cache

Redo buffers

Fixed SGA

Largepool

Streams

pool

Java pool

Log cache

System structure

s

Connection

context

CLR hostinglayer

Oracle System Global Area (SGA)

SQL Server memory pool

Page 26: SQL Day 2016 - SQL Server x Oracle

ESTRUTURAS DE ARMAZENAMENTO

26 |

Data file

Tablespace

Data file Data file Data file Data file

Temporary tablespace groups

Tablespace

Segment

ExtentExtentExtentExtent

Segment

Extent Extent Extent

Heap/Index (hobt) Heap/IndexFilegroup Filegroup

Físico

Lógico

Oracle SQL ServerBlocksBlocksBlocksBlock

sPages Pages Pages

Data file

Page 27: SQL Day 2016 - SQL Server x Oracle

HEAPS, CLUSTERED TABLES E IOTS

TABELAS

ORACLE:

• Padrão: HEAP

• Secundária: IoT

SQL SERVER:Padrão: BTREESecundária: HEAP

All about statistics!

Page 28: SQL Day 2016 - SQL Server x Oracle

DETALHANDO AS ESTRUTURAS...

28 |

Estrutura Oracle SQL Server

Menor unidade de armazenamento l.

Tamanho

Alocação de espaço

Tamanho do extent

Segmento

Bloco

Variável (por TBS)

Variável

Qualquer estrutura lógica alocada

Página

8 KB

Fixo em 64 KB

Não existe

Feito em várias páginas, extents

Feito em várias páginas, extents

Page 29: SQL Day 2016 - SQL Server x Oracle

DETALHANDO AS ESTRUTURAS...

29 |

Oracle database instance

Data file Data file

Data file Data file

Data file Data file

Data file Data file

Data file

Data file Data file

Data file Data file

Data file Data file

Tablespace group

Redo logRedo log

Redo log

System tablespace

SysAux tablespace

Temporary tablespace

BigFile tablespaceUser data

tablespaceUser index tablespaceUndo tablespace

Redo log files

SQL Server instance

Data file Data file

Data file Data file

Data file Data file

Data file Data file

User database

Log files

Data file Data file

Data file Data file

Data file Data file

Master DB

Resource DBTemp DB

Model DB

MSDB

User DBData FGIndex FGLog file(s)

Page 30: SQL Day 2016 - SQL Server x Oracle

METADADOS

30 |

ORACLE:

• Schema SYS

• V$

• DBA_, ALL_

SQL SERVER:

• Schema SYS

• DM_

• Sys.tables, sys.columns

Author
incrementar
Page 31: SQL Day 2016 - SQL Server x Oracle

MECANISMOS DE LOG (ACID)

31 |

SQL SERVER:

• Transaction Log

ORACLE:

• REDO LOGs (mudanças realizadas no BD)

• Tablespace de Undo (Dados antes da alteração – Begin Tran)

Virtual log 1 Virtual log 2 Virtual log 3 Virtual log 4 Virtual log 5

TruncatedUnused

Start of logical logMinLSN Last checkpoint

End of logical log

Virtual Log 1

Virtual Log 2

Virtual Log 3

Virtual Log 4

Truncated

Start of logical log

MinLSNNext to last checkpoint

Last checkpointEnd of logical log

Page 32: SQL Day 2016 - SQL Server x Oracle

RECOVERY

32 |

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!

Page 33: SQL Day 2016 - SQL Server x Oracle

FERRAMENTAS

33 |

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!)

Page 34: SQL Day 2016 - SQL Server x Oracle

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

Page 35: SQL Day 2016 - SQL Server x Oracle

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...

Page 36: SQL Day 2016 - SQL Server x Oracle

ASM E RAC - CURIOSIDADE

36 |

Author
incrementar
Page 37: SQL Day 2016 - SQL Server x Oracle

ONDE APRENDER?

37 |

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

Page 38: SQL Day 2016 - SQL Server x Oracle

E QUANTO CUSTA TUDO ISSO?

Page 39: SQL Day 2016 - SQL Server x Oracle

QUER MIGRAR?• Microsoft fornece licenciamento para quem quer sair da Oracle (Software

Assurance)

https://www.microsoft.com/en/server-cloud/sql-license-migration.aspx

Page 40: SQL Day 2016 - SQL Server x Oracle

TAKE AWAY – PARA REFLETIR

40 |

• Duas tecnologias TOP de mercado;

• Verifique o custo ao longo do tempo – Implementação e Suporte;

• Facilidade de Administração, Desenvolvimento, Deploy;

• Qual tecnologia é usada em seu ambiente para

Desenvolvimento?

• Seu time tem mais expertise em qual Sistema Operacional?

Page 41: SQL Day 2016 - SQL Server x Oracle

REFERÊNCIAS

41 |

• http://www.microsoftvirtualacademy.com/training-courses/sql-server-para-dbas-oracle

(pt-br)

• http://www.microsoftvirtualacademy.com/training-courses/sql-server-2014-essentials-fo

r-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/sql-server-features-id-like-to-see-oracle-edi

tion/

• 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/en-us/library/bb545450.aspx

Page 42: SQL Day 2016 - SQL Server x Oracle

DÚVIDAS?

OBRIGADO!