クラウドバックアップからデータを読み込もうとすると、BigQueryからエラーが発生します。 GoogleのBigQueryのコンソールから
プロパティの意味はINDEX_VALUEですが、意味はありません
エラー:
クエリ:整数型のプロパティestablished_yearがINDEX_VALUEを意味するが、いずれの意味を持つことが期待されていません。 (エラーコード:invalidQuery)求人ID:csgapi:bquijob_736ab47b_156b2f2a4f8は
私はエラーがに参照しているモデルで見上げていると、それはタイプndb.IntegerPropertyです。 ndb.IntegerPropertyが拡張するPropertyクラスを見ると、new_p.set_meaning(entity_pb.Property.INDEX_VALUE)
が設定されているコメントが表示されます(Docs here)。タイプndb.IntegerPropertyの私の財産は、このINDEX_VALUEが設定されているされており、私はこれを修正するために何をしなければなりませんどのように
# Projected properties have the INDEX_VALUE meaning and only contain
# the original property's name and value.
?この中にさらに探し
EDIT
、私はプロパティがさえ、この項目に含まれていた理由として興味がありました。モデルによれば、私は不快な性質になる可能性のある2つの要素を持っています。最初のプロパティは会社であり、これはNDB.KeyPropertyですが、これは参照を作成するだけなので、そう思わないでしょう。もう1つは、インデックスに登録されておらず、クエリにマッピングされている汎用プロパティcompany_baseです。これはデータストアに保存されません。この特定の種類のデータは14GBあります。バックアップ内のすべての要素をループしてcompany_baseフィールドを検索しようとしましたが、ファイル内の要素を見つけることができません。
私はこの同じ構造を使用する他の種類を調べましたが、そのスキーマのスキーマ内に同じ「company_base」があるようには見えません。また、その要素をデータストアに保存すべきでもありません。
要素がバックアップスキーマに表示されている場合、インデックスされていないこれらのプロパティがデータストアに保存され、バックアップに表示されることがありますか?
バックアップ・スキーマからの一般的なフィールド「company_baseは」:
field {
name: "company_base"
type {
is_list: false
embedded_schema {
kind: "Company"
field {
name: "ambest_outlook"
type {
is_list: false
primitive_type: STRING
}
}
field {
name: "name_full"
type {
is_list: false
primitive_type: STRING
}
}
field {
name: "established_year"
type {
is_list: false
primitive_type: INTEGER
}
}
field {
name: "ambest_rating"
type {
is_list: false
primitive_type: STRING
}
}
field {
name: "parent_company"
type {
is_list: false
primitive_type: REFERENCE
}
}
field {
name: "sp_rating"
type {
is_list: false
primitive_type: STRING
}
}
}
}
}
スミッティ