1

私はログ テーブルを作成しています。私はデータベース プログラマーであり、おそらくこれを行うべきではありませんが、最初のメッセージが GUID と start_time を挿入するようにテーブルを作成しています。つまり、後続のすべてのトランザクションです。データロードの属性である他の列への更新です: ftp 接続、解凍されたファイル...

なぜこれが悪い考えなのですか?恥ずかしくて頭を下げるべきですか?すっきりとしたきれいなテーブルが必要です -- 1 つのジョブ、1 つの行 (処理したファイルの独自のコンマ区切りリストを作成します (または、ID のリストはどうですか? ファイル ID のリストを作成します)ダウンロードしたファイルのテーブルに参加します... ))

はい・いいえ?バスの後ろに行きますか?

4

2 に答える 2

2

それはあなたの挿入と回収のパターンに依存します。1回のトランザクションですべてのファイルをレコードに挿入し、個々のファイル名を照会する必要がない場合は、コンマ区切りのファイルで問題ないはずです。その場合、ファイル名リストは単一のデータ項目であり、非正規化されません。

処理中にファイルをログレコードに追加する場合、または個々のファイル名をクエリ/結合する必要がある場合は、それらがデータ要素であり、それらのテーブルが必要です。

つまり、リストに追加したり、ある時点で分割したりする必要がない限り、コンマ区切りのリストを使用してもかまいません。

ファイル名について説明しましたが、このシナリオの他のタイプのデータでも同じ考え方が機能します。

于 2012-09-03T14:47:02.087 に答える
0

ほとんどの場合、ログテーブルではなくログファイルを使用する理由の 1 つは、何が起こっているか、どのように発生しているかを詳細かつ順序どおりに知りたいからです。あなたの単一の記録はこれらの詳細を提供しません...

于 2012-09-03T14:41:45.253 に答える