Implementacja cennika

Szukam najbardziej odpowiedniego zamodelowania następującej struktury:

 pozycja   | 100    | 1000
-------------------------------
element1  | 10 PLN | 8 PLN 
element2  | 15 PLN | 15 PLN 
element3  | 20 PLN | 15 PLN 

Jest to tabela kalkulacji cen elementów (element1…) dla zamawianej ilości sztuk (100,1000). Przy czym zarówno ilość i rodzaj elementów oraz liczba sztuk są dynamiczne dla każdej kalkulacji.

W aplikacji korzystam z Postgresa. Czy jedyną rozsądną opcją jest trzymanie tego w bazie, w tabeli z polami, przykładowo calculation_id, element_id, quantity, price? Czy nie zabije to bazy? Jak mogłyby wyglądać modele i relacje w takim przypadku?

Element:

  • id
  • name

ElementPrice:

  • element_id
  • quantity
  • price

Nie, nie zabije to bazy, możesz łaować to w jednym sql query.
Element: has_many :element_prices
ElementPrice: belongs_to :element

Pytanie, czy potrzebujesz sortowac po tej wartosci lub wyszukiwac ?

Jesli nie, ja uzywam do dynamicznych pol http://api.rubyonrails.org/classes/ActiveRecord/Store.html lub http://api.rubyonrails.org/classes/ActiveModel/Serialization.html - w zaleznosci czy chce miec nazwane parametry czy bardziej kolekcje.