0
votes

I'm using the low-level google datastore api and I want to query by the key property and another property (let's call it category).

I need to query based on a list of keys for which I'll use the IN operator. I know that the max. number of values you can provide for the IN clause is 30.

I have 2 questions:

  1. Does the limit of 30 IN values apply to the key property as well?
  2. Do I need to create a composite index on {__key__ + category} or just on {category} for this query?

Thanks, Keyur

1

1 Answers

1
votes
  1. No, the limit is only on the IN values.
  2. No, you won't need an index.

If you can avoid doing IN queries, though, do so - an IN query is internally evaluated as multiple equality queries, one per element in the IN.