l p
l p

Reputation: 528

Does Google Cloud offer "server-less" search API?

Google offers Datastore for the GCP which is the "C" in CQRS. But, where is the "Q" (Query)?

Datastore has, maybe justifiably, two very big limitations to making it a viable query system:

  1. No subtext searching
  2. No sorting on fields unless they've been filtered on

Google Cloud offers an "App Engine Search API", but this is not an endpoint API. It is a library API. Meaning, one must manage the infrastructure around it.

With Datastore, one of the advantages is that I can manage access via rules in a "server-less" way, so that my client app can directly deal with the Datastore (I.e "server-less").

With search API, I must write an application to index my documents using one of four supported languages, expose end points, manage scalability... Defeating the purpose of using server-less services like Datastore if I have to do all this manually anyway.

Does Google Cloud offer something more of a compliment to Datastore in the way of searching, filtering, ordering in a server-less way? Will they?

Upvotes: 1

Views: 421

Answers (1)

Frank Wilson
Frank Wilson

Reputation: 3250

With Datastore, one of the advantages is that I can manage access via rules in a "server-less" way, so that my client app can directly deal with the Datastore (I.e "server-less").

I do not think Datastore's security model is powerful enough for direct remote client (e.g. web browser) access. Specifically even with IAM for Datastore it is missing record-level permissions. The Firebase Realtime Database with its security rules would seem more appropriate.

With search API, I must write an application to index my documents using one of four supported languages, expose end points, manage scalability

Similarly you can't do direct remote client access to the search API. However the Search API is designed to work with AppEngine, which manage individual machines/instances for you and implements autoscaling based on request rate and response latencies.

Perhaps to get a truely 'serverless' setup you could combine Firebase and Algolia as described here?

Upvotes: 3

Related Questions