I don't think you've thought clearly about the problem.
If a JOIN is causing problems because it's causing too much non-local data access, then you're going to run into the same problem when you re-code the JOIN in the application. In fact, it might hit you worse because you won't benefit from the database's query optimizer.
The solution is clearly to improve locality of reference. You can do that by duplicating some data, denormalizing the database, and so on. But you can do all those things just as easily within a RDBMS, and without losing the other benefits a RDBMS gives you.
Really, your problem is that some of the things RDBMSes allow hurt when a database grows beyond a certain size. The solution is to not do the things that hurt, not ditch the things that RDBMSes do allow.
It's like complaining that your feet are sore if you walk 20 miles, then cutting off your leg to make it stop.
Regarding the tracking pixel approach: H.L. Mencken once wrote, "there is always a well-known solution to every human problem -- neat, plausible, and wrong." I cannot think of a situation to which this sentiment better applies.
I've never bought anything using Bing Cashback, but the balance of my account is $2080.06. Apparently, I placed two $1 orders on January 24th of this year, and spent another $104,000 on October 24th. Let's see how these transactions might have "accidentally" got credited to my account.
First, we need to try to figure out how transactions get into Bing Cashback. Microsoft posted some documentation here. The explanation of how a merchant reports transactions to Bing starts on page 20. Merchants have a few options for reporting, but Bing suggests using a tracking pixel. Basically, the merchant adds a tracking pixel to their order confirmation page, which will report the the transaction details back to Bing. The request for the tracking pixel looks something like this:
This implementation, while easy for the merchant, has an obvious flaw. Anyone can simulate the tracking pixel requests, and post fake transactions to Bing. I'm not going to explain exactly how to generate the fake requests so that they actually post, but it's not complicated. Bing doesn't seem to be able to detect these fake transactions, at least not right away. The six cents I earned in January have "cleared," and I'm guessing the remaining $2080 will clear on schedule, unless there is some manual intervention.
Even if Bing detects these fake transactions at some point in the future, the current implementation might have another interesting side effect. I haven't done enough work to say it with confidence, but a malicious user might be able to block another user's legitimate purchases from being reported correctly by Bing (I only tried this once, but it seemed to work). Posting a transaction to Bing requires sending them an order ID in the request. Bing performs a reasonable sanity check on the order ID, and will not post a transaction that repeats a previously reported order ID. When a store uses predictable order ID's (e.g. sequential), a malicious user can "use up" all the future order ID's, and cause legitimate transactions to be ignored. Reporting would be effectively down for days, causing a customer service nightmare for both Bing and the merchant.
Based on what I've found, I wouldn't implement Bing Cashback if I were a merchant. And, as an end user and bargain hunter, it does not seem smart to rely on Bing Cashback for savings. In our next blog post, I'll demonstrate some other subtle but important reasons to avoid using Bing Cashback.
Everything old is new again
on
The NoSQL Ecosystem
·
· Score: 5, Interesting
We didn't start with relationship databases. RDBMSes were responses to the seductive but unmanageable navigational databases that preceded them. There were good reasons for moving to relational databases, and those reasons are still valid today.
Computer Science doesn't change because we're writing in Javascript now instead of PL/1.
The last time this happened, the president blew the surplus and a trillion more besides on two wars of conquest.
What you don't understand comes in two parts: first, the government is not a business. The usual rules of accounting don't apply to the government. The government is not in the business of maximizing profit, but rather providing for the general welfare. Also, unlike any business, the government can print money. Sometimes that's good because it encourages economic activity.
Really, what's happening when we increase government spending isn't that we're withdrawing money from the national ATM, but rather that we're redistributing income from the rich to the middle and lower classes because government revenue OVERWHELMINGLY comes from the upper classes.
And that's a GOOD THING, because having a large wealth disparity leads to misery and revolution. No human being is worth 100,000 times what another is worth.
Second, healthcare isn't a cost, but an INVESTMENT: you're thinking about this is if we'd be spending a trillion in addition to the HCR bill. That's a lie.WE'LL BE SAVING FAR MORE ON HEALTHCARE OVERALL. WE'RE NOT LOOKING AT A $1 TRILLION BILL, BUT BILLIONS IN SAVINGS.
But your ideology prevents your looking at this in any way that doesn't benefit the GOP.
We can start with the modern-day robber barons who live south of 96th Street in Manhattan. Let's bring back the 90% income tax and eliminate the capital gains exception.
Not this conservation crap again. Simple mathematics shows that conservation is not a "solution" to our energy crisis. It's not even close.
Population increases exponentially, and power demands must therefore increase exponentially as well. If we add in quality-of-life improvements, power demand will increase even faster than population growth.
Now, on the other hand, all conservation can do is shave a constant factor off our current per-capita energy costs. It won't do anything for the asymptotic increases.
Arguing that conservation can solve our power problems is like saying that a really fast bubble sort can solve our sorting problems. What improvements you might make get overwhelmed by large exponential factors.
Come on now. This delusion common in my fellow Americans, that we're still the best in the world at certain things, is preventing us from managing our problems and actually rejoining the rest of the civilized West. Boasting is no substitute for infrastructure building.
Because the remedy for bad speech is more speech. Censorship is never justified. If a post gives you the vapors, stop reading it. A free society is one where it's perfectly fine to stand on a soapbox and make a fool of yourself. I'd like Slashdot to stay as free as possible.
You goddamn barbaric idiot: choice is an illusion when the market is so dysfunctional that there are no good choices. The health-care market is inherently dysfunctional because everyone's life is on the line. In economic terms, the demand curve is infinitely steep. That creates some really fucked-up market distortions.
We need government intervention to correct these inevitable distortions and ensure that everyone can have one of the basic necessities of life: being fucking alive.
What the fuck is wrong with your bent, twisted, and narcissistic brain that makes you think that everyone fending for himself is in any way befitting the most advanced society to ever inhabit this earth? What makes you think a world in which people die in the streets because they can't get healthcare, while overpaid morons with thousand-dollar smiles play golf and talk about bangin' the hot chicks at the Department of the Interior?
Why do savages like you think basic issues of social justice and the general welfare take a back seat to your idealized notions of efficiency and your wet dreams of being John Galt?
Go to fucking hell. Or better yet, get cast into abject poverty so you can see what your reprehensible policies are doing to the dignity of this nation and its once-great people, you fucking piece of shit.
So if I'm young and have one of those cheaper policies, then get liver cancer, no insurer will help me because I should have been able to predict the future? I'm just screwed, and should go die in the street like in your Dickinsonian fantasy?
Your year-long waiting period won't help if no insurer will cover me anyway.
How on earth is your system in any way superior to or more human than simply providing universal coverage for all the way every other fucking goddamn first-world nation does? Why is it that people like you fight kicking and screaming as we progressives try to drag this nation back into the civilization?
Frankly, I believe all you're hearing is your own confirmation bias. Wine tasters have the same problem. Your experiments were not controlled and couldn't tell you anything other than that you liked to think your expensive equipment was somehow worth it.
Okay, so insurance companies would still be able to deny you for pre-existing conditions? They would still be able to, as soon as you got sick, retroactively revoke coverage and use the excuse of minor clerical errors?
Think Fred might beat you to that promotion? Think your wife was a bit too friendly toward Bob at the party? Think Doctor Franzhaufer gave you an unfair grade? Don't like your new uppity neighbor?
Download child pornography to their computers. Sure, they'll whine about their "rights" and their "innocence", but who's going to believe a creepy pervert? Even if the faggy liberal court lets him off on some technicality, his career will be ruined, his friends will leave him, and he'll probably end up shooting himself.
You win, right? You showed him who's boss.
--
This country is losing all its marbles at once Among our other problems, we're engaging in a good old-fashioned witch hunt against child pornographers. No accusation is too specious, nor any policy too draconian. Never mind if due process rights are bulldozed, and people who've served out their sentences are branded for life and forced to live under overpasses. Never mind that the beachheld of practically all Internet censorship schemes has been combating child pornography. Never mind the culture of fear that can justify anything.
Of course MP3 compression loses information! That's the point! The trick is sacrificing only the information we don't actually hear. Most adults can't hear above 15-16k, and none of our important sounds are in that range anyway. (If they were, they'd be extremely annoying.)
In short, cutting off information about 15k makes no difference in how we experience the audio, much like a camera not recording ultraviolet doesn't affect a photograph.
I think you misunderstood my post, which I might have phrased differently. I said:
As far as I know, a double-blind study has never shown that anyone can hear the difference between 256kbit MP3s and the uncompressed original.
The positive claim here is that there is an audible difference. The lack of evidence for this claim, coupled with numerous studies, would be evidence of absence.
All joking aside, MP3's are going to sound horrible on any decent system.
At what bitrate? As far as I know, a double-blind study has never shown that anyone can hear the difference between 256kbit MP3s and the uncompressed original.
FLAC is useful for a different reason: it allows you to re-encode the original into a different format without experiencing quality degradation. It's useful to keep FLAC files archived somewhere, but for listening, using lossy compression at a decent bitrate is fine.
What's not very well-known is that the same thing happened to North America, almost splitting the continent in two. Lake Superior lies in the depression left by the failed North American rift.
All that use of this device shows is that bombs are rare enough in practice that strict security is unwarranted. It's certainly cheaper security theater than the TSA's sniffers and X-Ray machines. It works because the population believes it works. It'd never go over in the more-educated United States.
I don't think you've thought clearly about the problem.
If a JOIN is causing problems because it's causing too much non-local data access, then you're going to run into the same problem when you re-code the JOIN in the application. In fact, it might hit you worse because you won't benefit from the database's query optimizer.
The solution is clearly to improve locality of reference. You can do that by duplicating some data, denormalizing the database, and so on. But you can do all those things just as easily within a RDBMS, and without losing the other benefits a RDBMS gives you.
Really, your problem is that some of the things RDBMSes allow hurt when a database grows beyond a certain size. The solution is to not do the things that hurt, not ditch the things that RDBMSes do allow.
It's like complaining that your feet are sore if you walk 20 miles, then cutting off your leg to make it stop.
Regarding the tracking pixel approach: H.L. Mencken once wrote, "there is always a well-known solution to every human problem -- neat, plausible, and wrong." I cannot think of a situation to which this sentiment better applies.
We didn't start with relationship databases. RDBMSes were responses to the seductive but unmanageable navigational databases that preceded them. There were good reasons for moving to relational databases, and those reasons are still valid today.
Computer Science doesn't change because we're writing in Javascript now instead of PL/1.
The last time this happened, the president blew the surplus and a trillion more besides on two wars of conquest.
What you don't understand comes in two parts: first, the government is not a business. The usual rules of accounting don't apply to the government. The government is not in the business of maximizing profit, but rather providing for the general welfare. Also, unlike any business, the government can print money. Sometimes that's good because it encourages economic activity.
Really, what's happening when we increase government spending isn't that we're withdrawing money from the national ATM, but rather that we're redistributing income from the rich to the middle and lower classes because government revenue OVERWHELMINGLY comes from the upper classes.
And that's a GOOD THING, because having a large wealth disparity leads to misery and revolution. No human being is worth 100,000 times what another is worth.
Second, healthcare isn't a cost, but an INVESTMENT: you're thinking about this is if we'd be spending a trillion in addition to the HCR bill. That's a lie. WE'LL BE SAVING FAR MORE ON HEALTHCARE OVERALL. WE'RE NOT LOOKING AT A $1 TRILLION BILL, BUT BILLIONS IN SAVINGS.
But your ideology prevents your looking at this in any way that doesn't benefit the GOP.
We can start with the modern-day robber barons who live south of 96th Street in Manhattan. Let's bring back the 90% income tax and eliminate the capital gains exception.
Not this conservation crap again. Simple mathematics shows that conservation is not a "solution" to our energy crisis. It's not even close.
Population increases exponentially, and power demands must therefore increase exponentially as well. If we add in quality-of-life improvements, power demand will increase even faster than population growth.
Now, on the other hand, all conservation can do is shave a constant factor off our current per-capita energy costs. It won't do anything for the asymptotic increases.
Arguing that conservation can solve our power problems is like saying that a really fast bubble sort can solve our sorting problems. What improvements you might make get overwhelmed by large exponential factors.
Why would it be YouTube's job to enforce a patent license for the browser?
Come on now. This delusion common in my fellow Americans, that we're still the best in the world at certain things, is preventing us from managing our problems and actually rejoining the rest of the civilized West. Boasting is no substitute for infrastructure building.
Because the remedy for bad speech is more speech. Censorship is never justified. If a post gives you the vapors, stop reading it. A free society is one where it's perfectly fine to stand on a soapbox and make a fool of yourself. I'd like Slashdot to stay as free as possible.
Yep. We lost the terminology war a decade ago. It's time we deal with it.
You goddamn barbaric idiot: choice is an illusion when the market is so dysfunctional that there are no good choices. The health-care market is inherently dysfunctional because everyone's life is on the line. In economic terms, the demand curve is infinitely steep. That creates some really fucked-up market distortions.
We need government intervention to correct these inevitable distortions and ensure that everyone can have one of the basic necessities of life: being fucking alive.
What the fuck is wrong with your bent, twisted, and narcissistic brain that makes you think that everyone fending for himself is in any way befitting the most advanced society to ever inhabit this earth? What makes you think a world in which people die in the streets because they can't get healthcare, while overpaid morons with thousand-dollar smiles play golf and talk about bangin' the hot chicks at the Department of the Interior?
Why do savages like you think basic issues of social justice and the general welfare take a back seat to your idealized notions of efficiency and your wet dreams of being John Galt?
Go to fucking hell. Or better yet, get cast into abject poverty so you can see what your reprehensible policies are doing to the dignity of this nation and its once-great people, you fucking piece of shit.
So if I'm young and have one of those cheaper policies, then get liver cancer, no insurer will help me because I should have been able to predict the future? I'm just screwed, and should go die in the street like in your Dickinsonian fantasy?
Your year-long waiting period won't help if no insurer will cover me anyway.
How on earth is your system in any way superior to or more human than simply providing universal coverage for all the way every other fucking goddamn first-world nation does? Why is it that people like you fight kicking and screaming as we progressives try to drag this nation back into the civilization?
Use normal links.
Flash has a future here.
canvas and SVG are both better, more accessible options.
canvas is perfect for this.
When 1% of your population is in prison, you can be sure the vast majority are actually innocent. No culture is that wicked.
Frankly, I believe all you're hearing is your own confirmation bias. Wine tasters have the same problem. Your experiments were not controlled and couldn't tell you anything other than that you liked to think your expensive equipment was somehow worth it.
Okay, so insurance companies would still be able to deny you for pre-existing conditions? They would still be able to, as soon as you got sick, retroactively revoke coverage and use the excuse of minor clerical errors?
Fuck off.
Think Fred might beat you to that promotion? Think your wife was a bit too friendly toward Bob at the party? Think Doctor Franzhaufer gave you an unfair grade? Don't like your new uppity neighbor?
Download child pornography to their computers. Sure, they'll whine about their "rights" and their "innocence", but who's going to believe a creepy pervert? Even if the faggy liberal court lets him off on some technicality, his career will be ruined, his friends will leave him, and he'll probably end up shooting himself.
You win, right? You showed him who's boss.
--
This country is losing all its marbles at once Among our other problems, we're engaging in a good old-fashioned witch hunt against child pornographers. No accusation is too specious, nor any policy too draconian. Never mind if due process rights are bulldozed, and people who've served out their sentences are branded for life and forced to live under overpasses. Never mind that the beachheld of practically all Internet censorship schemes has been combating child pornography. Never mind the culture of fear that can justify anything.
At least we're getting those evil-doers, right?
Of course MP3 compression loses information! That's the point! The trick is sacrificing only the information we don't actually hear. Most adults can't hear above 15-16k, and none of our important sounds are in that range anyway. (If they were, they'd be extremely annoying.)
In short, cutting off information about 15k makes no difference in how we experience the audio, much like a camera not recording ultraviolet doesn't affect a photograph.
I think you misunderstood my post, which I might have phrased differently. I said:
The positive claim here is that there is an audible difference. The lack of evidence for this claim, coupled with numerous studies, would be evidence of absence.
At what bitrate? As far as I know, a double-blind study has never shown that anyone can hear the difference between 256kbit MP3s and the uncompressed original.
FLAC is useful for a different reason: it allows you to re-encode the original into a different format without experiencing quality degradation. It's useful to keep FLAC files archived somewhere, but for listening, using lossy compression at a decent bitrate is fine.
Universe Running Down, Scientists Claim.
Stop entropy change today!
What's not very well-known is that the same thing happened to North America, almost splitting the continent in two. Lake Superior lies in the depression left by the failed North American rift.
They also clean your fuel injectors and turn your enemies into newts!
All that use of this device shows is that bombs are rare enough in practice that strict security is unwarranted. It's certainly cheaper security theater than the TSA's sniffers and X-Ray machines. It works because the population believes it works. It'd never go over in the more-educated United States.