私は、ユーザーが望むメトリックを作成して、時間の経過とともに値を記録できるようにしたいと考えています。それ以外の唯一のアクションは、選択したメトリック/時間枠のデータ傾向を表示できることです。このタイプのスキーマを正しく配置するにはどうすればよいですか?
私はこのように私のテーブルを構造化:
Table: Metric
Fields: id int prim key, name text
Table: MetricPoint
Fields: id int prim key, metric_id int (foreign key to Metric.id), value real, timestamp long
が、これはそれを行うための正しい方法ですか?あるいは、追加された各メトリックに対して動的に新しいテーブルを作成する必要がありますか?それとも列にするのか?
私はそれが明らかにアンチパターンとみなされるエンティティ - 属性値のモデリングを、使用しているため、この電流配置が悪かったと言われていました:https://en.wikipedia.org/wiki/Entity%E2%80%93attribute%E2%80%93value_model
誰かが私がそれを構造化した方法は、それがアンチ・パターンと呼ばれていたので、間違っていたと言いました。 EAXフォーム?編集:EAVフォーム、https://en.wikipedia.org/wiki/Entity%E2%80%93attribute%E2%80%93value_model – user6757597
これは標準的な1:Mの関係であり、必要なものについてのあなたの説明ごとに完全ですトラック。誰でも詳細な説明が必要な場合は、ここに返信してください。なぜそれらが間違っているのかを伝えることができます(実際はこれは基本的なものです)。 – jleach
私のコメント – user6757597