scieee Open visual document viewer

Organización de un computador específico para bases de datos (CBD)

Peñalosa, D.; Baena Oliva, María del Carmen; Parra Fernández, María del Pilar; Valencia Barrero, Manuel

Abstract

Se presenta un computador diseñado para optimizar las aplicaciones de base de datos. Para ello se han generado un conjunto de instrucciones que realizan las operaciones características de estas aplicaciones, un direccionamiento de la memoria para organizar mejor la información almacenada y unas unidades funcionales específicas para operar con los datos.

Full text

ORGANIZACIÓN DE UN COMPUTADOR ESPECÍFICO PARA BASES DE DATOS (CBD). D. PEÑALOSA, C. BAENA, M.P. PARRA y M. VALENCIA Dp o. de Tecnología Elec ónica. E.T.S. Ing. In o má ica (Ed. Rojo), Uni . Se illa A dª. Reina Me cedes s/n Se illa. . 41012 España. Se p esen a un compu ado diseñado pa a op imiza las aplicaciones de base de da os. Pa a ello se han gene ado un conjun o de ins ucciones que ealizan las ope aciones ca ac e ís icas de es as aplicaciones, un di eccionamien o de la memo ia pa a o ganiza mejo la in o mación almacenada y unas unidades uncionales especí icas pa a ope a con los da os. 1. In oducción El manejo de bases de da os equie e p ocesa y adminis a un olumen conside able de in o mación. Pa a su manejo compu acional exis en lenguajes especí icos, ales como SQL [1], que con ienen ins ucciones dedicadas a manipula ese ipo de in o mación, lo que equie e muchos accesos a memo ia y ope aciones especí icas como mos a , bo a , ac ualiza o compa a da os. Además, la p opia es uc u a de los da os en las bases de da os [2] di ie e de la habi ual en o os ipos de p ocesamien o. Así, los compu ado es es ánda no esul an e icien es ya que ni su a qui ec u a ni su o ganización [3] op imizan la ejecución de esas a eas. El eno me in e és que susci a el manejo de bases de da os nos ha lle ado a explo a el diseño de un compu ado especí ico pa a bases de da os (CBD). El compu ado CBD a a de op imiza las co espondien es ope aciones o ganizando los da os de la base de o ma adecuada, usando ins ucciones especiales y diseñando el p ocesado con unidades especiales. En es e abajo p esen amos la a qui ec u a y o ganización de es e compu ado , es deci , el ipo y uncionalidad de sus ins ucciones y el diseño de su unidad de p ocesado y con ol a ni el RT [4]. En o o abajo que p esen amos en TAEE’2002 (Diseño y simulación de CBD con ALLIANCE), p esen amos el en o no de diseño que hemos usado pa a su ealización. En el siguien e apa ado desc ibimos la a qui ec u a de CBD (ins ucciones y egis os a ni el de usua io) mien as que en el apa ado 3 se p esen a su o ganización haciendo mención de las unidades uncionales que hacen posible la ejecución de es as ins ucciones. Po úl imo, ex aemos algunas conclusiones. 2. A qui ec u a de CBD Las bases de da os son unas aplicaciones donde, po un lado, se encuen a in o mación 407 almacenada en unas es uc u as llamadas “ ablas” y, po o o, de p og amas que consul an, modi ican, inse an y bo an in o mación en es as es uc u as. Como se ap ecia en la igu a 1, cada abla se o ganiza en ilas y columnas. En el c uce de es as ilas y columnas se encuen a una unidad de in o mación llamada “hecho” [2]. En es as ablas, odos los “hechos” que con o man una ila ienen una elación semán ica sob e el ipo de in o mación que se desea almacena . Figu a 1: Es uc u a de almacenamien o de da os. Nues o compu ado a a posee dos subconjun os de ins ucciones, uno con uncionalidad análoga al de cualquie p ocesado de p opósi o gene al (sumas, es as, ans e encias, bi u caciones, e c.) y o o subconjun o con ins ucciones que ealicen las ope aciones undamen ales de los p og amas de base de da os, es o es, consul a , modi ica , inse a y bo a in o mación en ablas. El compu ado CBD ha sido concebido pa a maneja una memo ia de da os especí ica pa a la base de da os, sepa ada de la memo ia es ánda que aquí denominamos memo ia de código. En la memo ia de código es a á ubicado el p og ama que maneja la in o mación de la base de da os, y es á es uc u ada en cinco pa es: una pa a con ola un sis ema de memo ia i ual; una segunda con u inas de inicialización de la CPU; una e ce a con u inas de se icio de las in e upciones no enmasca ables; una cua a con el código de las aplicaciones y, po úl imo, una pila pa a es as aplicaciones. En la memo ia de da os, po su pa e, es a á almacenada la in o mación de la p opia base de da os (no de los da os eque idos pa a ejecu a los p og amas). Es a memo ia p esen a una es uc u a análoga a la que se indica en la igu a 1, es deci , es á o mada po ablas con columnas y ilas. Con es o los p og amas que manipulan las bases de da os end án mejo accesibilidad a los da os, pe o se eque i á de un di eccionamien o especial; pues en ez de localiza una posición de es a memo ia con una única di ección, aho a necesi amos es di ecciones: una que nos indique la abla; o a que nos indique la columna; y una e ce a pa a las ilas. Además se ese a án en cada abla dos posiciones de memo ia: una con el núme o de columnas y o a con el núme o de ilas de la abla en cues ión. Pa a cada columna, se end á ese ada una posición con el núme o máximo de palab as de la máquina que se equie en pa a almacena un “hecho”. Conside emos aho a los egis os in e nos de p opósi o gene al en los que se almacenan los ope andos de las ins ucciones. Es os egis os se encuen an en una unidad que ecibe el nomb e de “ iche o de egis os”, que cons a de una memo ia mul ipue a de 32 bi s de 408 anchu a con 16 egis os y 4 cons an es, pudiendo o ece el con enido de dos de es os al mismo iempo. De es os egis os cabe des aca aquellos enca gados de di ecciona a la memo ia de da os, su es uc u a es la mos ada en la igu a 2 y es án diseñados pa a almacena en ellos de o ma independien e cada una de las es “subdi ecciones” mencionadas con an e io idad. Las cons an es que iene la unidad co esponden a las di ecciones donde se encuen an el amaño de cada columna, el núme o de ilas y el núme o de columnas de cada abla. D (22 bi s) Di eccionamien o de Da os T (5 bi s) D i eccionamien o de Tablas C (5 bi s) D i eccionamien o de Camp o Figu a 2: Es uc u a de los egis os “pun e os a memo ia de da os”. A í ulo de ejemplo eamos dos de las ins ucciones especí icas de base de da os que posee CBD: “CCCI ope ando1, ope ando2, ope ando3”: Es a ins ucción ealiza una ope ación de consul a (pa ecida a la ins ucción SELECT de SQL). Pa a ello copia de una abla o igen a o a abla des ino, aquellas ilas que cumplan una de e minada condición. La condición que se ha de cumpli es que los “hechos” de las columnas de la abla indicada po “ope ando1”, coincidan con el “hecho” al que apun a “ope ando2”. En “ope ando3” se indica la abla des ino. “SSC ope ando1, ope ando2, ope ando3”: Ins ucción de sal o (o bi u cación). Sal a a la di ección de la memo ia de código indicada po “ope ando3”, si algunos de los “hechos” de la columna de la abla indicada po el “ope ando1”, coincide con el “hecho” al que apun a “ope ando2”. En o al, CBD iene de inidas 72 ins ucciones de las que 6 son especí icas del manejo de bases de da os y con las que se pueden ealiza a eas como ac ualiza con enidos, de ol e di ecciones de “hechos”, e c. 3. O ganización de CBD En es e apa ado p esen amos los di e en es componen es (a ni el RT) que o man el compu ado . Si obse amos la igu a 3, emos que es á compues o po : nue e egis os in e nos; es unidades uncionales; dos buses; y una unidad de con ol (las memo ias o man pa e de un sis ema ex e no). Pasemos a explica cómo uncionan las pa es más ele an es. Las es unidades uncionales que apa ecen en la igu a 3 son: El “Fiche o de Regis os”, ya comen ado en la sección an e io ; la “Unidad A i mé ico-Lógica” (ALU) que ealiza ope aciones es ánda en e los da os de los dos buses acumulando el esul ado en el egis o RUF; y la “Unidad de Base de Da os” que comen amos seguidamen e. La “Unidad de Base de Da os” es á concebida pa a agiliza la unidad de con ol en las a eas de ejecu a las ins ucciones especí icas de base de da os. Es as ins ucciones, aunque dis in as, compa en cie as uncionalidades como copia y compa a “hechos”, eco e los di e en es “hechos” de una columna cualquie a de una de e minada abla, o lle a la cuen a del núme o de ilas y de columnas a ados. Es a unidad uncional, ela i amen e compleja es á compues a po egis os, compa ado es, sumado es, e c., disponibles pa a que la unidad de con ol ejecu e 409 es as uncionalidades de o ma más ápida que si las hicie a con los egis os in e nos y con la p opia ALU del compu ado . Memo ia de Da os Memo ia de Código IR Unidad de Base de Da os Fiche o de Regis os Unidad A i me ico Logica DMCAMCDMDAMD PCSP FR RUF Unidad de Con ol Bus OpAmd Bus de Da os Figu a 3: O ganización a ni el RT de la CPU. Po úl imo y en elación a la unidad de con ol comen emos que dispone de: mic oins ucciones capaces de ealiza bi u caciones; una pequeña pila pa a que el mic op og ama sal e a sub u inas; un con ado de las mic oins ucciones en cu so; y una ROM que con iene el mic op og ama de con ol. 4. Conclusiones Es e abajo ha p esen ado un p o o ipo de compu ado o ien ado al manejo de base de da os, el cual es á do ado de ins ucciones capaces de inse a , modi ica , elimina y consul a in o mación de una o ma pa ecida a como lo hacen los lenguajes especí icos. El compu ado es á compues o de una memo ia de da os especí ica pa a la base de da os y una memo ia de código. La in o mación e e en e a base de da os es á almacenada en o ma de ablas y, pa a no limi a el amaño de es as ablas y op imiza los accesos con inuos a és as, el compu ado dispone de los mecanismos necesa ios pa a sopo a caché y memo ia i ual. En cuan o a su o ganización inco po a, como p incipales aspec os, el diseño de una unidad uncional especí ica pa a ope a con los da os, un iche o de egis os pa a di eccionamien o múl iple y una compleja unidad de con ol mic op og amada que pe mi e bi u caciones, sal os, y sub u inas pa a las mic oins ucciones. Re e encias [1] D. Hamil on. Inside ADABAS: In oduc ion o Di ec Calls and ADASQL. Addison Wesley (1991) [2] P olog De elopmen Cen e . PCD P olog e sion 3.20. Ed. P olog De elop. Cen e (1990) [3] W. S alling. O ganización y A qui ec u a de Compu ado es. P en ice Hall (2000). [4] C. Baena, J.I. Escude o, I. Gómez y M. Valencia. In oducción a las Sis emas Digi ales. Dp o de Tecnología Elec ónica. Uni e sidad de Se illa (1997). [5] D. Peñalosa. Diseño de un P ocesado Especí ico pa a Bases de Da os. P oyec o Fin de Ca e a (1998). 410