code: def process(self, batch):
          
          if "query" in batch:
              return self.process_query_batch(batch)
          if "read" in batch:
              return self.process_read_batch(batch)
          raise ValueError("Invalid batch")
docs: Process a single, partitioned query or read.
  
          :type batch: mapping
          :param batch:
              one of the mappings returned from an earlier call to
              :meth:`generate_query_batches`.
  
          :rtype: :class:`~google.cloud.spanner_v1.streamed.StreamedResultSet`
          :returns: a result set instance which can be used to consume rows.
          :raises ValueError: if batch does not contain either 'read' or 'query'