MongoDB modelinin Facebook'a benzeyeceği bir proje üzerinde çalışıyorum. Bu yüzden hepimiz FB'nin nasıl çalıştığını biliyoruz, bir kullanıcı bir grup/şirket sayfasını "beğenir" ve kullanıcı bu sayfadaki tüm yayınları görecektir.C# mongodb model gibi Facebook
Aşağıdaki modeli nasıl tasarlamalıyım? Bir Sayfa milyonlarca içeriğe sahipse, her Post, gibi bir gibi bir alt alt belgeye sahip olacaktır. Bu doğru görünmüyor, düşünemediğim daha iyi bir yol olmalı.
Teşekkürler.
public class Person
{
public ObjectId Id { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
}
public class Page
{
public ObjectId Id { get; set; }
public string Name { get; set; }
public List<Like> PersonLikes { get; set; }
}
public class Like
{
public ObjectId Id { get; set; }
public ObjectId UserId { get; set; }
public DateTime DateLiked { get; set; }
}
public class Post
{
public ObjectId Id { get; set; }
public ObjectId PageId { get; set; }
public string Message { get; set; }
public List<Like> PersonLikes { get; set; }
}
Herhangi bir öneriniz var mı? – Curtis
İyi bir soru, her şeyin yolunda gitmesi gerçeği göz önüne alındığında. Muhtemelen bunun gibi bir sayaç var ve daha sonra gerçek gibi bilgilerin saklandığı başka bir koleksiyona sahip olurdum. Senkronizasyon dışında mı olabilirler? Tabii ki, hiçbir işlem yok, ama sonra doğru olmanız gerekiyor mu? –
**> Bu doğru görünmüyor, düşünemediğim daha iyi bir yol olmalı. ** Her şeyden önce - evet, doğru değil. Ve MongoDB kesinlikle bu çözüm için veritabanı değil, bu şema için SQL veritabanı ile daha iyi durumdasınız. Bu çözüm için mükemmel db, neo4j – sed