I'm developing a product that will be sold to others. If I go with RavenDB, then it seems my choices are:
A) Go with the embedded product for the OEM license.
B) Require my customers to purchase their own server license.
There is no option to distribute the server edition? Maybe through a reseller or ISV program?
Also - Let's say I have two people developing the product today, so I buy two developer oem licenses and start selling my product. Next month I hire another developer to help out. I have to go back and buy more licences? What if he's only there for a short-term contract?
I do like the per-developer model in that larger software houses pay more for the product than smaller ones, but it needs to be qualified in some way. What type of developers do I count? Any working on my product that uses raven? Or just those working on the raven-related pieces? Does my build server need it's own license?
Some of these things will have to be flushed out before we can make a decision about using Raven or not. It's not really a matter of what the price is (within reason) - it's more about the licensing model.
Keep up the great work!
Thanks,
Matt
OEM: Good to see the renewal price beeing lower than the full price again.
Although I'm glad to already have an OEM license for the old price. The
new one still feels (!) a little bit high. For 1599/999 it would be the
most expensive thing in my toolbox. As a "long-time RavenDB user", I know
that it's worth the money but as a new user, 1599 makes the decision a
little bit harder.
To Matt's question about the per/developer licenses: There's no sane way
to technically ensure/verify this. Oren simply has to trust it's
customers. Personally, if I would e.g. hire someone for a month to help me
out on the GUI, I wouldn't care about buying another RavenDB license. For
a developer that joins the project for a longer term I would.
Maybe it would be a good idea to extend the OEM license to:
1599 for the first developer and 999 for each additional developer,
renewal for 999 per developer per year?
Basic/Standard/Enterprise: These mainly target the Web-App business. I
must say, that I don't have very much experience in this area. Whenever I
need to do a tiny Web-App, I usually build this with Rails and put it on a
Linux-box. Anyways: The licensing model is somehow "complicated", which
kinda makes this contrary to what RavenDB technically stands for. Limiting
the database to only use some cores/threads/memory/disk-space seems kinda
odd to me. Why not just limit the number of docs and the use of things
like sharding or replication?
Besides all this, one thing that maybe isn't really promoted enough:
Whatever license you buy - you get RavenDB with the full source code!
Even better: You have to pay NOTHING to get RavenDB without any
restriction and with the full source code, because it's Open Source!
You can play around with RavenDB, build a test spike, create a demo app
for your boss without spending a single dime!
Tobias
.m
njy
http://www.Taglocity.com Tags: RavenDB
> Thoughts about that? Maybe we can do two levels of OEM here.
> One that is cheap around the embedded only mode.
> One that is more expensive around the server option as well.
OEM/embedded + OEM/server - Sounds good to me. Maybe with an option to
extend/upgrade from embedded to server. Right now I'm happy with the
embedded RavenDB, but I can imagine scenarios where a central RavenDB
server + a bunch of rich client apps would make sense. Even an
OEM/embedded for a local database + a central database for stock tracking,
managing discount coupons and so on would be a possible scenario.
Another thing I mentioned previously: Even with OEM/embedded I would like
to be able to have remote access via Raven.Studio. This can be really
helpful for maintenance.
And another question: Right now my application is purely standalone. In
the future I need to somehow connect these applications. (e.g. starting a
sale on one cash register, closing it on another). One way to do this
might be master/master replication. Would this still be covered by the
OEM/embedded license?
Tobias
- Open Source Project of any type: Free
- Development Work: Free
- Hobby Close Source Project: RavenDB Basic, RavenDB Standard
- One off Small/Commercial Application/Website: RavenDB Basic
- Enterprise Market ISV (Server App): OEM/Server, OEM/Embedded
- Consumer ISV: OEM/Embedded
- SaaS ISV: RavenDB Enterprise, Scale Out Option
- IT Department: RavenDB Standard, RavenDB Enterprise, Scale Out Option
On 29.02.2012 11:03, Oren Eini (Ayende Rahien) wrote:OEM/embedded + OEM/server - Sounds good to me. Maybe with an option to
> Thoughts about that? Maybe we can do two levels of OEM here.
> One that is cheap around the embedded only mode.
> One that is more expensive around the server option as well.
extend/upgrade from embedded to server. Right now I'm happy with the
embedded RavenDB, but I can imagine scenarios where a central RavenDB
server + a bunch of rich client apps would make sense. Even an
OEM/embedded for a local database + a central database for stock tracking,
managing discount coupons and so on would be a possible scenario.
Another thing I mentioned previously: Even with OEM/embedded I would like
to be able to have remote access via Raven.Studio. This can be really
helpful for maintenance.
And another question: Right now my application is purely standalone. In
the future I need to somehow connect these applications. (e.g. starting a
sale on one cash register, closing it on another). One way to do this
might be master/master replication. Would this still be covered by the
OEM/embedded license?
Tobias
What type of developers do I count? Any working on my product that uses raven? Or just those working on the raven-related pieces? Does my build server need it's own license?
Although the one indexing thread is a little bit disappointing.
- Development Work: Free
Thoughts about that? Maybe we can do two levels of OEM here.One that is cheap around the embedded only mode.One that is more expensive around the server option as well.
Njy,A simplified licensing story makes my life simple as well, trust me on that.I would much rather be focused on optimizing the indexing code than thinking about pricing strategies.That said, there is a reason why we do those licensing break downs. We are trying to offer the best balance between feature and price for people.
On Wed, Feb 29, 2012 at 4:43 AM, njy
Thanks for the update Oren, appreciated.
I agree that these kinds of licenses can be difficult or impossible to enforce, but I think ultimately they work better than per-instance licensing. Especially if you are a dependency in someone else’s project.
In our case, we are an ISV that is doing both traditional licensed deployments and SaaS hosted models for our product. We have traditionally used SQL Server, which meant that for hosted we would buy our own servers, and for licensed we would require the customer to have a SQL Server. I think you can do that for SQL, because many people already have SQL Server licensing agreements with Microsoft, and smaller customers always have the option of SQL Express.
If we were to do the same thing with Raven, our customers wouldn’t have the first clue about where to begin. We would have to provide them their Raven license. If we had to tell them to go purchase their own Raven license, it would make selling the product very difficult. Now, if we have royalty free distribution for the embedded product, then it’s not an issue for smaller customers. But it would be equally important to be able to distribute Raven with our software even with the server edition for larger customers. Perhaps the license for that is more expensive on our part, or perhaps it’s not “royalty-free”, but we increase the cost of our software by some amount to include the cost of the Raven license. Either would be acceptable.
The big question is how much performance can we expect from the embedded version vs. the server version? Where do we draw the line from a licensing standpoint? It would be much easier if this was just a technical question of whether or not you wanted the http layer or the direct connection. The licensing issue makes it more complicated.
The absolute best situation from our perspective would be to have one larger annual fee for the ability to deliver either embedded or full server with our solution, royalty-free. We would love to pay this fee per-retail-product, rather than per-developer. Perhaps we could key the raven instance so that it only worked with our software. That would prevent the end-user from getting a completely free license of Raven. Perhaps this lines up with your business model, perhaps not. We would be willing some level of compromise.
That would be for the licensed, deployed version of our software. For our SaaS model, we’d pay separately per instance for our own instances that we use to host the SaaS version.
With regards to per developer licenses. The way it currently works in my head is that if you have a team of people working on a project using RavenDB, everyone working on the code that runs in the same process as the RavenDB code will need a license.
On Thursday, March 1, 2012 4:36:20 PM UTC-5, Oren Eini wrote:
With regards to per developer licenses. The way it currently works in my head is that if you have a team of people working on a project using RavenDB, everyone working on the code that runs in the same process as the RavenDB code will need a license.
That's such a silly an arbitrary delimitation. What about UX developers that write pure html/css? They would need licensed under that definition. This restriction is also meaningless and arbitrary, all it requires to overcome this is to create the database sit behind a web service and make the client application call the web service. Microsoft even has explicit provisions in the sql server licensing about this, they refer to it as multicasting.
You can't buy 1 CAL for sql server then put a web service on top of it and then use the webservice to let infinite users access it. With this being in regards to licensing model per developer, you don't have way to put a multicasting limiter (that wouldn't be absurdly prohibitive).
The only proper requirement is do you touch EVER touch one or more of the following: IDocumentSession, AbstractIndexCreation, Bundles/Triggers, Management studio, possibly some other facets etc. If they're not touching those, they're not dealing with RavenDB.
Hi guys,This is intended as a summary of the previous thread (http://groups.google.com/group/ravendb/browse_thread/thread/f737cb1fe1420dc6/5df1d12137ab4186?)
What if I buy two Embedded licenses - can I then use two processes? :) Why does the Embedded version even have UseEmbeddedHttpServer if nothing can use it?
What if I buy two Embedded licenses - can I then use two processes? :) Why does the Embedded version even have UseEmbeddedHttpServer if nothing can use it?
For the sake of keeping my product install ultra simple I'd really like to stick to embedded at first. It looks like I am now faced with hosting ASP.NET within my Windows Service, or modifying my installer to auto-install RavenDB Server, just because of a licensing gap...Also, any idea what the ballpark price for RavenDB Server will be? $1,599, $15,999?