0

私は Vogels と NodeJS を使用してきました。Vogels は、DynamoDB ローカルでのスキーマの作成を処理します。それは完璧に機能します。

何らかの理由で、DynamoDB サービスを使用して AWS にアプリをデプロイしようとすると問題が発生します。エラーが発生しています:

Details:TypeError: Cannot read property 'hashKey' of undefined

スキーマを手動でセットアップしようとしましたが、DynamoDB には AWS コンソールで hashKey のオプションがありません。次のオプションのみを提供します。

  • 主キー/パーティション (文字列/バイナリ/数値)
  • ソートキー(文字列/バイナリ/数値)

誰かがこれに遭遇したか、スキーマの作成を処理する方法を知っていますか?

4

1 に答える 1

1

主キーを 2 つ言うとき。ハッシュキーとソートキー(2つの別々の属性)を意味していると思います。

2 つの属性をハッシュ キーの一部にすることはできないことに注意してください。

ハッシュ キー - 1 つの属性

ソート キー - 1 つの属性

DynamoDB は、次の 2 種類の主キーをサポートしています。

パーティション キー - パーティション キーと呼ばれる 1 つの属性で構成される単純な主キー。DynamoDB は、パーティション キーの値を内部ハッシュ関数への入力として使用します。ハッシュ関数からの出力によって、アイテムが格納されるパーティションが決まります。テーブル内の 2 つの項目が同じパーティション キー値を持つことはできません。

パーティション キーとソート キー - 2 つの属性で構成される複合主キー。最初の属性はパーティション キーで、2 番目の属性はソート キーです。DynamoDB はパーティション キーの値を内部ハッシュ関数への入力として使用します。ハッシュ関数からの出力によって、アイテムが格納されるパーティションが決まります。同じパーティション キーを持つすべてのアイテムは、並べ替えキー値で並べ替えられた順序でまとめて格納されます。2 つのアイテムが同じパーティション キー値を持つことは可能ですが、それらの 2 つのアイテムは異なるソート キー値を持つ必要があります。

主キー

AWS コンソールでテーブルを作成するためのスクリーンショット:-

AWS コンソールでテーブルを作成する

于 2016-12-21T13:16:22.333 に答える