問題タブ [data-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.
xna - XNA ゲームでハイスコアを保存する場所は?
私は XNA で単純な 2 プレーヤー ゲームを作成しており、プレーヤーのハイスコアを保存することを検討し始めました。
ゲームを Windows だけでなく XBox 360 でも動作させたいので、フレームワークを使用してデータを保存する必要があります。
特定のユーザーのゲーマー タグにデータを保存しているようですが、私の質問は、ハイ スコアをどうするかということです。
- ユーザー自身のスコアをプロファイルに保存しますか? (そのため、自分だけがサインインしている場合にのみ、自分のスコアを確認できます)
- すべてのプロファイルで他のプレイヤーのスコアを保存してみますか? (この同期を維持しようとするのは苦痛のようです)
- スコアをオンラインで保存する
- 360 には、フレンドのハイスコアを表示する標準的な方法があるようです。これは XNA 内からアクセスできますか? それとも公開されたゲームでのみ利用できますか?
- 自分のロール。(このような小さな個人的なプロジェクトには過剰に思えます。)
c# - データを保存する最良の (無料の) 方法は? ファイルシステムの更新はどうですか?
この問題を解決する方法についてのアイデアはありますが、私の問題にもっと簡単で拡張可能なものがあるかどうか知りたいと思っていました.
私が取り組んでいるプログラムには、2 つの基本的な形式のデータがあります。画像と、それらの画像に関連付けられた情報です。画像に関連付けられた情報は、非常に単純な JET データベース (4 つのテーブル) に以前に格納されていましたが、格納されたフィールドが遅く、不完全であることが判明しました。データ ストレージの新しい実装に移行しています。関連するデータ構造の単純さを考えると、データベースはやり過ぎだと思っていました。
各画像には独自の情報 (キャプチャ パラメータ) があり、相互に関連する画像のグループの一部 (たとえば、同じ 30 分間に撮影されたもの) になり、全体としてより大きなグループの一部 (同じ人物が撮影されたもの) になります。 )。現在、一意の識別子を持つ辞書に人を保存しています。次に、各人物にはさまざまな写真グループのリストがあり、各写真グループには写真のリストがあります。これらのクラスはすべてシリアライズ可能で、辞書をシリアライズおよびデシリアライズしているだけです。かなり簡単なもの。辞書が天文学的なサイズにならないように、画像は個別に保存されます。
問題は、新しい情報フィールドを追加する必要がある場合、どうすればよいかということです。潜在的な将来のリビジョンを考慮して、これらのデータ構造をセットアップする簡単な方法はありますか? 以前は、C でこれを処理する方法は、将来の拡張性のために多数の空のバイト (少なくとも ak) を持つシリアル化可能な構造体を作成し、構造体のバイトの 1 つでバージョンを示すことでした。次に、プログラムが構造体を読み取ると、大規模な switch ステートメントに基づいて、どの逆シリアル化を使用するかがわかります (無関係なデータは無視されるフィールドに入るだけなので、古いバージョンでは新しいデータを読み取ることができます)。
そのようなスキームはC#に存在しますか? 同様に、String オブジェクトと Int オブジェクトのグループであるクラスがあり、その構造体に別の String オブジェクトを追加した場合、ディスクからオブジェクトを逆シリアル化し、それに文字列を追加するにはどうすればよいでしょうか? 複数のバージョンのデータ クラスと、逆シリアル化ストリームを受け取り、基本クラスに格納されているバージョン情報に基づいて逆シリアル化を処理するファクトリを保持する必要がありますか? または、ディスク上のすべてのフィールドを自動的に逆シリアル化する Dictionary のようなクラスは、この種の情報を格納するのに理想的ですか?新しいフィールドが追加された場合は、例外をキャッチして、それらの値を空の文字列と Int に置き換えることができますか?
辞書のアプローチを採用した場合、ファイルの読み取り/書き込みやパラメーターの取得時間に関連する速度低下はありますか? クラスにフィールドしかない場合、フィールドの取得は瞬時に行われますが、ディクショナリでは、そのクラスに関連する小さなオーバーヘッドが発生します。
ありがとう!
erlang - データがメモリに収まらない場合の Erlang アプリケーションに適したデータ ストレージ バックエンド
Erlang アプリケーションのデータ ストレージを整理する方法について、考えられるオプションを調査しています。使用するデータは基本的に、短い文字列 ID でインデックス付けされたバイナリ BLOB の膨大なコレクションです。各ブロブは 10 Kb 未満ですが、多数あります。合計で最大200 Gbのサイズになると予想されるため、明らかにメモリに収まりません。このデータに対する一般的な操作は、ID による BLOB の読み取り、ID による BLOB の更新、または新しい BLOB の追加です。1 日の特定の期間ごとに、ID のサブセットのみが使用されるため、データ ストレージ アクセスのパフォーマンスはメモリ内キャッシュの恩恵を受ける可能性があります。パフォーマンスについて言えば、非常に重要です。目標は、コモディティ ハードウェア (EC2 VM など) で 1 秒あたり約 500 回の読み取りと 500 回の更新を行うことです。
ここで何を使うべきか提案はありますか? 私が理解しているように、detsは2Gに限定されているため(または4Gでしたか?)、問題外です。記憶喪失もおそらく問題外です。私の印象では、主にデータがメモリに収まる場合を想定して設計されています。このタスクに EDTK の Berkeley DB ドライバーを試してみることを検討しています。上記のシナリオで機能しますか?同様の条件で本番環境で使用した経験のある人はいますか?
c# - ユーザー入力データの C# ストレージ
ユーザーがテキストボックスにデータを入力して「保存」ボタンをクリックすると、次回プログラムを開いたときに何らかのファイルに情報が保存されるC#プログラムを作成しようとしています。情報が自動的に読み込まれます。
Visual C# Express を使用しています。MySQL、MSSQL、Access などの何らかのデータベースを必要とせずにこれを行う最善の方法は何ですか?
唯一の方法または最も簡単な方法がデータベースである場合は、むしろ Access を使用します。その場合、プログラムのユーザーは、自分のプログラムを自分のコンピューターで実行するために Access をインストールする必要がありますか? 別のデータベースを使用するとどうなりますか?
ps
言い忘れましたが、ユーザーがこのファイルにアクセスして内容を簡単に読み取れないようにしたいのです。暗号化されていないテキスト ファイルは、簡単に開くことができます。これを暗号化する方法はありますか?また、「:」などの区切り文字を使用すると、ユーザーはその文字を使用できないことを意味します。では、他の方法は?
ありがとう!
data-storage - enCapsa - それは何で、何に使用されますか?
純粋なプログラミングの質問ではないかもしれませんが、enCapsa に関する情報を探しています。それが何であるか知っていますか、あなたはそれを使ったことがありますか?私はそれについていくつかの論文を読んでいますが、それがどのように機能し、IT企業でどのように使用できるかを実際には理解できません(これは私が見つけなければならないものです).
sql - 履歴データの保存をどのように処理するのが最適ですか?
過去のトランザクション データを保存する方法を決定しようとしています。
レコードが毎回新しいタイムスタンプで再挿入される単一のテーブルに保存する必要がありますか?
履歴データを別の「履歴」テーブルに分割し、現在のデータのみを「アクティブ」テーブルに保持する必要があります。
もしそうなら、どうすればそれを行うのが最善ですか?データを履歴テーブルに自動的にコピーするトリガーを使用しますか? または、アプリケーションのロジックを使用しますか?
Welbog のコメントによる更新:
大量の履歴データが存在します (数十万行 - 最終的には数百万行)
主に、履歴データに対して検索とレポート操作が実行されます。
パフォーマンスは懸念事項です。結果を得るために検索を一晩中実行する必要はありません。
sql - 最高のパフォーマンスのデータベースストレージメカニズム
(本当に)高性能のインメモリデータベース/ストレージメカニズムを実装するためのアイデアが必要です。20,000以上のオブジェクトを保存する範囲で、各オブジェクトは5秒ごとに更新されます。 FOSSソリューションが欲しいのですが。
私の最良の選択肢は何ですか?あなたの経験は何ですか?
私は主にJavaで作業していますが、データストアのパフォーマンスが優れている必要があるため、データストアソリューションはJava中心である必要はありません。
また、これらのオブジェクトをクエリできるようにする必要があり、プログラムの起動時にすべてのオブジェクトを復元できるようにする必要があります。
data-storage - 磁気スワイプカードのストレージ容量
磁気スワイプカード(ATMで使用されているものなど)の通常のストレージ容量に関するアイデアはありますか?
(追記:グーグルを試しましたが、満足のいくものが得られず、指摘しました)