@pspeed said:
It depends on how much data. You were asking about potentially doing something in memory or using a database. With hypersqldb you can do both since most of the database is in memory.
Ooops… must have misspoke myself. not in RAM, if that’s what you mean. I meant to flat-files.
I’m assuming that player information will be saved on a timed basis… or when something significant happens.
World or (in my case) zone specific items, that need to be persistent (i.e. not native to the area), would be saved/removed as created or destroyed.
I’m trying to figure out whether or not to use a database for global snapshot storage and perhaps flat-files as a mainstay for changing information. If I use a dB for snapshots, I can localize data import to the database alone, and just keep direct communication via the server out of the picture all together. The only drawback here (that I see right away) is ensuring data integrity prior to taking a “snapshot”… One of the benefits to this approach is, the dB schema can be completely open-ended, not really caring what the data is related to, seeing as the only time data will be extracted, is when a storage server server (and any/all backup storage servers) crash happens (to the point of corrupting all data).
Loading data may take a bit of a performance hit, but I’m only reading back in player specific data on a consistent basis as they log in/choose a character.
I’m not trying to take up anyone’s time with this, I really am trying to bounce ideas off of other people before just blindly choosing a direction and assuming that I am doing the right thing.