June 29, 2011 at 12:03 pm
I don't know licensing for crap. Because I don't know licensing, I always refer licensing questions to sales people & lawyers. Seems safer.
Regardless, can you do this thing, splitting up the databases? Yes. Should you do it from a technical standpoint... I'm inclined towards no because if you've grown this much, growing more is fairly likely. Reminds me of an Access app that was managed by a business unit a former company. They kept hitting Access limits and splitting the databases into tables and then splitting the tables into different databases until they were maintaining upwards of 12 files for this one set of data. Finally, the truth dawned, it's just going to keep growing and we're spending more time managing the files and how to query across them than we would be if we just moved to the appropriate platform.
If you're hitting limits on the platform you're on, move to the appropriate platform.
If you want legal advice, talk to legal teams, and yeah, suggesting what a license covers or not can be construed as (whether intended or not) as legal advice.
Problem is, all the advice we dole out here could be grounds for getting sued in the current US court system. And that could be construed as legal advice too.
"The credit belongs to the man who is actually in the arena, whose face is marred by dust and sweat and blood"
- Theodore Roosevelt
Author of:
SQL Server Execution Plans
SQL Server Query Performance Tuning
June 29, 2011 at 1:09 pm
First, please don't take MVP advice as legal or official in any way. We are people just like the rest of you, and are awarded the designation strictly because we do a lot of community interaction. If you have doubts, ping Microsoft Legal or Licensing about questions.
That being said. I don't believe that putting archive data into a separate database violates the terms of the SQL Express license. It legitimately can be seen as separate data, for a separate purpose, and if you reach a 4GB (or 10GB in SQL 2008 R2) in Express, that's a valid strategy. The limits are in place, AFAIK, to limit the size of an application and concurrency of use. If you can work within those limits, which include each database limited to 4GB (or 10GB), you should be fine.
Again, I am not a lawyer (IANAL), and not trying to play one on the forums. Get a specific answer for your situation from Microsoft since they are the ones that would bring legal action.
June 29, 2011 at 1:35 pm
I think you guys might be taking this legal question too far, I can say something is legal or not but unless I am a lawyer or represent myself as one by saying "I'm a lawyer", I can't really be sued for giving advice. Also even suing a lawyer would likely be tough if they can put forth an even marginal interpretation that falls within a given law or license.
Like anything else you read in the forums, they are opinions, plain and simple.
And Steve, if the TOS doesn't say that could you talk to your legal folks about adding it to be sure that everybody effectively signs off on the fact that just because you read it here doesn't make it gospel and if you chose to follow ANY piece of advice it is your fanny..
CEWII
June 29, 2011 at 1:43 pm
@steve-2, read the original question again. He is using the server to hold ±2 years of data in the main app for reporting reasons.
He's about to blow over the 4 GB ceiling.
He now wants to put some of the data in db1, some other in db2. In my mind this is not archiving, this is going around the 4 gb limit for a SINGLE purpose / application.
This is not a case of those orders / documents that have been long processed and that we are required by LAW we have to keep them around for the next trillion years even if we're never going to open them again. I could see a clear case for separation here but if it's all for reporting and that the core reports all use both (or n) dbs then I think this is going around the limitation instead of buying a license.
Of course at this point it is a little moot because the op could upgrade to 2008 R2, get 6 extra GB free and possibly never have to deal with this BS since he only wants 2 years of data.
June 29, 2011 at 1:53 pm
repicurus (6/29/2011)
I gave NO legal advice whatsoever - I'm honestly not sure how you could derived such a conclusion.There was NO action taken that would result in any legal standing; this is just hypothetical banter at this point.
As I recall, Craig raised the legal issue, not me.
Ayup.
I was trying in good faith to help someone and proceeded to get jumped on for what, exactly?
Neither you, nor Craig, have been able to point to specific restrictions that prohibit what I specifically suggested.
Kindly read exactly what I suggested and then honestly tell me if you think that implies any sort of violation.
Working on that, however, it may be they purposely rolled it up into the vague technical workaround clause, which gives them more leeway to decide who to abuse in these cases.
And that is all I asked for because I do NOT want to give bad advice to anyone, sir.
I appreciate that, this is appearing to spin a bit beyond our direct conversation on finding the specific clauses in the document, however. AFAIK, though, this workaround has always been illegal on their free products. (IANAL, etc etc).
And I'm still patiently waiting for that clarification or proof...
So, let me propose what I think is just a frightfully brilliant idea.
Perhaps one of the resident experts here could ASK someone at Microsoft or an MVP?
MVP's are contributors that have been recognized for their contributions, not necessarily their license expertise. The only place to know for sure will be MS directly, which I don't have the connections to not get a vague handwave from some paralegal for a few weeks until some lawyer actually looks and decides he's not answering random Joe Blow.
My life is crazy atm, I'll see if I can't DL the R2 Exp tonight and go file poking.
Never stop learning, even if it hurts. Ego bruises are practically mandatory as you learn unless you've never risked enough to make a mistake.
For better assistance in answering your questions[/url] | Forum Netiquette
For index/tuning help, follow these directions.[/url] |Tally Tables[/url]
Twitter: @AnyWayDBA
June 29, 2011 at 1:57 pm
paul.knibbs (6/28/2011)
Ninja's_RGR'us (6/28/2011)
Just my 0.02$... MS decided that 1 GB ram and 4 GB data was what they were prepared to give for free.10Gb data in SQL Express 2008 R2, as mentioned earlier.
I've seen this mentioned before, Paul, so I'm not picking on you. I can't seem to find the documentation that says this. However, I CAN find where it says even R2 Express is 4GB.
From http://www.microsoft.com/sqlserver/2008/en/us/express.aspx
Limitations
SQL Server Express supports 1 physical processor, 1 GB memory, and 4 GB storage
I know that it's hard to tell but that really is the R2 Express, check out the download link at the top.
Can someone point me at the 10GB documentation for R2?
Never stop learning, even if it hurts. Ego bruises are practically mandatory as you learn unless you've never risked enough to make a mistake.
For better assistance in answering your questions[/url] | Forum Netiquette
For index/tuning help, follow these directions.[/url] |Tally Tables[/url]
Twitter: @AnyWayDBA
June 29, 2011 at 1:58 pm
Ninja's_RGR'us (6/29/2011)
@Steve, read the original question again. He is using the server to hold ±2 years of data in the main app for reporting reasons.He's about to blow over the 4 GB ceiling.
He now wants to put some of the data in db1, some other in db2. In my mind this is not archiving, this is going around the 4 gb limit for a SINGLE purpose / application.
Disagree. This a fundamental change to the application. If I had designed it this way from the beginning is it any different? I think not.
The limit on Express isn't there to prevent you from designing an application that uses 32GB. It's there to make it hard to do so, or cumbersome, and prevent you from running a large application on the edition. If you re-architect your application to use multiple databases, that's valid.
June 29, 2011 at 2:23 pm
Steve Jones - SSC Editor (6/29/2011)
Ninja's_RGR'us (6/29/2011)
@Steve, read the original question again. He is using the server to hold ±2 years of data in the main app for reporting reasons.He's about to blow over the 4 GB ceiling.
He now wants to put some of the data in db1, some other in db2. In my mind this is not archiving, this is going around the 4 gb limit for a SINGLE purpose / application.
Disagree. This a fundamental change to the application. If I had designed it this way from the beginning is it any different? I think not.
The limit on Express isn't there to prevent you from designing an application that uses 32GB. It's there to make it hard to do so, or cumbersome, and prevent you from running a large application on the edition. If you re-architect your application to use multiple databases, that's valid.
So where's the line?
Let's say that I install 8 instances of sql express on a server with 8 cpus & 12 GB of ram so that they can all have 1 full core and 1 "unshared" GB of ram (let's assume vms in case you can't have multiple express instances). Then on each of those instances I install one 4 GB database that holds roughly 3 months of data for a total of 2 years.
Then every single report I write polls all those 8 servers on all the reports execution. This is all for a single application and a single client.
Now go in court againts any top MS lawer to defend that you didn't intend to work around the said limits in the EULA. I think you're pretty much DOA on that one.
What bugs me in the OP's case is : OK after x months / years in prod we are about to hit the 4 GB limit and our application is about to stop working.
Any statement / solution that is derived from that train of thought has the intent to go around the limit which IMHO breaks the EULA.
June 29, 2011 at 2:26 pm
Craig Farrell (6/29/2011)
Can someone point me at the 10GB documentation for R2?
http://www.microsoft.com/sqlserver/2008/en/us/editions.aspx
The line "DB Size" under Free Editions. That is pretty clear to me 10GB..
CEWII
June 29, 2011 at 2:42 pm
Elliott Whitlow (6/29/2011)
Craig Farrell (6/29/2011)
Can someone point me at the 10GB documentation for R2?http://www.microsoft.com/sqlserver/2008/en/us/editions.aspx
The line "DB Size" under Free Editions. That is pretty clear to me 10GB..
CEWII
Link saved, thank you. I keep seeing a mix of 4gb and 10gb when I look at express and I think it's some pages were updated for R2 and some weren't.
Never stop learning, even if it hurts. Ego bruises are practically mandatory as you learn unless you've never risked enough to make a mistake.
For better assistance in answering your questions[/url] | Forum Netiquette
For index/tuning help, follow these directions.[/url] |Tally Tables[/url]
Twitter: @AnyWayDBA
June 29, 2011 at 3:08 pm
All the links seem to say that the database limit is 4 GB (or 10 GB on some links), but I haven't seen anything that says your application has a maximum data limit or maximum database limit, so you should be able to have 2, 10, or more databases.
You could use synomyms or views to put data in other databases without having to re-program a lot of stuff, but you would not be able to have foreign key references to data in other databases.
Probably the easiest way to resolve the 4 GB/10 GB question is to just download and install 2008 R2 Express and see how big you can create a database.
In any case, it would probably be better to just upgrade to an edition of SQL Server that supports larger databases if you are hitting this limit.
June 29, 2011 at 3:28 pm
Michael Valentine Jones (6/29/2011)
All the links seem to say that the database limit is 4 GB (or 10 GB on some links), but I haven't seen anything that says your application has a maximum data limit or maximum database limit, so you should be able to have 2, 10, or more databases.You could use synomyms or views to put data in other databases without having to re-program a lot of stuff, but you would not be able to have foreign key references to data in other databases.
Probably the easiest way to resolve the 4 GB/10 GB question is to just download and install 2008 R2 Express and see how big you can create a database.
In any case, it would probably be better to just upgrade to an edition of SQL Server that supports larger databases if you are hitting this limit.
I tested express R2 and the limit is definitely 10 GB.
June 30, 2011 at 6:50 am
Interesting...4GB limit, 10GB on newest version of the same product.
And they might pay for Oracle and a conversion?
Some workarounds, even if legal, also cost money.
Think about the newer version, other resource limitations (CPU, memory), conversion to a different platform, etc.
Once you know the real costs, unless money in no object, make a decision.
Or at least you would be ready in case someone wants your input.
June 30, 2011 at 11:49 am
Ninja's_RGR'us (6/29/2011)
So where's the line?
Let's say that I install 8 instances of sql express on a server with 8 cpus & 12 GB of ram so that they can all have 1 full core and 1 "unshared" GB of ram (let's assume vms in case you can't have multiple express instances). Then on each of those instances I install one 4 GB database that holds roughly 3 months of data for a total of 2 years.
Then every single report I write polls all those 8 servers on all the reports execution. This is all for a single application and a single client.
Now go in court againts any top MS lawer to defend that you didn't intend to work around the said limits in the EULA. I think you're pretty much DOA on that one.
What bugs me in the OP's case is : OK after x months / years in prod we are about to hit the 4 GB limit and our application is about to stop working.
Any statement / solution that is derived from that train of thought has the intent to go around the limit which IMHO breaks the EULA.
Completely disagree. If you architect an app to use 8 databases, or 8 instances, you're OK. If I built an app that uses 8 instances on 8 machines, I'm not breaking a EULA. The product is built to limit database size, not data size.
You are, IMHO, completely misinterpreting the way the EULA is written.
June 30, 2011 at 8:35 pm
I'm inclined to agree with Steve on this one -people are reading too much into that statement in the license. But I'm not a lawyer, and if I were planning to do this I would clear it with MS licensing people first - MS makes money by keeping its customers happy, so the licensing people are going to be helpful, not just ignore you.
I would regard it as a natural evolution of the system to go over to a multi-DB implementation: probably one DB for each financial year. The driving force for this wouldn't be the DB size limit (because I wouild make the change whether I was on express edition, standard edition, or enterprise edition) but backups. Once I have 5 years data each backup is rather big if its all in one DB. But if the unchangeable history is secure in several 1-year read-only databases of which I have multiple copies on and off site I don't need to back up that part of the data - only current year information in the currently writeable database, so backups are smaller and faster.
My experience of dealing with various vendors' software licensing people (with two exceptions - neither of them Microsoft) is that they've always been helpful and friendly and told me I can do things that an over-enthusiastic reading of the license might suggest I couldn't, and happily confirmed it for me in writing. That hasn't meant that I didn't pester them again next time I was less than 100% certain about the meaning of a license, but it has meant that I have several times given things the go-ahead within the company before getting confirmation from the vendor.
So my view is that when there's even the slightest doubt you should ask the licensor to explain whether what you intend to do is allowed or not; almost always you will get confirmation that it is allowed (the confirmation will sometimes include a statement that they are making a special one-time-only concession for you, and that they don't guarantee to repeat it if you want to do it again in the future because license terms for the next release or version of the product may be different and/or because their policy on allowing such concessions may have changed). There is a risk that they will tell you "no, you can't do that"; but it's better to know that and act accordingly than to end up in court because you didn't bother to check.
Tom
Viewing 15 posts - 46 through 60 (of 60 total)
You must be logged in to reply to this topic. Login to reply