8

It seems Neo4J High Availability is only available for the Enterprise edition which is paid- is there another alternative to achieve replication without that module? (i.e. without cost). Thanks for any help!

tstorms
  • 4,941
  • 1
  • 25
  • 47
DevD
  • 1,201
  • 2
  • 12
  • 20
  • 1
    It's not paid - it is OSS and licensed under the AGPL. How you are you using it? – Peter Neubauer Jun 24 '13 at 16:17
  • Actually i am using it as a datastore for a mobile app which would not be opensource, basically for arriving at different levels in people relationships. So i guess it comes under commercial licensing as per Neo4j licensing protocol. Please correct me if i am wrong. Thanks! – DevD Jun 25 '13 at 05:09
  • there is no such thing like "HA without cost"s. If you implement HA/replication on your own, you have high internal costs. If you rely on existing solutions you'll have some external costs. – Stefan Armbruster Jun 25 '13 at 06:23
  • Thanks Stefan. What tools(opensource) can i use to implement the HA/replication on my own to get started with. Can you please guide me, i am just a novice. – DevD Jun 25 '13 at 08:38
  • have you seen orientdb ? It is free and achieves high availability by using hazelcast – Nulik Jul 21 '13 at 20:44

2 Answers2

3

Update:

This answer has changed. Neo4j is now open core, so the Enterprise code is no longer dual-licensed - only the commercial license option remains.

You can find more details here: https://neo4j.com/open-core-and-neo4j/

Original Answer:

Enterprise is available as quid-pro-quo - if you put your code out under an open source license, then you get access to the open source Neo4j Enterprise free of charge. However, if you are closed source, Neo Tech charges a license fee. This fee is determined by your needs and your ability to pay - if you are a small outfit with no venture capital, it's still free, and then the licensing cost increases as your ability to pay back to the development of Neo4j increases.

If your application is open-source as you mention, then you are free to use Neo4j Enterprise without paying for it, simply download it at neo4j.org.

Jacob Davis-Hansson
  • 2,603
  • 20
  • 26
  • Yes i saw this some time back on the neo4j website....It wasnt there earlier so i had raised a query. but Thanks for the same! – DevD Apr 07 '14 at 11:18
  • Lol, sorry, I had the wrong tab open, didn't see how old this question was. Sorry about that. Thanks for the "answered" anyway :) – Jacob Davis-Hansson Apr 07 '14 at 11:22
  • @JacobDavis-Hansson any idea how to get/build the AGPL for version > 3.2 . They stopped packaging enterprise version now with them. – Himanshu Jain Oct 24 '18 at 21:07
  • How to use AGPL for veersion 3.5? Is it necessary to make our code public? By code you mean the database as well as queries? – pragya18nsit Feb 20 '19 at 07:59
  • @pragya18nsit I'm afraid this answer was out of date, the licensing has changed since I wrote it. I've updated the answer to reflect the current state. – Jacob Davis-Hansson Feb 21 '19 at 13:48
0

Actually Neo4j Enterprise is free under the open source AGPLv3 license.

Neo4j Inc can't modify the terms and still call it AGPL.

If you use Neo4j Enterprise as a server (like most people do) and communicate with it via its REST API or any of the official BOLT drivers then you never trigger AGPL's copyleft requirements.

In other words - the software that connects to it does not have to be open sourced.

You can download Neo4j Enterprise open source licensed binaries up to version 3.2.x from dist.neo4.org. The links for the windows and unix packages are below. (Replace the version number for specific versions)

http://dist.neo4j.org/neo4j-enterprise-3.2.8-windows.zip

http://dist.neo4j.org/neo4j-enterprise-3.2.8-unix.tar.gz

If you want Neo4j Enterprise 3.3.0 and on under it's free open source license, then you can build them from source like we do for our US government clients, or just grab them from our free distribution site.

Check out the blog post if you want to understand why this has happened.

https://blog.igovsol.com/2017/11/14/Neo4j-330-is-out-but-where-are-the-open-source-enterprise-binaries.html

John Mark
  • 355
  • 1
  • 5
  • You're thinking of the GPL, the Affero GPL explicitly exists to cover the over-the-network loophole you mention. See https://stackoverflow.com/questions/2127246/difference-between-affero-gpl-and-gplv3 or the first sentence in the license preamble here: https://www.gnu.org/licenses/agpl-3.0.en.html – Jacob Davis-Hansson Dec 06 '17 at 13:24
  • 1
    I am actually talking about AGPL, not GPL. AGPL does address the 'distribution' loophole that GPL does not have. However, you have to remember that we are talking about 'distribution' of a 'derivative work'. Neo4j Enterprise is run as a server or cluster of servers in an enterprise architecture. You only interact with it via the REST API or the official bolt drivers, all of which are Apache licensed. Any software communicating with it does not trigger GPL's copy-left requirements and does not have to be open sourced. – John Mark Dec 06 '17 at 22:49
  • 1
    MongoDB has a post on AGPL which describes it great: https://www.mongodb.com/blog/post/the-agpl "Note however that it is NOT required that applications using mongo be published. " – John Mark Dec 06 '17 at 22:53
  • 1
    Finally, Here is an analogy that may make sense. Imagine you develop a new proprietary web browser. If someone uses your browser to go to a website who's content is AGPL licensed, this interaction does trigger AGPL's copyleft requirements requiring you to release the code of your propriatary browser. Also - if you think of open source apps like drupal, then that is a good example of why AGPL is here. I hope this all helps! – John Mark Dec 06 '17 at 22:54
  • Just an extract of the readme on the github repo of neo4j : "The Enterprise edition is available under the AGPLv3 license for open source projects otherwise under a commercial license" – logisima Dec 06 '17 at 23:17
  • @JohnMark, this is getting somewhat far into legal advice, which I'm not in a place to give. I'll make two notes and leave this at that: One, your browser analogy is true, but not because the AGPL allows that, but because accessing a public website does not constitute agreeing to a contract you don't know about until you've downloaded it, for obvious reasons. – Jacob Davis-Hansson Dec 07 '17 at 00:14
  • Two, the Linux network stack is open source as well, just like the Mongo drivers are; if the AGPL software could be nullified by accessing it via a layer with another license it would serve no purpose; when you access an AGPL system via the Linux TCP/IP stack, you agree to *both* licenses, not just the one you are linking into your program. – Jacob Davis-Hansson Dec 07 '17 at 00:17
  • 1
    I should point out that I am not a lawyer either. We do work with very good lawyers that help us on topics such as this. I believe the linux kernel is GPL not AGPL. The TCP/IP stack would most likely be in the kernel meaning your example may not be the best. There is a reason mongodb made it's official drivers apache licensed and not AGPL. (Mongodb server is AGPL just like Neo4j Enterprise). Just an FYI, my expertise on this subject comes directly from my involvement of AGPL licenses in the US Federal government. I would be happy to chat about it in detail anytime if you message me. – John Mark Dec 07 '17 at 00:51
  • @logisima - regarding the readme in github. I have a blog post coming out that touches on this behavior and AGPL. It's great at causing confusion though! They could also add that their software can only be used during full moons. The fact is AGPL comes from the free software foundation. You can not add or modify terms and still call it AGPL. But my post will touch on all sorts of confusion on this subject because of unclear statements such as that one. In my post I will show why this statement is invalid for the most common use cases of Neo4j. – John Mark Dec 07 '17 at 01:00
  • @JohnMark can you provide more details as to how to build the enterprise version from source for the newer versions. – Himanshu Jain Oct 24 '18 at 21:09