問題タブ [datamodel]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
database - データモデルのプロトコルに従う利点
私の質問の一部は、問題についてもう少し理解を深めることであるため、質問のタイトルはおそらく正しくありません。
データベースにインポートされるデータ (簡単な例: Access データベースへの Excel テーブル) が同じスキーマを使用して提供され、ビジネス要件にも有効であることを確認する利点を探しています。
正規化されたデータを含まない Excel テーブルと、正規化されたテーブルを含む Access データベースがあります。
Excel のテーブルは複数のサード パーティから提供されていますが、相互に、またはデータベースと同じ形式に固執するサード パーティはありません。
ソースの中には、関連するすべてのデータを提供していないものもあります。
ご提供可能例
contact_key, date, contact_title, reject_name, reject_cost, count_of_unique_contact
count_of_unique_contact は個別の contact_title から派生したものであり、インポートしないでください。contact_key が提供されない場合があります。タイトルは不明な場合があり、「n/a」、「name = ??1342」、「#N/A」などランダムに渡されます。reject_name のスペルが間違っていることがよくあります。フィールドが提供されないこともあります。たとえば、date と contact_key がありません。
上記の問題を説明するのに役立つ情報を見つけようとしています。日付が指定されていない月の不合格コストの傾向をレポートできないなど、データベースに有用なデータを保持することが困難になる誤ったデータまたはフィールドにのみ関連する問題。Excel ファイルの正規化は、私が利用できるオプションではありません。
ビジネス要件に合わせて Excel ファイルの値とフィールドを要求し、それらを送信するすべてのサード パーティに対して同じ形式にすることを望んでいますが、その要求は聞き入れられません。
偽のデータを入力し、無効な/既存の拒否/連絡先を常にチェックすることは間違っており、それを行うことは失敗するか、貧弱なシステムの継続的なメンテナンスなしではせいぜい困難になることをクライアントに説明したい.
誰でもこの問題に関する情報を持っていますか?
ありがとう
sql-server - ストアドプロシージャを使用してすべてのデータフローを制御する大規模なテーブルの長所と短所
DBA(トレーニングに2年しか使用していない)は、システム内のデータフローに必要なすべての属性を含む大規模なデータ管理テーブル(108列以上)を作成しました。このテーブルを略してBFTと呼びます。
これらの列のうち、
10はメタデータ参照用です。
15は、データソースおよび時間追跡
用です。テキストデータ用のnew / curr列の1インスタンス、
複数値の数値更新用のnew / current / delta / ratio / range列の10インスタンス:合計50列。
複数値の数値更新には、通常、2〜5個の更新グループのみが必要です。
15K〜1500KレコードのバッチがBFTにロードされ、ロジックを使用してストアドプロシージャによって処理され、それらのレコードが約30の他のテーブルの永続ストレージにシャッフルされます。
ほとんどのレコードロードでは、プロセス全体を通して50〜70の列が空になっています。
私はデータベースの専門家ではありませんが、このモデルとプロセスは少し臭いがするようですが、理由を説明するのに十分な知識がなく、代替手段を提供できずに文句を言いたくありません。
データ処理モデルに対するこの非常に小さな洞察を考えると、誰かが考えや提案を持っていますか?データベース(SQL Server)は、ほとんど空の列を持つレコードを効率的に処理することを信頼できますか、またはこの方法で処理すると、多くのサイクル/メモリなどが無駄になりますか?
asp.net - データ モデル ビジネス エンティティの更新
ビジネスデータモデルを持つビジネスエンティティにlinqを使用しているWebアプリケーションがあります。
問題は :
null 値を許可しない 1 つの列を持つテーブルがあります。このテーブルを更新しようとすると、次のエラーが発生します。エラー プロパティ 'eg Carrier' はオブジェクトのキー情報の一部であり、変更できません
私は何ができますか?
asp.net - エンティティデータモデルの外部キー
エンティティデータモデルを使用していますが、問題があります。たとえば、顧客がcategoryId(テーブルカテゴリの外部キー)を持っている場合、それはcutomersエンティティに表示されませんか???? では、どうすればこの値を取得または設定できますか?
asp.net-mvc - ASP.NET MVCのクエリに基づいてデータを画面に出力しますか?
データ内のフラグが 1 または 2 に設定されているデータをループ処理して画面に出力するアプリケーションを使用しています。
私が使用しているアイデアは、MVC チュートリアルの 1 つからのものです。
しかし、上記と同様に行いたいのですが、LINQ ステートメントを使用して必要なデータを取得します。
それ、どうやったら出来るの?
私は上記のコードの多かれ少なかれ似たようなコピーから始めましたが、それがうまくいかないことはわかっていますが、それが自分のデータで何をしたかを見ていました.
objective-c - コアデータでの関係モデリング
私は Objective C と Core Data にかなり慣れていないので、プレイヤーが 1 対 1 でチームを組んで複数の試合を行い、最終的に特定の結果が得られるケースを設計するのに問題があります。
MySQL では、Player テーブル (プレイヤーのプライマリ キー、名前) とマッチ テーブル (プレイヤー A の外部キー、プレイヤー B の外部キー、結果) を作成します。
コアデータでこれを行うにはどうすればよいですか? リレーションシップを使用して、プレイヤー エンティティをマッチ エンティティに簡単に関連付けることができます。しかし、2 番目のプレーヤー ref の逆方向をモデル化するにはどうすればよいですか。一致エンティティで?
プレイヤー
名:属性
一致:関係一致
Match
Result: 属性 PlayerA: Player との関係 (<- Player.Match の逆)
PlayerB: Player との関係 (<- ???? の逆)
誰かが私にこれについてのアイデアを与えることができれば素晴らしいでしょう!
ありがとう、スティービー。
user-interface - UI中心のデータモデルとドメイン中心のデータモデル-長所と短所
データモデルはUIおよびドメインモデルにどの程度密接に対応していますか?
たとえば、Customerテーブル、Employeeテーブルなどがある場合、データモデルはドメインモデルに非常に近くなる可能性があります。
ただし、UIはデータモデルをそれほど厳密に反映していない可能性があります。たとえば、複数のフォームがあり、すべてが他のさまざまなデータと一緒に顧客データの断片をフィードしている場合があります。この場合、各フォームからのデータを保持するために別々のテーブルを持つことができます。必要に応じて、将来の時点でデータを組み合わせることができます...または、フォームデータをCustomerテーブルに直接挿入して、データモデルがUIと十分に相関しないようにすることもできます。
何があなたにとってより良く機能することが証明されましたか?
language-agnostic - 生物学的分類データモデル
生物学的分類のための業界/標準データモデルを探しています。 ウィキペディア
database-design - Webアプリでのユーザーイベントサブスクリプション
特定のイベントグループへのユーザーサブスクリプションを持つWebアプリを開発しています。例:ユーザーがブロブにコメントを作成し、このブログを購読しているすべてのユーザーのリストにこのイベントが含まれている必要があります。
現在、このデータを保存するためのデータモデルを探しています。
すべてのイベントを1つのテーブルに保存することは、使いやすさの観点からは良い考えのようです。
- オブジェクト(例:コメント参照)
- サブスクライブ可能なオブジェクト(例:ブログ参照)
- イベントを生成したユーザー
- イベントタイプ(更新、作成など)
特定のユーザーのサブスクリプションイベントは、ユーザーサブスクリプションによってイベントをフィルタリングするSQLクエリによって収集される場合があります。
このデータモデルの問題は、サブスクライブ可能なオブジェクトが「継承」を持っている可能性があることです。例:ユーザーは、ブログまたはブログ内の特定の投稿へのサブスクリプションを持っている場合があります。つまり、ブログのサブスクリプションはサブスクリプション後の拡張であり、このデータモデルはこの動作を反映していません。この場合、ブログ用と投稿用の2つのイベントを生成する必要があります。
すべてのイベントを1つのテーブルにまとめるか、それらをいくつかの方法で異なるテーブルに分割することをお勧めしますか?とにかく、イベントテーブルには膨大な量のデータが含まれます。イベントログを整理するためのより良いアイデアはありますか?
hibernate - 翻訳可能な Hibernate モデルの設計パターン
私は(簡略化された)次のようなHibernateモデルを持っています:
(エンドユーザーによって) 任意の多くの言語に翻訳可能であるが、同じ ID を使用して、英語またはドイツ語でポリシー (行が追加される) を要求し、関連するバージョンを取得できるように、coverageText が必要です。 getCoverageText() によって返されるテキストの。他のフィールドはデータベースで翻訳できず、リソース ファイルを使用して翻訳されるため、DB 内のオブジェクトの複数のバージョンは望ましくありません。
私の暫定的な計画は、JSON clob フィールドを作成し、その中にすべての値を格納することです ([{"lang":"en","value","...."}],[{"lang":"de " ...}])、言語を一時フィールドとして設定し、get/set メソッドを使用して JSON を操作しますが、これは実際にはベスト プラクティスとは言えません。または、行 ID、言語、および文字列を含む 2 番目のテーブルを作成しますが、それは、より多くの SQL-y データを保持する以外に、データ モデルを大幅に拡張する可能性があります。
助言がありますか?