0
co(const levelOneQueries = function*(){
    try{
        var data = yield getResults(queries.sqlQuery1,queries.dest_sqlQ1);
        console.log("Level One Query Output",data);
    } catch(err){
        console.log('Error gettinng results',err);
        throw err;
    }
    return data;
})

const getResults = function* (sqlQuery,destTable){
    console.log('Inside From getResults');
    bigquery.startQuery({
        destination: bigquery.dataset('topshowanalysis').table(destTable),
        writeDisposition: 'WRITE_TRUNCATE',
        allowLargeResults: 'TRUE',
        query: sqlQuery
    }, (err, job) => {
        job.getQueryResults((err, rows) => {
            result = rows;
            console.log("Rows",rows);
            return result;  
        })
    })
};

我正在使用 co 库来暂停此函数/生成器 getResults。目前哪个不起作用,请帮助我解决这个 getResults 函数调用 bigQuery Query 来计算结果并将其保存在目标表中。我想等到工作完成并创建目标表。

目前 bigQuerie 的 startQuery 只给了我 jobId,我们需要 ping 它来检查作业是否完成以及是否创建了目标表。

4

0 回答 0