Professional Documents
Culture Documents
Alcrearunabasededatos,seconfiguralaestructuradealmacenamientodelosdatos. Estaestructuraincluyealmenosunarchivodedatos,quecontieneobjetosdelabasededatos como tablas e ndices y un archivo de registro de transacciones que contiene el diario de transaccionesdelabasede.Antesdecrearunabasededatos,esimportantequecomprenda cmoSQLServeralmacenalosdatos,ascomolafuncindelregistrodetransacciones. Estaunidad proporcionaalosalumnoslosconocimientosylacapacidadnecesariospara crearunabasededatos.EnlsedescribecmoMicrosoftSQLServer2005almacenalos datosyprocesalastransacciones.Ademsveremoscmocrear,administrarycolocararchivos yregistrosdetransaccionesdebasesdedatos,ascomolamaneradeoptimizarbasesdedatos mediante RAID basado en hardware, grupos de archivos definidos por el usuario y una combinacin de ambos. Concluye con informacin acerca de cmo asignar, administrar y supervisarlosrequisitosdeespacioyalmacenamientodeunabasededatos,ascomoalgunas consideracionesacercadelrendimiento.
Alfinalizarelestudiodelapresenteunidadtemticaelestudiante: 1. Describe el modo en que SQL Server almacena los datos y trata las transacciones. 2. Ampliaoreduceeltamaodeunabasededatos. 3. Determina la ubicacin de archivos y registros de transacciones de basesdedatosparamejorarelrendimientoylatoleranciaaerrores. 4. OptimizaunabasededatosmedianteRAIDbasadoenhardware. 5. Determina cundo y cmo usar grupos de archivos para optimizar una basededatos. 6. Optimiza una base de datos mediante grupos de archivos con RAID basadoenhardware. 7. Estimalacantidaddeespacioquerequiereunabasededatos.
70
1. INTRODUCCIONALASESTRUCTURASDEDATOS
71
Figura3.1:Labasededatosysusarchivos
b) Las Transacciones:
Una transaccin es un conjunto de una o varias instrucciones TransactSQL que se tratan como una sola unidad de trabajo y recuperacin. La unidad se debe ejecutar completamente, o no ejecutarse. Las aplicaciones controlan las transacciones cuando se especifica el principio y el final de stas ltimas. Para especificar el principio y el final de las transacciones puede usar tanto las instrucciones TransactSQL como las funciones de la interfaz de programacin deaplicaciones (API) de bases de datos. SQL Server realizatransaccionesimplcitasyexplcitas. Transaccinimplcita: SQLServerrealizaunatransaccinimplcitacuandoseejecutacomo una transaccin cualquiera de las instrucciones TransactSQL siguientes: Altertable Insert Create Open Delete Revoke Drop Select
72
Fetch Truncatetable
Grant Update
De manera predeterminada, SQL Server funciona en modo de consignacinautomtica.Estosignificaqueunatransaccinimplcita se consigna tras su ejecucin sin necesidad de finalizar la transaccinconunainstruccinCOMMITTRANSACTION. SQL Server puede funcionar tambin en modo de transaccin implcita. Esto significa que cuando cualquiera de las instrucciones TransactSQL citadas anteriormente comienza una transaccin, dicha transaccin debe tener una instruccin COMMIT TRANSACTIONparafinalizarlamisma. Transaccinexplcita: SQLServerrealizaunatransaccinexplcitacuandoelprincipioyel final de una transaccin se definen explcitamente. Puede definir el principio y el final de la transaccin en TransactSQL mediante las instruccionesBEGINTRANSACTIONyCOMMITTRANSACTION. Queselregistrodetransacciones? SQL Server graba todas las transacciones en un registro de transacciones para mantener la coherencia de la base de datos y facilitar la recuperacin. El registro es un rea de almacenamiento que efecta automticamente el seguimiento de todos los cambios en la base de datos. SQL Server graba las modificaciones en el registroendiscocuandoseejecutan,antesdeescribirseenlabase dedatos Elregistrodetransaccionesgrabalasmodificacionesdelosdatosa medidaqueseproducen.Elprocesoderegistroeselsiguiente: Laaplicacinenvaunamodificacindedatos. Cuando la modificacin se ejecuta, las pginas de datos afectadas se cargan en memoria (llamada cach del bfer) desde el disco si las pginas no estn ya cargadas en la cachdelbferporunaconsultaanterior. Cada instruccin de modificacin de datos se graba en el registromientrasseejecuta.Elcambiosiempresegrabaenel registro y se escribe en disco antes de hacer la modificacin enlabasededatos.Estetipoderegistrosedenominaregistro deprescritura.
73
De forma repetitiva, el proceso de punto de comprobacin escribe en disco todas las transacciones completadas en la basededatos.
Si se produce un error del sistema, el proceso automtico de recuperacinutilizaelregistrodetransaccionesparaaplicartodaslas transacciones confirmadas y deshacer las transacciones incompletas. Los marcadores de transaccin del registro se utilizan durante la recuperacinautomticaparadeterminarlospuntosdeinicioyfinde cadatransaccin.Unatransaccinseconsideracompletacuandoel marcador BEGIN TRANSACTION tiene un marcador COMMIT TRANSACTIONasociado.Laspginasdedatosseescribenendisco cuandotieneexisteunpuntodecomprobacin
Figura3.2:Funcionamientodelregistrodetransacciones
74
2. CREACIONDELASBASESDEDATOS
asignados a grupos de archivos definidos por el usuario. El archivo dedatos principal esel punto deinicio dela base de datosysealalosdemsarchivosdelabasededatos.Todas las bases de datos tienen un archivo de datos principal y un grupo de archivos principal. La extensin de nombre de archivo recomendada para los archivos principales de datos es.mdf. Archivossecundarios: Las bases de datos pueden tener archivos secundarios de datos.Algunasbasesdedatospuedenserlosuficientemente grandes como para necesitar varios archivos secundarios de datos, o pueden usar archivos secundarios en unidades de discoindependientespararepartirlosdatosporvariosdiscos. Los archivos secundarios pueden estar en el grupo de archivos principal o agrupados en grupos de archivos definidos por el usuario. La extensin de nombre de archivo recomendadaparalosarchivossecundariosdedatoses.ndf. Registrodetransacciones Cada base de datosdebe tenerunregistrode transacciones. Amenosqueseindiquelocontrario,secreaautomticamente un archivo de registro de transacciones con un nombre generado por el sistema. La extensin de nombre de archivo recomendada para los archivos de registro de transacciones es.ldf.Porlogeneral,elarchivoderegistrodetransacciones supone aproximadamente el 10 o el 15 por ciento de los archivosdelabasededatos Nombreyubicacindearchivo Cadaarchivodebasededatostieneunnombrelgicoyuna ubicacin fsica para el archivo. Por lo general, los archivos deben repartirse entre varios discos para mejorar el rendimientoylaredundancia. Tamao Puede especificar el tamao de cada archivo de datos y de registro. El tamao mnimo es de 512 KB, tanto para los archivos de datos como para los archivos de registro. El tamao especificado para el archivo de datos principal tiene queser,almenos,comoeltamaodelarchivoprincipaldela basededatosmodel.
76
Crecimientodearchivo Puedeespecificarsiunarchivoaumentaronosutamaosi es necesario. Para referirse a esta opcin se habla de crecimiento automtico. De forma predeterminada, est habilitadoelcrecimientodearchivo. Puede especificar el crecimiento de archivo en megabytes o mediante porcentaje. El porcentaje slo se aplica al crecimientodearchivo,noaltamaomximo.
Tamaomximo Puede especificar el tamao mximo de crecimiento de archivo en megabytes o mediante porcentaje. El valor predeterminado de crecimiento es del 10 por ciento. Se recomienda especificar un tamao mximo de crecimiento paraelarchivo.Sinoespecificauntamaoyesthabilitadala opcin de crecimiento de archivo, el archivo crecer de manerapredeterminadahastaqueeldiscosellene. Mencionequelarutadeaccesodelarchivovariarsiseutiliza una instancia con nombre de SQL Server en lugar de una instanciapredeterminada.
Intercalacin Este parmetro especifica la intercalacin predeterminada parala basede datos. De manera predeterminada, una base dedatosheredalaintercalacindelainstanciadeSQLServer enlaquesecrealabasededatos
77
controlan
determinados
Las opciones de cursor controlan el comportamiento y el alcancedelcursor. Las opciones de recuperacin controlan el modelo de recuperacindelabasededatos. Las opciones de SQL controlan las opciones que cumplen el estndarANSI. Lasopcionesdeestadocontrolan: Silabasededatosestenlneaono. Quinpuedeconectarsealabasededatos. Silabasededatosestonoenmododeslolectura
sp_helpdb baseDeDatos
archivosdedatosyde registro. sp_spaceused[nombreObjeto] Resumeelespaciode almacenamientoqueutiliza unabasededatosoun objetodebasededatos. Proporcionaestadsticas acercadelusodelespacio delregistrodetransacciones entodaslasbasesdedatos
DBCCSQLPERF(LOGSPACE)
3. ADMINISTRACIONDELOSARCHIVOSDEBASEDEDATOS A medida que la base de datos crece o cambia, puede expandir o reducir manualmente el tamao de los archivos de datos y de registro o bien configurarlos para que lo hagan automticamente. Cuando ya no necesite una base de datos, puede eliminarla, junto con todos sus archivos asociados
79
Puedeespecificarelespacioasignado,eltamaomximoyel incremento de crecimiento de cada archivo. Si no especifica un tamao mximo, un archivo puede seguir creciendo hasta ocupartodoelespaciodisponibleendisco. Paraunrendimientoptimo,debe: Asignar espacio suficiente a la base de datos y al registro para evitar que se active con frecuencia la caractersticadecrecimientoautomtico. Establecer un tamao mximo para los archivos de datos. Establecer los incrementos de crecimiento del archivo de datos y de registro con unos tamaos suficientes como para evitar que se active con frecuencia la caractersticadecrecimientoautomtico.
Expansin manual de archivos de datos y de registro de transacciones Tambin puede aumentar manualmente el tamao de cualquier archivo de datos o de registro de transacciones mediante el Administrador corporativo de SQL Server o la instruccin ALTER DATABASE en TransactSQL. Quiz prefieraexpandirmanualmentelosarchivosdebasededatos para controlar cundo se produce la expansin. Expandir archivos enincrementos pequeosaumenta la fragmentacin y puede afectar al rendimiento si los archivos se expanden mientraslabasededatosestocupada.
Determinacin de la expansin automtica o manual de archivos Dadoquepuedeestablecerquelosarchivosdebasededatos crezcandeformaautomticaomanual,debetenerencuenta losiguiente: En entornos de produccin grandes, debe asignar espacio suficiente para los archivos de datos para los que crela base de datos yexpandirlos manualmente, si es necesario. Esto permite controlar cundo se expandenlosarchivos. En un entorno de produccin pequeo o de escritorio, como un agente de ventas de viaje, al establecer que
80
losarchivosdebasededatoscrezcanautomticamente sereducelacargaadministrativa.
Creacin de archivos secundarios de datos y de registro detransacciones Puede crear tambin archivos secundarios de datos y de registro de transacciones para ampliar el tamao de la base dedatos.Usearchivossecundariosdedatosyderegistrode transacciones para colocar archivos en discos fsicos independientes. Tambin puede usar RAID para repartir los datosenvariosdiscos.
Ejecutar el procedimiento almacenado del sistema sp_dboption. Actividades de SQL Server durante la reduccin automtica Demanerapredeterminada,laopcinparareducirarchivosde manera automtica est deshabilitada en todas las ediciones de SQL Server, excepto en la edicin Desktop. Cuando se habilita SQL Server para que reduzca archivos automticamente,SQLServer: Reduce los archivos de datos y de registro de transacciones cuando ms del 25 por ciento de los archivoscontienenespacioquenoseutiliza.
81
No se puede configurar el porcentaje de espacio libre que hay que quitar. SQL Server quita todo el espacio libre que resulta posible. El registro de transacciones slo se reduce si no contiene porciones activas del registrolgicoqueserequieranparalarestauracinde labasededatos. Realiza esta actividad en segundo plano y no se ve afectada la actividad de ningn usuario de la base de datos.
82
Si esto no es suficiente para reducir el registro de transaccionesaltamaodeseado,SQLServer: a.Devuelveunmensajedondeseinformaqueparte delregistroactivosuperaeltamaodeseado. b.Notificaquhacerparamoverelregistroactivodel final del archivo de registro de transacciones, comoporejemplorealizarunacopiadeseguridad delabasededatosparatruncarelregistro.Mover el archivo de registro del final permite a SQL Server reducir el archivo de registro de transacciones. Cuando recibe mensajes de SQL Server, puede realizar la actividad sugerida y, a continuacin, volver a ejecutar la instruccin DBCCSHRINKDATABASE o DBCCSHRINKFILE parafinalizarelprocesodereduccin. Configuracindelasopcionesdereduccindelabasede datos Puede usar las opciones de base de datos siguientes al reducir archivos de base de datos mediante el Administrador corporativodeSQLServer.
Descripcin Elporcentajedeespaciolibre deseadoenelarchivodelabase dedatosunavezqueSQLServer hareducidolabasededatos. Muevepginasalprincipiodel archivoantesdereducirlabasede datos.Laseleccindeestaopcin puedeafectaralrendimiento,pero puedesernecesariaparalograrlos objetivosdereduccindeseados. Reducelabasededatossegnuna programacinseleccionada.
msprecisoalahoradereducirla basededatos
4. UBICACINDEARCHIVOSYREGISTROSDEBASESDEDATOS Puede mejorar el rendimiento e implementar la tolerancia a errores si administrala colocacin dearchivos dedatos y registros de transacciones endiscos. SQLServerusallamadasdeentradaysalida(E/S)deMicrosoftWindows para leer y escribir en el disco. SQL Server administra cundo y cmo se realiza la E/S en el disco pero delega en Windows la realizacin de las operaciones de E/S subyacentes. El subsistema de E/S incluye el bus del sistema, tarjetas controladoras de disco, discos, unidades de cinta, unidades de CDROM y muchos otros dispositivos de E/S. Los discos representanhabitualmenteelcuellodebotellamsgrandedeunsistema.
84
de
transacciones
en
discos
Debecrearelregistrodetransaccionesenundiscoindependienteo usar RAID. Dado que el archivo de registro de transacciones se escribe en serie, al usar un disco independiente dedicado, los cabezalesdeldiscopuedenpermanecerenellugaradecuadoparala siguiente operacin de escritura. El uso de RAID proporciona toleranciaaerrores. Porejemplo,sisuentornodeproduccintienevariasbasesdedatos en un servidor, quiz desee usar discos independientes para cada Ing. Metssy A.Ygnacio Garca
85
5. OPTIMIZACIN DE UNA BASE DE DATOS MEDIANTE RAID BASADO ENHARDWARE ElusodeRAIDbasadoenhardwarepermiteadministrarvariosdiscosal tratarunamatrizdediscoscomounsolodisco.
El uso de RAID para tolerancia a errores no sustituye a lasestrategias de copia de seguridad adecuadas. Debe realizar copias de seguridad peridicasparaprotegerlasbasesdedatosylosdatosdecualquierprdida irreparable.
86
6. OPTIMIZACIN DE UNA BASE DE DATOS MEDIANTE GRUPOS DE ARCHIVOS Los gruposde archivos mejoran el rendimiento gracias ala distribucin de los datos entre varios discos y mediante subprocesos paralelos para procesar consultas. Los grupos de archivos tambin pueden facilitar el mantenimientodelasbasesdedatos. a) Introduccin a Grupos de archivos definidos por el
usuario
Figura3.3:Grupodearchivosdefinidosporelusuario
Si la configuracin de hardware incluye varias unidades de disco, puedecolocarobjetosyarchivosespecficosendiscosindividualesy agrupar los archivos de base de datos en uno o ms grupos de archivos. Tiposdegruposdearchivos SQLServertieneungrupodearchivosprincipalypuedetener tambingruposdearchivosdefinidosporelusuario. El grupo de archivos principal contiene el archivo de datosprincipalconlastablasdelsistema. Un grupo de archivos definido por el usuario consta de archivosdedatosagrupadosconfinesadministrativosy deasignacin. Ing. Metssy A.Ygnacio Garca
87
Sugerencia:SiOrdhist1.ndfyOrdhst2.ndfsevanaconsultar amenudo,debencolocarseendiscosindependientes. Colocacindearchivosendiscosindependientes La ilustracin (Figura 3.3) es un ejemplo de cmo se pueden colocararchivosdebasededatosendiscosindependientes. Puedecreargruposdearchivosdefinidosporelusuario para separar los archivos que se consultan con frecuencia de los que se modifican a menudo. En la ilustracin, los archivos OrdHist1.ndf y OrdHist2.ndf se colocan en un disco independiente de las tablas Products, Customers y Orders porque stas se consultan como ayuda para la toma de decisiones ms que actualizarse con informacin actualizada de pedidos. Tambin puede colocar los archivos Ordhist1.ndf y Ordhst2.ndf en discos independientes si ambos se consultanconfrecuencia. Los archivos de registro de transacciones no forman parte de los grupos de archivos. El espacio de registro de transacciones se administra de forma separada del espaciodedatos
ndicesquenoespecificaronungrupodearchivosdurantesu creacin. Definicin del tamao del grupo de archivos principal predeterminado Sielgrupodearchivospredeterminadosedejacomogrupode archivos principal, deber establecer adecuadamente el tamao del grupo de archivos principal o definirlo automticamente para no quedarse sin espacio. El grupo de archivos principal debe ser lo bastante grande como para almacenar todas las tablas del sistema y las tablas e ndices quenoestnasignadasaungrupodearchivosdefinidoporel usuario. Si el grupo de archivos principal se queda sin espacio, no podr agregar informacin a las tablas del sistema. Sin embargo, si un grupo de archivos definido por el usuario se queda sin espacio, slo se vern afectados los archivos de usuarioqueestnasignados especficamente a ese grupode archivos. Presentacindelainformacindelosgruposdearchivos Puede ver informacin acerca de los grupos de archivos mediante el Administrador corporativo de SQL Server o los procedimientosalmacenadosdelsistemaenTransactSQL. Procedimiento almacenadode sistema sp_helpfile [[@filename=] ' nombre'] Descripcin
sp_helpfilegroup [grupoDeArchivos]
Devuelve los nombres fsicosylosatributosdelos archivos asociados con la base de datos actual. Utilice este procedimiento almacenado de sistema para determinar los nombres de los archivos quevayaaagregaroquitar delservidor. Devuelvelosnombresylos atributos de los grupos de archivos asociados con la basededatosactual.
89
Figura3.4:UsodeGrupodearchivosparamejorarelrendimiento
Elusodegruposdearchivosdefinidosporelusuariopuedemejorar el rendimiento al equilibrar la carga de datos entre varios discos y utilizarsubprocesosparalelosparamejorarelaccesoalosdatos. Equilibriodelacargadedatosentrevariosdiscos Al crear una tabla, puede asignrsela a un grupo de archivos definido por el usuario. Los grupos de archivos usan una estrategiadellenadoproporcionalentretodoslosarchivosdel grupo. A medida que los datos se escriben en el grupo de archivos,cadaarchivosellenaenparalelo. Cada archivo se coloca fsicamente en un disco o en un conjunto de discos. SQL Server mantiene una asignacin de archivos que asocia cada objeto de base de datos con su ubicacineneldisco.Lailustracinmuestraque: Si se crea un archivo en un grupo de archivos que comprende cuatro discos, una asignacin de archivos seala la ubicacin de los datos de los cuatro discos fsicos. Si se crean dos archivos en un grupo de archivos que abarca cuatro discos, dos asignaciones de archivos (unaasignacinparacadaarchivo)sealanlaubicacin delosdatosenloscuatrodiscosfsicos. Ing. Metssy A.Ygnacio Garca
90
Uso de subprocesos paralelos para mejorar el acceso a losdatos Siempre que se tiene acceso a una base de datos secuencialmente, el sistema crea un subproceso independiente para cada archivo en paralelo. Cuando el sistema realiza una exploracin de una tabla perteneciente a un grupo de archivos con cuatro archivos, utiliza cuatro subprocesosindependientesparaleerlosdatosenparalelo. En general, usar varios archivos en discos independientes mejora el rendimiento. Sin embargo, demasiados archivos en un grupo de archivos pueden producir demasiados subprocesosparalelosycrearcuellosdebotella.
mantenimiento
Adems de utilizar grupos de archivos para equilibrar las cargas de datos con el fin de mejorar el rendimiento, puede usar grupos de archivosparafacilitarlastareasdemantenimiento. Para usar grupos de archivos con el fin de simplificar las tareas de mantenimiento,puede: Realizarcopiasdeseguridadyrestaurararchivosogruposde archivosindividualesenlugardehacerlacopiadeseguridado la restauracin de toda la base de datos. Realizar copias de seguridad de los archivos o grupos de archivos puede ser necesarioenbasesdedatosgrandesconelfindedisponerde unaestrategiaeficazdecopiadeseguridadyrestauracin. Agrupar tablas e ndice con requisitos de mantenimiento similaresenlosmismosgruposdearchivos. Quiz desee realizar tareas de mantenimiento en algunos objetosconmsfrecuenciaqueenotros.Porejemplo,sicrea dos grupos de archivos y les asigna tablas, podr ejecutar diariamente tareas de mantenimiento en dichas tablas en un grupodiarioytareasdemantenimientosemanalesenellasen ungruposemanal.Estolimitalosconflictosdediscoentrelos dosgruposdearchivos. Asigne una tablaindividual de alto mantenimiento a su propio grupodearchivos.
91
7. OPTIMIZACIN DE LA BASE DE DATOS MEDIANTE GRUPOS DE ARCHIVOSCONRAIDBASADOENHARDWARE Puede combinar grupos de archivos con soluciones RAID basadas en hardware. Primero, configure la creacin de bandas de hardware y, despus, use los grupos de archivos para repartir los datos entre los diversosconjuntosdebandasdehardware. La ilustracin (Figura 3.5) muestra dos controladores que sealan dos conjuntosdebandasdehardware.Haycuatroarchivosasociadosconcada conjunto de bandas. Un grupo de archivos contiene todos los archivos de Ing. Metssy A.Ygnacio Garca
92
ambos conjuntos de bandas. Esta opcin reparte los datos de manera uniforme entre todos los discos a la vez que conserva la facilidad de administracin. Estaconfiguracinusalasmejorescaractersticasdelosgruposdearchivos yRAIDbasadoenhardware.Ademsdeproporcionaraccesoparaleloalos datosmedianteunsubprocesoindependienteparacadaarchivo,distribuye lacargaentrevariosdiscosparareducirposiblesconflictos.Dadoqueesta solucincreaunaagrupacinlgica,resultafcildeconfiguraryadministrar paraunadministradordebasesdedatosodesistemas
Figura3.5:CombinacindegruposdearchivosconsolucionesRAIDbasadasen hardware
8. ESTIMACINDELACAPACIDAD
Una delas principales funciones deun administrador de bases dedatoso desistemasesasignar,administrarysupervisarlosrequisitosdeespacioy almacenamiento de SQL Server y sus bases de datos. La estimacin del espacio que requiere una base de datos le puede ayudar a planear el esquemadealmacenamientoydeterminarlosrequisitosdehardware
espacio en disco. Entre stos se encuentran el registro de transacciones y las tablas e ndices que componen los archivos de datos. Cuandosecreaunabasededatos,SQLServercreaunacopiadela base de datos model, que incluye las tablas del sistema que contienen informacin acerca de archivos, objetos, permisos y restricciones. Estas tablas aumentan de tamao a medida que se crean ms objetos en la base de datos. Cada objeto que se crea generaunanuevafilaenunaovariastablasdelsistema. Factoresquedebetenerencuentacuandocalculeeltamaode unabasededatos Al calcular la cantidad de espacio que va a ocupar una base de datos,tengaencuentalossiguientesfactores: Tamao de la base de datos model y de las tablas del sistema,incluidalaprevisindecrecimiento. Cantidad de datos en las tablas, incluida la previsin de crecimiento. Nmeroytamaodelosndices,especialmenteeltamaodel valor delas claves, el nmero de filas y el valor del factor de relleno Tamao del registro de transacciones, al que afectan la cantidad y la frecuencia de la actividad de modificacin, el tamao de cada transaccin y la frecuencia de las copias de seguridadoelvolcadodelregistro. Tamao de las tablas del sistema, como el nmero de usuarios,objetos,etc.,quenosueleserunporcentajealtodel tamaodelabasededatos. b) Estimacin de la cantidad de datos en las tablas Despus de considerar la cantidad de espacio que se asigna a la base de datos model, debe calcular la cantidad de datos de las tablas, incluido el crecimiento previsto. Para calcularlo, puede determinarelnmerototaldefilas,eltamaodelasfilas,elnmero defilasquecabenenunapginayelnmerototaldepginasquese requierenparacadatabladelabasededatos. Puedecalcularelnmerodepginasnecesariasparaunatablayel espacio de disco que ocupa la tabla si conoce el nmero de caracteresdecadafilayelnmeroaproximadodefilasquelatabla vaatener.Utiliceelsiguientemtodo: Ing. Metssy A.Ygnacio Garca
94
Calculeelnmerodebytesdeunafilasumandoelnmerode bytes que contiene cada columna. Si una o varias columnas estn definidas con longitud variable (por ejemplo, una columna de nombres), puede sumar el valor medio de la columnaparahallareltotal. Determine el nmero de filas que caben en cada pgina de datos. Para hacerlo, divida 8060 entreel nmero de bytes de una fila. Redondee hacia abajo el resultadoal nmero entero siguiente. Dividaelnmeroaproximadodefilasdelatablaporelnmero de filas que caben en cada pgina de datos. El resultado es igual al nmero de pginas que se necesitan para almacenar latabla.
95
1. Cree unabase de datos yutilice elSQL Server Management Studio paraincrementararchivosalabasededatos. 2. Utilice el SQL Server Management Studio para reducir la base de datos. 3. Investigue acerca de los comandos para realizar las tareas anterioresatravsdeellos.
En esta unidad se describi cmo Microsoft SQL Server almacenalosdatosyprocesalastransaccionesademsdecmocrear, administrarycolocararchivosyregistrosdetransaccionesdebasesde datos,ascomolamaneradeoptimizarbasesdedatosmedianteRAID basadoenhardware, grupos de archivosdefinidos por elusuario y una combinacindeambos.
[1] Delaney, K. Inside Microsoft SQL Server 2005: the storage engine. Microsoft Press,2007 [2] STANEK,William. Ms.SQLServer2005ManualdelAdministrador . 1raEdicin, McGrawHill.2006. [3] Silberschatz,A.,Korth,H.F.,Sudarshan,S.,FundamentosdeBasesdeDatos,5 edicin,Madrid,2006. [4] MatsukawaMaeda,Sergio. ConozcayutiliceSQLServer2005, Lima,2005 [5] Date,C.J.An introduction to Database Systems.8edition.PearsonAddison Wesley.2004.
96
Enlasiguienteunidadtrataremostemassobrecmocrearcopiasderespaldodebases dedatosylasestrategiasautilizarparanoperderlosdatosencasodealgndesastre.
97
UNIDAD ACADMICA N 3
NOMBRE:__________________________________________________________________ APELLIDOS:________________________________________FECHA____/_____/______ CIUDAD:_______________________________SEMESTRE:_________________________
2. Estas diseando la estructura fsica para el nuevo servidor de tu compaa corriendo SQLServer2005.Elservidortienelassiguientescaractersticas:dosdiscosenRAID1, cinco discos en RAID 5, y otros diez discos en RAID 5. Dnde almacenaras los archivosdebasededatosparaunmejorrendimiento? a) Usar RAID 5 para instalar el sistema operativo. Usar el primer set de discos RAID5parainstalarlosarchivosejecutablesdeSQLServer2005yelsegundo setdediscosRAID5paraalmacenarlosarchivosdebasededatos. b) Usar RAID 1 para instalar el sistema operativo. Usar el primer set de discos RAID5parainstalarlosarchivosejecutablesdeSQLServer2005ylosregistros dedatosytransacciones.UsarelsegundosetdediscosRAID5paraalmacenar losbackupsdebasededatos. c) Usar RAID 1 para instalar el sistema operativo y los archivos ejecutables de SQL Server 2005. Usar el primer set de discos RAID 5 para almacenar los archivos de registro de transacciones. Usar el segundo set de discos RAID 5 paraalmacenarlosarchivosdedatos. d) Usar el primer set de discos RAID 5 para instalar el sistema operativo y los archivosejecutablesdeSQLServer2005.Guardarlosarchivosdedatosenel segundo set de discos RAID 5. Usar el segundo set de discos RAID 5 para almacenarlosarchivosderegistrodetransacciones. 3. Culdelassiguientesopcionessontiposdegruposdearchivosvalidos? Ing. Metssy A.Ygnacio Garca
98
a) b) c) d)
PARTEII:Respondabrevemente: 4. CmosealmacenanlosdatosenSQLServer2005? _______________________________________________________________________ _______________________________________________________________________ _______________________________________________________________________ _______________________________________________________________________ 5. Qualmacenaelregistrodetransacciones? _______________________________________________________________________ _______________________________________________________________________ _______________________________________________________________________ _______________________________________________________________________ 6. Mencionelosmtodosparalareduccindelabasededatos _______________________________________________________________________ _______________________________________________________________________ _______________________________________________________________________ _______________________________________________________________________ 7. Cmopuedecalcularseeltamaodeunabasededatos? _______________________________________________________________________ _______________________________________________________________________ _______________________________________________________________________ _______________________________________________________________________
99