Constructor
new Job(bigQuery, id, optionsopt)
Parameters:
Name | Type | Attributes | Description | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
bigQuery |
BigQuery |
BigQuery instance. |
|||||||||
id |
string |
The ID of the job. |
|||||||||
options |
object |
<optional> |
Configuration object. Properties
|
Example
const {BigQuery} = require('@google-cloud/bigquery');
const bigquery = new BigQuery();
const job = bigquery.job('job-id');
//-
// All jobs are event emitters. The status of each job is polled
// continuously, starting only after you register a "complete" listener.
//-
job.on('complete', (metadata) => {
// The job is complete.
});
//-
// Be sure to register an error handler as well to catch any issues which
// impeded the job.
//-
job.on('error', (err) => {
// An error occurred during the job.
});
//-
// To force the Job object to stop polling for updates, simply remove any
// "complete" listeners you've registered.
//
// The easiest way to do this is with `removeAllListeners()`.
//-
job.removeAllListeners();
Members
getQueryResultsStream
Get the results of a job as a readable object stream.
Example
const through2 = require('through2');
const fs = require('fs');
const {BigQuery} = require('@google-cloud/bigquery');
const bigquery = new BigQuery();
const job = bigquery.job('job-id');
job.getQueryResultsStream()
.pipe(through2.obj(function (row, enc, next) {
this.push(JSON.stringify(row) + '\n');
next();
}))
.pipe(fs.createWriteStream('./test/testdata/testfile.json'));
Methods
cancel(callbackopt) → {Promise}
Cancel a job. Use Job#getMetadata to see if the cancel completes successfully. See an example implementation below.
Parameters:
Name | Type | Attributes | Description | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
callback |
function |
<optional> |
The callback function. Properties
|
- Source:
- See:
Example
const {BigQuery} = require('@google-cloud/bigquery');
const bigquery = new BigQuery();
const job = bigquery.job('job-id');
job.cancel((err, apiResponse) =>{
// Check to see if the job completes successfully.
job.on('error', (err) => {});
job.on('complete', (metadata) => {});
});
//-
// If the callback is omitted, we'll return a Promise.
//-
job.cancel().then((data) => {
const apiResponse = data[0];
});
exists(callbackopt) → {Promise}
Check if the job exists.
Parameters:
Name | Type | Attributes | Description | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
callback |
function |
<optional> |
The callback function. Properties
|
Example
const {BigQuery} = require('@google-cloud/bigquery');
const bigquery = new BigQuery();
const job = bigquery.job('job-id');
job.exists((err, exists) => {});
//-
// If the callback is omitted, we'll return a Promise.
//-
job.exists().then((data) => {
const exists = data[0];
});
get(callbackopt) → {Promise}
Get a job if it exists.
Parameters:
Name | Type | Attributes | Description | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
callback |
function |
<optional> |
The callback function. Properties
|
Example
const {BigQuery} = require('@google-cloud/bigquery');
const bigquery = new BigQuery();
const job = bigquery.job('job-id');
job.get((err, job, apiResponse) => {
if (!err) {
// `job.metadata` has been populated.
}
});
//-
// If the callback is omitted, we'll return a Promise.
//-
job.get().then((data) => {
const job = data[0];
const apiResponse = data[1];
});
getMetadata(callbackopt) → {Promise}
Get the metadata of the job. This will mostly be useful for checking the status of a previously-run job.
Parameters:
Name | Type | Attributes | Description | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
callback |
function |
<optional> |
The callback function. Properties
|
- Source:
- See:
Example
const {BigQuery} = require('@google-cloud/bigquery');
const bigquery = new BigQuery();
const job = bigquery.job('id');
job.getMetadata((err, metadata, apiResponse) => {});
//-
// If the callback is omitted, we'll return a Promise.
//-
job.getMetadata().then((data) => {
const metadata = data[0];
const apiResponse = data[1];
});
getQueryResults(optionsopt, callbackopt) → {Promise}
Get the results of a job.
Parameters:
Name | Type | Attributes | Description | |||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
options |
object |
<optional> |
Configuration object. Properties
|
|||||||||||||||||||||||||||||||||||
callback |
QueryResultsCallback | ManualQueryResultsCallback |
<optional> |
The
callback function. If |
- Source:
- See:
Example
const {BigQuery} = require('@google-cloud/bigquery');
const bigquery = new BigQuery();
const job = bigquery.job('job-id');
//-
// Get all of the results of a query.
//-
job.getQueryResults((err, rows) => {
if (!err) {
// rows is an array of results.
}
});
//-
// Customize the results you want to fetch.
//-
job.getQueryResults({
maxResults: 100
}, (err, rows) => {});
//-
// To control how many API requests are made and page through the results
// manually, set `autoPaginate` to `false`.
//-
function manualPaginationCallback(err, rows, nextQuery, apiResponse) {
if (nextQuery) {
// More results exist.
job.getQueryResults(nextQuery, manualPaginationCallback);
}
}
job.getQueryResults({
autoPaginate: false
}, manualPaginationCallback);
//-
// If the callback is omitted, we'll return a Promise.
//-
job.getQueryResults().then((data) => {
const rows = data[0];
});