noamineo wrote on Feb 4
th, 2021 at 3:15pm:
Anyone can learn enough SQL to do basic database querries. jerry could be taught to do it. Ok, I'm exaggerating, but the average 5th grader could be taught to write SQL queries.
noamineo wrote on Feb 4
th, 2021 at 3:15pm:
Flav, you've worked in technology for a while(in your case telco), have you noticed how under-appreciated DBAs tend to be? Its like being the guy who cleans the sewer: everything turns to shit without you, but no one knows what you do or that you even exist.
since I did make do as a Sybase DBA for years on scrapped on skills, and went beyond basic SQL querries ( there's a few of my weird querries hidden in the Vault history... for simplcity sakes lets just say that SQL querries spanning two databases and numerous tables to just spew out a single mobile phone number ( 10 digit ) that might have service interraction issues during a migration. ( even if there was about 0% chances for it to happen it had to be checked ).
While I've been in telco for all my career, I've moved away from the old grand dad telephone tech something like more than 20 years ago. In the meantime I've done server stuff ( of the kind that display alarms in a list on a big walls in a supervision center, of the kind that can locate you while you walk in the stree [ nowadays 1meter or less range, in the early day it was a 100 meter ring in a 30km disk] , to systems that allows you to make internal phone calls with your mobile with short numbers within your company...; and to IP ( ISP/Carrier Grade ) ) But I still remember ( vaguely ) how installing, testing and putting in service a good old telecom exchange ( read : circuit switched, PSTN ) was done.
but that's not the point. I agree any monkey that can read can learn basic SQL. It takes a few more brain cells to go beyond that, and to reach DBA level you really need some skill and brain. Since it's easy to leanr basics, lots of companies don't see the need of a real database expert.
noamineo wrote on Feb 4
th, 2021 at 3:15pm:
The database structure still exists, its just no one knows it. Also we can assume its a random series of kludges and go-tos
If they had somebody with a clue in SQL ( since It's MS SQL Server driven ) they could extract the tables/tablespaces and rebuild the datamodel.... But I don't think they have somebody with enough will to tackle that task ( been there done that, know how tedious it is )
noamineo wrote on Feb 4
th, 2021 at 3:19pm:
The database being badly maintained and pourly thought out to begin with is part of it.
Well there's one separate database server for each and every server... why do you think it takes ages to make character copies ?
they might have found ways to streamline it a tiny bit for the Permadeath server transfer towards other server... but they can't replicate it to all the transfers because at a guess the Permadeath Server is based on the lamania one and don't give a fuck about guilds and stuff.
Quote:I think the worry is that they've probably added in tables etc that don't need to exist, as a cludge for the fact that they don't know the structure well.
No, the whole issue is DDO was built with Single Processor, Single Core, Single threaded servers in mind. When they moved to Multicore, Multithread, Virtualized environment they just reproduced the Single Core, single Thread architecture they had for a given game server on a specific box... ( including the backend stuff like the database server )... and since the game was never intended to be on that kind of architecture all hell broke loose. you can only write so many bytes per seconds on an HDD... even if it's in Raid 5 over an array of 40 disks. I/O throughput became a bottleneck. ( among other things )
Quote:I think the other problem is without a dba performing needed proper maint, inserts, deletes, and other changes could have wrecked havok on Indexes.
Weekly maintenance task 20 years ago : drop indexes and recreate indexes ( 4 hours downtime )
Been there done that, got the customer educated enough so that he could do it alone... Was on call if things went awry though and had to recreate several indexes manually after the script failed at some point.