Thread: How much do you know about...
06-27-04, 01:17 #1Registered User
- Join Date
- Dec 2002
Unanswered: How much do you know about...
Sorry for such an open-ended question, but I've got this thing bugging me since I took my new job (been working at the new place for about 3 months now).
Where I last worked, I architected not only the back end database, but the application front end and the interfaces to external data sources (after mapping out the architecture for the app, I promptly handed the concept to a developer who did the REALLY hard work; and a nice job of it, too). It wasn't huge by any means, but eventually we had an 80GB db serving 1000 web users worldwide with another 5000 users who received nightly reports/alerts from our db. Since I designed it from the ground up, I was intimately familiary with just about every aspect of the model (including the business model which we supported).
Now, I'm in a totally different position:
1. I'm the third "production" DBA in 8 months for a project that's been "in the works" for about three years. #1 DBA was so kind as to download United Devices (see www.grid.org) on all our production servers as a "thank-you" gift before departing. #2 insisted after 8 months that SQL Server could not be restored to a point in time (he did all differential backups) and that Oracle could not be backed up while "hot". So it's been kinda interesting picking up the pieces.
2. The data that I work with is extremely sensitive (moreso, I suspect than even financial data). Suffice it to say that I am actively discouraged from "perusing" the data. And I get a criminal background check updated yearly.
3. There have been several "architects" over the years and the "app" is a hodge podge of loosely connected web pages, interfaces to remote data sources (not always within our organization's control) and business logic that's written in Java. Plus add in some "hosted" solutions: third-party apps sold to us with database back ends which I have to support, but which I cannot "touch".
So I guess my questions are:
1. Am I the only DBA out there flailing to understand what's going on in my databases?
2. I'm a visual person; aside from mapping out the connections by hand each one at a time, is there a tool that can help me understand what processes are connecting to my databases and help me "see" where they lead to?
3. To date, I have focused implemeting some of the most rudimentary best practices that I know: backups being foremost on my list of things to get under control. I have also worked on "pruning" dead databases. Finally, I have been working on security; ensuring complex passwords and pruning dead accounts.
4. Next on my list is to ensure that we have source code control and consistency of the database objects (from dev to test to prod). Any recommendations on doing that?
5. Any comments or thoughts on the hosted stuff? How do you deal with vendors who host their solutions on databases that you "own" but aren't supposed to touch?
6. Through it all, I am working on relationships with the other silos. With 3 DBAs in 8 months, there's not a lot of love coming from the other departments.
In the end, I I guess I am still plagued by a nagging fear that I just don't understand enough about my data yet. Looking for thoughts...
06-27-04, 13:44 #2Resident Curmudgeon
Provided Answers: 54
- Join Date
- Feb 2004
- In front of the computer
I took pretty much the opposite approach.
I used to work for/with/through a variety of TLAs. The data that we handled was very confidential, some of it so much so that we had to have two people present in order to administer the database because one person wasn't allowed to "handle" the data without an observer/witness.
From there I went to work for a major (at least in the 1980s) manufacturer of microcomputers. That was pretty much "wide open", but little was working on stuff that I created.
Today I work for a group of companies that behave more or less as a whole. Most of the systems that I work on, I had a direct hand in creating (many I was the principle architect). Now I know most of the systems that I touch intimately.
Each environment has its own advantages and disadvantages. Once I learned to differentiate between them, and enjoy the differences, I came to like things a whole lot better!
06-27-04, 15:17 #3Registered User
- Join Date
- Jul 2003
- San Antonio, TX
There are a couple or more products on the market that provide source code integration with SQL Server. I played with one of them and was not very impressed, so I resorted to SQLCompare. Actually, it's a bundle that also has SQLDataCompare, Compare (COM compare utility), DTSCompare, and they just released SQL Packager that allows you to package the entire back-end installation or just an update script. SQLCompare in particular is extremely fast, allows comparison to be performed between very large (in terms of objects) databases. It also provides the ability to create base-line for a database, and compare it with live databases while identifying and scripting differences. These resulting scripts/files you can store in VSS or any other source code control facility.
As per not knowing what goes on in databases that you are supposed to "own", - that's very common, especially in large organizations. The one that I just left the situation was so bad that I actually had to write literally hundreds of scripts to finally come up with the so-called "inventory" of what we have. I really did feel somewhat embarassed when being asked "what stuff you got" and having to reply, - God only knows (pun intended, see the signature.)"The data in a record depends on the Key to the record, the Whole Key, and
nothing but the Key, so help me Codd."