Menü / Reçete Yönetimi adlı bir hobi projesi üzerinde çalışıyorum.
Varlıklarım ve ilişkileri böyle görünüyor.
A'nın Nutrientözellikleri CodeveValue
Bir Ingredientkoleksiyonu varNutrients
A'nın Recipebir Koleksiyonu vardır Ingredientsve bazen başka bir koleksiyona sahip olabilirrecipes
Bir Mealbir Koleksiyonu sahiptir RecipesveIngredients
A'nın Menukoleksiyonu varMeals
İlişkiler şu şekilde tasvir edilebilir:

Sayfalardan birinde, seçilen bir menü için bileşenlerine (Yemekler, Tarifler, Malzemeler ve ilgili besin maddeleri) dayalı olarak hesaplanan etkili besin bilgilerini göstermem gerekiyor.
Şu andan itibaren verileri saklamak için SQL Server kullanıyorum ve menünün her öğünden başlayıp daha sonra besin değerlerini toplayarak zinciri C # kodumdan dolaşıyorum.
Bu hesaplama, sayfa her istendiğinde ve bileşenlerin ara sıra değiştiği için yapıldığından, bunun etkili bir yol olmadığını düşünüyorum.
Ben MenuNutrients ( {MenuId, NutrientId, Value}) adlı bir tablo korur ve bileşen (Yemek, yemek tarifi, madde) herhangi bir değişiklik olduğunda bu tablo etkili besinler ile güncelleme olacak bir arka plan hizmeti sahip düşünüyordum .
Bir GraphDB bu gereksinim için iyi bir seçim olacağını hissediyorum, ancak NoSQL maruz kalma sınırlı.
Belirli bir menünün besin maddelerini göstermenin bu gereksinimine alternatif çözümlerin / yaklaşımların ne olduğunu bilmek istiyorum.
Umarım senaryo tanımım açıktır.