問題タブ [bigtable]

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 投票する
2 に答える
3521 参照

google-app-engine - nosqlデータベースのツリー構造

データストアにBigTableを使用するGoogleAppEngine用のアプリケーションを開発しています。

ストーリーを共同で書くためのアプリケーションです。とてもシンプルな趣味のプロジェクトで、楽しみのために取り組んでいます。これはオープンソースであり、ここで見ることができます:http ://story.multifarce.com/

アイデアは、誰でも段落を書くことができ、それを他の2人が検証する必要があるということです。ストーリーは任意の段落で分岐できるため、ストーリーの別のバージョンを別の方向に続けることができます。

次のツリー構造を想像してみてください。

すべての数字は段落になります。すべてのユニークなストーリーラインのすべての段落を選択できるようにしたいと思います。基本的に、それらのユニークなストーリーラインは(2、7、2)です。(2、7、6、5); (2、7、6、11)および(2、5、9、4)。ノード「2」が2回表示されることを無視して、ウィキペディアからツリー構造図を取得しました。

また、提案されたソリューションの図を作成しました:https ://docs.google.com/drawings/edit?id=1fdUISIjGVBvIKMSCjtE4xFNZxiE08AoqvJSLQbxN6pc&hl=en

構造を設定するには、書き込みと読み取りの両方でパフォーマンスが効率的ですが、最も重要なのはどのようにすればよいですか?

0 投票する
2 に答える
763 参照

nosql - Cassandra / BigTableデータモデル-インデックスを構築するための最良のアプローチは何ですか?

PenWag.comでMySQLからCassandraへの変換を急いでいるところです。Cassandraでは、GUIDからキーオフされたユーザーを保存していますが、ユーザーはGUIDではなく電子メールでサインインします(明らかに)。ユーザーのキーとしてのGUIDは、2つの理由から、電子メールよりも私にとって理にかなっています。実用的な観点からは、すべてのSuperColumnsを含む行を変更または削除/追加するのは面倒すぎるようです。理論的な観点からは、それはまだ同じユーザーですが、なぜ彼らのキーを変更する必要がありますか?

それでも、私の質問は次のとおりです。別のColumnFamilyにインデックスを作成し、ログインをサポートするようにemail->GUIDをマッピングしています。これは標準タイプのCFであり、列名は電子メールで、値はGUIDです。マッピングごとにSC全体がロードされないようにするのは、SuperではなくStandardです。「メールの変更」のサポートは簡単で、列の削除/追加だけです。ただし、これに代わる方法は、インデックスを列ではなく行として格納することです。行キーは電子メールであり、列はGUIDを保持します。管理する列(GUID)しかないため、これらの行の削除/追加は面倒ではありません。

どちらのアプローチでもうまくいくようです。それぞれの長所と短所は何ですか?ベストプラクティスはありますか?

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

google-app-engine - GQL クエリの最適化とテーブル アーキテクチャ

Google App Engine を使用していますが、一部のデータ クエリでパフォーマンスが低下しています。App Engine データストアの設計は、SQL データベースでの作業とは異なる考え方であると読みましたが、これが最善の方法であるかどうか確信が持てません。正しい軌道に乗るために、2 つの質問があります。

具体的には:

FooタイプとタイプがありUserFooます。それぞれUserFooが対応する の「インスタンス」であり、Fooそのインスタンスに固有のデータを保持します。私のFooタイプにはfooCode一意の識別子であるプロパティがあり、それらのプロパティを使用してUserFooそれぞれをマップします。次に、次のようなコードで各 Foo を操作します。FoofooCode

注:fooCode新しい を簡単に削除して再追加Fooし、対応するすべての を再マップする必要がないように、参照キーを使用していUserFooます。

一般に:

GAE データストア テーブルを設計するための一般的なアプローチと、それらを使用するためのベスト プラクティスは何ですか?

0 投票する
2 に答える
1240 参照

google-app-engine - db.get() と db.get_by_key_name() のパフォーマンス (GAE BIgtable/Datastore)

db.get() のパフォーマンスは db.get_by_key_name() のパフォーマンスと比べてどうですか?

0 投票する
1 に答える
1008 参照

google-app-engine - 一括データアップロード時のAppEngineBadValueError-TextPropertyはStringPropertyとして解釈されます

Bulkoader.yaml:

model.py:

すべて問題ないようですが、アップロードすると次のエラーが発生します。 BadValueError: Property data is 24788 bytes long; it must be 500 or less. Consider Text instead, which can store strings of any length.

何らかの理由で、データは文字列プロパティであると見なされます。

誰かが私がこれを修正する方法を知っていますか?

0 投票する
2 に答える
1367 参照

python - App Engine Bulk Data Upload URLError: 「ピアによって接続がリセットされました」

appcfg.py を使用してローカル データ ストアにいくつかのレコードをアップロードしようとしています。

実際に挿入されるレコードはごく少数で、次の出力が得られます (大量のエラーがあります)。

何が問題なのですか?

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

python - App Engine 一括データ アップロード - 認証エラー

appcfg.py を使用してデータをアップロードしようとすると、ログインの詳細が完全に正しいにもかかわらず、認証エラーが発生します。

問題は何でしょうか?

0 投票する
1 に答える
269 参照

database - AppEngine の主キー

デフォルトでは、GAE は一意のキーをデータベース エントリに追加します。

さらに、数値の一意のキーを持つことは可能ですか?

エリアス

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

google-app-engine - AppEngineのモデルのリストプロパティに存在する値をクエリする

サンプルモデル:

  1. QueryまたはGqlQueryを使用してクエリを実行し、 barプロパティに特定の値を持つすべてのFooエンティティを返すにはどうすればよいですか?

  2. IDのリストがある場合、 idプロパティがそのリストにあるすべてのエンティティを返す単一のフィルターはありますか?

0 投票する
1 に答える
180 参照

java - アプリエンジンに参加するための解決策はありますか?

次のデータモデルがあります。

スタジアムで友達でもあるすべてのユーザーを見つけたいです。私はこのようにすることができます:

これは、非常に少数のオブジェクトで機能します。ユーザーが一握り以上の友達を持つとすぐに、これは機能しません。アプリエンジンでこれに対する解決策はありますか? 性能の良いものは思いつきません。

ありがとう

-------- いくつかのサンプルデータ --------

もし私がユーザー「john」なら、私の友達は { tim, mary } です。Stadiumname='abc' を指定してスタジアム クエリを実行すると、{ tim } が返されるはずです。