Open Registry of Game Information 

  • prototypisches Datenmodell

  • Alles für Entwickler: Java, JavaScript, REST-API, AngularJS, HTML.
Alles für Entwickler: Java, JavaScript, REST-API, AngularJS, HTML.

Moderators: MZ per X, gene

 #36123  by gene
 19 Jul 2012, 20:16
Habe eine kleine Erweiterung am Datenmodell vorgenommen, und zwar bei den Personen.
Ich hatte die Idee, dass wir - da wir ja Personen und Firmen sowieso erfassen wollen in Bezug auf ihre Rolle in bestimmten Spielen - ja auch festhalten könnten, bei welcher Firma welche Person von wann bis wann in welcher Rolle tätig war.
Das eröffnet tolle Abfrage-Möglichkeiten und macht unsere Daten schon fast zu einer Art "Lexikon".

Ähnliches könnte man für Zeitschriften machen - Magazin, Ausgaben, beteiligte Personen. Werde versuchen, dass die Tage mal zu entwerfen.

Image
 #36124  by hydr0x
 19 Jul 2012, 20:37
Was mir grade bei diesem Modell auffällt: Die Vererbung mit Participant erscheint aus Programmiersicht sinnvoll, ist es aber aus Datenbanksicht nicht. Vererbungsstrukturen sind immer schlecht umsetzbar und man muss zwischen zwei Übeln (viele Joins vs. ungenutzte Felder in gemeinsamer Tabelle) wählen. Ist es wirklich nötig das Personen und Firmen "gleich" behandelt werden? Ist das überhaupt korrekt, sprich, können beide wirklich die gleichen Rollen haben?
 #36125  by MZ per X
 19 Jul 2012, 20:39
gene wrote:Habe eine kleine Erweiterung am Datenmodell vorgenommen, und zwar bei den Personen.
Ich hatte die Idee, dass wir - da wir ja Personen und Firmen sowieso erfassen wollen in Bezug auf ihre Rolle in bestimmten Spielen - ja auch festhalten könnten, bei welcher Firma welche Person von wann bis wann in welcher Rolle tätig war.
Großartig, das sollten wir unbedingt vorsehen, auch wenn es wahrscheinlich schwer wird, an die Daten zu kommen.:) Bei Zeitschriften ist es nicht schwer.
 #36126  by gene
 19 Jul 2012, 20:44
hydr0x wrote:Was mir grade bei diesem Modell auffällt: Die Vererbung mit Participant erscheint aus Programmiersicht sinnvoll, ist es aber aus Datenbanksicht nicht. Vererbungsstrukturen sind immer schlecht umsetzbar und man muss zwischen zwei Übeln (viele Joins vs. ungenutzte Felder in gemeinsamer Tabelle) wählen. Ist es wirklich nötig das Personen und Firmen "gleich" behandelt werden? Ist das überhaupt korrekt, sprich, können beide wirklich die gleichen Rollen haben?
Den Gedanken hatte ich auch bereits. Es war erst verlockend, die Vererbung einzubauen, aber letztendlich kann man das genausogut auch so machen und verliert dabei Nichts:
Image
 #36127  by MZ per X
 19 Jul 2012, 20:48
hydr0x wrote:Ist es wirklich nötig das Personen und Firmen "gleich" behandelt werden? Ist das überhaupt korrekt, sprich, können beide wirklich die gleichen Rollen haben?
Du hast recht, Personen und Firmen sollten wir getrennt behandeln. Aber dieses Modell hier ist auch nur ein fixer Prototyp, den gene für seine Demo-Anwendung benutzt, glaube ich. Da wird sich noch einiges ändern.
 #36128  by gene
 19 Jul 2012, 20:49
Oder halt so:
Image

Oder so ähnlich, auf jeden Fall Personen und Firmen getrennt. Scheint sinnvoller zu sein, sowohl technisch als auch fachlich.
 #36129  by hydr0x
 19 Jul 2012, 20:51
Das gefällt mir im Hinblick auf die spätere Datenbankstruktur schon besser :) Übrigens, am Rande, weil es bestimmt interessant ist, wir haben bei RetroCollect zur Zeit ca. 50 Tabellen im Modell, bei MobyGames sind es glaube ich ca. 180.
 #36131  by gene
 20 Jul 2012, 16:46
hydr0x wrote:Übrigens, am Rande, weil es bestimmt interessant ist, wir haben bei RetroCollect zur Zeit ca. 50 Tabellen im Modell, bei MobyGames sind es glaube ich ca. 180.
Nett zu wissen :D
Aber die Anzahl der Tabellen sollte nicht direkt etwas über die Qualität aussagen denke ich. Lediglich ungefähr etwas über den Umfang der Daten, aber halt nur ungefähr.
 #36132  by hydr0x
 20 Jul 2012, 17:23
gene wrote:
hydr0x wrote:Übrigens, am Rande, weil es bestimmt interessant ist, wir haben bei RetroCollect zur Zeit ca. 50 Tabellen im Modell, bei MobyGames sind es glaube ich ca. 180.
Nett zu wissen :D
Aber die Anzahl der Tabellen sollte nicht direkt etwas über die Qualität aussagen denke ich. Lediglich ungefähr etwas über den Umfang der Daten, aber halt nur ungefähr.
Das versteht sich von selbst, sonst hieße das ja dass Mobygames Datenbank 3x so gut wäre wie unsere :lol:
 #36134  by MZ per X
 20 Jul 2012, 19:49
hydr0x wrote:Das versteht sich von selbst, sonst hieße das ja dass Mobygames Datenbank 3x so gut wäre wie unsere :lol:
Fast dreineinhalb mal so gut, hydr0x, fast dreieinhalb. :lol:
 #36136  by hydr0x
 20 Jul 2012, 21:14
MZ per X wrote:
hydr0x wrote:Das versteht sich von selbst, sonst hieße das ja dass Mobygames Datenbank 3x so gut wäre wie unsere :lol:
Fast dreineinhalb mal so gut, hydr0x, fast dreieinhalb. :lol:
:P Mal im Ernst, ich weiß leider nicht wieso MobyGames so viele Tabellen hat, ich glaube mal gelesen zu haben dass es viel mit den Platformen zu tun hat. Die haben irgendwie pro Platform irgendwo ne Definitionstabelle oder sowas in der Art. Jedenfalls ne katastrophale Lösung :mrgreen:
 #36138  by hydr0x
 20 Jul 2012, 22:50
Ein paar Anmerkungen:

- Title_Language: bedenkt dass es auch andere Gründe für Titel gibt als ne andere Sprache, z.B. Entwicklungstitel. Die drei Vorkommen des Titels (in Title, Game und ReleaseGroup) erscheinen mir eh nicht optimal.

- es gibt ne spezielle Description für Releases, aber nicht für ReleaseGroups?

- nicht alle Zeitrschriften erscheinen monatlich
 #36139  by gene
 21 Jul 2012, 09:26
hydr0x wrote:Ein paar Anmerkungen:
- Title_Language: bedenkt dass es auch andere Gründe für Titel gibt als ne andere Sprache, z.B. Entwicklungstitel. Die drei Vorkommen des Titels (in Title, Game und ReleaseGroup) erscheinen mir eh nicht optimal.
- es gibt ne spezielle Description für Releases, aber nicht für ReleaseGroups?
- nicht alle Zeitrschriften erscheinen monatlich
- Beschreibungen: Wir haben bisher noch keinen wirklichen Fokus auf Beschreibungen gelegt.
- Titel: ein "Titel-Typ" würde dann ja schon helfen können, z.B. "umgangssprachlich" oder ""Entwicklungs-Titel".
- Zeitschriften: wie gesagt, das war der allererste Wurf und gestern abend musste ich dann schlafen gehen. Wollte euch aber trotzdem den Zwischenstand zeigen. Ist aber klar, dass man nicht nur monatliche erscheinende Hefte abdecken muss, sondern auch Sonderausgaben und Hefte, die in anderen oder unregelmäßigen Abständen erscheinen. Aber wie du dir vielleicht vorstelle kannst: Ich kenne mich mit Zeitschriften ein wenig aus :D
 #36261  by Sidasa
 13 Sep 2012, 19:48
moin.

Wenn sich ein Name einer Firma ändert, z.B. der Entwickler von BioShock hieß 2K Boston, heißt jetzt aber (wieder) Irrational Games.

Sollen die dann als zwei eigene Datenbankeinträge gespeichert werden, welche dann in einer extra Verbindung stehen, oder wird z.B. nur der aktuelle Firmenname im Namensfeld und ältere Namen in einem Beschreibungsfeld gespeichert?

Der engl. Wiki-Eintrag dazu: http://en.wikipedia.org/wiki/Irrational_Games