[Qualipso-a4] insertar topics en floss_topics

Miguel Angel Tinte García matinte en libresoft.es
Mie Feb 3 11:27:38 CET 2010


El mié, 03-02-2010 a las 11:11 +0100, Jose Gato Luis escribió:
> Me parece bien cualquiera de las 2 opciones que propone Javier. Pero, 
> antes de nada, confirmarlo con Quiles por favor. El está  trabajando con 
> el buscador conceptual, y necesitamos estar de acuerdo en "que" 
> almacenamos, "como" y "donde" ;)

Sí eso he hecho, le envié un correo ayer a Quiles para que me confirme
si podemos modificar la tabla floss_sources, si no responde se lo
recordaré de nuevo

> 
> 
> 
> El 02/02/10 11:08, Miguel Angel Tinte García escribió:
> > El lun, 01-02-2010 a las 19:20 -0500, Javier Pueyo escribió:
> >> Hola,
> >>
> >> Me he explicado mal en mi mail anterior. Las tablas tal y como están
> >> deberían quedar así:
> >>
> >> mysql>  select * from floss_topics;
> >> +---------+-------------+----------+
> >> | topicid | description | label    |
> >> +---------+-------------+----------+
> >> |       1 | issue       | issue    |
> >> |       2 | noissue     | noissue  |
> >> |       3 | version     | version  |
> >> |       4 | noversion   | noversion|
> >> |       5 | license     | license  |
> >> |       6 | nolicense   | nolicense|
> >> |---------+-------------+----------+
> >>
> >> Esta tabla es casi fija y solo se usaría para leer el topicid que
> >> corresponde a cada topic.
> >>
> >> mysql>  select * from floss_sources;
> >> +--------+---------+
> >> | itemid | topicid |
> >> +--------+---------+
> >> |      1 |       1 |
> >> |      1 |       3 |
> >> |      1 |       6 |
> >> |      4 |       3 |
> >> |      5 |       3 |
> >> |      6 |       3 |
> >> |      7 |       4 |
> >> |      7 |       1 |
> >> |      7 |       6 |
> >> +--------+---------+
> >>
> >> Esta tabla es la importante. En ella se asigna a cada itemid los
> >> topicids que le corresponden. Por eso itemid puede repetirse (es decir,
> >> el item tiene varios topics) y también se repite topicid (diferentes
> >> items tienen diferentes topics).
> >>
> >> Mi propuesta era simplificar y cambiar el topicid por un campo topic
> >> tipo TEXT (siempre que no haya una pérdida apreciable de rendimiento) la
> >> tabla quedaría entonces:
> >>
> >> mysql>  select * from floss_sources;
> >> +--------+-----------+
> >> | itemid | topic     |
> >> +--------+-----------+
> >> |      1 | issue     |
> >> |      1 | version   |
> >> |      1 | nolicense |
> >> |      4 | version   |
> >> |      5 | version   |
> >> |      6 | version   |
> >> |      7 | noversion |
> >> |      7 | issue     |
> >> |      7 | nolicense |
> >> +--------+-----------+
> >>
> >> que sería una combinación de las dos tablas floss_topics y
> >> floss_sources.
> >>
> >> Espero haberme explicado mejor esta vez ;-)
> > OK, sí ahora entiendo bien como se almacena cada topic. Voy a intentar
> > modificar esa tabla como propones tú.
> >>
> >> Saludos
> > Gracias Javier
> >>
> >> Javier
> >>
> >>
> >> El lun, 01-02-2010 a las 19:49 +0100, Miguel Angel Tinte García
> >> escribió:
> >>> Hola de nuevo,
> >>>
> >>> he ejecutado el extractor de Bugs para almacenar información en
> >>> floss_sources y floss_topics y tengo esto:
> >>> mysql>  select * from floss_sources;
> >>> +--------+---------+
> >>> | itemid | topicid |
> >>> +--------+---------+
> >>> |      1 |       1 |
> >>> |      2 |       2 |
> >>> |      3 |       3 |
> >>> |      4 |       4 |
> >>> |      5 |       5 |
> >>> |      6 |       6 |
> >>> |      7 |       7 |
> >>> |      8 |       8 |
> >>> |      9 |       9 |
> >>> +--------+---------+
> >>> 9 rows in set (0.00 sec)
> >>>
> >>> mysql>  select * from floss_topics;
> >>> +---------+-------------+---------+
> >>> | topicid | description | label   |
> >>> +---------+-------------+---------+
> >>> |       1 | issue       | issue   |
> >>> |       2 | noissue     | noissue |
> >>> |       3 | noissue     | noissue |
> >>> |       4 | noissue     | noissue |
> >>> |       5 | noissue     | noissue |
> >>> |       6 | noissue     | noissue |
> >>> |       7 | noissue     | noissue |
> >>> |       8 | noissue     | noissue |
> >>> |       9 | noissue     | noissue |
> >>> +---------+-------------+---------+
> >>> 9 rows in set (0.00 sec)
> >>>
> >>> La verdad que no le veo mucho sentido a la información almacenada.
> >>> ¿Alguna idea para almacenar esto de una manera más lógica?
> >>>
> >>> Gracias,
> >>>
> >>> Saludos
> >>>
> >>>
> >>> El lun, 01-02-2010 a las 07:54 -0500, Javier Pueyo escribió:
> >>>> El vie, 29-01-2010 a las 18:46 +0100, Jose Gato Luis escribió:
> >>>>> Perfecto, está claro que esta tabla la pusimos para eso ;)
> >>>>>
> >>>>> El 29/01/10 16:36, Miguel Angel Tinte García escribió:
> >>>>>> Pensando en cómo y donde insertar los topics encontrados por la
> >>>>>> herramienta de Javier Pueyo he visto la tabla floss_topics:
> >>>>>>
> >>>>>> +-------------+-------------+------+-----+---------+-------+
> >>>>>> | Field       | Type        | Null | Key | Default | Extra |
> >>>>>> +-------------+-------------+------+-----+---------+-------+
> >>>>>> | topicid     | int(10)     | NO   | PRI | NULL    |       |
> >>>>>> | description | mediumtext  | NO   |     | NULL    |       |
> >>>>>> | label       | varchar(80) | NO   |     | NULL    |       |
> >>>>>> +-------------+-------------+------+-----+---------+-------+
> >>>>>> 3 rows in set (0.00 sec)
> >>>>>>
> >>>>>> Gato, ¿que te parece si la utilizamos para almacenar los topics?
> >>>>
> >>>> Esta tabla estaba pensado para introducir los ~10 topics que analizamos,
> >>>> con una etiqueta y una descripción:
> >>>>
> >>>> topicid		label		description
> >>>> ------------------------------------------------
> >>>> 1		issue		blah, blah, blah
> >>>> 2		noissue		noblah, noblah, noblah
> >>>>
> >>>> es decir, es una tabla que solamente contendría ~10 rows.
> >>>>
> >>>> El topicid de esta tabla se usa para introducir un topicid en la tabla
> >>>> floss_sources junto al itemid (identificador único) del item analizado.
> >>>> La relación se establece entonces entre floss_sources.topicid y
> >>>> floss_topics.topicid. De alguna manera hay que mantener la relación
> >>>> entre el itemid y el (o los) topicid(s) que le corresponde(n) (ya que un
> >>>> item puede hablar de varios topics). Por cierto floss_sources.itemid
> >>>> debería permitir valores repetidos.
> >>>>
> >>>> Yo propondría simplificar y dejar solamente la tabla floss_sources pero
> >>>> cambiando el topicid por un campo "topic" (tipo TEXT):
> >>>>
> >>>>
> >>>> itemid		topic
> >>>> ------------------------------------------------
> >>>> 1 		issue
> >>>> 1 		noversion
> >>>> 2		version
> >>>>
> >>>> La ventaja es que no hay que consultar floss_topic para averiguar el
> >>>> topicid en cada ocasión para insertarlo después en floss_sources. No sé
> >>>> qué problemas de performance puede dar ese campo tipo TEXT y si es mejor
> >>>> dejar ambas tablas con sus relaciones y sus ids.
> >>>>
> >>>>>>
> >>>>>> Ciao
> >>>>>>
> >>>>>>
> >>>>>
> >>>>
> >>>>
> >>>> _______________________________________________
> >>>> Qualipso-a4 mailing list
> >>>> Qualipso-a4 en gsyc.escet.urjc.es
> >>>> http://gsyc.escet.urjc.es/cgi-bin/mailman/listinfo/qualipso-a4
> >>
> 
-- 
Miguel Ángel Tinte García        
Libre Software Engineering Lab (GSyC)  | Universidad Rey Juan Carlos
matinte en libresoft.es         
http://libresoft.urjc.es/   



More information about the Qualipso-a4 mailing list