問題タブ [key-value]
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 - Java プロパティのキーに空白文字を含めることはできますか?
データベースからプロパティ (影響を与えることはできません) を取得しており、キーと値のマッピングによってそれらにアクセスしたいと考えています。プロパティ キーの 1 つに空白文字が含まれているという問題に直面しています。
これは - 正しく - 次のように解釈されます
区切り文字として解釈されないように、キーに空白を含める方法はありますか? この動作は意図したとおりだと思いますが、ここで試してみることができると思いました。
open-source - 高い[ストレージ]容量が可能なオープンソースのキー/値
次の要件を満たすキー/バリューストアを探しています。
- オープンソース
- C API(C ++も大丈夫)
- 酸
- ある程度のクラッシュリカバリ
- ファイルあたりの[ストレージ]容量が大きい
- キーと値はどちらも任意のバイナリデータです
- 組み込み(DBM、SQLiteなど)
GDBMは特に魅力的に見えます。datum
構造体がint dsize;
明確にキーと値のサイズを使用しているという事実により、 2GBに制限されています。これは問題ありません。ただし、GDBMに関する私の問題は、データベースファイルサイズの制限に関するドキュメントが見つからないことです。たとえば、BerkeleyDBは最大256TBのデータベースファイルを提供します。これが十分に大きければ、GDBMは完璧です。
GDBMファイルサイズの上限を知っている人はいますか?それが失敗した場合(または小さすぎる場合)、他にどのような提案をすることができますか?そのような獣は存在しますか?
objective-c - NSMutable 辞書にアクセスするための Objective-C の for each ループ
Objective-C で変更可能な辞書のキーと値にアクセスするのが難しいと感じています。
私がこれを持っているとしましょう:
キーと値を設定できます。今、各キーと値にアクセスしたいだけですが、設定されているキーの数がわかりません。
PHPでは、次のように非常に簡単です。
Objective-Cではどのように可能ですか?
php - 単一のコンピューターで実行される Web アプリのアーキテクチャを設計しました
単一のコンピューターで実行される Web アプリを構築し、ハードウェア リソースを可能な限り効率的に利用することを計画しています。アプリのロジックは複雑ではありません。以下は私のデザインです:
OS:Linux(CentOS5)
ウェブサーバー: Nginx
Web スクリプト: PHP
データベース:東京内閣+東京暴君
目次:スフィンクス
MySQL などの RDBMS を使用するつもりはありません。インデクサー (Sphinx) を備えたキー値ストア (東京キャビネット) が、通常の Web アプリを展開するすべてのニーズを満たし、MySQL よりもパフォーマンスが優れていると考えているためです。
私の質問は次のとおりです。この設計は、単一のコンピューターにとって効率的なアーキテクチャになるのでしょうか? またはそれを改善する方法は?
(この質問は主観的なものかもしれませんが、本当にあなたの助けが必要です)
どうもありがとうございました〜
編集:
アプリをホストするコンピューターは、8 GB ~ 16 GB のメモリ、500 G ~ 1 TB のハード ディスクなどの通常の PC です。「スケーラビリティ」を考慮する必要はないと思います。Web アプリのすべての最初のステップは、1 台のマシンから開始され、常に始まります。
nosql - Cassandra 時系列データ
Cassandra を使用して、さまざまなソースからの情報ストリームを保存することを検討しています。
私たちが直面している問題の 1 つは、2 つの日付の間でクエリを実行する最善の方法です。
たとえば、日時 dt1 と日時 dt2 の間のオブジェクトを取得する必要があります。
現在、作成された UNIX タイムスタンプを実際のオブジェクトを指すキーと見なしてから、get_key_range を使用してクエリを取得して取得しますか?
明らかに、2 つのアイテムのタイムスタンプが同じ場合、これは機能しません。
これは一般的にnoSQLストアでdatetimeを行う最良の方法ですか?
activerecord - データベース用のJDBCのようなNoSQL/Key-Valueストア抽象化ライブラリはありますか?
ODBC、JDBC、ActiveRecordなどの多くのSQL抽象化ライブラリを使用しました。NoSQL / Key-Valueストアの世界での抽象化オプションは何ですか?
私は主にこれを求めています。これは、Key-Valueストアを選択した場合に、抽象化ライブラリを使用でき、ロックインされないようにするためです。これは、周りのKey-Valueストアの数を考えると重要だと思います。
relational-database - 基本的なキー値ストアに大規模なリレーショナル データベース スキーマを実装するにはどうすればよいですか?
キー値ストアに大規模なリレーショナル データベース スキーマを実装するにはどうすればよいですか?
要件は次のとおりです。
1) ストアド プロシージャや特別なデータベース ベンダー固有の機能は使用しません。
2) 索引を使用する
3) 結合を使用する
4) テーブル内の多くの複雑な型 (VARCHAR、INT、BLOB など)
5) 数十億の記録
6) 全文検索
7) タイムスタンプ付きバックアップが可能
8) トランザクションは不要 (アトミックな単一の行/フィールドの更新のみ)
database - Key Valueストアのインデックスを使用してデータベーステーブルをシミュレートする最も簡単な方法は何ですか?
Key Valueストアのインデックスを使用してデータベーステーブルをシミュレートする最も簡単な方法は何ですか?Key Valueストアには、範囲指定されたクエリや順序付けされたキーはありません。
シミュレートしたいもの(優先順位順):
- テーブルを作成する
- 列を追加する
- インデックスを作成する
- 主キーに基づくクエリ
- 任意の列に基づくクエリ
api - この API は単純すぎますか?
多数のキーバリュー ストアが利用可能です。現在、いずれかを選択して、それに固執する必要があります。キーバリュー ストア ベンダーによって作成されたものではない、独立したオープン API を使用すると、ストア間の切り替えがはるかに簡単になると思います。
したがって、誰かがアプリを一度構築し、必要に応じてキーと値のストアを変更できるように、データストアの抽象化レイヤー (ODBC に似ていますが、より単純なキーと値のストアに焦点を当てています) を構築しています。この API は単純すぎますか?
これまで見てきたすべての API は非常に多くの機能を追加しているように見えるので、追加のメソッドがいくつ必要か疑問に思っていました。
set(null) を使用してアイテムを削除でき、get が null を返す場合、これはアイテムが存在しないことを意味するという返信を受け取りました。これは 2 つの理由で良くありません。第一に、戻り値の型とステータスを混在させるのはよくないことであり、第二に、すべての言語に null の概念があるわけではありません。見る:
すべてのプログラミング言語には、NIL、null、または未定義の明確な概念がありますか?
データに対してさまざまな種類の操作を実行できるようにしたいのですが、理解しているように、すべてをキー値ストアの上に構築できます。これは正しいです?また、これらの付加価値機能も提供する必要がありますか? 例: mapreduce やインデックスなど
内部的には、Erlang と Ruby で既にこの基本的なバージョンがあり、多くの時間を節約できました。また、さまざまなキー値ストアの特定のユース ケースのパフォーマンスをテストすることもできました。