I really want to share the data with you, but the data is kind of confidential and I am sorry for that.
Guitao On Fri, Jul 11, 2014 at 1:43 AM, Michael Hunger < [email protected]> wrote: > If possible I'd still love to get a copy of your db to test out some ideas. > > Michael > > > On Thu, Jul 10, 2014 at 3:24 PM, 丁桂涛 <[email protected]> wrote: > >> Hi Michael, >> >> >> >> Thanks for yo kind reply. >> >> >> I'm testing your code. As I replied earlier, I already swithed to Spark >> Graphx and its connected components algorithm perfectly solved my problem. >> Besides, Spark can read files on HDFS and run on clusters. It only took few >> seconds to accomplish my task. >> >> >> So I just temporarily put neo4j aside and thank you again for your answer! >> >> >> Best Regards, >> >> >> Guitao >> >> On Thursday, July 10, 2014 9:05:58 PM UTC+8, Michael Hunger wrote: >> >>> >>> >>> match (n:user_id) >>> match (n)-[:mapping*]-(d:user_id) >>> return n.value as user_id, >>> case when min(d.value) > n.value then n.value else min(d.value) end as >>> people_id >>> >>> >>> >>> >>> could you also try to run: >>> >>> match (n:user_id) >>> match (n)-[:mapping*]-(d:user_id) >>> RETURN count(*) >>> >>> Would you be able to share your Neo4j database with me? >>> >>> Thanks, >>> >>> Michael >>> >>> >>> On Thu, Jul 10, 2014 at 3:05 AM, Guitao Ding <[email protected]> >>> wrote: >>> >>>> >>>> Hi Michael, >>>> >>>> The data is from one website. The user_id is the ID of each registered >>>> user. And every user_id is linked to one or more cookie_ids (the value of >>>> one cookie). >>>> Also one cookie_id is linked to one or more user_ids. So user_id and >>>> cookie_id are many to many mapping. My case is to find all user_ids linked >>>> with each other (via cookie_ids, and no limit on the path length) and >>>> assign them one unique ID (here i used then smallest user_id in the path). >>>> >>>> for example: >>>> All user_ids (user_id1, user_id2, user_id3) in the following path >>>> should be assigned one same ID (e.g. user_id1) >>>> user_id1----cookie_id1----user_id2-----cookie-id2-----user_id3 >>>> >>>> I imported the data to neo4j and use different labels for user_id and >>>> cookie_id. There is only one type of relationship (cookie_id -- user_id) >>>> and the direction doesn't matter. >>>> >>>> On Thursday, July 10, 2014 6:01:14 AM UTC+8, Michael Hunger wrote: >>>> >>>>> This is a graph global query, with unlimited paths, so it might >>>>> generate many billions or trillions of paths to look at. >>>>> Esp. if you don't provide a direction. >>>>> >>>>> if your nodes are all users, then you do the equivalent of finding all >>>>> paths between the cross product of 16M^2 >>>>> >>>>> Perhaps you can describe your actual use-case that you try to solve? >>>>> >>>>> Michael >>>>> >>>>> >>>>> >>>>> On Wed, Jul 9, 2014 at 4:23 PM, Guitao Ding <[email protected]> >>>>> wrote: >>>>> >>>>>> Hi all, >>>>>> >>>>>> I'm leaning to user neo4j for relation analysis recently. Today I >>>>>> found it took too long for my cypher query took to finish. >>>>>> >>>>>> I used the batch importer >>>>>> <https://github.com/jexp/batch-import/tree/20> to import all data >>>>>> into neo4j. And I wanted to find the smallest user_id connected (directly >>>>>> or undirectly, path length no limit) to each user_id. Below is the >>>>>> details: >>>>>> >>>>>> neo4j version: 2.1.2 >>>>>> nodes num: 16M (three labels) >>>>>> relation num: 10M >>>>>> cypher query: >>>>>> >>>>>> match (n:user_id)-[:mapping*]-(d:user_id) >>>>>> with n.value as user_id, >>>>>> case when min(d.value) > n.value then n.value else min(d.value) end >>>>>> as people_id >>>>>> return user_id, people_id >>>>>> >>>>>> >>>>>> What should I do to improve my query performance? Any suggestions >>>>>> would be appreciated! >>>>>> >>>>>> Thanks in advance. >>>>>> >>>>>> Guitao >>>>>> >>>>>> -- >>>>>> You received this message because you are subscribed to the Google >>>>>> Groups "Neo4j" group. >>>>>> To unsubscribe from this group and stop receiving emails from it, >>>>>> send an email to [email protected]. >>>>>> >>>>>> For more options, visit https://groups.google.com/d/optout. >>>>>> >>>>> >>>>> -- >>>> You received this message because you are subscribed to the Google >>>> Groups "Neo4j" group. >>>> To unsubscribe from this group and stop receiving emails from it, send >>>> an email to [email protected]. >>>> For more options, visit https://groups.google.com/d/optout. >>>> >>> >>> -- >> You received this message because you are subscribed to the Google Groups >> "Neo4j" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected]. >> >> For more options, visit https://groups.google.com/d/optout. >> > > -- > You received this message because you are subscribed to a topic in the > Google Groups "Neo4j" group. > To unsubscribe from this topic, visit > https://groups.google.com/d/topic/neo4j/uDmP975PsN8/unsubscribe. > To unsubscribe from this group and all its topics, send an email to > [email protected]. > For more options, visit https://groups.google.com/d/optout. > -- 丁桂涛 -- You received this message because you are subscribed to the Google Groups "Neo4j" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
