2012-03-07, 09:05 AM
SaptaZapta Wrote:...was going to write a whole post of statements and questions about rowids and application ids and fields in tables and pointers to other tables but, bottom line is, the way Nexon set up their database is obviously nothing like I would have (I'm not a DBA. I've developed projects that used Oracle, but usually in a fairly trivial manner), so I'll not trouble you to explain it.
You also have to understand the DB is just a storage medium to them, all the real stuff is occurring in-game in RAM.
Since the DB is just a way to serialize the data they made it easily translatable to how the structures existed in memory so they wouldn't need extra overhead translating back and forth between good database design and good game design, since the two are not necessarily the same.
(btw, RowID's are unique to oracle, MSSQL doesn't have anything comparable and expects keys to be defined by the DBA, and even if they were using Oracle the game itself would not be able to keep track of the rowids properly in concurrency with with RDBMS making them functionally useless as pointers)
It's not having what you want - It's wanting what you've got.

