3

最近、管理者がデータベースからデータを削除する機能を望んでいるが、そのデータを他の場所に表示したいというデータベースのもつれに陥っていることに気づきました。例: 製品 whizbang のすべてのインスタンスを削除したいが、販売レポートには whizbang を表示したい。(前の日付で実行した場合)。

これで、その製品が削除されたかどうかを追跡する is_deleted などのフィールドを追加できるため、すべての参照が保持されますが、一定期間にわたって、大量の死んだデータを格納する可能性があります。(二度とアクセスされないデータ)。これをどのように処理するかは私の質問ではありません。

あなたの経験から、データの平均寿命はどれくらいですか? つまり、データが置換または削除されるまでの平均的な期間はどれくらいか? これはあなたが保管しているデータの種類に関連していることは理解していますが、確かにすべてのデータには何らかの寿命がありますか?

4

11 に答える 11

5

データは永久に存続します...または多くの場合、存続する必要があります。一般的な方法の 1 つは、レコードの終了日または開始日を設定することです。つまり、ウィズバンには、開始日 (正式な発売前に販売レポートに表示されないようにするため) と終了日 (寿命が過ぎた後にレポートから削除されるようにするため) があります。レポートとアプリケーションの基準として適切な日付を使用すると、必要な場合を除いて気まぐれは表示されず、データはまだ存在します (理論的には無限に存在するはずです)。

Koistya Navin が言及しているように、特定の時点でデータをデータ ウェアハウスに移動することも選択肢の 1 つですが、これは主に、「古い」データのサイズと、いつでもアクセスできるようにしておく必要がある期間に依存します。

于 2009-04-03T19:25:27.327 に答える
1

多くのお客様は、データをオンラインで 2 年間保持しています。その後、バックアップ ディスクに移動されますが、必要に応じてオンラインにすることができます。

「有効期限」または「発効日」の列を追加することを検討してください。これにより、製品を古いものとしてマークできますが、時間範囲が満たされている場合、レポートはその製品を返します。

于 2009-04-03T19:49:52.837 に答える
0

「大量のデッドデータ」はいくらですか?

処理能力とデータストレージが非常に安価であるため、本当に正当な理由がない限り、古いデータを削除することはありません。また、法的な意味を考慮する必要があります。大企業(および小規模企業)は、裁判官から召喚されたときに何百万ものデータを節約するために、古いデータの保持ポリシーを信じられないほど長くする可能性があります。

私はあなたが持っている法務部門に確認し、データを保存する必要がある期間を調べます。それが最も安全な賭けです。

また、古いデータを削除することの利点は何かを自問してください。よりきちんとしたデータベースの唯一の利点はありますか?もしそうなら、私はそれをしません。パフォーマンスが10倍向上しますか?もしそうなら、私はそれをします。しかし、これは本当に複雑な質問であり、良いアドバイスを提供するために必要なすべての情報を入手するのは困難です。

于 2009-04-03T19:26:21.363 に答える
0

顧客がすべての履歴データ(19年以上前にさかのぼる)を必要としているプロジェクトがいくつかあります。非常に古いデータのかなりの部分が不正な形式であり、新しいシステムにインポートするのは悪夢になります。私たちは、彼らが10年以上前にさかのぼる記録を必要としないことを彼らに確信させました、しかしあなたが言ったように、それはすべてあなたが収容しているデータのタイプに関連しています。

ちなみに、データストレージは現在非常に安価であり、アプリケーションのパフォーマンスに影響を与えないのであれば、そのままにしておきます。

于 2009-04-03T19:27:24.497 に答える
0

[...]しかし、確かにすべてのデータにはある種の寿命がありますか?

私たちが有意義に話すことができるどんな種類の寿命もありません。多くのデータは、作成または記録されるとすぐに役に立たなくなります。このようなデータは、効果なしにすぐに破棄される可能性があります。一方、一部のデータには、それをホストする現在のシステムよりも長持ちするのに十分な価値があります。Amazonが現在のインフラストラクチャを完全に置き換える場合でも、Amazonが保存した顧客履歴は非常に価値があります。

あなたが言ったように、それは相対的です。各タイプのデータには独自の寿命があり、別のタイプのデータの寿命とは関係ありません。意味のある「データの平均寿命」はありません。

于 2009-04-03T19:28:59.097 に答える
0

私は多くの死んだデータを収容する可能性があります。(二度とアクセスされないデータ)。

しかし、それらのレポートを実行すると、そのデータにアクセスします。

それまでは、データを何らかの形で保持する必要があります。別のテーブルに移動するか、前述のようなスイッチを用意してください。

于 2009-04-03T19:33:33.967 に答える
0

通常、そのようなデータを別のデータベース (データベース ウェアハウス) に移動し、作業データベースをクリーンな状態に保つことをお勧めします。データ ウェアハウスでは、アプリケーションに影響を与えることなく、データを何年も保持できます。

参考:ウィキペディアのデータウェアハウス

于 2009-04-03T19:23:03.963 に答える
0

私はいつも、統治体が探しているものに目を向けてきました。たとえば、IRS が 7 年間の履歴を保持することを要求している場合や、セキュリティ上の理由から 3 年間のログ情報を保持することなどを求めている場合は、次の 2 つのことを行うことができると思います。データの寿命を判断するには、3 年とします。それから、日付とともに is_deleted フラグを追加して、遅かれ早かれ削除するデータにフラグを立てることができます。

于 2009-04-03T19:23:56.223 に答える
0

はい、すべてのデータには寿命があります。はい、それはあなたが持っているデータのタイプに関連しています。

一部のデータは秒単位で測定される寿命を持ち (認証トークンなど)、他の一部のデータは仮想的に永遠です (たとえば、所有権レコードのように、保存されている媒体や形式以上のもの)。

想定しているデータの種類をより具体的にするか、通常のデータの寿命について自分の組織で国勢調査を行う必要があります。

于 2009-04-03T19:26:09.977 に答える
0

私たちの特定の味は異なります。一部のデータ (大部分) は 3 か月後に古くなりますが (製品の厳しい制限)、後で復活させることができます。

事実上不滅のデータが他にもあります。

実際には、私たちが提供するほとんどのデータは新鮮であり、散発的に使用される前に、数週間、最大で 1 か月間頻繁に要求されます。

于 2009-04-03T19:26:11.630 に答える
0

ええと...単純化しすぎるリスクがあります...ビットの代わりにDateDeletedを使用すると、保持期間の問題が解決するようです。

于 2009-04-03T19:52:16.090 に答える