/** * Creates a dataset. * * Example: * ``` * $dataset = $bigQuery->createDataset('aDataset'); * ``` * * @see https://cloud.google.com/bigquery/docs/reference/v2/datasets/insert Datasets insert API documentation. * * @param string $id The id of the dataset to create. * @param array $options [optional] { * Configuration options. * * @type array $metadata The available options for metadata are outlined * at the * [Dataset Resource API docs](https://cloud.google.com/bigquery/docs/reference/v2/datasets#resource) * } * @return Dataset */ public function createDataset($id, array $options = []) { if (isset($options['metadata'])) { $options += $options['metadata']; unset($options['metadata']); } $response = $this->connection->insertDataset(['projectId' => $this->projectId, 'datasetReference' => ['datasetId' => $id]] + $options); return new Dataset($this->connection, $id, $this->projectId, $response); }
/** * Triggers a network request to reload the query's details. * * Useful when needing to poll an incomplete query * for status. Configuration options will be inherited from * {@see Google\Cloud\BigQuery\Job::queryResults()} or * {@see Google\Cloud\BigQuery\BigQueryClient::runQuery()}, but they can be * overridden if needed. * * Example: * ``` * $queryResults->isComplete(); // returns false * sleep(1); // let's wait for a moment... * $queryResults->reload(); // executes a network request * $queryResults->isComplete(); // true * ``` * * @see https://cloud.google.com/bigquery/docs/reference/v2/jobs/getQueryResults * Jobs getQueryResults API documentation. * * @param array $options [optional] { * Configuration options. * * @type int $maxResults Maximum number of results to read. * @type int $startIndex Zero-based index of the starting row. * @type int $timeoutMs How long to wait for the query to complete, in * milliseconds. **Defaults to** `10000` milliseconds (10 seconds). * } * @return array */ public function reload(array $options = []) { $options += $this->identity; return $this->info = $this->connection->getQueryResults($options + $this->reloadOptions); }
/** * Triggers a network request to reload the job's details. * * Example: * ``` * echo $job->isComplete(); // false * sleep(1); // let's wait for a moment... * $job->reload(); // execute a network request * echo $job->isComplete(); // true * ``` * * @see https://cloud.google.com/bigquery/docs/reference/v2/jobs/get Jobs get API documentation. * * @param array $options [optional] Configuration options. * @return array */ public function reload(array $options = []) { return $this->info = $this->connection->getJob($options + $this->identity); }