Oracle - Aprendiz

 
Vista:

Aprendiz

Publicado por bitzarray (1 intervención) el 28/04/2004 02:29:22
Hola masters !!

Estoy comenzando con Oracle; y aunque he estudiado un poco siento que aún no tengo claro algunos conceptos, por eso pido a ustedes que me ayuden.
Estuve pensando como plantear la infinidad de consultas que tengo por hacer y no se me ocurrió nada mejor que proponerles un ejercicio :

mas o menos así....

se Necesita crear una base de datos para un cliente que tiene 3 empresas. Se desea registrar las facturas de ventas, los clientes y los vendedores para emitir informes estadísticos.

El cliente emite 200 facturas al día en promedio y cada empresa tiene una cartera de 1000 clientes. Además cada empresa cuenta con un equipo de 15 vendedores.

Cada empresa tendrá 200 usuarios concurrentes actualizando y consultando la información de su empresa.

así de simple...

las preguntas (por ahora) son ...

¿ debo crear un tablespace para cada empresa ?
¿ cual es la configuración correcta para las tablas que van a crecer bastante y para las que no ?

Les agradezco de antemano...

Salu2,
BitzArray
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Aprendiz

Publicado por obarrientos (4 intervenciones) el 28/04/2004 05:57:52
Esto es una pregunta de un examen tuyo, o qué?

Primero, un tablespace es como su nombre lo indica, un espacio de almacenamiento, pero almacenamiento de qué, una parte almacena los datos como por ejemplo el registro de los clientes, pero además Oracle almacena otro tipo de información como por ejemplo los índices de tablas, también almacena por ejemplo una información temporal cuando ejecutas una transacción como insert, update, delete.... y antes de realizar un commit o un rollback, todo esto son tipos de segmentos de datos, lo que debes de hacer es un tablespace por cada segmento, tendrías que tener algunos de los siguientes tablespaces:
SYSTEM: Objetos que son propios de la BD
DATA: La información de todas las compañías, ejm. el registro de todos los clientes.
INDEX: Información de indexada de las tablas
ROLLBACK: Información temporal que se almancena cuando se realiza una transacción y antes de ejecutar un commit o un rollback.

Es cierto que dependiendo de la capacidad de disco usted puede crear un tablespace acorde a la necesidad, pero no es estrictamente necesario tener un tablespace por c/ compañía, un tablespace se conforma de "control files" que pueden estar desperdigados en diferentes espacios de disco o incluso diferentes discos, si todo cabe en un solo disco, no hay de qué preocuparse, pero si no hay suficiente espacio puedes tener un mismo tablespace de datos con varios control files en varios discos, Oracle asigna la info. a uno de esos control files.

Para asignar la tablas que son de mayor peso, por lo general cuando haces el create table lo asigna al tablespace de datos que tiene asignado el usuario de oracle dueño de la tabla para asignar la tabla a otro tablespace diferente al del usuario la sentencia sería:
CREATE TABLE USER.tabla
(
fecha DATE
)
TABLESPACE TOOLS

Espero que te ayude

Salu2
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar