2

Filestream / FileTable をドキュメント ストレージとして使用するカスタム ドキュメント管理システムに取り組んでいます。

ディレクトリ構造は次のとおりです。APPNameDir --> 年 --> 月 --> ファイル

+ APPNameDir + 2015 + 12 File 1.pdf File 2.pdf + 2016 + 01 File 3.pdf File 4.pdf + 02 File 5.pdf File 6.pdf

私がやりたいことは、C# コードからストアド プロシージャを呼び出し、フォルダー ツリー (たとえば、(BooksApp/2016/03) と file_stream データを渡すことです。

次に、ストアド プロシージャで、フォルダー ツリーが既に存在するかどうかを確認し、そうでない場合は存在しないフォルダーを作成します。

この投稿を見たので、一度に 1 つのフォルダーを作成できますが、一度に複数のフォルダーを作成することはできません。

2016が存在しないかどうかを確認してから作成できると思います。次に、03月が存在しないか確認してから作成するなどを行いますが、Webアプリケーションから2秒以内にドキュメントを挿入したいので、DataBaseに数百万のドキュメントがある場合のパフォーマンスが心配です(制限はあります)。 )。数日前にパフォーマンスのベンチマークを行ったところ、Web アプリケーションからドキュメントを挿入するのに 100 ~ 300 ミリ秒かかりました。各ディレクトリの FileTable をクエリし、それらが存在しない場合はそれらを作成する必要がある場合、DB にそのような量のドキュメントがあるとパフォーマンスが低下するのではないかと心配しています。

プロジェクトで同様のニーズを経験したことがありますか? 何か案が?

4

1 に答える 1

1

このための CLR 統合プロジェクトを作成しました。 https://github.com/rhyous/Db.FileTableFramework

CreateFile、CreateDirectory、DirectoryExists など、必要なさまざまな機能や手順があります。もちろん、GitHub では、誰でも変更および改善できます。

于 2016-06-30T23:28:37.120 に答える