Para melhor visualização, recomendo resolução de no mínimo 1280 x 800 e navegador Mozilla Firefox


terça-feira, 10 de abril de 2007

A evolução dos bancos de dados Oracle

Por Eduardo Legatti

Olá,

O Oracle é um SGBD (sistema gerenciador de banco de dados) que surgiu no final dos anos 70, quando Larry Ellison vislumbrou uma oportunidade que outras companhias não haviam percebido, quando encontrou uma descrição de um protótipo funcional de um banco de dados relacional e descobriu que nenhuma empresa tinha se empenhado em comercializar essa tecnologia. A Oracle Corporation foi fundada em 1977 e tem escritórios em mais de 145 países. Em 2004, empregava mais de 43000 pessoas no mundo inteiro.

Lawrence J. Ellison (Larry Ellison) foi o presidente (CEO - Chief Executive Officer) da empresa por vários anos. Depois de ser diretor geral da empresa até 2003, foi sucedido por Jeff Henley em 2004. Ellison mantém seu posto de CEO.

O SGBD da Oracle é líder de mercado. O Oracle 9i foi pioneiro no suporte ao modelo web. O Oracle 10g, mais recente, se baseia na tecnologia de Grid. Além do banco de dados, a Oracle desenvolve uma suíte de desenvolvimento chamada de Oracle Developer Suite, utilizada na construção de programas de computador que interagem com a sua base de dados, e também criou a linguagem de programação PL/SQL, utilizada no processamento de transações.

A figura abaixo mostra a evolução do banco de dados Oracle ao longo dos anos:



A figura abaixo mostra as versões existentes para o banco de dados Oracle 10g Release 2 na qual está disponível desde Setembro de 2005.


A informação relacionada aos números de usuários é apenas uma estimativa.

O que é o Oracle Express Edition?
A Oracle anunciou oficialmente o seu Banco de Dados Oracle 10g Express Edition (Oracle XE) no dia 16 de março de 2006, uma edição inicial e gratuita do Banco de Dados Oracle. Desde sua estreia na versão beta em outubro de 2005, o Banco de Dados Oracle XE tem recebido forte apoio em todo o mundo de desenvolvedores, estudantes e fornecedores de soluções que o utilizam para desenvolver aplicativos de banco de dados nas plataformas Windows e Linux. A medida amplia o compromisso da fabricante com as necessidades das comunidades de desenvolvedores.

O Banco de Dados Oracle XE oferece liberdade para desenvolver e implementar aplicativos de muitas plataformas e traz suporte para uma grande variedade de ambientes de desenvolvimento. Centenas de milhares de programadores Java, .NET, PHP e da Web, incluindo estudantes e fornecedores de soluções de terceiros, já baixaram o banco de dados da Internet sem qualquer custo.

O Oracle XE traz recursos de performance, confiabilidade e segurança da versão 2 do Banco de Dados Oracle 10g, pois foi construído sobre a mesma base de código. Por ser compatível com toda a família de produtos do Banco de Dados Oracle, ele permite aos usuários a facilidade de começar com uma solução básica e ir mudando para outras versões quando necessário. Permite, ainda, que os desenvolvedores tirem total proveito do Oracle Application Express para rápido desenvolvimento e implementação de aplicativos baseados na Web.

O Oracle XE possui algumas limitações porém em muitos casos ele pode ser utilizado sem problemas, veja abaixo as limitações:

1) Trabalha como 1GB de RAM no máximo. Isto quer dizer que se sua máquina tiver mais de 1 GB de Ram, o Oracle Express vai utilizar apenas 1GB.

2) Trabalha com 1 único processador apenas.

3) O tamanho máximo do BD não pode exceder a 4GB de dados (Tablespace de Dados e de Sistema).

O Banco de Dados Oracle XE está disponível para Windows de 32 bits e uma grande variedade de sistemas operacionais Linux, incluindo Mandriva Linux 2006 Power Pack+, SUSE Linux Enterprise Server 9 e SUSE Linux 10 da Novell, Red Hat Enterprise Linux 4, Fedora e Ubuntu. O software pode ser baixado gratuitamente na Oracle Technology Network.

Seu uso e distribuição são gratuitos. Para ver os termos, condições e restrições, leia o documento de perguntas mais freqüentes.

A Oracle oferece um fórum online gratuito para usuários cadastrados, onde é possível discutir tópicos relacionados ao uso do Oracle XE. Ele é hospedado e monitorado por especialistas em Banco de Dados Oracle e está disponível em:

http://www.oracle.com/technology/products/database/xe/forum.html.
Referência do histórico de releases
Características introduzidas nas várias releases do banco de dados Oracle


Oracle 10g Release 2 (10.2.0) - Setembro 2005
  • Transparent Data Encryption.
  • Async commits.
  • CONNECT ROLE can not only connect.
  • Passwords for DB Links are encrypted.
  • New asmcmd utility for managing ASM storage.
Oracle 10g Release 1 (10.1.0)
  • Grid computing - an extension of the clustering feature (Real Application Clusters).
  • Manageability improvements (self-tuning features).
  • Performance and scalability improvements.
  • Automated Storage Management (ASM).
  • Automatic Workload Repository (AWR).
  • Automatic Database Diagnostic Monitor (ADDM).
  • Flashback operations available on row, transaction, table or database level.
  • Ability to UNDROP a table from a recycle bin.
  • Ability to rename tablespaces.
  • Ability to transport tablespaces across machine types (E.g Windows to Unix).
  • New 'drop database' statement.
  • New database scheduler - DBMS_SCHEDULER.
  • DBMS_FILE_TRANSFER Package.
  • Support for bigfile tablespaces that is up to 8 Exabytes in size.
  • Data Pump - faster data movement with expdp and impdp.
Oracle 9i Release 2 (9.2.0)
  • Locally Managed SYSTEM tablespaces.
  • Oracle Streams - new data sharing/replication feature (can potentially replace Oracle Advance Replication and Standby Databases).
  • XML DB (Oracle is now a standards compliant XML database).
  • Data segment compression (compress keys in tables - only when loading data).
  • Cluster file system for Windows and Linux (raw devices are no longer required).
  • Create logical standby databases with Data Guard.
  • Java JDK 1.3 used inside the database (JVM).
  • Oracle Data Guard Enhancements (SQL Apply mode - logical copy of primary database, automatic failover.
  • Security Improvements - Default Install Accounts locked, VPD on synonyms, AES, Migrate Users to Directory.
Oracle 9i Release 1 (9.0.1) - Junho 2001
  • Traditional rollback segments (RBS) are still available, but can be replaced with automated System Managed Undo (SMU). Using SMU, Oracle will create it's own "Rollback Segments" and size them automatically without any DBA involvement.
  • Flashback query (dbms_flashback.enable) - one can query data as it looked at some point in the past. This feature will allow users to correct wrongly committed transactions without contacting the DBA to do a database restore.
  • Use Oracle Ultra Search for searching databases, file systems, etc. The UltraSearch crawler fetch data and hand it to Oracle Text to be indexed.
  • Oracle Nameserver is still available, but deprecate in favour of LDAP Naming (using the Oracle Internet Directory Server). A nameserver proxy is provided for backwards compatibility as pre-8i client cannot resolve names from an LDAP server.
  • Oracle Parallel Server's (OPS) scalability was improved - now called Real Application Clusters (RAC). Full Cache Fusion implemented. Any application can scale in a database cluster. Applications doesn't need to be cluster aware anymore.
  • The Oracle Standby DB feature renamed to Oracle Data Guard. New Logical Standby databases replay SQL on standby site allowing the database to be used for normal read write operations. The Data Guard Broker allows single step fail-over when disaster strikes.
  • Scrolling cursor support. Oracle9i allows fetching backwards in a result set.
  • Dynamic Memory Management - Buffer Pools and shared pool can be resized on-the-fly. This eliminates the need to restart the database each time parameter changes were made.
  • On-line table and index reorganization.
  • VI (Virtual Interface) protocol support, an alternative to TCP/IP, available for use with Oracle Net (SQL*Net). VI provides fast communications between components in a cluster.
  • Build in XML Developers Kit (XDK). New data types for XML (XMLType), URI's, etc. XML integrated with AQ.
  • Cost Based Optimizer now also consider memory and CPU, not only disk access cost as before.
  • PL/SQL programs can be natively compiled to binaries.
  • Deep data protection - fine grained security and auditing. Put security on DB level. SQL access do not mean unrestricted access.
  • Resumable backups and statements - suspend statement instead of rolling back immediately.
  • List Partitioning - partitioning on a list of values.
  • ETL (eXtract, transformation, load) Operations - with external tables and pipelining.
  • OLAP - Express functionality included in the DB.
  • Data Mining - Oracle Darwin's features included in the DB.
Oracle 8i (8.1.7)
  • Static HTTP server included (Apache).
  • JVM Accelerator to improve performance of Java code.
  • Java Server Pages (JSP) engine.
  • MemStat - A new utility for analyzing Java Memory footprints.
  • OIS - Oracle Integration Server introduced.
  • PLSQL Gateway introduced for deploying PL/SQL based solutions on the Web.
  • Enterprise Manager Enhancements - including new HTML based reporting and Advanced Replication functionality included.
  • New Database Character Set Migration utility included.
Oracle 8i (8.1.6)
  • PL/SQL Server Pages (PSP's).
  • DBA Studio Introduced.
  • Statspack.
  • New SQL Functions (rank, moving average).
  • ALTER FREELISTS command (previously done by DROP/CREATE TABLE).
  • Checksums always on for SYSTEM tablespace allowing many possible.
    corruptions to be fixed before writing to disk.
  • XML Parser for Java.
  • New PLSQL encrypt/decrypt package introduced.
  • User and Schemas separated.
  • Numerous Performance Enhancements.
Oracle 8i (8.1.5)
  • Fast Start recovery - Checkpoint rate auto-adjusted to meet roll forward criteria.
  • Reorganize indexes/index only tables which users accessing data - Online index rebuilds.
  • Log Miner introduced - Allows on-line or archived redo logs to be viewed via SQL.
  • OPS Cache Fusion introduced avoiding disk I/O during cross-node communication.
  • Advanced Queueing improvements (security, performance, OO4O support
  • User Security Improvements - more centralisation, single enterprise user, users/roles across multiple databases.
  • Virtual private database.
  • JAVA stored procedures (Oracle Java VM).
  • Oracle iFS.
  • Resource Management using priorities - resource classes.
  • Hash and Composite partitioned table types.
  • SQL*Loader direct load API.
  • Copy optimizer statistics across databases to ensure same access paths across different environments.
  • Standby Database - Auto shipping and application of redo logs. Read Only queries on standby database allowed.
  • Enterprise Manager v2 delivered.
  • NLS - Euro Symbol supported.
  • Analyze tables in parallel.
  • Temporary tables supported.
  • Net8 support for SSL, HTTP, HOP protocols.
  • Transportable tablespaces between databases.
  • Locally managed tablespaces - automatic sizing of extents, elimination of tablespace fragmentation, tablespace information managed in tablespace (i.e moved from data dictionary) improving tablespace reliability.
  • Drop Column on table (Finally !!!!!).
  • DBMS_DEBUG PL/SQL package, DBMS_SQL replaced by new EXECUTE IMMEDIATE statement.
  • Progress Monitor to track long running DML, DDL.
  • Functional Indexes - NLS, case insensitive, descending.
Oracle 8.0 - Junho 1997
  • Object Relational database.
  • Object Types (not just date, character, number as in v7).
  • SQL3 standard.
  • Call external procedures.
  • LOB >1 per table.
  • Partitioned Tables and Indexes.
  • export/import individual partitions.
  • partitions in multiple tablespaces.
  • Online/offline, backup/recover individual partitions.
  • merge/balance partitions.
  • Advanced Queuing for message handling.
  • Many performance improvements to SQL/PLSQL/OCI making more efficient use of CPU/Memory. V7 limits extended (e.g. 1000 columns/table, 4000 bytes VARCHAR2).
  • Parallel DML statements.
  • Connection Pooling ( uses the physical connection for idle users and transparently re-establishes the connection when needed) to support more concurrent users.
  • Improved "STAR" Query optimizer.
  • Integrated Distributed Lock Manager in Oracle PS (as opposed to Operating system DLM in v7).
  • Performance improvements in OPS - global V$ views introduced across all instances, transparent failover to a new node.
  • Data Cartridges introduced on database (e.g. image, video, context, time, spatial).
  • Backup/Recovery improvements - Tablespace point in time recovery, incremental backups, parallel backup/recovery. Recovery manager introduced.
  • Security Server introduced for central user administration. User password expiry, password profiles, allow custom password scheme. Privileged database links (no need for password to be stored).
  • Fast Refresh for complex snapshots, parallel replication, PL/SQL replication code moved in to Oracle kernel. Replication manager introduced.
  • Index Organized tables.
  • Deferred integrity constraint checking (deferred until end of transaction instead of end of statement).
  • SQL*Net replaced by Net8.
  • Reverse Key indexes.
  • Any VIEW updateable.
  • New ROWID format.
Oracle 7.3
  • Partitioned Views.
  • Bitmapped Indexes.
  • Asynchronous read ahead for table scans.
  • Standby Database.
  • Deferred transaction recovery on instance startup.
  • Updatable Join Views (with restrictions).
  • SQLDBA no longer shipped.
  • Index rebuilds.
  • db_verify introduced.
  • Context Option.
  • Spatial Data Option.
  • Tablespaces changes - Coalesce, Temporary Permanent.
  • Trigger compilation, debug.
  • Unlimited extents on STORAGE clause.
  • Some init.ora parameters modifiable - TIMED_STATISTICS HASH Joins, Antijoins.
  • Histograms.
  • Dependencies.
  • Oracle Trace.
  • Advanced Replication Object Groups.
  • PL/SQL - UTL_FILE.
Oracle 7.2
  • Resizable, autoextend data files.
  • Shrink Rollback Segments manually.
  • Create table, index UNRECOVERABLE.
  • Subquery in FROM clause.
  • PL/SQL wrapper.
  • PL/SQL Cursor variables.
  • Checksums - DB_BLOCK_CHECKSUM, LOG_BLOCK_CHECKSUM.
  • Parallel create table.
  • Job Queues - DBMS_JOB.
  • DBMS_SPACE.
  • DBMS Application Info.
  • Sorting Improvements - SORT_DIRECT_WRITES.
Oracle 7.1
  • ANSI/ISO SQL92 Entry Level.
  • Advanced Replication - Symmetric Data replication.
  • Snapshot Refresh Groups.
  • Parallel Recovery.
  • Dynamic SQL - DBMS_SQL.
  • Parallel Query Options - query, index creation, data loading.
  • Server Manager introduced.
  • Read Only tablespaces.
Oracle 7.0 - Junho 1992
  • Database Integrity Constraints (primary, foreign keys, check constraints, default values).
  • Stored procedures and functions, procedure packages.
  • Database Triggers.
  • View compilation.
  • User defined SQL functions.
  • Role based security.
  • Multiple Redo members - mirrored online redo log files.
  • Resource Limits - Profiles.
  • Much enhanced Auditing.
  • Enhanced Distributed database functionality - INSERTS, UPDATES, DELETES, 2PC.
  • Incomplete database recovery (e.g SCN).
  • Cost based optimiser.
  • TRUNCATE tables.
  • Datatype changes (i.e VARCHAR2 CHAR, VARCHAR).
  • SQL*Net v2, MTS.
  • Checkpoint process.
  • Data replication - Snapshots.
Oracle 6.2
  • Oracle Parallel Server.
Oracle 6 - Julho 1988
  • Row-level locking.
  • On-line database backups.
  • PL/SQL in the database.
Oracle 5.1
  • Distributed queries.
Oracle 5.0 - 1986
  • Supporting for the Client-Server model - PC's can access the DB on remote host.
Oracle 4 - 1984
  • Read consistency.
Oracle 3 - 1981
  • Atomic execution of SQL statements and transactions (COMMIT and ROLLBACK of transactions).
  • Nonblocking queries (no more read locks).
  • Re-written in the C Programming Language.
Oracle 2 - 1979
  • First public release.
  • Basic SQL functionality, queries and joins.

Referências:
  • http://orafaq.com/faq/features_introduced_in_the_various_server_releases.



8 comentários:

Unknown disse...

Eduardo, preciso desesperadamente conseguir o Oracle Applications Server for win NT Release 11 (para o BD Oracle 8.0.5. Nao tenho suporte. Vc tem ou pode me dar uma dica de com quem ou onde conseguir?

Obrigado,

Ricardo Lucas

Eduardo Legatti disse...

Olá,

Humm, Oracle 8.0.5? Esta versão já não é suportada há bastante tempo. Se você não conseguiu achar um link para download na página de downloads da Oracle, talvez você consiga alguma obter alguma informação nos fóruns de discussões. No mais, talvez você consiga obter alguma resposta diretamente do suporte da Oracle Brasil, mesmo não tendo nenhum contrato de suporte.

Boa sorte e até mais ...

Washington Vaz disse...

Eduardo,

Bacana o seu blog. Estou utilizando boa parte destas informações pra levantar um breve contexto histórico sobre a evolução do Oracle referente a Criptografia e, graças a este texto, consegui chegar as documentações oficiais.

Se não for muito incômodo. Você tem algum material ou sabe me passar o caminho das pedras para saber se as versões anteriores ao Oracle 6 tem suporte ou meio a alguma ferramenta de Criptografia?

Forte abraço.

Eduardo Legatti disse...

Olá Washington,

Eu não tenho essa informação. É possível que você possa consegui-la postando uma pergunta no Forum da Oracle . Poste a pergunta em inglês. Um outro lugar que você pode tentar é na Time Line da Oracle.

Abraços e até mais

Legatti

Rafael disse...

Amigo bom dia,

Sou novo em Oracle e estou querendo identificar a versão do Oracle em um cliente e executei:
select * from v$version
só que retornou:

Oracle9i Release 9.2.0.8.0 - Production
PL/SQL Release 9.2.0.8.0 - Production
"CORE 9.2.0.8.0 Production"
TNS for 32-bit Windows: Version 9.2.0.8.0 - Production
NLSRTL Version 9.2.0.8.0 - Production

Não retornou nada como:
Enterprise , standard etc..

Será que existe alguma outra forma de descobrir ?

Desde já agradeço

Eduardo Legatti disse...

Olá Rafael,

É essa view mesmo. A versão é Oracle9i Release 9.2.0.8.0 Standard Edition.

Quando é Enterprise Edition, a palavra "enterprise" estará no texto. Veja o exemplo abaixo:


Standard Edition

SQL> select * from v$version;

BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Release 11.2.0.1.0 - 64bit Production
PL/SQL Release 11.2.0.1.0 - Production
CORE 11.2.0.1.0 Production
TNS for Linux: Version 11.2.0.1.0 - Production
NLSRTL Version 11.2.0.1.0 - Production


Enterprise Edition

SQL> select * from v$version;

BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
PL/SQL Release 11.2.0.1.0 - Production
CORE 11.2.0.1.0 Production
TNS for Linux: Version 11.2.0.1.0 - Production
NLSRTL Version 11.2.0.1.0 - Production


Abraços e até mais

Legatti

Rafael disse...

Valeu meu amigo muito obrigado mesmo,

Mais uma dúvida em relação a licença existe alguma possibilidade de uma licença SE do Oracle 9i contempla o upgrade para versão 10g?

Desde já agradeço.

Eduardo Legatti disse...

Olá Rafael,

Se não me engano, as licenças são independentes da versão (9i, 10g, 11g, 12c), ou seja, não terá que pagar nada a mais por conta da troca de versão. No entanto, acredito que seria necessário renovar algum contrato de suporte com a Oracle. O ideal será você entrar em contato com algum revendedor autorizado da Oracle e tirar essas dúvidas. A cada dia eles inventam uma coisa nova ;-)

Abraços e até mais...

Legatti

Postagens populares