2011-06-24 11 views
0

タスク、フィード、コメントなどのさまざまなものにドキュメントのアップロードを提供しています。 また、ユーザーがドキュメントを共有したりダウンロードしたりできるドキュメントには、さまざまな権限があります。ドキュメントは非公開または公開されています。文書管理のためのデータベース設計?

すでに従来のコードとデータベースがありますが、保守性とスケーラビリティはありません。

このシナリオをすべてカバーするデータベースをどのように設計する必要がありますかを知りたいと思います。そして、それは他のユーザーのために維持可能でスケーラブルです。

例や解決策はありますか?

+0

ほとんど存在しない仕様であるため、この質問はあまりにも一般的です。一般的にデータベース/アプリケーション設計について学ぶ必要があるように思えます。 – Raoul

+0

@Raoul誰かがすでにこのようなものを設計していたら、どうすればいいのか考えてみたいです。 –

+0

アプリケーションの説明があまりにも漠然としていて、スキーマの例を示すことができません。アプリケーションの要件を検討し、独自のアプリケーションを作成する方が早いでしょう。ちょうどあなたがコピーするために働く解決策を望むように聞こえる。あなたの質問があまりにも漠然としているので、これは起こりません – Raoul

答えて

1

「仕事、フィード、コメントなどのアップロード」とは正確には分かりませんが、より詳細な情報や従来のデータベース構造を提供することができれば便利です。 (それはあなたが探していたものですか?)ここでは、ドキュメントに関するコメントのためになる...しかし、

--users-- 
uid 
name 
email 
(etc) 

--comments-- 
cid 
uid 
docid 
date 
text 

--documents-- 
docid 
uid 
upload_date 
(etc) 

--permissions-- 
pid 
docid 
uid 

「コメント」テーブルを一般的な考えです。 「アクセス権」テーブルは、ドキュメントにアクセスすることが許可されているドキュメントIDとユーザーIDの単なるリストです。または、ユーザーのグループを介してアクセス許可を定義することもできます(別のテーブルが必要ですが、そのアイデアは得られます)。

関連する問題