Re: License for Google's patent(mail-archives.apache.org)
mail-archives.apache.org
Re: License for Google's patent
http://mail-archives.apache.org/mod_mbox/hadoop-general/201004.mbox/%[email protected]%3E
2 comments
Didn't Google actually introduce mapreduce into the mainstream and thus Hadoop is just an open-source clone of Google's system ?
Given that patents are a way of live in the US, why wouldn't Google patent this ? Would you prefer someone else instead ?
On a related note -- how many patents does the Apache Foundation own ?
Given that patents are a way of live in the US, why wouldn't Google patent this ? Would you prefer someone else instead ?
On a related note -- how many patents does the Apache Foundation own ?
Mapping and reducing have been part and parcel of programming for the longest time. Packaging the concept in a framework and patenting it should not have been possible.
It's not like they just patented the method signatures map(sequence) and reduce(sequence) -- there's a global-scale distributed filesystem, the method of dispatching tasks so they have high odds of node-locality or rack-locality to the data they're operating over, all sorts of redundancy and failover necessary to run clusters where machines fail every minute by virtue of having so many of them..
I mean I'm as against software patents as the next guy but this isn't the most trivial one I've seen. Glad they licensed it to ASF.
I mean I'm as against software patents as the next guy but this isn't the most trivial one I've seen. Glad they licensed it to ASF.
In their original map reduce documentation they explicitly state they were inspired by programming languages containing map/reduce functionality.
Adding all kinds of bells and whistles to it does not make it 'novel'.
Redundancy, failover, node locality and rack locality have all been done many times over in the past, maybe not in that context but that is just a combining of concepts.
To be awarded a patent you should at least do something original.
Adding all kinds of bells and whistles to it does not make it 'novel'.
Redundancy, failover, node locality and rack locality have all been done many times over in the past, maybe not in that context but that is just a combining of concepts.
To be awarded a patent you should at least do something original.
If someone builds a better mousetrap, it's patentable. And it's still a mousetrap. Combining a bunch of existing concepts in a new way is the basis for the patent system. It's the only way to progress: iteration.
Putting that aside, what Google did with MapReduce was original. There are a number of challenges that each of the individual concepts never had to overcome, which required new, unique concepts to be introduced to make the system work.
Putting that aside, what Google did with MapReduce was original. There are a number of challenges that each of the individual concepts never had to overcome, which required new, unique concepts to be introduced to make the system work.
> If someone builds a better mousetrap, it's patentable.
Only if the mechanism is novel. And that's the problem here, the mechanism is identical, just larger.
Running map/reduce on an array or on a petabyte data set does not change the fundamental method at all. There are just countless implementation details to be taken care of, but any competent programmer could extend the original concept of map/reduce to that level.
Only if the mechanism is novel. And that's the problem here, the mechanism is identical, just larger.
Running map/reduce on an array or on a petabyte data set does not change the fundamental method at all. There are just countless implementation details to be taken care of, but any competent programmer could extend the original concept of map/reduce to that level.
Running map/reduce on an array or on a petabyte data set does not change the fundamental method at all.
It very much changes the fundamental method. It takes something that was once impossible given all existing techniques and technologies, and makes it possible. The new techniques and technologies are at the core of the patent.
any competent programmer could extend the original concept of map/reduce to that level.
Patently false. At the very least, you need a decent sized team of very competent programmers, DBAs, and system administrators to architect and build the system, and another programming test team to ensure that it is reliable. And then you'd only have a working prototype. This isn't nearly as trivial as you make it out to be. Hadoop is evidence of that, it's going on 4 years and four thousand changesets, with changes by over 50 people from Apache, Yahoo! and the general public. Its source directory (for only the common project, not including the HDFS) clocks in at 328 KLOC.
MapReduce wasn't some little side project hack-job.
But then again, you could probably code up Stack Overflow in a weekend, couldn't you?
It very much changes the fundamental method. It takes something that was once impossible given all existing techniques and technologies, and makes it possible. The new techniques and technologies are at the core of the patent.
any competent programmer could extend the original concept of map/reduce to that level.
Patently false. At the very least, you need a decent sized team of very competent programmers, DBAs, and system administrators to architect and build the system, and another programming test team to ensure that it is reliable. And then you'd only have a working prototype. This isn't nearly as trivial as you make it out to be. Hadoop is evidence of that, it's going on 4 years and four thousand changesets, with changes by over 50 people from Apache, Yahoo! and the general public. Its source directory (for only the common project, not including the HDFS) clocks in at 328 KLOC.
MapReduce wasn't some little side project hack-job.
But then again, you could probably code up Stack Overflow in a weekend, couldn't you?
> But then again, you could probably code up Stack Overflow in a weekend, couldn't you?
Thanks for playing.
Thanks for playing.
> > If someone builds a better mousetrap, it's patentable.
>Only if the mechanism is novel.
Actually, no. It's perfectly reasonable to patent using old mechanisms to do new things or to do old things differently.
For example, appropriate to patent using a lever to do something that no one had thought to do with a lever before, despite the fact that levers are one of the oldest mechanisms.
Note that new mechanisms don't come along very often. Much of what we get are new uses or new applications.
>Only if the mechanism is novel.
Actually, no. It's perfectly reasonable to patent using old mechanisms to do new things or to do old things differently.
For example, appropriate to patent using a lever to do something that no one had thought to do with a lever before, despite the fact that levers are one of the oldest mechanisms.
Note that new mechanisms don't come along very often. Much of what we get are new uses or new applications.
"Inspired by", what's that mean? Even the most novel and patentable innovation surely has inspirations.
I already said I'm against software patents -- but this is one of the worse cases to back up the viewpoint, they actually invent something here.
I already said I'm against software patents -- but this is one of the worse cases to back up the viewpoint, they actually invent something here.
That's prior art. Even the names are the same. 'on a network' or 'on a cluster' or 'more reliable' or 'much larger' are not worthy of patenting, they are incremental extensions and not inventions.
The first time someone did map/reduce, the first time someone did quicksort, that was invention. Doing it larger or through some other variation does not make it an invention.
Anyway, you seem to be set on your position that they invented something, I really think they didn't. Map/Reduce to me is actually a poster child for a very bad software patent.
The first time someone did map/reduce, the first time someone did quicksort, that was invention. Doing it larger or through some other variation does not make it an invention.
Anyway, you seem to be set on your position that they invented something, I really think they didn't. Map/Reduce to me is actually a poster child for a very bad software patent.
Well, just to explain my point of view better, you could rephrase aviation as just moving stuff "through the air" and "faster" -- hey we've had transportation for thousands of years! And we had combustion engines before they were ever used to power an airplane.
I'll admit that it's a fuzzy line and you can make a case for this particular thing to be on either side of it -- but having components that are previously established isn't enough IMO to definitively say "nothing was invented".
I'll admit that it's a fuzzy line and you can make a case for this particular thing to be on either side of it -- but having components that are previously established isn't enough IMO to definitively say "nothing was invented".
On a multi-processor system:
cat somefile.txt | grep sometext | cut -d ' ' -f 1 | sort | uniq -c | wc
Is technically in violation of the map reduce patent, it is that broad.
Go read the thing, seriously it is very interesting reading.
The meat is this section:
"A large-scale data processing system and method includes one or more application-independent map modules configured to read input data and to apply at least one application-specific map operation to the input data to produce intermediate data values, wherein the map operation is automatically parallelized across multiple processors in the parallel processing environment. A plurality of intermediate data structures are used to store the intermediate data values. One or more application-independent reduce modules are configured to retrieve the intermediate data values and to apply at least one application-specific reduce operation to the intermediate data values to provide output data."
cat somefile.txt | grep sometext | cut -d ' ' -f 1 | sort | uniq -c | wc
Is technically in violation of the map reduce patent, it is that broad.
Go read the thing, seriously it is very interesting reading.
The meat is this section:
"A large-scale data processing system and method includes one or more application-independent map modules configured to read input data and to apply at least one application-specific map operation to the input data to produce intermediate data values, wherein the map operation is automatically parallelized across multiple processors in the parallel processing environment. A plurality of intermediate data structures are used to store the intermediate data values. One or more application-independent reduce modules are configured to retrieve the intermediate data values and to apply at least one application-specific reduce operation to the intermediate data values to provide output data."
I'm sure the patent is overly broad, as broad as the USPTO's let Google's lawyers get away with.
I'm just saying that what they've implemented is qualitatively different and an invention compared to your clever shellscripting, even though you can call them "sort of the same thing" from a sufficiently philosophical point of view.
I'm just saying that what they've implemented is qualitatively different and an invention compared to your clever shellscripting, even though you can call them "sort of the same thing" from a sufficiently philosophical point of view.
C* and zeta lisp both supported parallel map reduce at the language level.
At the language level, yes. At the on-computers-all-over-the-world-on-petabyte-datasets level? No. That was Google.
That's like those 'on the internet' patents then. Only this time it is the 'on a cluster' variation. Take an existing scheme, implement it on a cluster, instant market lock.
Yeah, it's not that simple. You're talking about one of the biggest scaling problems ever addressed. You have to figure out how to shard the data, how to deal with failures and inconsistencies, how to return results from terabytes of data, and how to make it all fast enough that your search results come back in less than a second.
Map-reduce isn't used in search queries only for indexing.
Apache owns zero patents.
Then they aren't doing a great job given they did choose to create the foundation in the US. When in Rome...
On the other hand, ASF is receiving major tax-reducable donations from US companies. The ASF is not in the patent business.
You can't be seriously suggesting that Google, a multinational corporation, cease to apply for software patents? The problem isn't that people are applying for them, it's that they're being granted.
Or as they say, don't hate the player, hate the game.
Or as they say, don't hate the player, hate the game.
About 15 years ago I was in a position to apply for a patent on the 'streaming webcam', live video over the internet. I found a way to stream video to netscapes new browser ('Navigator'), without using plug-ins.
I expressly did not do that because to me it was an obvious extension of being able to do 'stills'. After all, simply making it move does not require much ingenuity, merely a couple of nights of hard work.
Looking back I'm happy I didn't do that. I refused to 'play the game', even if it could have made me a boatload of money I still stand by that decision.
Whether google is a multinational or a one man shop, to apply for a patent simply because of scaling an existing algorithm up to 'cluster size' in my opinion is not the nicest thing. For them to 'grant' licenses like these and then to receive the kind of groveling gratitude present in that email in return is really disgusting.
I expressly did not do that because to me it was an obvious extension of being able to do 'stills'. After all, simply making it move does not require much ingenuity, merely a couple of nights of hard work.
Looking back I'm happy I didn't do that. I refused to 'play the game', even if it could have made me a boatload of money I still stand by that decision.
Whether google is a multinational or a one man shop, to apply for a patent simply because of scaling an existing algorithm up to 'cluster size' in my opinion is not the nicest thing. For them to 'grant' licenses like these and then to receive the kind of groveling gratitude present in that email in return is really disgusting.
It was good of you, but you have less of a risk of being sued than Google does. They need a war chest to negotiate with.
> you have less of a risk of being sued than Google does.
In fact, a company called Acacia tried just that. When they found out the parent company was European they lost interest.
In fact, a company called Acacia tried just that. When they found out the parent company was European they lost interest.
So you have less of a risk than Google does?
I think so. European courts are generally (for the moment, at least) not too impressed by software patents, you'd have to have an iron clad one to make it stnad up in court here.
We don't have the equivalent of an 'eastern Texas district', where the courts are favorably impressed by anything that carries a patent office stamp.
We don't have the equivalent of an 'eastern Texas district', where the courts are favorably impressed by anything that carries a patent office stamp.
At a certain point one needs to refuse to play an unethical game. Until then, everyone blames everyone else for their own unethical behavior.
Unfortunately this is only a strategy you can play before you float. Once the company ultimately relies on market value your primary strategy has to be to compete and you can only do that by making the playing field you chose to play on as level as possible.
I agree, to a point. This is the world we live in, and we all have to survive, preferably thrive.
Going along with wrongdoing, just because that's the way you make it in this world, is a reasonable strategy, sure. But when things are bad enough there is a time for ethical players to sacrifice for a greater purpose.
Each person, including board members and executives, is responsible for the ethics of their own actions and inaction. The "everyone was doing it" argument doesn't hold all that much water when it comes down to it. Everyone is doing a lot of things that I still must make a sacrifice of some sort to choose not to do due to ethics. My decisions are about who I am, not about who they are.
Going along with wrongdoing, just because that's the way you make it in this world, is a reasonable strategy, sure. But when things are bad enough there is a time for ethical players to sacrifice for a greater purpose.
Each person, including board members and executives, is responsible for the ethics of their own actions and inaction. The "everyone was doing it" argument doesn't hold all that much water when it comes down to it. Everyone is doing a lot of things that I still must make a sacrifice of some sort to choose not to do due to ethics. My decisions are about who I am, not about who they are.
[deleted]
In this particular case, I believe "everyone is doing it" is a legitimate argument for participating in the patent system as-is. It's not the role of the patentee to decide what is patentable (or what should be patentable), it's the role of the legislative and judicial branch. Given a certain set of patentable concepts, it is the right and almost duty of those who come up with inventions by those definitions to participate in the patent process.
The most appropriate, ethical, behavior is to pursue patents within the current system while simultaneously working towards a better system whereby those patents would be deemed invalid. After all, this puts you in the position to give away the patents you've been granted for free, as Google has, if you truly feel they should not have been given to you in the first place.
The most appropriate, ethical, behavior is to pursue patents within the current system while simultaneously working towards a better system whereby those patents would be deemed invalid. After all, this puts you in the position to give away the patents you've been granted for free, as Google has, if you truly feel they should not have been given to you in the first place.
Not really. Pinch & Zoom is a very basic gesture that any multitouch screen devices need. Then Apple came & just destroyed the game...
Indeed, however, I suppose another company could have applied for and gotten the same patent and started trolling with it.
But that's not really an excuse. Bogus patents should not be applied for and when they are applied for they should not be awarded. Applying for them on the grounds that someone else will do it is not a valid reason, and google is not exactly the most transparent company in the world. If they're so generous they should donate the patent to a neutral party.
Most - if not all - software patents are bogus.
Most - if not all - software patents are bogus.
Most - if not all - software patents are bogus.
Many years ago I saw a lawyer say that he had examined a random sample of IBM's software patents, and estimated that about 70% of them wouldn't stand up in court. And it was his belief that IBM had better patents than most companies out there. The problem was, of course, that if they drop a stack of 15 patents on you neither you nor they know what they will get to stick, but they will definitely get you with something.
And why not file those patents? Their main purpose is to be an unused threat, and they are threatening whether or not they are used.
Therefore even by the very relaxed standards the that US legal system does, most software patents are bogus. If you hold a higher intellectual standard, then it isn't hard for that 70% to become 100%, or close enough to it to make the exceptions negligible.
(There is hope that Bilski will restore some sanity to the US system.)
Many years ago I saw a lawyer say that he had examined a random sample of IBM's software patents, and estimated that about 70% of them wouldn't stand up in court. And it was his belief that IBM had better patents than most companies out there. The problem was, of course, that if they drop a stack of 15 patents on you neither you nor they know what they will get to stick, but they will definitely get you with something.
And why not file those patents? Their main purpose is to be an unused threat, and they are threatening whether or not they are used.
Therefore even by the very relaxed standards the that US legal system does, most software patents are bogus. If you hold a higher intellectual standard, then it isn't hard for that 70% to become 100%, or close enough to it to make the exceptions negligible.
(There is hope that Bilski will restore some sanity to the US system.)
I am not suggesting it is valid or acceptable behavior. I'm just trying to point out that "It could be worse" :)
No large company can afford to ignore IP these days, partly because they might need a defensive portfolio to negotiate with, when another large company sues them. Look at Apple & Nokia.
What does that mail really mean? Does the patent grant extend to end users of Hadoop, or just the Apache foundation? What about users who patch their Hadoop? Is it revocable?
I'm sure there is good will here, but the system is disgusting.
I'm sure there is good will here, but the system is disgusting.
Google granted the license under the Apache License terms, and through distribution of Hadoop these extend to the end users of Hadoop under the very same Apache license. (AFAIUI, IANAL)
We should be happy that google grants a license for something they shouldn't have had a patent on in the first place?
Continued generosity indeed.