Sizwe, Jeremy

Great that you are both enthused on using Apache Isis with Neo4J.  I can't
claim any experience at all with it as a datastore (other than watching a
presentation or two at conferences/youtube) but it's gratifying to know
that our decision to use JDO/DataNucleus is opening this up as a
possibility for you.

If you can collaborate together that'd be great, but whichever, do tell us
of any issues/snags/gaps you encounter so that we can evolve Isis in order
to best support your use cases.

Cheers
Dan




On 23 December 2014 at 20:07, Branham, Jeremy [HR] <
[email protected]> wrote:

> Sizwe -
> I feel your excitement and believe there are major benefits to using a
> graph data store.
> Maybe some sort of conditional workflow could be realized through the
> relationships, or general analysis operations based on aggregations,
> centrality algorithms, etc...
>
> I put together an Isis add-on yesterday that spins up the neo4j REST and
> admin services alongside a running Isis application when using embedded
> neo4j, but it would be nice to use the latest data-nucleus packages so the
> neo4j 2.x release could be leveraged. [currently working with neo4j 1.9.9]
> It's not necessary, but the graph browser/console for 2.x would be a nice
> perk.
> Though, there are other ways to visualize the data using JS + D3.js
>
> One thing I noticed, nodes added through Isis weren’t visible in the neo4j
> admin panel. It may have to do with labeling/indexing. I'm not sure yet.
>
> Let me know if there is anything I can help with or if you want to partner
> on some development.
>
>
> Jeremy D. Branham
> Tel: **DOTNET
>
>
> -----Original Message-----
> From: Mabanga, Sizwe [mailto:[email protected]]
> Sent: Tuesday, December 23, 2014 4:44 AM
> To: [email protected]
> Subject: RE: How would I use neo4j with Apache Isis?
>
> Hi Guys
>
> I'm incredibly excited about naked objects as a software design
> philosophy, but when I read up on Neo4j and graph databases (after reading
> this thread) I almost had an aneurysm.
>
> These two (naked objects and graph databases) seem to be a match made in
> heaven! Persistence models in general can do with an elevation of
> relationships (edges) to first class entities as opposed to shallow
> composition relationships based on numerical constraints!
>
> Isis viewers would simply then list an entity's (node) properties as
> usual, but the current list of collections (shallow compositional
> relationships) would be replaced with a list of rich relationships that the
> entity has.
>
> To start with we can make the list of possible entity relationships static
> (developer defined) but later we should enable that users add new
> relationship types as and when needed (making them 1st class graph
> creators).
>
> Isis's early adoption of this model could serve as an even bigger
> differentiator for Isis and align it more closely to the movement towards
> cleaner/stronger semantics in our code (the movement championed by Naked
> Objects).
>
> Please excuse my excessive use of parenthesis and tell whether I'm on the
> money?
>
> Thnx
> Sizwe
>
> -----Original Message-----
> From: Branham, Jeremy [HR] [mailto:[email protected]]
> Sent: 22 December 2014 09:42 PM
> To: [email protected]
> Subject: RE: How would I use neo4j with Apache Isis?
>
> Great!
> I'll be working with this quite a bit so I do expect to contribute further.
> I've also subscribed to the StackOverflow tags in case there are others
> needing assistance with Isis + Neo4J.
>
> Thank you Dan.
>
> Jeremy D. Branham
> Tel: **DOTNET
>
>
> -----Original Message-----
> From: Dan Haywood [mailto:[email protected]]
> Sent: Monday, December 22, 2014 1:35 PM
> To: users
> Subject: Re: How would I use neo4j with Apache Isis?
>
> Hi Jeremy,
>
> OK, I've merged in that pull request, thanks again for providing.
>
> I've also added a new page to the website, see [1] and [2] and updated the
> snapshot archetypes [3] (though probably still being built as I write
> this...)
>
> I've signposted all up as "experimental", so if you find any issues as you
> play with neo4j then do say.
>
> Cheers
> Dan
>
>
> [1] http://isis.apache.org/documentation.html
> [2] http://isis.apache.org/components/objectstores/jdo/using-neo4j.html
> [3] http://isis.apache.org/intro/getting-started/simpleapp-archetype.html
>
>
>
>
> On 22 December 2014 at 14:30, Branham, Jeremy [HR] <
> [email protected]> wrote:
>
> > Dan -
> > Thanks for the warm welcome and the consideration.
> > I've never created a pull request before so this is exciting for me,
> > especially given it's an Apache project.
> > Apache has done so much for open source and I have a great respect for
> > all contributors involved.
> >
> > I've updated the fork and recommitted.
> > Thanks again!
> >
> > Jeremy D. Branham
> > Tel: **DOTNET
> >
> >
> > -----Original Message-----
> > From: Dan Haywood [mailto:[email protected]]
> > Sent: Monday, December 22, 2014 2:32 AM
> > To: users
> > Subject: Re: How would I use neo4j with Apache Isis?
> >
> > Hi Jeremy,
> >
> > ... and welcome to the mailing list.
> >
> > Very nice to see you trying out Apache Isis with Neo4J, and submitting
> > a patch already too [1] with pull request [2].
> >
> > To be completely honest, although one of the reasons we chose
> > DataNucleus and JDO for the ORM was because it gave us NoSQL support
> > "for free", there's very little experience of using it with anything
> > other than against an RDBMS.  That's not quite true: Maurizio Taverna,
> > one of our committers, has successfully run Apache Isis against GAE,
> > and we made one or two minor commits to enable that; there's a brief
> > page on our website on the topic [3].
> >
> > Given the change you've made is so minor, I have no problems in
> > merging in your pull request.  That way, you're not maintaining your
> > own fork, and if there are further changes that are needed then we can
> > address them as need be.
> >
> > There are one or two minor tweaks to that PR, if you could address
> > those and recreate then I'll merge them in.
> >
> > So thanks again... it'd be great to say (hand on heart) that we
> > support running on Neo4J.
> >
> > Cheers
> > Dan
> >
> > [1 ]https://issues.apache.org/jira/browse/ISIS-983
> > [2] https://github.com/apache/isis/pull/16
> > [3]
> >
> > http://isis.apache.org/components/objectstores/jdo/deploying-on-the-go
> > ogle-app-engine.html
> >
> >
> >
> >
> >
> > On 21 December 2014 at 01:07, Branham, Jeremy [HR] <
> > [email protected]> wrote:
> >
> > > I'm not sure what the implications are, but I was able to get a
> > > neo4j datastore working with Apache Isis by modifying
> > > org.apache.isis.objectstore.jdo.datanucleus.DataNucleusApplicationCo
> > > mp onents#createSchema in the "Isis Core Runtime module" to check if
> > > the datanucleus StoreManager supports the SchemaAwareStoreManager
> > > interface before casting.
> > >
> > > It is persisting data successfully.
> > >
> > >
> > > private void createSchema(final Map<String, String> props, final
> > > Set<String> classesToBePersisted) {
> > >     final JDOPersistenceManagerFactory jdopmf =
> > > (JDOPersistenceManagerFactory)persistenceManagerFactory;
> > >     final NucleusContext nucleusContext = jdopmf.getNucleusContext();
> > >     final StoreManager storeManager = nucleusContext.getStoreManager();
> > >     if (storeManager instanceof SchemaAwareStoreManager) {
> > >
> > > ((SchemaAwareStoreManager)storeManager).createSchema(classesToBePers
> > > is
> > > ted,
> > > asProperties(props));
> > >     }
> > > }
> > >
> > >
> > >
> > > Jeremy D. Branham
> > > Tel: **DOTNET
> > >
> > >
> > > -----Original Message-----
> > > From: Branham, Jeremy [HR]
> > > Sent: Saturday, December 20, 2014 8:27 AM
> > > To: [email protected]
> > > Subject: How would I use neo4j with Apache Isis?
> > >
> > > I am attempting to use neo4j as a backing store for Apache Isis but
> > > it looks like some development may be needed.
> > > If I add the datanucleus-neo4j dependency, it appears the neo4j JDO
> > > connection is initializing but Apache Isis is expecting a different
> > > type of StoreManager.
> > >
> > > This is the exception I get
> > > org.datanucleus.store.neo4j.Neo4jStoreManager cannot be cast to
> > > org.datanucleus.store.schema.SchemaAwareStoreManager
> > >
> > > How can I use neo4j as a backing store in Apache Isis?
> > > I read about nosql support in Isis, but is it not part of the
> > > current
> > > release?http://isis.apache.org/components/objectstores/nosql/about.h
> > > tm
> > > l
> > >
> > > Thanks!
> > >
> > > This question is also posted at -
> > >
> > > http://stackoverflow.com/questions/27579653/how-would-i-use-neo4j-wi
> > > th
> > > -apache-isis
> > >
> > > ________________________________
> > >
> > > This e-mail may contain Sprint proprietary information intended for
> > > the sole use of the recipient(s). Any use by others is prohibited.
> > > If you are not the intended recipient, please contact the sender and
> > > delete all copies of the message.
> > >
> > > ________________________________
> > >
> > > This e-mail may contain Sprint proprietary information intended for
> > > the sole use of the recipient(s). Any use by others is prohibited.
> > > If you are not the intended recipient, please contact the sender and
> > > delete all copies of the message.
> > >
> >
> > ________________________________
> >
> > This e-mail may contain Sprint proprietary information intended for
> > the sole use of the recipient(s). Any use by others is prohibited. If
> > you are not the intended recipient, please contact the sender and
> > delete all copies of the message.
> >
>
> ________________________________
>
> This e-mail may contain Sprint proprietary information intended for the
> sole use of the recipient(s). Any use by others is prohibited. If you are
> not the intended recipient, please contact the sender and delete all copies
> of the message.
>
> To read WesBank's Disclaimer for this email click on the following address
> or copy into your Internet browser:
> https://www.wesbank.co.za/wesbankcoza/about/legal/emaildisclaimer.xhtml
>
> If you are unable to access the Disclaimer, send a blank e-mail to
> [email protected] and we will send you a copy of the
> Disclaimer.
>
> ________________________________
>
> This e-mail may contain Sprint proprietary information intended for the
> sole use of the recipient(s). Any use by others is prohibited. If you are
> not the intended recipient, please contact the sender and delete all copies
> of the message.
>

Reply via email to