問題タブ [document-storage]
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.
versioning - CouchDB のバージョン管理戦略
バージョン管理を実装するための実行可能な戦略は次のとおりです (サンプル ドキュメント タイプとして「例」を使用)。
type フィールドが example_original という名前の元のドキュメントを 1 つ用意します。
ドキュメントに対するその後の変更はすべて、タイプ example_change と example_original ドキュメントの ID をキーとして持ちます。変更にはタイムスタンプも含まれます。
すべての example_change が「適用」された example_original の結果であるタイプ example_current の 1 つのドキュメントを保持します。新しい example_change ドキュメントは、このドキュメントに自動的に適用されます。
特定のバージョンを見つけるには、example_original doc を取得し、必要な変更を適用します (ほとんどの場合、特定のタイムスタンプまでですが、いくつかの変更を行うこともできます)。
私のユースケースには、オリジナルへの限られた数の変更が含まれることに言及する必要があります。ほとんどの更新は、新しいオリジナル ドキュメントで構成されます。これは私の現在のユースケースですが、多くの変更が関係する場合に生じる問題にも興味があります。
このアプローチには、どのような長所と短所がありますか?
asp.net - データベースとファイル システムのイメージ
1 つのパッケージでエクストラネットとイントラネット全体を強化するバックエンド CMS システム全体を構築するプロジェクトが進行中です。私が答えを見つけようとしてきた質問は、データベース (SQL Server 2005) にイメージを保存して、整合性、単一のレプリケーション プランなどを確保することと、ファイル システムに保存することのどちらが優れているかということです。
私たちが抱えている問題の 1 つは、常に同じデータを保持する必要がある複数のサーバーが負荷分散されていることです。今のところ、SQL レプリケーションがそれを処理していますが、ファイル レプリケーションは少し難しいようです。私たちが抱えているもう 1 つの懸念は、同じ画像の複数の解像度を持ちたいということです。ファイル システムに各バージョンを作成して保存するのが最善なのか、それとも要求に応じて必要な解像度の画像を動的にプルして作成するのがよいのかわかりません。
私たちの懸念は次のとおりです。
- データの整合性
- データ複製
- 複数の解像度
- データベースとファイル システムの速度
- データベースとファイル システムのオーバーヘッド ロード
- データ管理とバックアップ
誰かが同様の状況を持っているか、推奨されるものについて意見を持っていますか? 助けてくれてありがとう!
mongodb - NoSQL ドキュメント ストア データベースを使用する実際の使用例は何ですか?
過去数日間、Mongo DB に固有のドキュメントを読んだり、スクリーンキャストを見たりしてきましたが、このようなソリューションが典型的な pg または mysql 環境よりも優れているのはいつなのか途方に暮れています。
具体的には、私の質問は、どのような状況(ユースケースがあればいいでしょう)でnosqlルートに行きたいですか?
ありがとう!
nosql - NoSQLのドキュメントに子を追加することに制限しますか?
多くの子を所有するオブジェクトの例がドキュメントデータベース(couchdbなど)で提供されている場合、子を親オブジェクトに追加することを常にお勧めします。ブログ投稿の場合、これは、すべてのコメントを親ブログ投稿オブジェクトの子として追加することを意味します。
しかし、これを行うとかなり早く限界にぶつかりませんか?投稿に800件のコメントがある場合はどうなりますか?1ページに100個のコメントしか表示しなかった場合、帯域幅と処理の大きな浪費にはなりません(ただし、1ページにすべてのコメントを表示する人もいます)。フォーラムのスレッドや、多数の子を持つ可能性のあるその他のものについても同じです。
- これを処理するためのより良い方法はありますか?
- オブジェクトのサイズに制限はありますか?
- 更新のたびに(新しいコメントごとに)オブジェクト全体が再度作成されるため、MVCCはこれにどのように関与しますか?データベースが短時間で800コピーのブログ投稿でいっぱいになる可能性がありますか?
java - Android でのファイルベースのドキュメント ストレージ
私は Android 用のメモ作成アプリケーションの初期段階にあり、誰かがメモ データを保存するための優れたソリューションを教えてくれることを願っています。
理想的には、次のようなソリューションを探しています。
- 各メモ ドキュメントは個別のファイルです (ドロップボックスの同期用)。
- メモは複数のページで構成できます
- ノート ページにはバイナリ データ (画像など) を含めることができます。
- ドキュメント全体をメモリに解析しなくても、1 つのページを読み込むことができます。
- スレッド セーフ: 複数の読み取り/書き込みが同時に発生する可能性があります。
一度に 1 つのページを抽出する良い方法がないため、XML は (少なくともファイル全体に対して) ありません。zip ファイルの使用を検討しましたが (特に圧縮されている場合)、ファイル全体の読み込みも滞ると思います。
これを行うJavaライブラリがそこにあるはずのようですが、私のgoogle-fuは失敗しています。私が考えることができる他の唯一の代替手段は、すべてのメモに対して個別の sqlite データベースを作成することです。
この問題の良い解決策を知っている人はいますか? ありがとう!
c++ - 埋め込み可能なドキュメント ストア データベース
RDBMS とは対照的に、SQLite に似たドキュメント指向のデータベースはありますか?
Orientは私が探していたものと似ているように見えましたが、Java で書かれており、C++ から使用できるものを探しています。
理想的には、これは SQLite のようなサーバーレス システムです。
svn - 変更管理の目的でドキュメントを保存するsvn
プロジェクト関連のドキュメントをsvnに保存するのは良い考えですか?このために推奨できるドキュメント管理アプリ(SharePoint?)はありますか?問題は、中規模のソフトウェアハウス(20人の開発者)です。
database - テキスト、svg、html、css をまとめて効率的に保存する方法
アプリケーションでは、ユーザーがテキストを書き込んだり、SVG を描画したり、画像を挿入したりできるFabric.js
を使用してい
ます。このデータを保存する最善の方法を知りたいです。
要件は次のとおりです。
データ(テキスト)をクエリする機能。これにより、DBに保存する必要があることがわかります(現在のMySQL)
私は画像を持っており、IPad もターゲットにしているので、画像がどのように保存されるかという点で重要です。
SVG と HTML/CSS も保存されます。
また、Quora のようにコンテンツのバージョン管理を行い、ユーザーが過去のバージョンから現在のバージョンへの変更を確認できるようにしたいと考えています。これには、画像と SVG のバージョン管理も含まれます。
Google ドキュメントにはドキュメントや図面なども保存されているため、Google ドキュメントがどのように機能するのか疑問に思っています。
これを行う最善の方法は何ですか?
mongodb - ドキュメントバージョン管理システムのmongodbとsql
私はコンピューターエンジニアの学生で、基本的に簡単な課題がありますが、もう少し面白くしたいと思います:)。基本的に、Javaまたは.NETを使用して、単純なマルチユーザーのオンラインドキュメントバージョン管理システムを作成する必要があります。私は.NETの人なので、ASP.NETまたはSilverlightを使用します(まだ決定されていません)。
とにかく興味深い部分:MongoDBを使用して、ドキュメント(事実上、ビデオ、オーディオ、単純なMSOfficeファイル、プレーンテキスト)、各バージョン、および関連するメタデータ(ライブラリ、フォルダー)を保存したいと思います。等)。ユーザーや権限など(仕様はまだ完成していません)など、他のものを通常のリレーショナルデータベースに入れたいと思います。問題は、これについてどう思いますか?これは理にかなっていると思いますか、それとも私は全体を複雑にしすぎているだけですか?すべてにmongodbのみを使用する方が簡単ですか、それともnosqlを完全に除外する方が簡単ですか?この種のもののための慣習はありますか?:)
ところで。他の状況では、ドキュメントのバージョニングに無料のバトルテスト済みソリューションを使用しますが、これは自分で設計および実装する必要があり、少なくとも少し型破りな方法で実行しようとしています:)。
すべてのコメントをありがとう:)、どんな助けも感謝します:)挨拶
nosql - RavenDBデータモデリング
私は最近RavenDBを調べ始めましたが、それが私たちのプロジェクトのいくつかに適しているかどうかを確認しようとしました。しかし、単純なデータ構造をモデル化する「正しい」方法に関していくつかの質問に遭遇しました。私はそれを説明しようとします:
- オブジェクトには、ガイド、カテゴリ、リンクの3種類があります。
- 「ルート」ガイドには、0個以上のサブガイドを含めることができます
- ガイドには0個以上のカテゴリを含めることができます
- カテゴリには0個以上のリンクを含めることができます
視覚的に構造は次のようになります。
- ルートガイド(0以上)
- サブガイド(0以上)
- カテゴリ(0以上)
- リンク(0以上)
- カテゴリ(0以上)
- カテゴリ(0以上)
- リンク(0以上)
- サブガイド(0以上)
実際のデータでは、各ルートガイドの下に約20のルートガイドと約3〜5のサブガイドがあります。各ガイド(ルートガイドとサブガイドの両方)の下には、15〜25のカテゴリがあります。また、各カテゴリの下には5〜20のリンクがあります。
私の最初の考えは、次のようにモデル化することでした(簡略化されたモデル):
これはほとんどリレーショナルモデルであり、これはRavenDBでデータをモデル化する正しい方法ではない可能性があることを認識しています。では、代替手段は何ですか?問題は、私が次のように階層を保存したくないということだと思います。
何千ものサブオブジェクトが含まれる可能性のあるドキュメントが作成されるためです。上記のモデルは簡略化されていることに注意してください。実際には、各タイプにははるかに多くのデータがあるため、このモデルを使用した場合、RavenDBの20のルートガイドドキュメントは膨大になります。
代替案はありますか?多分それは私の長年の悪いリレーショナルデータベースの育成の話ですが、多分このシナリオは単にRavenDBに適合せず、SQLにも適合しませんか?
編集(基本的なクエリを追加)
データへのアクセスはかなり簡単です。次の要件があります。
- すべてのサブガイドを含むルートガイドのリストを選択します。
- 特定のガイド(ルートまたはサブ)については、すべてのサブガイド(ルートの場合)、カテゴリ、およびリンクを取得してください。
基本的に必要なのはそれだけです。ただし、RavenDBなどを評価する理由の1つは、いくつかの検索機能を追加することでした。すでに述べたように、説明、タグなど、リンク、カテゴリ、ガイドに関する情報がいくつかあるので、これらすべてを検索できると便利です。