- Feature Articles
- CodeSOD
- Error'd
- Forums
-
Other Articles
- Random Article
- Other Series
- Alex's Soapbox
- Announcements
- Best of…
- Best of Email
- Best of the Sidebar
- Bring Your Own Code
- Coded Smorgasbord
- Mandatory Fun Day
- Off Topic
- Representative Line
- News Roundup
- Editor's Soapbox
- Software on the Rocks
- Souvenir Potpourri
- Sponsor Post
- Tales from the Interview
- The Daily WTF: Live
- Virtudyne
Admin
It can also be the difference between seconds and hours. I once worked on a SQL Server database for an application that created a report by populating a table with what could end up being in excess of a million rows. The beauty of the temporary table (it was truncated when the report was complete) is that it had a clustered index on it. Sample reports would run very quickly. A full report could only be started at close of business because the drag caused by the moving of data would bring a 3x3Ghz CPU Xeon server to its knees. I was hired to "find out why the report is so slow." I deleted the clustered index and the next day management thought I was a genius.
Admin
Hmmmmm.
So now I know who to blame!!
Admin
This is one of the few times that Alex highlighted a good reply. Most people in here have no idea what they are talking about, especially when it comes to RDBMS. Thanks for the dose of sanity.
Admin
Phased?
Admin
You suck. I have database that's 5 gigs big, and runs like a champ.
Admin
Did I ever mention I have a 12 foot penis?
Admin
Whether normalized or denormalized is more performant completely depends on what you are trying to do.
Normalized data is very performant for writes. Denormalized data is very performant for reads that include all the details and for aggregation.
Admin
Attention! You might eventually execute it when executing another command. A query window may execute several commands in a batch job if you don't select a particular command.
Admin
Since when DBAs earn zillions of dollars? Normally, they earn even less than a programmer.
Admin
might be a bit offtopic. But your are not required to pay taxes. The contitution and the supreme curt says that clearly.
If you investigate this topic you will be surprized.
Admin
If I had been Bobby (Tables?), I would've added a primary key as well. I'd chill at the sight of something like this! PK/indexes really help, as I found out when managing a 4 million table, eating away about 3Gb in our 'test' server. Good thing that PostgreSQL was able to cope with it ;)
Admin
I can verify Jay is absolutely correct. I too have way too much experience with goverment IT.
Admin
Tell you what - you try it and let us know how it goes for you. I'd be curious to find out. :)
From what I've read on the subject, people who actually challenge this by refusing to pay taxes tend to lose in court and head to jail. I can see where you're coming from and definitely feel that the majority of my tax money is wasted, but it's still a legal obligation. Once again, let us know how many years you get away with earning money in the US and not paying your taxes. We'll follow the story with interest.
Admin
Well, isn't that the idea? Those idiots would deserve it anyhow!
Admin
Admin
Someone added a reference to the daily wtf on this page. WTF did someone do that?
Admin
Just on the database note, does anyone know what the upper limits for sizes in most modern database's are? I dont mean the max rows that they support, but how useable they are at extreme sizes?
I have always wanted to know, since the largest database I have worked with is about 4 million rows and about 1 gig in size ignoring indexes (MySQL). I would be curious to know how large a usable MySQL/Postgresql/Oracle database can be. I tried googling it then, but cant find anyone talking about extreme database sizes and how to get performance (such as real time performance) out of them.
Admin
Just try creating a report with a query containing some 10 or more JOIN instructions against a "flat" query against a flat table. Of course, your DB should still be normalized, but running this report from a "reporting table" will, for sure, increase performance. Creation of this reporting table can be done over night, for example, when it doesn't hurt too much. Think of gathering data out of 10 or more boxes against gathering it from a single one.
And BTW, this is, of course for DBs with several million rows, not an address book.
Admin
Don't know about the latest version but Excel 5 could hold 16000 rows and the latest version I know can hold 65535 rows. Which is lame for a "database".
Admin
This also depends on the definition of performance. For me it means speed. But when I look at the MS definition of performance, it means the number of features, the ease of access and the like. Normalizing a DB makes it easier to handle and manage the data, but as I wrote in a previous post, it doesn't necessarily mean speed of execution.
Admin
I find it quite surprising that 800 MB of data need 600 MB. Did you create some 20 indexes? Don't forget that indexes need to be updated from time to time, so INSERTs and UPDATEs become slower the more indexes you have.
Admin
Why not? Lyle can do it better, anyway.
Admin
SQL Server 2000 creates indexes on keys be default.
Admin
The difference between an INT and a VARCHAR is that an INT is always 4 bytes (in our days) whereas for a VARCHAR the number of bytes to read must always be determined (for each row) either by a number indicating the length (or amount) of data that must be read or by parsing until ASCII 0 is met. Even a hash should give worse results than a stupid lookup of an INT.
Admin
Data warehouses are starting to use Cubes now. All the processing is done up front so data retrieval can be much faster than a regular RDBMS.
Admin
So, in winter you can wrap it around you and it keeps you warm. In summer you might fold it above your head to give you some shade.
Admin
"Primary keys: none"
I admit I'm a database n00b but I didn't realize this was possible.
Admin
Admin
9 Minutes? This replaces a system where best case was probably nine hours, or perhaps 9 weeks. The users probably loved it when it was installed.
Admin
I'm sorry, but this is painfully ignorant. There are standard normal forms that represent a theoretically optimal data representation. In general normalization improves performance on a great number of ad-hoc queries. In practice we de-normalize selectively to optimize certain queries. However that comes at a cost of disk space, data maintenance, ad-hoc querying ability, and risk of data corruption.
Admin
Admin
I will be the first to call BS on this. While I don't work for the IRS, I do work across the street at another agency that deals with sensitive data. We have development databases, QA databases, training databases, production databases, etc. I find it very, very, very hard to believe that the Dept. of Treasury does not require similar standards of its bureaus.
My take is that the OP did this in a development database and realized that it wasn't anything special, so the story was spiced up to take place in production.
And to the person who said that we don't have to pay taxes because it isn't in the Constitution, this has been debunked many times. You do realize that laws passed by Congress, such as the Internal Revenue Code (Title 26), are still legally-binding right? I suppose murder is legal, since it doesn't say anything about it in the Constitution. And I guess I can drive on whichever side of the road I choose. And I suppose it would be okay for me to rape your wife, since the Constitution doesn't prohibit it.
Admin
That's not entirely true. The level of Normalization/Denormalization can have a dramatic impact on performance. It largely depends on the data that's being queried and a good DBA would work with developers to understand how the data is being used and define a structure that has the proper level of normalization.
Admin
Tens of billions of rows, hundreds of gigs, a thousand transactions/sec and three thousand queries/sec would be medium sized. I'm not sure where 'big' starts.
Admin
Things may have been somewhat different 15 years ago when a Pyramid 4-way 150MHz computer would have been state of the art.
Admin
...and you can guarantee they have no idea of statistics or Informix in general.
Admin
He forgot to insert sleep(100060MINUTES); into code so he could just reduce MINUTES by one monthly and collect money
Admin
You're aware that primary keys are automatically added to tables upon creation and there's a simple "add_index" method when writing a migration, right?
Just because you dislike a language/framework (for practically no reason, I'm guessing) doesn't mean you should ignorantly talk crap about it. Educated crap, sure, but cut the stupid comments.
Admin
Who is this "supreme curt" and where does he live? The IRS wants to talk to him...
Admin
I bet you are a fresh graduate
Admin
Wow! I almost cried a little when I read this ;) What a wonderful story. It bet it must have felt pretty sweet when you where done :)
Admin
This was pretty much spelled out in the story: "Of course, it's highly unorthodox for someone to be given absolute access to one of the IRS's production databases, but no one wanted to question the big cheese. "
I'd bet he could very easily have caused damage rather than making things so much better. Just a few days ago, everyone here was dissing "The Process", but there should be a middle ground between "Bobby wants a change. Bobby changes the production" and "We need a 9-hour process to allow someone to click F1"
Admin
This story doesn't ring true to me.
Could the IRS be that backward? Really?
And how could several CREATE INDEX commands run in seconds on several huge tables?
I'm not an IRS or government employee, but this sounds urban mythish...
Admin
Wait, you would go backwards to a lower NF than 3rd?
You would have attributes in a relation not directly dependant on the Key(s)? WTF?
So in your systems, remember when updating an Order Line item, don't forget to update the Customer Contact Details!
sigh...
Admin
1 row, 60 columns :(
Admin
What, your penis has feet and walks around?
Admin
How long did it take to fill out the paperwork to leave the job? 12.5 years?
Admin
If you don't mind looking like the Michelin Man, that is.
Admin
The real WTF is that he was optimizing the production database without any testing or backups.
Admin
We run numerous SQL Server 2000 and 2005 databases here that run 35+ GB and growing. Insurance eligibility and claim records. And that's still nothing -- we haven't come anywhere close to needing partitioning, which would allow truly huge numbers.