問題タブ [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.

0 投票する
8 に答える
350 参照

c# - キーと値のペアのリストからオブジェクトを構築しようとする場合の優れた設計は何ですか?

したがって、テキストファイルを解析してキーと値のペアのリストのリスト返す メソッドがあり、返されたkvpsからオブジェクトを作成したい場合(kvpsの各リストは異なるオブジェクトを表します)、最良のメソッドは何でしょうか?

頭に浮かぶ最初の方法は非常に単純で、キーワードのリストを保持するだけです。

上で定義した、必要な定数について取得したキーと照合します。これは私が取り組んでいるプロジェクトのかなりコアな部分ですが、うまくやりたいと思っています。誰かがもっと頑強な提案を持っていますか(上記の方法について本質的に頑健でないものがあると言っているわけではありません-私はただ尋ねています)?

編集:

詳細が求められています。私は暇なときに小さなゲームに取り組んでおり、構成ファイルを使用してゲームの世界を構築しています。4つあります。1つはすべてのクリーチャーを定義し、もう1つはすべてのエリア(およびマップ内のそれらの場所)を定義し、もう1つはすべてのオブジェクトを定義し、最後の1つはさまざまな構成オプションと他の場所に適合しないものを定義します。最初の3つの構成ファイルでは、ファイルの内容に基づいてオブジェクトを作成します。テキストが非常に多いため、名前、複数形、プレフィックスなどの文字列がたくさんあります。構成値はすべて次のようになります。

ここで、「-」行は新しいセクション/オブジェクトを示します。

0 投票する
5 に答える
23790 参照

c# - .NET での最も単純なキー/値ペア ファイルの解析

私のプロジェクトには、ユーザーが読み取りおよび変更できるキーと値のペア データを格納するファイルが必要です。キーがそこにあることをプログラムに期待させ、できるだけ早くファイルからキーを解析したいと考えています。

それらを XML に格納することもできますが、XML は複雑になりすぎて、ノードや子ノードなどをトラバースする必要があります。必要なのは、ファイルを取得してキーと値のペアを生成するクラスだけです。エラー処理をできるだけ少なくしたいし、できるだけ少ないコードで実行したい.

そのようなクラスを自分でコーディングすることはできますが、車輪を 2 回発明するよりも、フレームワークでどのように機能するかを学びたいと思います。そうすることができる .NET (3.5) の組み込みのマジック クラスはありますか?

0 投票する
4 に答える
2215 参照

java - Scalaris:P2Pキーバリューデータベース-ご意見をお聞かせください

なぜスカラリスを使わないのですか?

0 投票する
3 に答える
541 参照

java - キー値ストレージでコレクション (リストまたはセット) を処理する最良の方法は何ですか?

ストレージがmemcachedのようなものである場合、非常に大きなリストからアイテムを追加/削除する効果的な方法は何でしょうか? この問題をうまく処理する Java インターフェースを備えた分散ストレージがいくつかあるのではないでしょうか?

誰かがテラコッタを勧めるかもしれません。私はそれについて知っていますが、それは私が必要としているものではありません。;)

0 投票する
12 に答える
5301 参照

open-source - ビジネスで実績のあるクラウド ストア/キー=>バリュー データベースはありますか? (オープンソース)

私は長い間、クラウド コンピューティング/ストレージ ソリューションを探していました (Google Bigtable に触発されました)。しかし、使いやすくビジネスに適したソリューションが見つかりません。

Amazon の SimpleDB のようなシンプルでフォールト トレラントな分散 Key=>Value DB を探しています。

私は次のようなものを見てきました:

  1. The CouchDB Project : シンプルで分散型のフォールト トレラントなデータベース。ただし、JSON しか理解できません。XML コネクタなどはありません。
  2. Eucalyptus : 素晴らしい Amazon EC2 インターフェイス。オープン標準と XML。しかし、分散性が低く、耐障害性が低いですか? また、XEN/VMWare の問題に関するオープン チケットも多数あります。
  3. Cloudstore / Kosmosfs : 優れた分散型のフォールト トレラントな fs。しかし、構成が難しいです。Java コネクタはありますか?
  4. Apache Hadoop : データを保存する能力をはるかに超える優れたシステム。独自の Hadoop 分散ファイル システムを使用し、2000 ノードのクラスターでテスト済みです。
  5. * Amazon SimpleDB : オープンソースの代替手段が見つかりません! これは優れたシステムですが、膨大な量のデータには高価です。そして、あなたはAmazonにはまっています。

他のより良い解決策はありますか?どれを選ぶのが一番いいですか?SOF (Singe Point of Failure) の最小量を提供するのはどれですか?

0 投票する
8 に答える
337919 参照

java - Map を実装して挿入順序を保持する Java クラス?

キーと値の関連付けを持つ Java のクラスを探していますが、ハッシュは使用していません。これが私が現在行っていることです:

  1. に値を追加しますHashtable
  2. の反復子を取得しますHashtable.entrySet()
  3. すべての値を反復し、次のことを行います。
    1. Map.Entryイテレータの aを取得します。
    2. Module値に基づいてタイプのオブジェクト (カスタム クラス) を作成します。
    3. クラスを JPanel に追加します。
  4. パネルを表示します。

これに関する問題は、値を取得する順序を制御できないため、指定された順序で値を表示できないことです (順序をハードコーディングしなければ)。

ArrayListこれにはorを使用しますVectorが、コードの後半で、特定の Key のオブジェクトを取得する必要がありますが、これはorModuleでは実行できません。ArrayListVector

これを行う無料/オープンソースのJavaクラス、またはHashtable追加されたときに基づいて値を取得する方法を知っている人はいますか?

ありがとう!

0 投票する
4 に答える
3952 参照

performance - GDBM の代替または後継

C++ で実装されている負荷分散された Web 向けアプリケーションのバックエンドとして、GDBM キー値データベースがありますアプリケーションによって提供されるデータが非常に大きくなったため、管理者は GDBM ファイルを「ローカル」ストレージ (Web サーバー上、またはそのすぐ近く) から大規模な共有のリモート NFS マウント ファイルシステムに移動しました。

これはパフォーマンスに影響を与えました。当社のパフォーマンス テスト (テスト環境) では、ページの読み込み時間が数百ミリ秒 (ローカル ディスクの場合) から数秒 (NFS、ローカル ネットワーク経由) に跳ね上がり、時には 30 秒に達することもあります。問題の大部分は、アプリケーションが GDBM ファイルからランダムな読み取りを大量に行うことであり、NFS ではこれらの読み取りが遅く、本番環境ではさらに悪化すると考えています (フロントエンドとバックエンドでさえそれらの間のより多くのネットワーク ハードウェア) と、データベースがさらに大きくなるにつれて。

これは重要なアプリケーションではありませんが、パフォーマンスを改善し、アプリケーション開発者の時間や Unix 管理者などのリソースを利用できるようにしたいと考えています。私の主な制約は、数週間しかリソースを持てない時間です。

私が見ているように、私のオプションは次のとおりです。

  1. パラメータを調整して、NFS のパフォーマンスを向上させます。私の本能は、これから多くを得ることができないということですが、私は以前に間違っていました.NFSのチューニングについてはあまり知りません.

  2. memcachedbTokyo Cabinetなどの別のキー値データベースに移動します。

  3. NFS を他のプロトコルに置き換えます (iSCSI について言及されていますが、私はそれに慣れていません)。

この問題にどのようにアプローチすればよいですか?

0 投票する
4 に答える
6625 参照

c# - Windows のキー値データベース?

MongoDB と Memcached 以外に、Windows で実行されるキーと値のストアは何ですか? 私が見たもののほとんどは、Linux (Hypertable、Redis、Lightcloud) でのみ実行されるようです。

関連リンク:
ビジネスで実績のあるクラウド ストア / Key=>Value Database はありますか? (オープン ソース)
http://www.metabrew.com/article/anti-rdbms-a-list-of-distributed-key-value-stores/

0 投票する
10 に答える
55817 参照

sql - エンティティ属性値データベースと厳密なリレーショナル モデルの e コマース

EAV/CRデータベース モデルが悪いと言っても過言ではありません。そうは言っても、

質問:実行時に変更できる e コマース製品を記述する属性の「クラス」を処理するには、どのデータベース モデル、手法、またはパターンを使用する必要がありますか?

優れた電子商取引データベースでは、オプションのクラスを保存します (テレビの解像度のように、各テレビの解像度がありますが、次の製品はテレビではなく、「テレビの解像度」がない場合があります)。それらをどのように保存し、効率的に検索し、ユーザーが製品を説明する可変フィールドで製品タイプを設定できるようにしますか? 顧客が通常、コンソールの深さに基づいてテレビを検索することが検索エンジンによって判明した場合は、フィールドにコンソールの深さを追加し、実行時にテレビ製品タイプごとに 1 つの深さを追加できます。

優れた e コマース アプリには、一連の製品を表示し、「TV 解像度」をヘッダーとして表示できる「ドリルダウン」サイド メニューと、最も一般的なテレビ解像度のトップ 5 を表示する、優れた共通機能があります。見つかったセット。1 つをクリックすると、その解像度のテレビのみが表示され、サイド メニューで他のカテゴリを選択してさらにドリルダウンできます。これらのオプションは、実行時に追加される動的な製品属性になります。

さらなる議論:

簡単に言えば、次のセットアップを「学術的に」修正できるインターネットまたはモデルの説明にリンクはありますか? カテゴリ テーブルを提案してくれた Noel Kennedy に感謝しますが、それ以上の必要性があるかもしれません。以下では、重要性を強調するために別の方法で説明します。問題を解決するために視点の修正が必要な場合や、EAV/CR をさらに深く掘り下げる必要がある場合があります。

EAV/CR モデルに対する肯定的な反応が気に入っています。私の仲間の開発者は皆、Jeffrey Kemp が以下で触れたことを言っています。問題は:

  • エンティティは毎週属性を追加および削除します
    (検索キーワードは将来の属性を決定します)
  • 新しいエンティティが毎週到着し
    ます (製品は部品から組み立てられます)
  • 古いエンティティは毎週消えます
    (アーカイブ済み、あまり人気がなく、季節限定)

顧客は、次の 2 つの理由で製品に属性を追加したいと考えています。

  • 部門・キーワード検索・類似商品比較表
  • チェックアウト前のコンシューマ製品構成

属性には、単なるキーワード検索ではなく、意味がなければなりません。「ホイップ クリームのフロスティング」があるすべてのケーキを比較したい場合は、ケーキをクリックし、誕生日のテーマをクリックし、ホイップ クリームのフロスティングをクリックしてから、ホイップ クリームのフロスティングがあることを知っている興味深いすべてのケーキをチェックします。これはケーキに固有のものではなく、単なる例です。

0 投票する
3 に答える
9778 参照

c# - Dictionary Keys に文字制限はありますか?

.NET では、任意の文字列を辞書キーとして使用できますか? これはテンプレート エンジンの一部であり、ユーザーがカスタム ヘッダーと値を追加できるようにする予定です。

ヘッダーは「X の値」とか「分析結果と XYZ のレポートの概要」のようなものになりますが、レア キャラクターで例外が発生しないか心配です。

サイズ制限はあると思いますが、256 文字を超えると予想されます。MSDN には、この件に関する詳細はありません。