Suche Hilfe für Musikdatenbank Projekt

  • Ich als Delphi Programmierer könnte nur eine Windows Version erstellen, vielleicht gäbe es auch noch andere Optionen...


    Das trifft sich ja sehr gut... Ich habe vor einiger Zeit mal damit begonnen einen Windows-basierten Scraper in Delphi zu schreiben... Dies begann erst einmal rein experimentell, entwickelte sich dann im Laufe der Zeit immer mehr zu einem lauffähigen Programm... Das Projekt hört auf den Namen XbmcMusicScraper... Einen Screenshot findest du bei mir in der Gallerie... Als Grundlage dienen Musicbrainz, Fanart.tv und Lastfm... Über den aktuellen Stand des Projektes bin gerade nicht auf dem laufenden, aber vlt lässt sich das Programm oder auch Teile davon als Grundlage für eine neue Version verwenden...

  • Da lassen sich bestimm Teile verwenden :) Ich bin gerade Dabei eine mögliche Datenbankstruktur zu erstellen, die ich im Anschluss zur Diskussion freigebe ;)

    NAS/SmartHome:
    Synology DS216+II|8GB|2TB RAID1|MariaDB
    Synology DS916+|8GB|27TB
    NUC6CAYH(FHEM)|4GB|30GB SSD|Aeon Labs Z-Stick Gen5|TCM310 (Enocean)|Hue Bridge 2.0|HomeMatic CCU3
    APC Back-UPS CS 650
    Kodi (v18.7):
    NUC7I5BNH|8GB|60GB SSD|120GB M2|LG BD-RW|LG 34WK650-W|Focusrite Scarlett 2i4|Neusonik NE08
    FireTV Stick 2nd Gen & ZBox CI321|4GB|60GB SSD|Samsung UE55F6500|Pioneer SC-1223/BDP-LX55|B&W 600 Series 3
    FireTV Stick 2nd Gen|Philips 32PF7496
    FireTV Stick 2nd Gen|Samsung ?
    FireTV Stick 2nd Gen|AOC LE22K097

  • Fangen wir mal mit den einfachsten Tabellen an:

    Land

    Code
    - ID
    - Name

    Stadt

    Code
    - ID
    - ID (Land)
    - Name

    Örtlichkeit (Studio, Halle, Arena...)

    Code
    - ID 
    - ID (Stadt)
    - Name

    Instrument

    Code
    - ID
    - Name

    Aufgabe (Mix, Master, Produzent...)

    Code
    - ID
    - Name

    Genre

    Code
    - ID
    - Name

    Nehmen wir jetzt zum Beispiel folgendes Album: http://en.wikipedia.org/wiki/Live_in_A…satlantic_album)

    Daraus ergeben sich folgende Daten aus den Geburtsorten, Gründungsorten und dem Veranstaltungsort:

    Land

    Code
    0001|USA
    0002|England
    0003|Sweden

    Stadt

    Code
    0001|0001|Washington,DC
    0002|0001|Van Nuys,CA
    0003|0001|Long Beach,NY
    0004|0002|Middelsbrough,North Yorkshire
    0005|0003|Uppsala
    0006|0002|Liverpool
    0007|0002|Godalming,Surrey
    0008|0001|Los Angeles,CA
    0009|0002|Aylesbury,Buckinghamshire
    0010|0001|Boston,MA

    Örtlichkeit

    Code
    0001|0001|930 Club

    Genre und Personal liefern folgendes:

    Instrument

    Code
    0001|Lead Vocals
    0002|Keyboards
    0003|Vocals
    0004|Guitar
    0005|Bass Guitar
    0006|Drums

    Aufgabe

    Code
    0001|Mixing
    0002|Mastering
    0003|Recording

    Genre

    Code
    0001|Progressive Rock
    0002|Rock/Pop
    0003|Progressive Metal

    Jetzt wird es schon etwas komplexer:

    Person (Musiker/Techniker)

    Code
    - ID
    - Name 
    - Geburtsdatum
    - ID (Geburtsort)
    - Sterbedatum
    - ID (Sterbeort)
    - Biographie
    - Link

    Künstler (Band, Orchester,...)

    Code
    - ID
    - Name
    - Gründungsdatum/-jahr
    - ID (Land)
    - ID (Gründungsort)
    - ID (Genre)
    - Biographie
    - Link

    Line-up

    Code
    - ID
    - ID (Künstler)
    - Datum von
    - Datum bis
    - Version (falls mehrere Line-ups im Zeitraum)

    Mitglieder

    Code
    - ID (Line-up)
    - ID (Person - auch mehrfach, wenn verschiedene Instrumente)
    - ID (Instrument)

    Es ergeben sich folgende Daten:

    Person

    Code
    0001|Neal Morse|1960-08-02|0002|0000-00-00|0000|Biographie|www.nealmorse.com
    0002|Roine Stolt|1956-09-05|0005|0000-00-00|0000|Biographie|www.flowerkings.se
    0003|Mike Portnoy|1967-04-20|0003|0000-00-00|0000|Biographie|www.mikeportnoy.com
    0004|Pete Trewavas|1959-01-15|0004|0000-00-00|0000|Biographie|www.marillion.com/band/trewavas.htm
    0005|Mike Potter|0000-00-00|0000|0000-00-00|0000||

    Künstler

    Code
    0001|Transatlantic|1999-00-00|0000|0000|0001|Biographie|www.transatlanticweb.com
    0002|The Beatles|1960-00-00|0002|0006|0002|Biographie|www.thebeatles.com
    0003|Genesis|1967-00-00|0002|0007|0001|Biographie|www.genesis-music.com
    0004|Flower Kings|1994-08-00|0003|0000|0001|Biographie|www.flowerkings.se
    0005|Spock's Beard|1992-00-00|0001|0008|0001|Biographie|www.spocksbeard.com
    0006|Marillion|1979-00-00|0002|0009|0001|Biographie|www.marillion.com
    0007|Dream Theater|1985-00-00|0001|0010|0003|Biographie|www.dreamtheater.com

    Line-up

    Code
    0001|0001|1999-00-00|0000-00-00|a

    Mitglieder

    Code
    0001|0001|0001
    0001|0001|0002
    0001|0002|0003
    0001|0002|0004
    0001|0003|0003
    0001|0003|0005
    0001|0004|0003
    0001|0004|0006

    Ich hoffe ihr konntet mir bis hierher folgen, denn ab jetzt wird es richtig haarig, wenn es an die Songs geht ....

    NAS/SmartHome:
    Synology DS216+II|8GB|2TB RAID1|MariaDB
    Synology DS916+|8GB|27TB
    NUC6CAYH(FHEM)|4GB|30GB SSD|Aeon Labs Z-Stick Gen5|TCM310 (Enocean)|Hue Bridge 2.0|HomeMatic CCU3
    APC Back-UPS CS 650
    Kodi (v18.7):
    NUC7I5BNH|8GB|60GB SSD|120GB M2|LG BD-RW|LG 34WK650-W|Focusrite Scarlett 2i4|Neusonik NE08
    FireTV Stick 2nd Gen & ZBox CI321|4GB|60GB SSD|Samsung UE55F6500|Pioneer SC-1223/BDP-LX55|B&W 600 Series 3
    FireTV Stick 2nd Gen|Philips 32PF7496
    FireTV Stick 2nd Gen|Samsung ?
    FireTV Stick 2nd Gen|AOC LE22K097

    Einmal editiert, zuletzt von dt2510 (9. Oktober 2013 um 14:25)

  • Deswegen die 3-teilung des Projekts:

    - Datenbank (Informationen - vermutlich größtenteils manuell zu erfassen)
    - Scraper/Tagger (automatisierte Informationsbeschaffung aus der Datenbank)
    - Add-on (Anzeige der Daten, die XBMC nicht aus Tags/.nfo's nimmt)

    NAS/SmartHome:
    Synology DS216+II|8GB|2TB RAID1|MariaDB
    Synology DS916+|8GB|27TB
    NUC6CAYH(FHEM)|4GB|30GB SSD|Aeon Labs Z-Stick Gen5|TCM310 (Enocean)|Hue Bridge 2.0|HomeMatic CCU3
    APC Back-UPS CS 650
    Kodi (v18.7):
    NUC7I5BNH|8GB|60GB SSD|120GB M2|LG BD-RW|LG 34WK650-W|Focusrite Scarlett 2i4|Neusonik NE08
    FireTV Stick 2nd Gen & ZBox CI321|4GB|60GB SSD|Samsung UE55F6500|Pioneer SC-1223/BDP-LX55|B&W 600 Series 3
    FireTV Stick 2nd Gen|Philips 32PF7496
    FireTV Stick 2nd Gen|Samsung ?
    FireTV Stick 2nd Gen|AOC LE22K097

  • Beleuchten wir mal langsam die Songs:

    Song

    Code
    - ID
    - Name
    - ID (Original Künstler)
    - Lyrics (leer wenn Parts)

    Part

    Code
    - ID (Song)
    - laufende Nummer
    - Part
    - Name
    - Lyrics

    Komponist

    Code
    - ID (Song)
    - ID (Person - auch mehrfach, wenn mehrere Komponisten)

    Texter

    Code
    - ID (Song)
    - ID (Person - auch mehrfach, wenn mehrere Texter)

    daraus ergibt sich:

    Song

    Part

    Code
    0001|01|I|Full Moon Rising|Lyrics
    0001|02|II|October Winds|Lyrics
    0001|03|III|Camouflaged In Blue|Lyrics
    0001|04|IV|Half Alive|Lyrics
    0001|05|V|Undying Love|Lyrics
    0001|06|VI|Full Moon Rising (Reprise)|Lyrics

    Komponist/Texter

    Code
    0001|0001
    0001|0002
    0001|0003
    0001|0004
    0002|0001
    0002|0002
    0002|0003
    0002|0004
    usw.

    Hier müssten jetzt die Personen von oben entsprechend erweitert werden (z.B. Paul McCartney, John Lennon da Titel 3 ein Beatles Cover ist ...)

    Bisher wurden nur die gespielten Songs definiert und noch nicht die einzelnen Tracks des Albums. Ab hier wird die Darstellung auch "etwas" unübersichtlich ;)

    NAS/SmartHome:
    Synology DS216+II|8GB|2TB RAID1|MariaDB
    Synology DS916+|8GB|27TB
    NUC6CAYH(FHEM)|4GB|30GB SSD|Aeon Labs Z-Stick Gen5|TCM310 (Enocean)|Hue Bridge 2.0|HomeMatic CCU3
    APC Back-UPS CS 650
    Kodi (v18.7):
    NUC7I5BNH|8GB|60GB SSD|120GB M2|LG BD-RW|LG 34WK650-W|Focusrite Scarlett 2i4|Neusonik NE08
    FireTV Stick 2nd Gen & ZBox CI321|4GB|60GB SSD|Samsung UE55F6500|Pioneer SC-1223/BDP-LX55|B&W 600 Series 3
    FireTV Stick 2nd Gen|Philips 32PF7496
    FireTV Stick 2nd Gen|Samsung ?
    FireTV Stick 2nd Gen|AOC LE22K097

  • Hier dann mein Ansatz zu den Tracks:

    Track

    Trackparts

    Code
    - ID
    - ID (Track)
    - laufende Nummer
    - ID (Song)
    - ID (Part - wenn vorhanden)

    Gastmusiker

    Code
    - ID (Track)
    - ID (Person - auch mehrfach, wenn verschiedene Instrumente)
    - ID (Instrument)

    hier die zugehörigen Daten:

    Track

    Code
    0001|0001|All Of The Above||1|0|0|0|0|2000-06-24|0001
    0002|0001|Mystery Train Medley||1|0|0|0|0|2000-06-24|0001
    0003|0001|||1|0|0|0|0|2000-06-24|0001
    0004|0001|Genesis Medley||1|0|0|0|0|2000-06-24|0001
    0005|0001|||1|0|0|0|0|2000-06-24|0001
    0006|0001|Medley||1|0|0|0|0|2000-06-24|0001

    Trackparts

    Gastmusiker

    gibt es hier keine


    Mein Ansatz geht davon aus, dass ein Track aus mindestens einem Song (Track 3 und 5) oder Part eines Songs oder mehreren Songs (Track 2,4 und 6) bzw. Parts (Track 1) bestehen kann.
    Hier besteht noch keine Beziehung zum Album oder zur Disc, es wird lediglich ein einzelner Song/Medley beschrieben, der als Track auf einer CD/DVD/BD vorhanden ist.
    So, das muss für heute genügen - mir qualmt schon der Kopf.

    NAS/SmartHome:
    Synology DS216+II|8GB|2TB RAID1|MariaDB
    Synology DS916+|8GB|27TB
    NUC6CAYH(FHEM)|4GB|30GB SSD|Aeon Labs Z-Stick Gen5|TCM310 (Enocean)|Hue Bridge 2.0|HomeMatic CCU3
    APC Back-UPS CS 650
    Kodi (v18.7):
    NUC7I5BNH|8GB|60GB SSD|120GB M2|LG BD-RW|LG 34WK650-W|Focusrite Scarlett 2i4|Neusonik NE08
    FireTV Stick 2nd Gen & ZBox CI321|4GB|60GB SSD|Samsung UE55F6500|Pioneer SC-1223/BDP-LX55|B&W 600 Series 3
    FireTV Stick 2nd Gen|Philips 32PF7496
    FireTV Stick 2nd Gen|Samsung ?
    FireTV Stick 2nd Gen|AOC LE22K097

  • Hi,

    hört sich ja mal sehr spannend an, bin ja auch an sowas interesiert (=Ember für Musik :thumbup: )

    Aber willst nicht mal erst ein DB-Schema für machen, liest sich wesentlich einfacher.

    Dabei könnte ich dich unterstützen, erstmal nen Prototyp mit rudimentären Eingabemasken und nem kleinen Reporting (Ansicht) um zu testen ob alles vollständig ist. Dabei könnte ich dir auf jeden Fall helfen.....

    HTPC: A6-5400K | ASUS F2A85-M LE | 8 GB | LibreELEC 7.0.2
    NAS:
    Synology DS212j (2x2TB Basic)
    Synology DS213j (2x4TB Basic)
    Synology DS216+ (2x3TB Raid1)
    AVR: Pioneer VSX-922
    TV: Panasonic TX-43CXW754

  • Das wäre super!! Wie du siehst hab' ich ja schonmal versucht anzufangen, aber da ich mit Datenbanken immer nur am Rande zu tun hatte, hab' ich leider keine Ahnung, wie man das am vernünftigsten präsentiert.
    Was brauchst du denn an Infos für das DB-Schema ?

    NAS/SmartHome:
    Synology DS216+II|8GB|2TB RAID1|MariaDB
    Synology DS916+|8GB|27TB
    NUC6CAYH(FHEM)|4GB|30GB SSD|Aeon Labs Z-Stick Gen5|TCM310 (Enocean)|Hue Bridge 2.0|HomeMatic CCU3
    APC Back-UPS CS 650
    Kodi (v18.7):
    NUC7I5BNH|8GB|60GB SSD|120GB M2|LG BD-RW|LG 34WK650-W|Focusrite Scarlett 2i4|Neusonik NE08
    FireTV Stick 2nd Gen & ZBox CI321|4GB|60GB SSD|Samsung UE55F6500|Pioneer SC-1223/BDP-LX55|B&W 600 Series 3
    FireTV Stick 2nd Gen|Philips 32PF7496
    FireTV Stick 2nd Gen|Samsung ?
    FireTV Stick 2nd Gen|AOC LE22K097

  • Naja, eigentlich alle Angaben die du zu einem Objekt (Entität) hinterlegen willst, wie z.B.

    Album:
    -> Titel
    -> Jahr
    -> Ort / Land
    -> Produzent
    -> ....usw

    Bis jetzt habe ich ja schon so ne ganze Menge herausgelesen - ich würde einfach mal dein genanntes Beispiel http://en.wikipedia.org/wiki/Live_in_A…satlantic_album) als Basis verwenden....

    Und mit Sicherheit kommen beim Erstellen noch gefühlt tausende von Fragen..... :D :D

    HTPC: A6-5400K | ASUS F2A85-M LE | 8 GB | LibreELEC 7.0.2
    NAS:
    Synology DS212j (2x2TB Basic)
    Synology DS213j (2x4TB Basic)
    Synology DS216+ (2x3TB Raid1)
    AVR: Pioneer VSX-922
    TV: Panasonic TX-43CXW754

  • Ich versuche es mal grob zusammenzufassen und schick' es dir zu

    NAS/SmartHome:
    Synology DS216+II|8GB|2TB RAID1|MariaDB
    Synology DS916+|8GB|27TB
    NUC6CAYH(FHEM)|4GB|30GB SSD|Aeon Labs Z-Stick Gen5|TCM310 (Enocean)|Hue Bridge 2.0|HomeMatic CCU3
    APC Back-UPS CS 650
    Kodi (v18.7):
    NUC7I5BNH|8GB|60GB SSD|120GB M2|LG BD-RW|LG 34WK650-W|Focusrite Scarlett 2i4|Neusonik NE08
    FireTV Stick 2nd Gen & ZBox CI321|4GB|60GB SSD|Samsung UE55F6500|Pioneer SC-1223/BDP-LX55|B&W 600 Series 3
    FireTV Stick 2nd Gen|Philips 32PF7496
    FireTV Stick 2nd Gen|Samsung ?
    FireTV Stick 2nd Gen|AOC LE22K097

  • Dann mal gleich die erste Frage:

    Du hast Personen die einzeln als Künstler auftreten, in Bands mitspielen und als Komponist bzw. Gastmusiker mitwirken.
    Gleichzeitig hast du ne Tabelle Künstler/Band, die ja wiederum als Gruppe oder Einzelperson agieren, und dazu kommt noch manche Bands bestehen ja nicht immer aus den gleichen Band-Mitgliedern (Deep-Purple waren glaub ich 7 oder 8 Besetzungen.....)

    Ganz grob mal die gewünschte Aufteilung eines Albums:

    Album -> Disk -> Song -> Track

    korrekt so ?

    HTPC: A6-5400K | ASUS F2A85-M LE | 8 GB | LibreELEC 7.0.2
    NAS:
    Synology DS212j (2x2TB Basic)
    Synology DS213j (2x4TB Basic)
    Synology DS216+ (2x3TB Raid1)
    AVR: Pioneer VSX-922
    TV: Panasonic TX-43CXW754

  • Also mit Personen meine ich jeden am Album beteiligten. Das kann ein Produzent, Musiker, Gastmusiker, Komponist usw. sein.
    Künstler/Band beschreibt erstmal noch keine Besetzung sondern nur Name, Genre, Gründungszeitraum usw. Für die Besetzungen ist das Line-up vorgesehen.

    Nehmen wir als Besipiel Iron Maiden (das weiß ich aus dem Kopf ;) )

    Personen (nur mal die, die bei Alben mitwirkten):

    Paul Di'Anno
    Bruce Dickinson
    Dave Murray
    Adrian Smith
    Janick Gers
    Steve Harris
    Clive Burr
    Nicko McBrain

    Band/Künstler:

    Iron Maiden

    Line-up:

    1980-1981 Paul DiAnno, Dave Murray, Adrian Smith, Steve Harris, Clive Burr
    1982-1989 Bruce Dickinson, Dave Murray, Adrian Smith, Steve Harris, Nicko McBrain
    1990-1993 Bruce Dickinson, Dave Murray, Janick Gers, Steve Harris, Nicko McBrain
    1993-1999 Blaze Bailey, Dave Murray, Janick Gers, Steve Harris, Nicko McBrain
    1999-heute Bruce Dickinson, Dave Murray, Adrian Smith, Janick Gers, Steve Harris, Nicko McBrain

    Unter einem Album verstehe ich die Menge der Songs, die vom Künstler als Album gedacht war - das eigentliche Release könnte aber auch Bonustracks (non Album Tracks) enthalten, das Album ist für mich also eigentlich nur eine Logische Einheit. Für das spätere Taggen wäre meine Aufteilung dann:

    Release -> Disc -> Track -> Songs/Parts (in einem Track zusammengefasst)

    NAS/SmartHome:
    Synology DS216+II|8GB|2TB RAID1|MariaDB
    Synology DS916+|8GB|27TB
    NUC6CAYH(FHEM)|4GB|30GB SSD|Aeon Labs Z-Stick Gen5|TCM310 (Enocean)|Hue Bridge 2.0|HomeMatic CCU3
    APC Back-UPS CS 650
    Kodi (v18.7):
    NUC7I5BNH|8GB|60GB SSD|120GB M2|LG BD-RW|LG 34WK650-W|Focusrite Scarlett 2i4|Neusonik NE08
    FireTV Stick 2nd Gen & ZBox CI321|4GB|60GB SSD|Samsung UE55F6500|Pioneer SC-1223/BDP-LX55|B&W 600 Series 3
    FireTV Stick 2nd Gen|Philips 32PF7496
    FireTV Stick 2nd Gen|Samsung ?
    FireTV Stick 2nd Gen|AOC LE22K097

  • Ok - das wird noch lustig.... :D :D

    Also, unter Release verstehst du das, was ich im Laden kaufen kann (ich nenn das mal Album, ok?)
    Dieses enthält 1 bis n Tonträger (CD, DVD, BluRay, Vinyl)
    Jeder Tonträger enthält 1 bis n Tracks (Track in dem Sinne von deinem Beispiel wäre "All Of The Above" - ok soweit ?)
    und jeder Track enthält 1 bis n Songs/Parts - in diesem Beispiel Part I bis Part VI

    So jetzt die Frage:
    Ich kann ja Künstler auf jeder Ebene zuordnen, also ganz unten auf Song/Part-Ebene oder auf allen Stufen darüber - was macht denn jetzt Sinn?
    Das gleiche gilt natürlich für alle anderen Personen (Produzent, ...)

    hmmmm..... 8)

    Dann stellt sich die Frage, willst du immer alle Informationen auf die unterste Ebene herunterbrechen oder nur die Ebenen befüllen, bei denen auch unterschiedliche Informationen vorhanden sind?

    HTPC: A6-5400K | ASUS F2A85-M LE | 8 GB | LibreELEC 7.0.2
    NAS:
    Synology DS212j (2x2TB Basic)
    Synology DS213j (2x4TB Basic)
    Synology DS216+ (2x3TB Raid1)
    AVR: Pioneer VSX-922
    TV: Panasonic TX-43CXW754

  • neuer Versuch für die Zuordnung:

    - zum Song gehört ein Künstler (i.d.R. Name der Band, die das Stück ursprünglich gespielt hat), Texter (beliebige Person) und Komponist (beliebige Person)
    - zum Track gehört das Line-up eines Künstlers zum Aufnahmezeitpunkt (2 unterschiedliche Liveversionen können von unterschiedlichen Lineups stammen) - da hab' ich oben noch einen Fehler drin
    - zum Track gehören ausserdem die Gastmusiker und andere Personen
    - der Track (mit allen zugehörigen Personen und Parts) kann auf mehreren Releases vorhanden sein (z.B. auf einem Sampler) steht also NICHT direkt mit einem Album in Verbindung
    - ein Album ist eine Ansammlung von Tracks
    - ein Track ist eine Ansammlung von Songs/Parts

    Beispiel:

    - der Song "S" ist im Original von Band "B", Texter war "T" und Komponist "K"
    - der Track "T" enthält die Album-Version von "S" und wurde vom Lineup "L" der Band "B" performt - hier war Gastmusiker "G" beteiligt (z.B. Solo, welches in der Single-Version fehlt)
    - der Track "T2" enthält die Single-Version von "S" und wurde vom Lineup "L" der Band "B" performt
    - auf dem Album "A" der Band "B" ist der Track "T"
    - auf dem europäischen Release des Albums "A" der Band "B" ist nur der Track "T" enthalten
    - auf dem japanischen Release des Albums "A" der Band "B" ist zusätzlich der Track "T2" als Bonustrack enthalten

    ich denke die Ebenen sollte so klarer werden ....

    NAS/SmartHome:
    Synology DS216+II|8GB|2TB RAID1|MariaDB
    Synology DS916+|8GB|27TB
    NUC6CAYH(FHEM)|4GB|30GB SSD|Aeon Labs Z-Stick Gen5|TCM310 (Enocean)|Hue Bridge 2.0|HomeMatic CCU3
    APC Back-UPS CS 650
    Kodi (v18.7):
    NUC7I5BNH|8GB|60GB SSD|120GB M2|LG BD-RW|LG 34WK650-W|Focusrite Scarlett 2i4|Neusonik NE08
    FireTV Stick 2nd Gen & ZBox CI321|4GB|60GB SSD|Samsung UE55F6500|Pioneer SC-1223/BDP-LX55|B&W 600 Series 3
    FireTV Stick 2nd Gen|Philips 32PF7496
    FireTV Stick 2nd Gen|Samsung ?
    FireTV Stick 2nd Gen|AOC LE22K097

    Einmal editiert, zuletzt von dt2510 (9. Oktober 2013 um 16:20)

  • OK - das hab ich soweit verstanden :rolleyes:

    Ich denke mal, werd nen Prototyp basteln mit den Info's - wichtig wär aber noch die Angabe ob alle Informationen immer auf die tiefste Ebene heruntergebrochen werden sollen?

    Werd dann auch mal ein paar Beispieldaten erfassen, von einer ganz einfachen CD bis was komplizierteres - ok?

    Hoffe du hast kein Termin.....
    :D :D

    HTPC: A6-5400K | ASUS F2A85-M LE | 8 GB | LibreELEC 7.0.2
    NAS:
    Synology DS212j (2x2TB Basic)
    Synology DS213j (2x4TB Basic)
    Synology DS216+ (2x3TB Raid1)
    AVR: Pioneer VSX-922
    TV: Panasonic TX-43CXW754

  • hehe ... nö, Termin gibt es keinen :)
    Ich glaube ich verstehe langsam was du meinst mit "auf die tiefste Ebene runterbrechen". Du siehst das ganze von der Erfassungsseite aus. Da die Tabellen alle miteinander verlinkt sind (über die ID's) musst du im prinzip von hinten nach vorne erfassen, also erst die Ortsangaben, dann die Personen, dann die Band, dann das Lineup, dann die Songs, dann die Tracks, dann das Album und ganz am Ende das Release.... Die Informationen auf der jeweiligen Ebene ergeben sich aus den jeweiligen ID's (und deren übergeordneten IDs).
    Ich denke wir sollten mal langsam anfangen (Länder, Städte, Örtlichkeiten, Instrumente, Aufgaben, Genres, Personen, Künstler, Line-up (und zugehörige Mitglieder), Songs (und vorhandene Parts bzw. beteiligte Personen)). Das ist schon eine Menge Arbeit eh' es an die eigentlichen Bild-/Tonträger geht. Ich denke bis dahin klärt sich noch das ein oder andere....

    NAS/SmartHome:
    Synology DS216+II|8GB|2TB RAID1|MariaDB
    Synology DS916+|8GB|27TB
    NUC6CAYH(FHEM)|4GB|30GB SSD|Aeon Labs Z-Stick Gen5|TCM310 (Enocean)|Hue Bridge 2.0|HomeMatic CCU3
    APC Back-UPS CS 650
    Kodi (v18.7):
    NUC7I5BNH|8GB|60GB SSD|120GB M2|LG BD-RW|LG 34WK650-W|Focusrite Scarlett 2i4|Neusonik NE08
    FireTV Stick 2nd Gen & ZBox CI321|4GB|60GB SSD|Samsung UE55F6500|Pioneer SC-1223/BDP-LX55|B&W 600 Series 3
    FireTV Stick 2nd Gen|Philips 32PF7496
    FireTV Stick 2nd Gen|Samsung ?
    FireTV Stick 2nd Gen|AOC LE22K097

    Einmal editiert, zuletzt von dt2510 (9. Oktober 2013 um 18:34)

  • Ich glaube mit tiefster Ebene meint er, wo Informationen gespeichert werden.
    Beispiel:
    =======

    Eine CD hat 3 Tracks, der 2. Track besteht aus 3 Parts.
    Der Interpret der CD ist Künstler "A" nur beim 2. Part des 2. Tracks hat auch noch Künstler "B" mitgewirkt.

    Jetzt kann das ganze so gespeichert werden:

    CD --> Künster "A"
    CD / Track 2 / Part 2 --> Künster "A" + Künstler "B"

    oder aber nach unten gebrochen:

    CD / Track 1 / Part 1 --> Künster "A"
    CD / Track 2 / Part 1 --> Künster "A"
    CD / Track 2 / Part 2 --> Künster "A" + Künstler "B"
    CD / Track 2 / Part 3 --> Künster "A"
    CD / Track 3 / Part 1 --> Künster "A"

    D.h. es wird einfacher die Daten zu einem Track/Part zu finden, jedoch steigt die Datenmenge exorbitant an.

  • Hi Tolotos,

    du hast es korrekt mit Beispiel verdeutlicht.....

    Auch deine Schlussfolgerung ist korrekt, wenn alles auf der untersten Ebene hinterlegt wird, steigt die Datenmenge gewaltig an - dafür die das Auslesen der DB relativ einfach, da ich nicht per Logik entscheiden muss, welchen Eintrag ich jetzt verwenden muss!

    Hier das Beispiel "Live in America (Transatlantic album)":

    E1: Live in America (Transatlantic album) >>> Attribute: Jahr, Cover, ....
    E2: --Disk One >>> Attribute: TonträgerTyp, ....
    E3: ----"All Of The Above"
    >>> Attribute: Dauer, Ort, ....
    E4: ------I. "Full Moon Rising"
    >>> Attribute: Künstler, Band, Lyrics, Gast,...
    E4: ------II. "October Winds"
    E4: ------III. "Camouflaged In Blue"
    E4: ------IV. "Half Alive"
    E4: ------V. "Undying Love"
    E4: ------VI. "Full Moon Rising (Reprise)"
    E3:----"Mystery Train"
    E4: ------"Magical Mystery Tour" (John Lennon/Paul McCartney)
    E4: ------"Strawberry Fields Forever" (Lennon–McCartney)
    ....
    E2: --Disk Two
    E3: ----
    ......

    Bei einfachen CDs erscheint dieses Konzept Oversized, auf der anderen Seite lässt sich hier so gut wie alles abbilden.

    Ich würde jetzt mal einen Entwurf auf Basis dieser Vorgehensweise machen - ok?

    HTPC: A6-5400K | ASUS F2A85-M LE | 8 GB | LibreELEC 7.0.2
    NAS:
    Synology DS212j (2x2TB Basic)
    Synology DS213j (2x4TB Basic)
    Synology DS216+ (2x3TB Raid1)
    AVR: Pioneer VSX-922
    TV: Panasonic TX-43CXW754

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!