[prev in list] [next in list] [prev in thread] [next in thread] 

List:       php-general-es
Subject:    Re: [PHP-ES] OT:oracle
From:       "gustavo" <gjavier () menta ! net>
Date:       2003-06-29 10:35:28
Message-ID: 000e01c33e2a$28e23dd0$849d4ed4 () gus
[Download RAW message or body]

Hola Jaime, me miraré tu respuesta con atención, pero ya te voy adelantando
las gracias.

Saludos
----- Original Message -----
From: "Jaime A. Chavarriaga L." <jaime@usb.edu.co>
To: <lista@phpes.com>
Sent: Saturday, June 28, 2003 5:55 PM
Subject: Re: [PHP-ES] OT:oracle


> Gustavo
>
> > estoy usando windows nt y oracle 9, mi problema no es crear la
> > BD sino crearla con criterio, me explico, lo que busco es algun
> > tipo de relación entre el volumen de datos esperados, el tamaño
> > de la BD y los ficheros físicos. Me imagino que una vez tenemos
> > la bd diseñada, el número de tablas y la distribución en dichos
> > ficheros físicos (junto con una aproximación al volumen de datos
> > esperados) ayudaría a calcular dicho tamaño inicial.
>
> == Sobre Oracle
>
> En Oracle, el espacio físico ocupado por la base de datos (los datos) es
> administrado por el Sistema Manejador de Base de Datos (el servidor) y no
por
> el sistema operativo. Eso obliga a crear unos "datafiles" que puedan
almacenar
> los datos. Los datafiles son como unos archivos, en donde Oracle guarda
todo
> tipo de cosas: tablas, indices, etc.
>
> En otros sistemas manejadores de bases de datos, el espacio físico es
> administrado por el sistema operativo, y se tienen archivos para cada
cosa, y
> esos archivos crecen "libremente" por el disco.
>
> En Oracle existen varios conceptos...
>   - datafile... el archivo.
>   - tablespace... el espacio donde se almacenan las tablas.
>
> Uno podría tener varios tablespace... típicamente, pueden organizarse
> tablespace diferentes para cada aplicación, para hacer un "tunning"
adecuado a
> cada uno de ellos
>
> == diseño físico
>
> una vez tengas diseñada tu base de datos, es necesario establecer como se
va a
> almacenar físicamente... allí es importante usar unas pequeñas fórmulas,
> documentadas en el manual...
>
> Al definir el espacio de las tablas, es necesario definir el tamaño
inicial
> (inital extent) y el tamaño que debe crecer cada vez que el espacio libre
se
> acabe (next extent).
>
> Si tu tienes una base de datos que cambia constantemente, pero cada año se
> hace backup y vuelve a su tamaño inicial, podrías considerar tener
> como "initial extent" el tamaño de un año. Si tu piensas que tu base de
datos
> va a crecer permanentemente, podrías estimar como tamaño inicial el tamaño
del
> primer año y usar como tamaño de "next", el estimado de crecimiento anual.
(O
> por un período más corto).
>
> == una tabla (un ejemplo)
>
> Para calcular el tamaño inicial, por ejemplo, podemos considerar la
siguiente
> tabla
>
> Test

>   N number(10) Primary key ,
>   V  varchar2(30),
>   d date ,
>   c char(2))
>
> debemos...
>
> 1) mirar el tamaño de cada columna.
>
> para Oracle...
>   number : 4
>   date     : 8
>   Char/Varchar :(el tamaño especificado)
>
> tamaño total de cada fila ... 40
>
> 2) establecer la cantidad de filas que caben en un bloque Oracle (ver como
se
> instaló el SMBD)
>
> si tenemos bloques de 8K, el espacio utilizable antes de que quede "lleno"
> es...
>   7292
>
> La cantidad de filas por bloque es...
>   7292/40  = 182
>
> 3) establecemos la cantidad de bloques que necesitamos
>
> si en el año tenemos un valor estimado de 10000 nuevos "test"...
>
> la cantidad de bloques esperados es...
>   10000/182  = 55
>
> 4) ahora sí, miramos cuantos bytes necesitamos
>
> neceistamos multiplicar el tamaño de un bloque por la cantidad de bloques
a
> usar...
>   8192 * 55  = 450560
>
> == los índices
>
> básicamente el mismo procedimiento, solo que consideras únicamente las
> columnas del índice.
>
> == todo el esquema
>
> para hallar el tamaño, debes sumar el tamaño total de cada tabla y cada
índice.
>
> Si usas campos con UNIQUE, también hay un índice en esa columna.
>
> == scripts
>
> algunos scripts que te pueden ser útiles
>
> el tamaño del tablespace y de la BD
>   http://www.dbaclick.com/modules.php?
> op=modload&name=News&file=article&sid=124&mode=thread&order=0&thold=0
>
> la cantidad y el tamaño de los objetos de un usuario
>
http://www.dbaclick.com/modules.php?op=modload&name=News&file=article&sid=19
2
>
> == enlaces
>
> los manuales de Oracle
>   http://otn.oracle.com/documentation/oracle9i.html
>
> sobre la creación de tablespaces
>   http://download-
> west.oracle.com/docs/cd/B10501_01/win.920/a95491/ap_raw.htm#634855
>
> sobre el espacio usado por los objetos del esquema
>   http://download-
> west.oracle.com/docs/cd/B10501_01/server.920/a96521/schema.htm#949
>
> sobre los tipos de datos oracle
>   http://download-
>
west.oracle.com/docs/cd/B10501_01/server.920/a96540/sql_elements2a.htm#45443
>   http://download-
> west.oracle.com/docs/cd/B10501_01/appdev.920/a96624/03_types.htm#10519
>
> 8-)
> Jaime
>
>
> -------------------------------------------------------------
> Este Mensaje se envio atraves de http://www.usb.edu.co/correo
>
>
> ---------------------------------------------------------------------
> Archivo On-line:  http://www.phpes.com/
> via news: news://news.phpes.com/
> Manual PHP en español: http://www.php.net/manual/es/
> Para dar de baja la suscripción, mande un mensaje a:
>    lista-unsubscribe@phpes.com
>


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic