Closed Thread Icon

Topic awaiting preservation: Lyric Database - Design Considerations Pages that link to <a href="https://ozoneasylum.com/backlink?for=29066" title="Pages that link to Topic awaiting preservation: Lyric Database - Design Considerations" rel="nofollow" >Topic awaiting preservation: Lyric Database - Design Considerations\

 
Author Thread
Trigger
Paranoid (IV) Inmate

From: Wales
Insane since: Jun 2002

posted posted 03-24-2007 16:34

I want to make a lyric database dedicated to a specific Genre.

Now given the potential size of such a database of lyrics and the need for it to be searchable I want it to be as optomized as it can be.

What would be the best means to store each lyric entry?
flat-file with a database node containting artist-name, album, etc?

I imagine this given my limited understanding of php would be the fastest method because it would reduce database size and I/O transfer speeds are faster than database calls? But then I'm adding both? am I not?

And how would I minimalise search over-head? This as I imagine will be a large database having to scan all lyric entrys for lyric lines would be quite server intensive? and should I choose to go the flat-file route, will this require opening, scanning and closing over 100,000 files?

Any guidance on this one would be greatly appreciated.

CPrompt
Maniac (V) Inmate

From: there...no..there.....
Insane since: May 2001

posted posted 03-24-2007 17:29
quote:

Trigger said:

What would be the best means to store each lyric entry?
flat-file with a database node containting artist-name, album, etc?




I would say database. A relational database structure would be much quick I would imagine rather than a bunch of files.

quote:

Trigger said:

I/O transfer speeds are faster than database calls?



If I am guessing right, then no. I am imagining that the contents of all the lyrics are going to be quite large. Even with just one genre. Opening and closing every single file that contains lyrics is going to be a lot slower than querying a database.

quote:

Trigger said:

should I choose to go the flat-file route, will this require opening, scanning and closing over 100,000 files?



pretty much.

I would really look into a nice relational database design. keeping one table for the lyrics.

Later,

C:\

Trigger
Paranoid (IV) Inmate

From: Wales
Insane since: Jun 2002

posted posted 03-24-2007 17:35

So a case of a searchable index

following something like,

id, artist, album, nodes - and then each node being listed within there pointing to a reffrence to the other database which would give me all lyrics by artist/album.

So I'd basicaly have a form with a radio button, search for lyrics, search by artist/album

checking the lyrics would search for the lyrics, etc?

That all seems fairly straightforward, unless I'm missing something?

Trigger
Paranoid (IV) Inmate

From: Wales
Insane since: Jun 2002

posted posted 03-25-2007 16:49

Would this be a sensible database format.

table 1
id artistid albumid songid

table2
id artistname

table3
id albumname

table4
id songname lyrics

allowing for searching by album, songname, lyrics and artistname - where a corosponding match will bring back an id which can be pulled out of table1

« BackwardsOnwards »

Show Forum Drop Down Menu