Principal





Listado de Bases de Datos, Lista de motores de bases de datos (DBMS)

****+ (4.50)
views: 263

 Motores de base de datos OpenSource

Freeware (Propietarias)
Software Propietario

Historicas

Truly relational
Current
  • Alphora Dataphor(a proprietary virtual, federated DBMS and RAD MS .Net IDE).

  • CsiDB (proprietary C++ library).

  • D flat (unreleased MS .Net academic project).

  • Duro (free C library).

  • Opus (free C libraries).

  • Rel (free Java implementation).

  • Rosetta (free Perl implementation).

  • Aldat (implemented in Relix and JRelix): A pure relational DBMS implemented in McGill University. It features clear syntax and domain algebra operators.

Obsoletas

Ver Comentarios

Cómo Calificas este artículo?:
1 2 3 4 5

Lista de Motores de Bases de datos gratuitas Open-source (freeware)

****+ (4.75)
views: 1032

Listado de motores bases de datos
Apache Derby
Base de datos relacional open source implementada
completamente en java
B-Tree Filer
Sistema de busqueda rápida de archivos,
creada por Borland Delphi. Independiente de otras herramientas Borland,
Gratuita open Source.
Berkeley DB
Sistema de base de datos embedido, open source.
Provee un kit de herramientas de alta performace
con soporte para aplicaciones de escritorio y servidores.
Soporta C, C++,Java,Tcl,Perl y Python APIs.
Corre bajo Windows 95/98/NT/2000, VxWorks, Linux y Unix.
Freeware para distribuciones no comerciales
DiamondBase
Motor de base de datos en C++
disponible para uso no comercial
Firebird Database
Motor de Base de datos relacional 
para Linux, Windows, y gran variedad de plataformas 
Open-source, freeware, basada en  Interbase.
FlashFiler
Freeware, open-source 
Motor de base de datos SQL cliente/servidor .

GNU SQL Server
Motor Base de datos gratis,
relacional portable y multiusuario creada en C. It
soporta SQL89.

H2 Database Engine
Motor Base de datos Open source en Java
soporta standard SQL y JDBC API.
HSQLDB
Sistema de base de datos rapido pequeño y relacional
escrito completamente en java
Hypersonic SQL
Sistema de base de datos relacional super pequeño
creado integramente en java, soporta
standard SQL y tiene interfaz JDBC . 
Todo en menos de 100Kb.
IBM's Cloudscape
Freeware, open-source,
Base de datos small-footprint
Creada completamente en JAVA
MySQL
Freeware, Motor de base de datos gratuito ,
soporte multiusuario. multithread. SQL.
versiones disponibles para Win95/Win98/NT, Linux,
Solaris, FreeBSD,AIX, SunOS, etc.
JDBC drivers. Freeware bajo licencia GPL.

Ocelot
Base de datos gratuita
soporta completamente  ANSI / ISO SQL Standard (1992)
y una lista de caracteristicas de SQL3  (tambien conocido como SQL-99).
Corre en varias versiones  de windows puede ser llamada por medio de ODBC.
Solo para uso personal, no distribuible

One$DB
Edición freeware y open source
de Daffodil DB, Base de datos  
comercial en Java.

Perst
Perst  es un motor de bases de datos open source
orientado a objetos con soporte para Java y .NET.

PostGreSQL
Freeware. "The Vision of PostgreSQL, Inc.
is to support the market dominance of PostgreSQL
as the definitive freewareSQL database solutions
for individuals and organizations worldwide."
Avanzada objetos-relacional DBMS, 
corre en varios sistemas operativos y contiene drivers 
para  ODBC y JDBC.

Sanchez GT.M
Industrial strength,
transaction processing application platform
consisting of a database engine optimized for high TP
throughput and a compiler for the M (aka MUMPS)
programming language.
GT.M is open-souce freeware on x86/Linux.

SQLLite
SQLite es una pequeña libreria de C que implementa self-contained. 
cero-configuration.
Motor de base de datos SQL

Sybase ASE Express
Edición Freeware 
de  Sybase para Linux.

Real Isam
Libreria de base de datos  (DLL)
que se usa en el metodo ISAM  (Indexed Sequential Access Method)
para manejar indices y datos de longitud variable.
Aplicable en  C++, Delphi, Visual Basic, etc.
Freeware en  Windows.

MS SQLServer Express Edition 
Versión Express, liviana, de la versión
comercial de SQL SERVER DATABASE

Ver Comentarios

Cómo Calificas este artículo?:
1 2 3 4 5

Optimización de consultas SQL

****+ (4.75)
views: 499

 Cada día se necesita procesar mayor cantidad de datos y obtener de manera más rápida y precisa la información.
 Muchos de los problemas de rendimiento se deben entre otras cosas al hardware, al software, al motor de base de datos y por sobre todo al diseño, índices y mala formulación de consultas SQL. En este apartado nos centraremos en estos últimos en donde siguiendo algunas recomendaciones veremos que se puede  mejorar el tiempo de respuesta de nuestro motor de BD significativamente.
 
A la hora de diseñar la base de datos
·         Las tablas normalizadas permiten reducir al mínimo el espacio ocupado por nuestra base y permiten asegurar la consistencia de la información al mismo tiempo que son muy rápidas para la realización de transacciones, pero generan un mayor tiempo de demora a la hora de consultarlas ya que se deben realizar generalmente la unión de varias tablas, por lo que en caso de necesidad de altas velocidades de respuesta con grandes volúmenes de datos un modelo desnormalizado es más que conveniente teniendo en cuenta todas las implicancias del caso.
·         Ajustar al máximo el tamaño de los campos ayuda a no desperdiciar espacio.
·         Eliminar todo campo que no sea de utilidad ya que por más que no contenga datos genera retrasos.
Que pasa con los índices
·         Los índices son campos que permiten la búsqueda a partir de dicho campo a una velocidad notablemente superior. Sin embargo cuentan con la desventaja que hacen más lenta la actualización, carga y eliminación de los registros ya que por cada modificación en la tabla se deberá modificar también el índice, además se debe tener en cuenta el hecho de que los índices también ocupan espacio en disco. Es por esto que no es factible indexar todos los campos de la base y se hace necesario seleccionarlos cuidadosamente. Cabe destacar que por defecto las tablas no contienen índices por lo que la introducción de estos puede llegar a producir mejoras de más del 100% en algunos casos.
Los campos que se recomiendan indexar son:
o   Claves Primarias
o   Claves Foráneas
o   Campos por los cuales se realizaran búsquedas
o   Campos por los cuales se va a ordenar
Siempre conviene indexar tablas con gran cantidad de registros y que van a ser consultadas intensamente.
Donde escribir las sentencias
·         Siempre es preferible utilizar consultas almacenadas dentro del motor de base de datos y no dentro de la aplicación, una consulta almacenada en un procedimiento almacenado por ejem , se ejecuta mucho mas rápido y directamente sobre el motor que cualquier consulta externa. Esto es porque los motores de base de datos tienen que compilar previamente las consultas antes de ejecutarlas, si la consulta se encuentra dentro del motor la misma es guardada ya compilada para acelerar la ejeción. hay que tener en cuenta que tener las consultas dentro del motor trae la desventaja de ligar nuestra aplición al motor de base de datos utilizado, esto hace que no podamos migrar de una base a la otra facilmente ya que al migrar también deberemos migrar las consultas.
·         Muchas de las aplicaciones sobre todo de reporting permiten unir y realizar los joins y consultas directamente en la herramienta produciendo una baja de performance realmente considerable. Lo correcto y más eficiente seria generar la consulta en un sp con todos los joins y guardar el resultado en una tabla temporal, de donde posteriormente el reporte solo deberá mostrar los datos sin necesidad de trabajarlos primero. Dependiendo los joins que intervengan y los registros involucrados se pude mejorar drásticamente la performance , han habido casos en que reportes que duraban 3 min en generarse pasaron a 30 seg., usando esta técnica.
Acerca de la formulación de la consultas:
A la hora de ejecutar una consulta SQL la forma en que esta es expresada afecta directamente al motor de BD, pequeños cambios pueden significar la ganancia de muchos segundos o minutos que el usuario debe esperar al momento de ejecutar la consulta. Algunas recomendaciones son:
·         No utilizar SELECT * por que el motor  debe leer primero la estructura de la tabla antes de ejecutar la sentencia.
·         Seleccionar solo aquellos campos que se necesiten, cada campo extra genera tiempo extra.
·         Utilizar Inner Join , left join , right join, para unir las tablas en lugar del where, esto permite que a medida que se declaran las tablas se vallan uniendo mientras que si utilizamos el where el motor genera primero el producto cartesiano de todos los registros de las tablas para luego filtrar las correctas, un trabajo definitivamente lento.
·         Especificar el alias de la tabla delante de cada campo definido en el select, esto le ahorra tiempo al motor de tener que buscar a que tabla pertenece el campo especificado.
·         Evitar el uso de Cast. Y formulas dentro de las consultas, cada formula y casteo retrasan el motor considerablemente.
El orden de ubicación las tablas en el from deberían ir en lo preferible de menor a mayor según el número de registros , de esta manera reducimos la cantidad de revisiones de registros que realiza el motor al unir las tablas a medida que se agregan.
written by Lucas Forchino
 

Ver Comentarios

Cómo Calificas este artículo?:
1 2 3 4 5

Tutoriales y herramientas SQL DATAWAREHOUSE Gratuitos

****+ (4.11)
views: 195

Herramientas de Datawarehouse, tutoriales gratis para desarrollar modelos decisionales

www.helpdna.net

Ver Comentarios

Cómo Calificas este artículo?:
1 2 3 4 5

Google