Banco de dados, uma retrospectiva

 

Autor: Carlos Alberto Sowek

 

Este artigo busca relembrar um pouco sobre o que aconteceu desde a década de 50 na área de informática, e quais os produtos que foram lançados e suas versões. Serve para lembrar o que já passou e para verificar o que está acontecendo em relação a novos produtos na área de banco de dados e suas tecnologias inovadoras.

Para relatar todos os produtos, um a um, informando o que ocorreu ao longo dos anos ficaria muito extenso. Os produtos e empresas estão relacionados em tabelas como se fosse um resumo. As pessoas que tiveram a oportunidade de trabalhar com alguns produtos/empresas vão relembrar todos os fatos marcantes que ocorreram com as versões dos produtos disponíveis na época que utilizaram.

Em todos os tipos de banco de dados a seguir relatados, são relacionados alguns, pelo menos os mais conhecidos e, com certeza, não estão relacionados todos os bancos de dados que foram desenvolvidos/disponibilizados comercialmente, bem como todos os projetos encerrados/em andamento. Algumas empresas não existem mais, outras foram adquiridas por novas organizações. Em alguns produtos foram colocados os nomes das várias versões do produto durante sua existência.

Banco de Dados e Linguagens de Programação

Inicialmente foram os sistemas de arquivos como indexados seqüenciais - ISAM (Indexed Sequential Access Method). Depois, na década de 60, seguiram os Bancos de Dados hierárquicos e em rede. Os bancos de dados relacionais surgiram na década de 70, seguindo as regras definidas por Codd. Na década de 80 surgiram os bancos de dados orientados a objeto. Com a era da microinformática surgiram os produtos padrão xbase com grande repercussão no mercado. Atualmente temos os bancos de dados XML nativo, bancos de dados "On-Line" que permitem disponibilizar serviços via Web, bancos de dados puro Java e banco de dados específicos para aplicações "real-time", e versões de bancos de dados "embedded".

Na Tabela 1 a seguir estão relacionados bancos de dados e linguagens de programação que apareceram no mercado, com uma visão histórica, pois alguns produtos não existem mais. Contempla também novos produtos e alguns têm o nome da empresa da qual foram adquiridos.

Tab.1 - Banco de Dados e Linguagens de Programação - julho/02

Empresas

Produtos

Endereço

4D, Inc

4th Dimension

http://www.4d.com

Alaska Software

Visual Xbase++

http://www.alaska.com

Alpha Software

Alpha Five

http://www.alphasoftware.com

Answer Software Corp.

HyBase (ORDBMS)

http://www.answersftwr.com

Birdstep Technology

db-Vista III, RDM (Raima Corporation), Birdstep RDM

http://www.birdstep.com

Borland Software Corp.

Interbase (código fonte liberado), JDataStore

http://www.borland.com

CASEMaker, Inc.

DBMaker

http://www.casemaker.com

Cincom Systems, Inc.

TOTAL, Supra

http://www.cincom.com

Computer Associates

Clipper (Nantucket), IDMS (Culliname Corp.), Datacom (Insyte Corp), Jasmine (formalmente Fujitsu ODB-II), Ingres (Ingres Corp.), OpenIngress, Ingres II, Advantage Ingres

http://www.cai.com

Computer Corp. of America

Model 204 

http://www.cca-int.com

Corel Corp.

Paradox

http://www.corel.com

Data Access Corp.

DataFlex, Visual DataFlex

http://www.dataaccess.com

dBase Inc.

dBase (Ashton Tate), dBase II, dBase III, dBase III Plus, dBase IV (Borland), Visual dBase, dBasePlus

http://www.dbase.com

FileMaker, Inc.

File Maker Pro 

http://www.filemaker.com

FrontBase, Inc.

FrontBase

http://www.frontbase.com

Fujitsu 

SymfoWARE (ORDBMS)

http://www.fujitsu.com

Gupta Technologies, LLC(ou Centura Software)

SQLBase 

http://www.gupta.com

IBM

Information Management System - IMS, SQL/DS, AS/400, DB2/MVS, DB2/390, DB2/UDB, DB2 Olap Server, Cloudscape (ORDBMS) 

http://www.ibm.com

Hewlett Packard  

ALLBASE/SQL, TurboIMAGE/ImageSQL

http://www.hp.com

Hughes Technologies

Mini SQL ou mSQL

http://www.hugles.com.au

Informix (adquirida pela IBM)

OnLine Dynamic Server, Extended Parallel Server, UniData (Unidata, Inc.), Illustra (Illustra, Inc.),MetaCube (Stanford Technology Group), Red Brick Warehouse (Red Brick Systems)

 

Intersystems

Caché (pós-relacional)

http://www.intersystems.com

Micro Data Base Systems, Inc.

MDBS IV (16 bits), Titanium

http://www.mdbs.com

Microsoft

FoxBase, Fox Base+ (Fox Software), FoxPro, Visual FoxPro, Access, SQL Server,  SQL Server and Analysis Services

http://www.microsoft.com

NCR

Teradata

http://www.ncr.com http://www.teradata.com

Omniscience Object Technology, Inc.

Omniscience (ORDBMS)

 

Optimum Software Corp.

Optimum

http://www.optimumsoft.com

Oracle

Rdb (Digital Equipment Corp. - DEC)  Oracle, Oracle Lite, Oracle Express

http://www.oracle.com

Paradigma Software, Inc.

Valentina (ORDBMS)

http://www.paradigmasoft. com

Progress Software Corp.

Progress

http://www.progress.com

Raining Data Corp.

Advanced Pick (Pick Systems), D3, mvBase, mvEnterprise

http://www.raining.com

R:Base Technologies, Inc.

R:Base (Microrim)

http://www.rbase.com

Recital Corp.

Recital

http://www.recital.com

Sand Technology Systems

Nucleus

http://www.sand.com

Sapphire International Ltd.

DataEase

http://www.dataease.com

SAS Institute

SAS MDDB/Server, SAS System 2000

http://www.sas.com

Sequiter Software, Inc.

CodeBase

http://www.sequiter.com

Software AG

Adaptable Data Base System - Adabas

http://www.softwareag.com

Superbase Developers PLC

Superbase

http://www.superbase.com

Sybase

SQL Server,  Adaptive  Server Enterprise - ASE, ASE IQ, ASE MPP,   SQLAnywhere (Watcom)

http://www.sybase.com

Tandem (Compaq atual HP)

Non-Stop SQL

http://www.tandem.com http://nonstop.compaq.com

VMARK Software, Inc.

(Juntou-se com Unidata, Inc. que foi adquirida p/ Informix)

UniVerse

 

XDB Systems, Inc.

XDB

 

Unify Corp.

Unify Data Server

http://www.unify.com

Unisys
(fomada pela Sperry Corp. e Burroughs em 1986)

OSMOS (ORDBMS), DMS 2200

http://www.unisys.com

 

Com relação aos fornecedores de Sistemas Gerenciadores de Banco de Dados (SGBD´s), ocorreram alguns fatos relevantes que são relatados a seguir:

- IBM e suas versões de bancos de dados com vários nomes até chegar ao DB2

- Computer Associates e suas aquisições, ficando com um grande leque de produtos;

- Informix e o seu SGBDR desenvolvido em plataforma UNIX;

- Sybase e o seu SGBDR desenvolvido cliente/servidor;

- Parceria da Sybase com a Microsoft com relação ao SQL Server;

- A questão de Sistemas Gerenciadores de Banco de Dados Objeto Relacional - ORDBMS;

- Disputa para usar o nome "Universal Database";

- Divulgação de resultados de TPC (Transaction Processing Performance Council) com os melhores índices de performance em determinada plataforma;

- Políticas de preços praticadas. Mudanças constantes na forma de cobrança/venda dos produtos: por porte de CPU, por tipo do processador, por usuários nomeados/simultâneos, por licenças de uso, por número de cópias;

- Aquisição da Informix pela IBM;

- Disputa da 1ª posição no "market share" de banco de dados;

- IBM e seu conceito de bancos de dados federados.

Se fosse contar a história de cada empresa e de cada produto, suas versões e todas as "features" implementadas, daria alguns volumes. Em síntese, colocamos a seguir algumas características de banco de dados que influenciaram o mercado:

-  12 regras de Codd
-  Two-Phase-Committ
-  Multi threading
-  Controle de concorrência (deadlocks)
-  Integridade Referencial
-  Cursores
-  Replicação
-  Banco de Dados Distribuídos
-  Cliente/Servidor
-  Orientação a Objeto
-  Web
-  Data Warehousing
-  Data Mining
-  Computação móvel
-  Embedded
-  Java

- Otimização baseada em custos, regras e CPU
- Indices clustered/b-tree/bit-map/hash-index
- Procedural Gateway e Transparent Gateway
- Processamento Paralelo - SMP, MPP
- Constraints, Triggers, Stored procedures
- Particionamento horizontal e vertical
- Tipos de dados (BLOB, CLOB, UDT, UDF, som
,
imagem, vídeo)
- Data Cartridges/Extenders para dados
esp
aciais, textos e multimídia
- Very Large Databases (VLDB´s)
- OLAP
- Cluster
- Web Services
- Real-Time
- XML

 

Um grande fato ocorrido foi a conversão dos sistemas para o advento do ano 2000, que teve algumas implicações no mercado de banco de dados. Algumas empresas preferiram adotar os ERP, pacotes de aplicativos prontos e, neste caso, pode ter ocorrido também a troca do banco de dados. Alguns aplicativos desenvolvidos em padrão "xbase" foram refeitos em outra tecnologia.

Outra questão importante, em se tratando de banco de dados, é a questão do padrão, inicialmente criado com a versão ANSI SQL/89 (padrão americano) e depois adotado pela ISO/IEC 9075 SQL/89 como Norma Internacional. Seguiram-se as versões ISO/IEC 9075 SQL/92 e ISO/IEC SQL/99. Os trabalhos na ISO/IEC JTC1/SC32/WG3 continuam em andamento e abaixo estão relacionados os itens que estão em discussão de acordo com informações da Comissão de Estudos de SQL CE-21:102.01 (com sede em Curitiba/PR) subordinada a CT-21:102 - Comissão Técnica de Linguagens, Sistemas Operacionais e Bancos de Dados, endereço http://www.pr.gov.br/abntsoftware/ce10201, pertencente ao Subcomitê de Software SC10:21, organismo vinculado ao Comitê Brasileiro de Informática (CB-21) da Associação Brasileira de Normas Técnicas - ABNT.

ISO/IEC 9075:1999-01

Framework

ISO/IEC 9075:1999-02

Foundation

ISO/IEC 9075:1999-03

Call-Level Interface (CLI)

ISO/IEC 9075:1999-04

Persistent Stored Modules (PSM)

ISO/IEC 9075:1999-05

Host Language Bindings

ISO/IEC 9075:xxxx-06

Transactions (XA)

ISO/IEC 9075:xxxx-07

Temporal  (cancelado 10/01)

ISO/IEC 9075:xxxx-08

------------

ISO/IEC 9075:2001-09

Management External Data (MED)

ISO/IEC 9075:2000-10

Object Language Bindings (OLB)

ISO/IEC 9075:xxxx-11

Schemata

ISO/IEC 9075:xxxx-12

Replication

ISO/IEC 9075:xxxx-13

Java Routines and Types (JRT)

ISO/IEC 9075:xxxx-14

SQL/XML

O grupo que está trabalhando o padrão SQL nos Estados Unidos é o NCITS Technical Commitee H2 (conhecido como ANSI X3H2). O NCITS TC H2 está em harmonia com ISO/IEC JTC1/SC32 WG3 (Linguagem de Banco de Dados), WG4 (SQL/MM - Multimedia) e WG5 (Acessos a Dados). NIST FIPS 127-2 é o padrão atual para SQL adotado pelo governo federal americano, baseado no SQL92. Este padrão é requerido para os Sistemas Gerenciadores de Banco de Dados que são comprados pelos órgãos do governo.

Como curiosidade foram relacionados mais alguns bancos de dados:

- Banco de dados ArunaDB da Seva, Inc. que foi desenvolvido em linguagem de programação "ruby". Endereço http://www.sevainc.com.

- Banco de dados Sentences DB da Lazy Software, o primeiro Sistema Gerenciador de Banco de Dados baseado no Modelo Associativo de Dados cuja intenção é de refletir a estrutura dos dados do mundo real e o modo como percebemos e processamos as informações. Foi publicado o livro "The Associative Model of Data" por Simon Willians. Endereço http://www.lazysoft.com.

- O ERDB (Entity Relation Database) da Praedictus Corporation, que é um Sistema Gerenciador de Fluxo de Dados em Tempo Real. Sistema construído em estruturas entidade-relação desenhado especificamente para ambientes de respostas sensitivas. Endereço http://www.praedictus.com.

- JS da ORI Software, uma nova geração de DBMS usando tecnologia de "engine" de armazenamento baseado em um novo e experimental algoritmo matemático e um novo método de acesso. Suporta modelos de dados relacionais, orientado a objetos, multidimensionais e sistemas hierárquicos. Endereço: http://www.orisoftware.com, Tel Aviv - Israel.

- MindModel da MindModel Corp., Banco de dados Relacional sem programação chamado como software de "processamento de linguagem natural". Endereço http://www.mindmodel.com.

- Banco de dados puro Java: PointBase da PointBase, endereço http://www.pointbase.com. QED da Quadcap Software. Endereço http://www.quadcap.com.

-Kdb da Kx Systems Inc., banco de dados com armazenamento baseado em colunas. Endereço http://www.kx.com.

- Banco de dados para aplicações "real-time": Linter SQL da RelexUS endereço: http://www.relexus.com. Empress da Empress Software Inc. Endereço: http://www.empress.com.

Banco de Dados "Open Source"

Os Sistemas Gerenciadores de Banco de Dados "Open Source" ou Software Livre entraram no mercado com a expansão do Linux sistema operacional também "Open Source".

Além da questão custo envolvida, existe a questão de que os produtos devem ter seus códigos fontes liberados.

Em alguns países existem movimentos para adotar o Software Livre tanto por instituições governamentais como por empresas da iniciativa privada.

Tab.2 - Banco de Dados “Open Source” - julho/02

Organizações

Produtos

Endereço

Firebird - Project

Firebird  (versão do Interbase)

http://firebird.sourceforge.net

GNUSQL - Project  

GNUSQL

http://www.gnu.org/directory/ gnusql.html

McKoi  SQL Database

Mckoi SQL

http://mckoi.com/database

MySQL Org.

MySQL

http://www.mysql.org

PostgreSQL Org.

Postgre95, PostgreSQL

http://www.postgresql.org

Sleepycat Software, Inc

Berkeley DB

http://www.sleepycat.com

SAP Org.

SapDB

http://www.sapdb.org

Mercado em crescimento, deve-se aguardar os próximos anos para ver o que pode acontecer. Existem prós e contras em adotar tal solução além da questão de custos, a questão de mudança de cultura e de princípios, a questão de treinamento e de suporte.

Banco de Dados Orientados a Objetos (OODBMS ou ODBMS)

Os Sistemas Gerenciadores de Banco de Dados Orientados a Objetos (OODBMS) surgiram como uma nova visão para desenvolvimento de aplicações, como o reuso de códigos, entre outras características. Algumas empresas desenvolveram alguns bancos de dados orientados a objetos de forma proprietária, pois o padrão SQL não atendia as necessidades de tratar certas características, como por exemplo: herança. Com o uso verificou-se que os bancos de dados orientados a objetos não poderiam ser usados para sistemas de missão crítica, tendo grande dificuldade de ser aceito pelo mercado.

O padrão SQL evoluiu e na sua versão SQL99 já tem mais questões de orientação a objetos implementadas no seu código, e em futuras versões deve contemplar novas funcionalidades.

Tab.3 - Banco de Dados Orientados a Objetos (OODBMS) - julho/02

Empresas

Produtos

Endereço

Neologic Systems

NeoAccess

http://www.neologic.com

Neuralite

Neuralite

http://www.neuralite.com

O2 Technology

O2

 

Objectivity Database Systems

Objectivity/DB

http://www.objectivity. com

Ontos, Inc.

Ontos (formal-mente Vbase)

 

Orient Technologies

Orient

http://www.orienttechnologies.com

Poet Software

POET

http://www.poet.com

Persistent Data Systems

IDB

 

GemStone System, Inc.

GemStone

http://www.gemstone.com

Sysra Informatique

EyeDB

http://www.sysra.com/eyedb

UniSQL, Inc. 

UniSQL 

 

Unixspace

ConteXT

http://www.unixspace. com/context

Versant Corp.

Versant

http://www.versant.com

Xcc Software Technology Transfer

Object Systems of STONE - OBST+

 

Neologic Systems

NeoAccess

http://www.neologic.com

Neuralite

Neuralite

http://www.neuralite.com

O2 Technology

O2

 

Objectivity Database Systems

Objectivity/DB

http://www.objectivity. com

Ontos, Inc.

Ontos (formalmente Vbase)

 

Orient Technologies

Orient

http://www.orienttechnologies.com

Poet Software

POET

http://www.poet.com

Persistent Data Systems

IDB

 

GemStone System, Inc.

GemStone

http://www.gemstone.com

Sysra Informatique

EyeDB

http://www.sysra.com/eyedb

UniSQL, Inc. 

UniSQL 

 

Unixspace

ConteXT

http://www.unixspace. com/context

Versant Corp.

Versant

http://www.versant.com

Xcc Software Technology Transfer

Object Systems of STONE - OBST+

 

 

Os Sistemas Gerenciadores de Banco de Dados Orientados a Objeto não ficaram sendo os sucessores dos Sistemas Gerenciadores de Banco de Dados Relacionais (RDBMS). É encontrado hoje em poucas áreas, como em aplicações de CAD/CAE ou como servidor de aplicações Web para armazenar objetos persistentes.

Tab.4 - Banco de Dados Orientados a Objetos “Open Source”- julho/02

Organizações

Produtos

Endereço

Zope.org

ZODB

http://www.zope.org

GigaBase - Project

GigaBASE

http://sourceforge.net/projects/ gigabase

 

Os RDBMS devem ser a tecnologia de banco de dados predominante nos próximos anos.

Banco de Dados XML Nativo

Documentos XML (eXtensible Markup Language) estão divididos em duas categorias principais: Centrado no dado e centrado no documento. Documentos centrados no dado são aqueles onde o XML é usado como transporte de dados. Um exemplo são as páginas dinâmicas de web que são construídas de conjuntos de dados regulares e conhecidos. Documentos centrados no documento são aqueles no qual XML é usado pelas suas capacidades equivalentes ao SGML (Standard Generalized Markup Language), assim como páginas estáticas na web.

Para armazenar e recuperar os dados em documentos centrados no dado é necessário um banco de dados com capacidades de XML. Para armazenar e recuperar documentos centrados em documentos é necessário um sistema gerenciador de banco de dados ou de conteúdo XML nativo.

Bancos de dados XML Nativo são divididos em duas categorias:

- Armazenamento baseado em texto.

- Armazenamento baseado em modelo.

Armazenamento baseado em texto armazena o documento inteiro em forma de texto e permite algumas funcionalidades de classificação do banco de dados para acessar o documento. Uma estratégia simples para armazenar o documento é como BLOB em um banco de dados relacional ou como um arquivo do "file system", ou usando uma estratégia mais sofisticada armazenando os dados otimizados e customizados com índices.

Armazenamento baseado em modelo armazena um modelo binário de documento em uma forma de armazenamento de dados existente ou customizada.

Armazenamento baseado em texto tem a vantagem em recuperar documentos inteiros ou fragmentos em forma de texto. Armazenamento baseado em modelo tem a vantagem de combinar fragmentos de diferentes documentos.

A única interface para Banco de Dados XML Nativo é XML e suas tecnologias relacionadas, assim como: XPath, Xquery, XQL, Quilt, etc.

Tab.5 - Banco de Dados XML Nativo - julho/02

Empresas

Produtos

Endereço

B-Bop Associates, Inc.

Xfinity Server

http://www.b-bop.com

Centor Software Corp.

X-Sight Server

http://www.centor.com

Cerisent

Cerisent XQE

http://www.cerisent.com

Coherity

Coherity XML Database

http://www.coherity.com

data ex machina

Natix

http://www.dataexmachina.de

Ellipsis

DOM-Safe

http://www.ellipsis.nl

eXcelon Corp.

eXtensible Information Server (XIS)

http://www.exceloncorp.com

Infonyte

Infonyte DB

http://www.infonyte.com

Ipedo

Ipedo XML Database

http://www.ipedo.com

IXIA, Inc.

TEXTML Server

http://www.ixiasoft.com

Media Fusion Co, Ltd

Sekaiju ou Yggdrasil no Japão

http://www.mediafusion-usa. com

M/Gateway Developments Ltd.

eXtc

http://mgateway.tzo.com

Neo Core

Neocore XML Manage-ment System

http://www.neocore.com

OpenLink Software

Virtuoso

http://www.openlinksw.com

RMIT MDS Group

SIM (Structured Information Manager)

http://www.simdb.com

Stanford University

Lore

http://www-db.stanford.edu/lore

Software AG

Tamino

http://www.softwareag.com

X-Hive Corp.

X-Hive/DB

http://www.x-hive.com

XML Global

GoXML DB

http://www.xmlglobal.com

XYZFind Corp.

XYZFind Server

http://www.xyzfind.com

Wired Minds

MindSuite XDB

http://xdb.wireminds.com

 

Como tendência do mercado, existem também os bancos de dados XML nativo "open source".

Tab.6 - Banco de Dados  XML Nativo “Open Source” - julho/02

Organizações

P