Hi John Thanks for your comments.
El mié, 6 de ene. de 2021 a la(s) 16:10, John Mora (jhnmora...@gmail.com) escribió: > Hi > > Thanks for your report. > > Some comments: > > You are creating a UNIQUE index instead of the NODE KEY you mentioned on > your design document. why? > > > https://github.com/mgov88/gora/blob/GORA-663/gora-neo4j/src/main/java/org/apache/gora/neo4j/store/Neo4jStore.java#L141 > > I found this limitation in the Neo4j community version: "Node key constraints, node property existence constraints and relationship property existence constraints are only available in Neo4j Enterprise Edition". And, the UNIQUE indexes work in the community version. Should I seek a trial version of the enterprise version or work only with the UNIQUE indexes of the community version? > Also, can you write the CREATE CONSTRAINT query with Cypher-DSL? > > I could not find a API for constraints creation in Cypher DSL. The create statements that I found are only for nodes. Please add javadoc documentation and comments on these classes: > > > https://github.com/mgov88/gora/blob/GORA-663/gora-neo4j/src/main/java/org/apache/gora/neo4j/store/Neo4jConstants.java > > https://github.com/mgov88/gora/blob/GORA-663/gora-neo4j/src/main/java/org/apache/gora/neo4j/store/Neo4jParameters.java > > I will add the documentation > Please add a test for the XSD Validation > > > https://github.com/mgov88/gora/blob/GORA-663/gora-neo4j/src/main/resources/gora-neo4j.xsd > > I will add a test for this. > Cheers, > John > > El dom, 3 ene 2021 a las 23:12, gabriela ortiz (<arqgabyor...@gmail.com>) > escribió: > >> Hi >> >> I wanted to inform the tasks I worked on this week: Dec 26 - Dec 31 >> >> * Develop the Datastore methods: getSchemaName, createSchema, deleteSchema, >> schemaExists >> * Enable tests in Neo4jStoreTest : testCreateSchema , testSchemaExists >> * Enhance the implementation of the connection to the backend. >> * Write a blog about my project. >> >> You can find my code in my branch: >> >> https://github.com/mgov88/gora/tree/GORA-663 >> >> Best Regards, >> Gaby >> >> El mié, 30 de dic. de 2020 a la(s) 13:28, John Mora (jhnmora...@gmail.com) >> escribió: >> >>> Hi >>> >>> Thanks for your report. >>> >>> The Utils package is specific for each datastore; it is not mandatory. >>> You can move some code there to improve the readability of the core classes >>> of the datastore but it is up to you. >>> >>> I could not find your last changes in your branch in github, please make >>> sure to push the commits, so I can review the code. >>> >>> Cheers, >>> John >>> >>> >>> El mar, 29 dic 2020 a las 1:03, gabriela ortiz (<arqgabyor...@gmail.com>) >>> escribió: >>> >>>> Hi >>>> >>>> I wanted to inform the tasks I worked on this week: Dec 19 - Dec 25 >>>> >>>> * I developed a GoraTestDriver for Neo4j using GenericContainer from >>>> the Test Containers library >>>> * I developed the initialize method from Neo4jStore to establish >>>> connection to the backend (Neo4j) >>>> * I developed a XSD validation file for the XML mapping >>>> >>>> I have a question, I realized that some Datastores have 'utils' >>>> packages in the code, are they obligatory? What kind of code should go in >>>> them? >>>> >>>> Best Regards, >>>> Gaby >>>> >>>> >>>> >>>> El lun, 21 de dic. de 2020 a la(s) 15:45, gabriela ortiz ( >>>> arqgabyor...@gmail.com) escribió: >>>> >>>>> Hi John >>>>> >>>>> El sáb, 19 de dic. de 2020 a la(s) 17:13, John Mora ( >>>>> jhnmora...@gmail.com) escribió: >>>>> >>>>>> Hi Gaby >>>>>> >>>>>> Thanks for your report and your hard work! >>>>>> >>>>>> I left some comments on your design document please give them a look. >>>>>> >>>>>> >>>>> Thanks you for your comments, >>>>> >>>>> >>>>>> Some comments about your code: >>>>>> >>>>>> IMHO, the attributes unique, exists and index should be optional >>>>>> (default: false) [0]. >>>>>> >>>>> >>>>> I agree I will change that >>>>> >>>>> >>>>>> The KeyClassCanonicalName and PersistentClassCanonicalName should be >>>>>> read from the datastore not hard coded [1] >>>>>> >>>>> >>>>> I put that hard coded because I had an error because the Datastore >>>>> methods are not yet implemented, but I will change that. >>>>> >>>>> >>>>>> I think this class [2] should be deleted, there are proper tests for >>>>>> this in the DataStoreTestBase class. If you are using this for your own >>>>>> experiments please do not push it to github. >>>>>> >>>>>> >>>>> yes, I am using this class to temporary test my code, you are right I >>>>> will remove it from github. >>>>> >>>>> Thanks you for your feedback. >>>>> >>>>> Regards, >>>>> Gaby >>>>> >>>>> >>>>>> [0] >>>>>> https://github.com/mgov88/gora/blob/867d06e1fcf29e90b0431b9a42b82810c5409dda/gora-neo4j/src/test/resources/gora-neo4j-mapping.xml >>>>>> [1] >>>>>> https://github.com/mgov88/gora/blob/867d06e1fcf29e90b0431b9a42b82810c5409dda/gora-neo4j/src/main/java/org/apache/gora/neo4j/mapping/Neo4jMappingBuilder.java#L44 >>>>>> [2] >>>>>> https://github.com/mgov88/gora/blob/867d06e1fcf29e90b0431b9a42b82810c5409dda/gora-neo4j/src/main/java/org/apache/gora/neo4j/experimental/experiment.java >>>>>> >>>>>> Cheers >>>>>> John >>>>>> >>>>>> El vie, 18 dic 2020 a las 23:06, gabriela ortiz (< >>>>>> arqgabyor...@gmail.com>) escribió: >>>>>> >>>>>>> Hi >>>>>>> >>>>>>> I wanted to inform the tasks I worked on this week: Dec 12 - Dec 18 >>>>>>> >>>>>>> * I wrote a blog about the struggles learning CQL of Neo4j : >>>>>>> https://gabycoder88.wordpress.com/2020/12/18/discovering-cypher-everybody-struggles/ >>>>>>> * I created the suggested design document (link below ) with details >>>>>>> about the Neo4j datastore. >>>>>>> * I finished creating the structure of the datastore project. >>>>>>> * I developed and tested the parsing of XML mappings for the >>>>>>> datastore from gora-neo4j-mapping.xml >>>>>>> * I developed and tested the read of connection properties from >>>>>>> gora.properties >>>>>>> >>>>>>> My code is here: >>>>>>> https://github.com/mgov88/gora/commits/GORA-663 >>>>>>> >>>>>>> My design document: >>>>>>> >>>>>>> https://docs.google.com/document/d/1fQbCHNIFEKxAUlOuwqDRDdnpecLk2S4TkOJSWIk6qCE/edit?usp=sharing >>>>>>> >>>>>>> Best Regards, >>>>>>> Gaby >>>>>>> >>>>>>> El lun, 14 de dic. de 2020 a la(s) 15:25, gabriela ortiz ( >>>>>>> arqgabyor...@gmail.com) escribió: >>>>>>> >>>>>>>> Hi John. >>>>>>>> >>>>>>>> Thanks very much for your feedback. I shall work on the document >>>>>>>> and the structure of the datastore project. >>>>>>>> >>>>>>>> Best regards, >>>>>>>> Gaby >>>>>>>> >>>>>>>> El sáb, 12 de dic. de 2020 a la(s) 17:43, John Mora ( >>>>>>>> jhnmora...@gmail.com) escribió: >>>>>>>> >>>>>>>>> Hi Gaby, >>>>>>>>> >>>>>>>>> Thanks for the update and your hard work. >>>>>>>>> >>>>>>>>> Do not worry about the paid versions of Neo4j. They all share a >>>>>>>>> common interface (Cypher Graph Query Language) and connect using the >>>>>>>>> same >>>>>>>>> protocols, so it is fine that your work only with community version. >>>>>>>>> >>>>>>>>> Nice to see that you added a basic input/output example working >>>>>>>>> with Neo4j but eventually you should move it to another project. Now >>>>>>>>> let's >>>>>>>>> create all the packages and resources needed for the structure of a >>>>>>>>> datastore. >>>>>>>>> >>>>>>>>> I think you should put your ideas in a Google Docs document and >>>>>>>>> share in the mailing list. >>>>>>>>> * Your UML design* The branch that you are working on.* How the >>>>>>>>> connection will be implemented.* Which connection parameters the >>>>>>>>> datastore >>>>>>>>> will need,* How you will set up a testing instance in the unit test of >>>>>>>>> Gora.* The data type mapping between your datastore and Java data >>>>>>>>> types. >>>>>>>>> Keep it simple, here [0] you have a document that I made for the >>>>>>>>> Kudu datastore a couple of years ago. >>>>>>>>> >>>>>>>>> [0] >>>>>>>>> https://docs.google.com/document/d/1colS1ooQZIvuJcnx6DSsZIgesokK8TjwaEfgdygt4mo/edit#heading=h.pcphnswc4uen >>>>>>>>> >>>>>>>>> Best regards, >>>>>>>>> John >>>>>>>>> >>>>>>>>> El vie, 11 dic 2020 a las 23:06, gabriela ortiz (< >>>>>>>>> arqgabyor...@gmail.com>) escribió: >>>>>>>>> >>>>>>>>>> Hi all. >>>>>>>>>> >>>>>>>>>> I wanted to inform the tasks I worked on this week: Dec 06 - Dec >>>>>>>>>> 11 >>>>>>>>>> >>>>>>>>>> - I created a new branch for my project : >>>>>>>>>> https://github.com/mgov88/gora/tree/GORA-663 >>>>>>>>>> - I created a new module for datastore gora-neo4j >>>>>>>>>> - I add the maven dependencies for neo4j JDBC and Cypher-DSL >>>>>>>>>> - I read the JDBC and DSL documentation. >>>>>>>>>> - I implemented a example inserting and querying nodes into neo4j >>>>>>>>>> - I joined the Interns chat session of this week. >>>>>>>>>> - I submitted the forms asked by Outreachy. >>>>>>>>>> - I submitted the initial feedback of Outreachy. >>>>>>>>>> >>>>>>>>>> I have a question, neo4j has many editions ( >>>>>>>>>> https://neo4j.com/subscriptions/ ) and the docker that I have >>>>>>>>>> been using is the community. >>>>>>>>>> Should I be test all the editions, there are demos or open server >>>>>>>>>> that I can use instead of buying a subscription ? >>>>>>>>>> >>>>>>>>>> Regardss >>>>>>>>>> Gaby >>>>>>>>>> >>>>>>>>>> El sáb, 5 de dic. de 2020 a la(s) 15:21, John Mora ( >>>>>>>>>> jhnmora...@gmail.com) escribió: >>>>>>>>>> >>>>>>>>>>> Hi Gaby. >>>>>>>>>>> >>>>>>>>>>> Thanks for your work and the update of your progress. >>>>>>>>>>> >>>>>>>>>>> Working with docker containers is totally fine, but take into >>>>>>>>>>> account that you need to expose all the necessary ports in the >>>>>>>>>>> container >>>>>>>>>>> for the communication with Apache Gora. Also you can start checking >>>>>>>>>>> out >>>>>>>>>>> testcontainers [1] for the unit test of the new datastore. >>>>>>>>>>> >>>>>>>>>>> Your design looks good to me, I noticed that you plan to use the >>>>>>>>>>> Neo4j driver. If you have some experience working with JDBC you can >>>>>>>>>>> also >>>>>>>>>>> use the Neo4j JDBC Driver [2]. But it is up to you, it should not >>>>>>>>>>> have any >>>>>>>>>>> impact on the functionality of the datastore. >>>>>>>>>>> >>>>>>>>>>> [1] https://www.testcontainers.org/ >>>>>>>>>>> [2] https://github.com/neo4j-contrib/neo4j-jdbc >>>>>>>>>>> >>>>>>>>>>> Regards, >>>>>>>>>>> John >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> El sáb, 5 dic 2020 a las 8:20, Madhawa Kasun Gunasekara (< >>>>>>>>>>> madhaw...@gmail.com>) escribió: >>>>>>>>>>> >>>>>>>>>>>> Hi Gaby, >>>>>>>>>>>> >>>>>>>>>>>> Thanks for the update. Yes, we haven't tested Gora in java11, >>>>>>>>>>>> So I don't think you should spend time on installing neo4j >>>>>>>>>>>> locally. docker >>>>>>>>>>>> container is enough. >>>>>>>>>>>> Please add your project proposal to the confluence page as well >>>>>>>>>>>> [1]. I wish you good luck with this project. Let me know if you >>>>>>>>>>>> have any >>>>>>>>>>>> questions. >>>>>>>>>>>> >>>>>>>>>>>> [1] >>>>>>>>>>>> https://cwiki.apache.org/confluence/display/GORA/Outreachy%3A+2020+Winter >>>>>>>>>>>> >>>>>>>>>>>> Thanks, >>>>>>>>>>>> Madhawa >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> On Sat, Dec 5, 2020 at 6:29 AM gabriela ortiz < >>>>>>>>>>>> arqgabyor...@gmail.com> wrote: >>>>>>>>>>>> >>>>>>>>>>>>> Hi >>>>>>>>>>>>> I wanted to inform the tasks I worked on this week: Dec 01 - >>>>>>>>>>>>> Dec 05 >>>>>>>>>>>>> >>>>>>>>>>>>> 1. I created a personal Blog for Outreachy reports: >>>>>>>>>>>>> https://gabycoder88.wordpress.com/ >>>>>>>>>>>>> 2. I wrote the first post of my blog titled 'About me': >>>>>>>>>>>>> https://gabycoder88.wordpress.com/2020/11/30/example-post-3/ >>>>>>>>>>>>> 3. I joined the Outreachy Zulip server for the chats. >>>>>>>>>>>>> 4. I installed Neo4j on my computer using docker * . >>>>>>>>>>>>> 5. I drew a class diagram of my project (attached). >>>>>>>>>>>>> 6. I read the Neo4j documentation about the Java connector, >>>>>>>>>>>>> Neo4j (Neo4j Driver) syntax and concepts of graph databases. >>>>>>>>>>>>> >>>>>>>>>>>>> * I tried to install native Neo4j, but I figured that Neo4j >>>>>>>>>>>>> requires java 11 and apache gora requires java 8, hence I >>>>>>>>>>>>> preferred to >>>>>>>>>>>>> install using docker to avoid any issues with the java version. >>>>>>>>>>>>> Is a docker >>>>>>>>>>>>> container enough or I must install natively? >>>>>>>>>>>>> >>>>>>>>>>>>> Regards, >>>>>>>>>>>>> Gaby >>>>>>>>>>>>> >>>>>>>>>>>>