問題タブ [berkeley-db]
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.
java - BerkeleyDB の LOB
Berkeley DB 内に CLOB (数 100KB) を保存する通常の方法は何ですか?
uml - キー/値データストアを記述する UML の方法は?
現在、berkeleyDB を使用してデータベースのドキュメントを書いています。データストアのキーと値を説明する UML ダイアグラムを描きたいと思います。UML を使用してこの種のデータベースを記述する「標準的な」方法はありますか?
ありがとう
berkeley-db - Berkeley Db プラットフォームの移行
Windows (2K) から Linux (Redhat または Ubuntu) に移行することを考えている大規模な (数 Gb) berkeley db があります。これについてどうすればよいかわかりません。db ファイルを移動するだけでよいですか、それとも特別な変換ユーティリティが必要ですか?
c++ - Berkeley DB (コンポーネントが見つかりません)
berkeley DB に問題があります。「コンポーネントが見つかりません」というタイトルのダイアログが表示され、「libdb48.dll が見つからなかったため、このアプリケーションは開始できませんでした。アプリケーションを再インストールすると、この問題が解決する可能性があります」というメッセージが表示され、[OK] をクリックするとクラッシュします。以下の単純なコードを実行すると、エラー メッセージが表示されます。
追加のインクルード ディレクトリを "build_windows" ディレクトリに設定し、"libdb48.lib" にリンクしました。正直なところ、ここで何をすべきかわかりません。おもしろいのは、グーグルで検索したところ、0ページが返されたことです。
Visual Studio C++ 2008 と Berkeley DB 4.8.24 を使用しています。
ありがとう
database - Berkeley DB XML は実行可能なデータベース バックエンドですか?
どうやら、BDB-XML は少なくとも 2003 年から存在しているようですが、Oracle の Web サイトBerkeley DB XMLで偶然見つけたのはつい最近のことです。宣伝文句は次のとおりです。
Oracle Berkeley DB XML は、コンテナに格納され、そのコンテンツに基づいて索引付けされたドキュメントへの XQuery ベースのアクセスを備えた、オープン ソースの埋め込み可能な XML データベースです。Oracle Berkeley DB XML は、Oracle Berkeley DB の上に構築され、その豊富な機能と属性を継承しています。Oracle Berkeley DB と同様に、アプリケーションと一緒にインプロセスで実行され、人による管理は必要ありません。Oracle Berkeley DB XML は、ドキュメント パーサー、XML インデクサー、および XQuery エンジンを Oracle Berkeley DB の上に追加して、最も高速で効率的なデータ検索を可能にします。
私には、根底にあるアイデアは技術的に健全であり、おそらく CouchDB や MongoDB のような新しいドキュメント ベースの DB よりも成熟しているように思えます。私が判断できる限り、C、C++、Ruby、および Perl をサポートしています。自動選択によるマスター/スレーブ モデルを使用した自動レプリケーションなどの HA 機能もあります。
ただし、それを使用するプロジェクトが見つからないようです。根本的に何か間違っているのでしょうか?ライセンスは面倒ですか?複雑すぎませんか?
なぜ使われていないのですか?
java - 高速でスケーラブルな永続マップを推奨-Java
Javaアプリで使用するには、ディスクでバックアップされたMap構造が必要です。次の基準が必要です。
- 数百万(数十億)のレコードを保存できます
- 高速ルックアップ-マップでの操作の大部分は、キーがすでに存在するかどうかを確認するだけです。これと上記の1つが最も重要な基準です。頻繁に使用されるキーのメモリキャッシュメカニズムには効果的なものが必要です。
- 永続的ですが、トランザクションである必要はありませんが、何らかの障害が発生する可能性があります。つまり、定期的にディスクと同期でき、トランザクションである必要はありません。
- 単純なプリミティブ型を格納できますが、シリアル化されたオブジェクトを格納する必要はありません。
- 配布する必要はありません。つまり、すべてを1台のマシンで実行します。
- セットアップが簡単で、無料で使用できます。
- リレーショナルクエリは必要ありません
レコードキーは文字列またはlongになります。上記のように、読み取りは書き込みよりもはるかに頻繁に行われ、読み取りの大部分は単にキーが存在するかどうかを確認することです(つまり、キーに関連付けられたデータを読み取る必要はありません)。各レコードは1回だけ更新され、レコードは削除されません。
私は現在BdbJEを使用していますが、他のオプションを探しています。
アップデート
その後、セカンダリキーへの依存を減らすことで、既存のBDBセットアップでのクエリパフォーマンスが向上しました。一部のクエリでは、2つのセカンダリキーを結合する必要があり、それらを複合キーに結合することで、ルックアップの間接参照のレベルを削除しました。これにより、処理が大幅に高速化されます。
c++ - BerkeleyDBおよびC++の問題
ストレージにBerkeleyDBを使用する単純なC++プログラムを作成しようとしています。データベースのキーはタイプtime_t
であり、データはinteger
です。
2つのキーの間の2つの隣接するデータの違いを理解する必要があります。フラグDB_SET_RANGEでカーソルを開き、DB_NEXTを使用して繰り返します。
私の問題は、カーソルがソートされていないデータを返すことです。カーソルのカスタムソーター関数を指定する方法はありますか?
.net - 階層データとBerkeleyDB
朗報です!バージョン4.8以降、BerkeleyDBにはc#インターフェイスがあります。BerkeleyDBは、SQL以外の性質があるため、私にとって非常に興味深いものです。誰かが多くのキーと値のペアを保存したい場合、それは優れたツールであることを私は知っています。そして、私は「アタッチ可能な」テーブルについて知っています。私が知らないのは、BerkeleyDBを使用して階層データを保存する方法です。一般的にこれに適していますか?
私がやりたいこと?dmoz.orgのデータを保存したい。これで、すべてのrdfsがMySQLデータベースにインポートされました。ただし、ストアドプロシージャやその他の複雑な機能は必要ありません。オンラインRSSリーダーのデータストアとしてBerkeleyDBを使用したいと思います。したがって、カテゴリツリーにはフィードがあります(私がdmozからインポートしたカテゴリを言ったように、たくさんのフィードとフィードがあります-数百万)。そして...私はフィードアイテムを忘れました。BerkleyDBでそれらも保存したい:-)。
すべての関係を手動で実装する必要があるようです、、、大丈夫です...しかし、私が尋ねる最も重要なことは速度です。BerkeleyDBを使用したソリューションは、MySQL(または一般的なRDBMS)をベースにしたソリューションよりも高速になりますか?
django - Django + dbxml +Apache=問題。解決策はありますか?
WSGIを使用してDjangoアプリケーションをセットアップしようとしています。それはうまくいきます。ただし、BDBXMLを使用するDjangoアプリの一部で問題が発生しています。私のApache構成は次のとおりです。
ただし、まだ次のエラーが発生します。
私の環境は次のように開かれます:
使ってます:
- Python 2.6.2
- アパッチ2.2
- ubuntu 9.04
- ソースからコンパイルされたdbxml2.5.13(つまり、libdb-4.8、bsddb3、すべてのジャズ)
Apacheがlibdb-4.6にリンクしているようです。これは問題ですか?
更新しました
svn - SVN Merge はディスク容量を節約しますか?
SVN book では、差分化について「ファイルの新しいバージョンがリポジトリにコミットされるたびに、Subversion は以前のバージョン (実際にはいくつかの以前のバージョン) を新しいバージョンに対する差分としてエンコードします」と説明しています。
このcollab.net ブログ記事 には、「BDB (Berkeley Database) では、ファイルの履歴の各行の先頭にフルテキストがある」と書かれています。一方、「FSFS は逆方向にデルタを格納するため、古いバージョンを書き換える必要はありません。」
これが正しい場合、SVN (BDB を使用) はファイルの完全なコピーを各ブランチの HEAD に保存し、ブランチがマージされた場合にファイルのコピーを 1 つ削除しますか?