2013-09-24 10 views
5

Neo4j için oldukça yeni ve şu anda aşağıdaki problemi yaşıyorum. İlişkilendirme özelliğinde iki kullanıcı arasında değiştirilen iletiyi saklamak istediğim bir sosyal ağ sitesi geliştirmeye çalışıyorum. Bunun için, tüm iletilerini bir ilişki özelliğinde dizi/liste biçiminde depolamaya çalışıyorum. Neo4j'in bu tür operasyonlar sağlaması durumunda önerebilir misiniz?Verilerin neo4j özelliği üzerinde bir dizi/liste olarak saklanması

User1 -> User2 : Hi, whats up 
User2 -> User1 : Hi, I am in college 

So the relationship property stores the message in the form of list such as: 
["Hi,Whats up", "Hi, I am in college"] 
:

Ben de sadece (yani bir sonraki endeksi yeni bir mesaj ekler) bu ilişki mülk ve dizi/Liste güncellemelerinin mesajımı eklemek eğer ex

bilmek istiyorum

Bu şekilde bir şey ..... Teşekkürler

cevap

5

Neo4j dizi özelliklerini destekler, bkz. http://neo4j.com/docs/rest-docs/current/#rest-api-property-values.

Ancak, burada iyi bir modelleme yaklaşımı kullanıp kullanmadığınızı bilmiyorum. Tüm iletileri bir dizide saklarsanız, grafiğin içinde konuşma açıklığının zaman çizelgesine sahip olmazsınız. Daha da kötüsü, Kullanıcı1 arasında Kullanıcı2'den 2 mesaj göndermeksizin 2 mesaj gönderirse daha da kötüsü, gönderenin ve alıcının kim olduğunu artık bilmezsiniz. Bu nedenle, bir konuşmayı temsil eden bir düğümü tanıtmayı düşünün. Konuşma iki kullanıcıyla ilgilidir. Başka bir ilişki, bu konuşmadaki mesaj akışının başlangıcına (veya sonuna) işaret eder. Mesajların kendisi birbiriyle NEXT ve/veya ÖNCEKİ ilişkiler ile bağlantılıdır.

+0

Cevabınız için teşekkürler Stefan !!! Aslında konuşmayı, kullanıcılar olarak gösterilen iki düğüm arasındaki bir ilişkide bir mülkte depolamayı planlıyorum. Mesajları json formatında zaman damgalarıyla birlikte saklarım. Bu yaklaşım iyi geliyorsa lütfen bana bildirin! Thanx –

+0

Mesajınız, uygulamanızın bağlamında "sahip olunan bir şey" değilse tamamdır. Eğer ör. Daha sonra, kullanıcıların gizlendikleri iletileri derecelendirmesini veya etiketlemesini isteyin. Bunları açıkça düğüm olarak modellediyseniz, etiketleri veya derecelendirmeleri temsil eden düğümlerden yönlendirilebilirler. –

+0

Önerileriniz için Stefan'a teşekkürler. Gerçekten değerli girdiler !!! –