@cubejs-backend/bigquery-driver 0.32.29 → 0.32.30
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
import { Required } from '@cubejs-backend/shared';
|
|
7
7
|
import { BigQuery, BigQueryOptions, Dataset, Job, QueryRowsResponse } from '@google-cloud/bigquery';
|
|
8
8
|
import { Bucket, Storage } from '@google-cloud/storage';
|
|
9
|
-
import { BaseDriver, DownloadTableCSVData, DriverInterface, QueryOptions,
|
|
9
|
+
import { BaseDriver, DownloadTableCSVData, DriverInterface, QueryOptions, UnloadOptions, StreamTableDataWithTypes, DownloadQueryResultsOptions, DownloadQueryResultsResult, DownloadTableMemoryData, TableStructure, DriverCapabilities } from '@cubejs-backend/base-driver';
|
|
10
10
|
import { Query } from '@google-cloud/bigquery/build/src/bigquery';
|
|
11
11
|
interface BigQueryDriverOptions extends BigQueryOptions {
|
|
12
12
|
readOnly?: boolean;
|
|
@@ -53,19 +53,79 @@ export declare class BigQueryDriver extends BaseDriver implements DriverInterfac
|
|
|
53
53
|
testConnectionTimeout?: number;
|
|
54
54
|
});
|
|
55
55
|
static driverEnvVariables(): string[];
|
|
56
|
-
|
|
56
|
+
/**
|
|
57
|
+
* Driver read-only flag.
|
|
58
|
+
*/
|
|
57
59
|
readOnly(): boolean;
|
|
60
|
+
/**
|
|
61
|
+
* Returns driver's capabilities object.
|
|
62
|
+
*/
|
|
63
|
+
capabilities(): DriverCapabilities;
|
|
64
|
+
/**
|
|
65
|
+
* Test driver's connection.
|
|
66
|
+
*/
|
|
67
|
+
testConnection(): Promise<void>;
|
|
68
|
+
/**
|
|
69
|
+
* Determines whether export bucket feature is configured or not.
|
|
70
|
+
*/
|
|
71
|
+
isUnloadSupported(): Promise<boolean>;
|
|
72
|
+
/**
|
|
73
|
+
* Returns to the Cubestore an object with links to unloaded to the
|
|
74
|
+
* export bucket data.
|
|
75
|
+
*/
|
|
76
|
+
unload(table: string, options: UnloadOptions): Promise<DownloadTableCSVData>;
|
|
77
|
+
/**
|
|
78
|
+
* Unload data from a SQL query to an export bucket.
|
|
79
|
+
*/
|
|
80
|
+
private unloadWithSql;
|
|
81
|
+
/**
|
|
82
|
+
* Unload data from a temp table to an export bucket.
|
|
83
|
+
* : Promise<TableStructure>
|
|
84
|
+
*/
|
|
85
|
+
private unloadWithTable;
|
|
86
|
+
/**
|
|
87
|
+
* Returns an array of signed URLs of the unloaded csv files.
|
|
88
|
+
*/
|
|
89
|
+
private getCsvFiles;
|
|
90
|
+
/**
|
|
91
|
+
* Executes a query and returns either query result memory data or
|
|
92
|
+
* query result stream, depending on options.
|
|
93
|
+
*/
|
|
94
|
+
downloadQueryResults(query: string, values: unknown[], options: DownloadQueryResultsOptions): Promise<DownloadQueryResultsResult>;
|
|
95
|
+
/**
|
|
96
|
+
* Executes query and returns table memory data that includes rows
|
|
97
|
+
* and queried fields types.
|
|
98
|
+
*/
|
|
99
|
+
memory(query: string, values: unknown[]): Promise<DownloadTableMemoryData & {
|
|
100
|
+
types: TableStructure;
|
|
101
|
+
}>;
|
|
102
|
+
/**
|
|
103
|
+
* Returns stream table object that includes query result stream and
|
|
104
|
+
* queried fields types.
|
|
105
|
+
*/
|
|
106
|
+
stream(query: string, values: unknown[]): Promise<StreamTableDataWithTypes>;
|
|
107
|
+
/**
|
|
108
|
+
* Returns an array of queried fields meta info.
|
|
109
|
+
*/
|
|
110
|
+
queryColumnTypes(sql: string): Promise<TableStructure>;
|
|
111
|
+
/**
|
|
112
|
+
* Returns an array of table fields meta info.
|
|
113
|
+
*/
|
|
114
|
+
tableColumnTypes(table: string): Promise<any>;
|
|
115
|
+
/**
|
|
116
|
+
* Returns generic type for the provided BQ type.
|
|
117
|
+
*/
|
|
118
|
+
toGenericType(type: string): string;
|
|
119
|
+
/**
|
|
120
|
+
* Executes query and returns queried rows.
|
|
121
|
+
*/
|
|
58
122
|
query<R = unknown>(query: string, values: unknown[], options?: QueryOptions): Promise<R[]>;
|
|
59
123
|
protected loadTablesForDataset(dataset: Dataset): Promise<{}>;
|
|
60
124
|
tablesSchema(): Promise<{}>;
|
|
61
125
|
getTablesQuery(schemaName: string): Promise<{
|
|
62
126
|
table_name: string | undefined;
|
|
63
127
|
}[]>;
|
|
64
|
-
tableColumnTypes(table: string): Promise<any>;
|
|
65
128
|
createSchemaIfNotExists(schemaName: string): Promise<void>;
|
|
66
|
-
isUnloadSupported(): Promise<boolean>;
|
|
67
|
-
stream(query: string, values: unknown[]): Promise<StreamTableData>;
|
|
68
|
-
unload(table: string): Promise<DownloadTableCSVData>;
|
|
69
129
|
loadPreAggregationIntoTable(preAggregationTableName: string, loadSql: string, params: any, options: any): Promise<any>;
|
|
70
130
|
protected awaitForJobStatus(job: Job, options: any, withResults: boolean): Promise<true | QueryRowsResponse | null>;
|
|
71
131
|
protected runQueryJob<T = QueryRowsResponse>(bigQueryQuery: Query, options: any, withResults?: boolean): Promise<T>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BigQueryDriver.d.ts","sourceRoot":"","sources":["../../src/BigQueryDriver.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAIL,QAAQ,EACT,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EACL,QAAQ,EACR,eAAe,EACf,OAAO,EACP,GAAG,EACH,iBAAiB,EAClB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EACL,UAAU,
|
|
1
|
+
{"version":3,"file":"BigQueryDriver.d.ts","sourceRoot":"","sources":["../../src/BigQueryDriver.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAIL,QAAQ,EACT,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EACL,QAAQ,EACR,eAAe,EACf,OAAO,EACP,GAAG,EACH,iBAAiB,EAClB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EACL,UAAU,EACV,oBAAoB,EACpB,eAAe,EACf,YAAY,EACZ,aAAa,EACb,wBAAwB,EACxB,2BAA2B,EAC3B,0BAA0B,EAC1B,uBAAuB,EACvB,cAAc,EAEd,kBAAkB,EACnB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,KAAK,EAAE,MAAM,2CAA2C,CAAC;AAsBlE,UAAU,qBAAsB,SAAQ,eAAe;IACrD,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;OAEG;IACH,2BAA2B,CAAC,EAAE,MAAM,CAAC;CACtC;AAED,KAAK,gCAAgC,GACnC,QAAQ,CAAC,qBAAqB,EAAE,aAAa,GAAG,iBAAiB,CAAC,CAAC;AAErE;;GAEG;AACH,qBAAa,cAAe,SAAQ,UAAW,YAAW,eAAe;IACvE;;OAEG;WACW,qBAAqB,IAAI,MAAM;IAI7C,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,gCAAgC,CAAC;IAE7D,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAEtC,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAAQ;IAElD,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAQ;IAEhD;;OAEG;gBAED,MAAM,GAAE,qBAAqB,GAAG;QAC9B;;WAEG;QACH,UAAU,CAAC,EAAE,MAAM,CAAC;QAEpB;;WAEG;QACH,WAAW,CAAC,EAAE,MAAM,CAAC;QAErB;;;WAGG;QACH,qBAAqB,CAAC,EAAE,MAAM,CAAC;KAC3B;WA0DM,kBAAkB;IAShC;;OAEG;IACI,QAAQ;IAIf;;OAEG;IACI,YAAY,IAAI,kBAAkB;IAIzC;;OAEG;IACU,cAAc;IAM3B;;OAEG;IACU,iBAAiB;IAI9B;;;OAGG;IACU,MAAM,CACjB,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,oBAAoB,CAAC;IAiBhC;;OAEG;YACW,aAAa;IA0B3B;;;OAGG;YACW,eAAe;IAiB7B;;OAEG;YACW,WAAW;IAiBzB;;;OAGG;IACU,oBAAoB,CAC/B,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,OAAO,EAAE,EACjB,OAAO,EAAE,2BAA2B,GACnC,OAAO,CAAC,0BAA0B,CAAC;IAQtC;;;OAGG;IACU,MAAM,CACjB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,OAAO,EAAE,GAChB,OAAO,CAAC,uBAAuB,GAAG;QAAE,KAAK,EAAE,cAAc,CAAA;KAAE,CAAC;IAM/D;;;OAGG;IACU,MAAM,CACjB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,OAAO,EAAE,GAChB,OAAO,CAAC,wBAAwB,CAAC;IAmBpC;;OAEG;IACU,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IA2BnE;;OAEG;IACU,gBAAgB,CAAC,KAAK,EAAE,MAAM;IAY3C;;OAEG;IACI,aAAa,CAAC,IAAI,EAAE,MAAM;IAKjC;;OAEG;IACU,KAAK,CAAC,CAAC,GAAG,OAAO,EAC5B,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,OAAO,EAAE,EACjB,OAAO,CAAC,EAAE,YAAY,GACrB,OAAO,CAAC,CAAC,EAAE,CAAC;cAqBC,oBAAoB,CAAC,OAAO,EAAE,OAAO;IA6BxC,YAAY;IASZ,cAAc,CAAC,UAAU,EAAE,MAAM;;;IAgBjC,uBAAuB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI1D,2BAA2B,CACtC,uBAAuB,EAAE,MAAM,EAC/B,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,GAAG,EACX,OAAO,EAAE,GAAG,GACX,OAAO,CAAC,GAAG,CAAC;cAeC,iBAAiB,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,WAAW,EAAE,OAAO;cAkB9D,WAAW,CAAC,CAAC,GAAG,iBAAiB,EAC/C,aAAa,EAAE,KAAK,EACpB,OAAO,EAAE,GAAG,EACZ,WAAW,GAAE,OAAc,GAC1B,OAAO,CAAC,CAAC,CAAC;cAKG,gBAAgB,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,WAAW,EAAE,OAAO;IAqBtE,eAAe,CAAC,UAAU,EAAE,MAAM;CAS1C"}
|
|
@@ -15,6 +15,24 @@ const bigquery_1 = require("@google-cloud/bigquery");
|
|
|
15
15
|
const storage_1 = require("@google-cloud/storage");
|
|
16
16
|
const base_driver_1 = require("@cubejs-backend/base-driver");
|
|
17
17
|
const HydrationStream_1 = require("./HydrationStream");
|
|
18
|
+
const BQTypeToGenericType = {
|
|
19
|
+
array: 'text',
|
|
20
|
+
bignumeric: 'double',
|
|
21
|
+
bool: 'boolean',
|
|
22
|
+
bytes: 'text',
|
|
23
|
+
date: 'date',
|
|
24
|
+
datetime: 'timestamp',
|
|
25
|
+
float64: 'double',
|
|
26
|
+
geography: 'text',
|
|
27
|
+
int64: 'bigint',
|
|
28
|
+
interval: 'text',
|
|
29
|
+
json: 'text',
|
|
30
|
+
numeric: 'double',
|
|
31
|
+
string: 'text',
|
|
32
|
+
struct: 'text',
|
|
33
|
+
time: 'timestamp',
|
|
34
|
+
timestamp: 'timestamp',
|
|
35
|
+
};
|
|
18
36
|
/**
|
|
19
37
|
* BigQuery driver.
|
|
20
38
|
*/
|
|
@@ -49,6 +67,7 @@ class BigQueryDriver extends base_driver_1.BaseDriver {
|
|
|
49
67
|
exportBucket: (0, shared_1.getEnv)('dbExportBucket', { dataSource }) ||
|
|
50
68
|
(0, shared_1.getEnv)('bigqueryExportBucket', { dataSource }),
|
|
51
69
|
location: (0, shared_1.getEnv)('bigqueryLocation', { dataSource }),
|
|
70
|
+
readOnly: true,
|
|
52
71
|
...config,
|
|
53
72
|
pollTimeout: (config.pollTimeout ||
|
|
54
73
|
(0, shared_1.getEnv)('dbPollTimeout', { dataSource }) ||
|
|
@@ -75,14 +94,208 @@ class BigQueryDriver extends base_driver_1.BaseDriver {
|
|
|
75
94
|
'CUBEJS_DB_BQ_KEY_FILE',
|
|
76
95
|
];
|
|
77
96
|
}
|
|
97
|
+
/**
|
|
98
|
+
* Driver read-only flag.
|
|
99
|
+
*/
|
|
100
|
+
readOnly() {
|
|
101
|
+
return !!this.options.readOnly;
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Returns driver's capabilities object.
|
|
105
|
+
*/
|
|
106
|
+
capabilities() {
|
|
107
|
+
return { unloadWithoutTempTable: true };
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* Test driver's connection.
|
|
111
|
+
*/
|
|
78
112
|
async testConnection() {
|
|
79
113
|
await this.bigquery.query({
|
|
80
114
|
query: 'SELECT ? AS number', params: ['1']
|
|
81
115
|
});
|
|
82
116
|
}
|
|
83
|
-
|
|
84
|
-
|
|
117
|
+
/**
|
|
118
|
+
* Determines whether export bucket feature is configured or not.
|
|
119
|
+
*/
|
|
120
|
+
async isUnloadSupported() {
|
|
121
|
+
return this.bucket !== null;
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Returns to the Cubestore an object with links to unloaded to the
|
|
125
|
+
* export bucket data.
|
|
126
|
+
*/
|
|
127
|
+
async unload(table, options) {
|
|
128
|
+
if (!this.bucket) {
|
|
129
|
+
throw new Error('Export bucket misconfigured.');
|
|
130
|
+
}
|
|
131
|
+
const types = options.query
|
|
132
|
+
? await this.unloadWithSql(table, options)
|
|
133
|
+
: await this.unloadWithTable(table);
|
|
134
|
+
const csvFile = await this.getCsvFiles(table);
|
|
135
|
+
return {
|
|
136
|
+
types,
|
|
137
|
+
csvFile,
|
|
138
|
+
csvNoHeader: false,
|
|
139
|
+
exportBucketCsvEscapeSymbol: this.options.exportBucketCsvEscapeSymbol,
|
|
140
|
+
};
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* Unload data from a SQL query to an export bucket.
|
|
144
|
+
*/
|
|
145
|
+
async unloadWithSql(table, options) {
|
|
146
|
+
if (!this.bucket) {
|
|
147
|
+
throw new Error('Export bucket misconfigured.');
|
|
148
|
+
}
|
|
149
|
+
if (!options.query) {
|
|
150
|
+
throw new Error('Unload query is missed.');
|
|
151
|
+
}
|
|
152
|
+
const types = await this.queryColumnTypes(options.query.sql);
|
|
153
|
+
const unloadSql = `
|
|
154
|
+
EXPORT DATA
|
|
155
|
+
OPTIONS (
|
|
156
|
+
uri='gs://${this.options.exportBucket}/${table}/*.csv.gz',
|
|
157
|
+
format='CSV',
|
|
158
|
+
overwrite=true,
|
|
159
|
+
header=true,
|
|
160
|
+
field_delimiter=',',
|
|
161
|
+
compression='GZIP'
|
|
162
|
+
) AS
|
|
163
|
+
${options.query.sql}`;
|
|
164
|
+
await this.query(unloadSql, []);
|
|
165
|
+
return types;
|
|
166
|
+
}
|
|
167
|
+
/**
|
|
168
|
+
* Unload data from a temp table to an export bucket.
|
|
169
|
+
* : Promise<TableStructure>
|
|
170
|
+
*/
|
|
171
|
+
async unloadWithTable(table) {
|
|
172
|
+
if (!this.bucket) {
|
|
173
|
+
throw new Error('Export bucket misconfigured.');
|
|
174
|
+
}
|
|
175
|
+
const types = await this.tableColumnTypes(table);
|
|
176
|
+
const [schema, tableName] = table.split('.');
|
|
177
|
+
const bigQueryTable = this.bigquery
|
|
178
|
+
.dataset(schema)
|
|
179
|
+
.table(tableName);
|
|
180
|
+
const [job] = await bigQueryTable.createExtractJob(this.bucket.file(`${table}/*.csv.gz`), { format: 'CSV', gzip: true });
|
|
181
|
+
await this.waitForJobResult(job, { table }, false);
|
|
182
|
+
return types;
|
|
183
|
+
}
|
|
184
|
+
/**
|
|
185
|
+
* Returns an array of signed URLs of the unloaded csv files.
|
|
186
|
+
*/
|
|
187
|
+
async getCsvFiles(table) {
|
|
188
|
+
if (!this.bucket) {
|
|
189
|
+
throw new Error('Export bucket misconfigured.');
|
|
190
|
+
}
|
|
191
|
+
const [files] = await this.bucket.getFiles({
|
|
192
|
+
prefix: `${table}/`,
|
|
193
|
+
});
|
|
194
|
+
const csvFiles = await Promise.all(files.map(async (file) => {
|
|
195
|
+
const [url] = await file.getSignedUrl({
|
|
196
|
+
action: 'read',
|
|
197
|
+
expires: new Date(new Date().getTime() + 60 * 60 * 1000),
|
|
198
|
+
});
|
|
199
|
+
return url;
|
|
200
|
+
}));
|
|
201
|
+
return csvFiles;
|
|
202
|
+
}
|
|
203
|
+
/**
|
|
204
|
+
* Executes a query and returns either query result memory data or
|
|
205
|
+
* query result stream, depending on options.
|
|
206
|
+
*/
|
|
207
|
+
async downloadQueryResults(query, values, options) {
|
|
208
|
+
if (!options.streamImport) {
|
|
209
|
+
return this.memory(query, values);
|
|
210
|
+
}
|
|
211
|
+
else {
|
|
212
|
+
return this.stream(query, values);
|
|
213
|
+
}
|
|
85
214
|
}
|
|
215
|
+
/**
|
|
216
|
+
* Executes query and returns table memory data that includes rows
|
|
217
|
+
* and queried fields types.
|
|
218
|
+
*/
|
|
219
|
+
async memory(query, values) {
|
|
220
|
+
const types = await this.queryColumnTypes(query);
|
|
221
|
+
const rows = await this.query(query, values);
|
|
222
|
+
return { types, rows };
|
|
223
|
+
}
|
|
224
|
+
/**
|
|
225
|
+
* Returns stream table object that includes query result stream and
|
|
226
|
+
* queried fields types.
|
|
227
|
+
*/
|
|
228
|
+
async stream(query, values) {
|
|
229
|
+
const types = await this.queryColumnTypes(query);
|
|
230
|
+
const stream = await this.bigquery.createQueryStream({
|
|
231
|
+
query,
|
|
232
|
+
params: values,
|
|
233
|
+
parameterMode: 'positional',
|
|
234
|
+
useLegacySql: false
|
|
235
|
+
});
|
|
236
|
+
const rowStream = new HydrationStream_1.HydrationStream();
|
|
237
|
+
stream.pipe(rowStream);
|
|
238
|
+
return {
|
|
239
|
+
rowStream,
|
|
240
|
+
types,
|
|
241
|
+
release: async () => {
|
|
242
|
+
//
|
|
243
|
+
}
|
|
244
|
+
};
|
|
245
|
+
}
|
|
246
|
+
/**
|
|
247
|
+
* Returns an array of queried fields meta info.
|
|
248
|
+
*/
|
|
249
|
+
async queryColumnTypes(sql) {
|
|
250
|
+
const rowSql = `${sql} LIMIT 1`;
|
|
251
|
+
const row = (await this.runQueryJob({
|
|
252
|
+
query: rowSql,
|
|
253
|
+
params: [],
|
|
254
|
+
parameterMode: 'positional',
|
|
255
|
+
useLegacySql: false
|
|
256
|
+
}, {}))[0][0];
|
|
257
|
+
const cols = Object.keys(row)
|
|
258
|
+
.map((f) => (`bqutil.fn.typeof(${f}) AS ${f}`))
|
|
259
|
+
.join(', ');
|
|
260
|
+
const typesSql = `
|
|
261
|
+
WITH ORIGIN AS (${rowSql})
|
|
262
|
+
SELECT ${cols}
|
|
263
|
+
FROM ORIGIN`;
|
|
264
|
+
const types = (await this.runQueryJob({
|
|
265
|
+
query: typesSql,
|
|
266
|
+
params: [],
|
|
267
|
+
parameterMode: 'positional',
|
|
268
|
+
useLegacySql: false
|
|
269
|
+
}, {}))[0][0];
|
|
270
|
+
return Object.keys(types).map((f) => ({
|
|
271
|
+
name: f,
|
|
272
|
+
type: this.toGenericType(types[f]),
|
|
273
|
+
}));
|
|
274
|
+
}
|
|
275
|
+
/**
|
|
276
|
+
* Returns an array of table fields meta info.
|
|
277
|
+
*/
|
|
278
|
+
async tableColumnTypes(table) {
|
|
279
|
+
const [schema, name] = table.split('.');
|
|
280
|
+
const [bigQueryTable] = await this.bigquery
|
|
281
|
+
.dataset(schema)
|
|
282
|
+
.table(name)
|
|
283
|
+
.getMetadata();
|
|
284
|
+
return bigQueryTable.schema.fields.map((c) => ({
|
|
285
|
+
name: c.name,
|
|
286
|
+
type: this.toGenericType(c.type),
|
|
287
|
+
}));
|
|
288
|
+
}
|
|
289
|
+
/**
|
|
290
|
+
* Returns generic type for the provided BQ type.
|
|
291
|
+
*/
|
|
292
|
+
toGenericType(type) {
|
|
293
|
+
return BQTypeToGenericType[type.toLowerCase()] ||
|
|
294
|
+
super.toGenericType(type.toLowerCase());
|
|
295
|
+
}
|
|
296
|
+
/**
|
|
297
|
+
* Executes query and returns queried rows.
|
|
298
|
+
*/
|
|
86
299
|
async query(query, values, options) {
|
|
87
300
|
const data = await this.runQueryJob({
|
|
88
301
|
query,
|
|
@@ -90,7 +303,9 @@ class BigQueryDriver extends base_driver_1.BaseDriver {
|
|
|
90
303
|
parameterMode: 'positional',
|
|
91
304
|
useLegacySql: false
|
|
92
305
|
}, options);
|
|
93
|
-
return (data[0] && data[0].map(row => ramda_1.default.map(value => (value && value.value && typeof value.value === 'string'
|
|
306
|
+
return (data[0] && data[0].map(row => ramda_1.default.map(value => (value && value.value && typeof value.value === 'string'
|
|
307
|
+
? value.value
|
|
308
|
+
: value), row)));
|
|
94
309
|
}
|
|
95
310
|
async loadTablesForDataset(dataset) {
|
|
96
311
|
try {
|
|
@@ -137,52 +352,9 @@ class BigQueryDriver extends base_driver_1.BaseDriver {
|
|
|
137
352
|
throw e;
|
|
138
353
|
}
|
|
139
354
|
}
|
|
140
|
-
async tableColumnTypes(table) {
|
|
141
|
-
const [schema, name] = table.split('.');
|
|
142
|
-
const [bigQueryTable] = await this.bigquery.dataset(schema).table(name).getMetadata();
|
|
143
|
-
return bigQueryTable.schema.fields.map((c) => ({ name: c.name, type: this.toGenericType(c.type) }));
|
|
144
|
-
}
|
|
145
355
|
async createSchemaIfNotExists(schemaName) {
|
|
146
356
|
await this.bigquery.dataset(schemaName).get({ autoCreate: true });
|
|
147
357
|
}
|
|
148
|
-
async isUnloadSupported() {
|
|
149
|
-
return this.bucket !== null;
|
|
150
|
-
}
|
|
151
|
-
async stream(query, values) {
|
|
152
|
-
const stream = await this.bigquery.createQueryStream({
|
|
153
|
-
query,
|
|
154
|
-
params: values,
|
|
155
|
-
parameterMode: 'positional',
|
|
156
|
-
useLegacySql: false
|
|
157
|
-
});
|
|
158
|
-
const rowStream = new HydrationStream_1.HydrationStream();
|
|
159
|
-
stream.pipe(rowStream);
|
|
160
|
-
return {
|
|
161
|
-
rowStream,
|
|
162
|
-
};
|
|
163
|
-
}
|
|
164
|
-
async unload(table) {
|
|
165
|
-
if (!this.bucket) {
|
|
166
|
-
throw new Error('Unload is not configured');
|
|
167
|
-
}
|
|
168
|
-
const destination = this.bucket.file(`${table}-*.csv.gz`);
|
|
169
|
-
const [schema, tableName] = table.split('.');
|
|
170
|
-
const bigQueryTable = this.bigquery.dataset(schema).table(tableName);
|
|
171
|
-
const [job] = await bigQueryTable.createExtractJob(destination, { format: 'CSV', gzip: true });
|
|
172
|
-
await this.waitForJobResult(job, { table }, false);
|
|
173
|
-
const [files] = await this.bucket.getFiles({ prefix: `${table}-` });
|
|
174
|
-
const urls = await Promise.all(files.map(async (file) => {
|
|
175
|
-
const [url] = await file.getSignedUrl({
|
|
176
|
-
action: 'read',
|
|
177
|
-
expires: new Date(new Date().getTime() + 60 * 60 * 1000),
|
|
178
|
-
});
|
|
179
|
-
return url;
|
|
180
|
-
}));
|
|
181
|
-
return {
|
|
182
|
-
exportBucketCsvEscapeSymbol: this.options.exportBucketCsvEscapeSymbol,
|
|
183
|
-
csvFile: urls,
|
|
184
|
-
};
|
|
185
|
-
}
|
|
186
358
|
async loadPreAggregationIntoTable(preAggregationTableName, loadSql, params, options) {
|
|
187
359
|
const [dataSet, tableName] = preAggregationTableName.split('.');
|
|
188
360
|
const bigQueryQuery = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BigQueryDriver.js","sourceRoot":"","sources":["../../src/BigQueryDriver.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"BigQueryDriver.js","sourceRoot":"","sources":["../../src/BigQueryDriver.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;AAEH,mDAKgC;AAChC,kDAAsB;AACtB,qDAMgC;AAChC,mDAAwD;AACxD,6DAaqC;AAErC,uDAAoD;AAEpD,MAAM,mBAAmB,GAA2B;IAClD,KAAK,EAAE,MAAM;IACb,UAAU,EAAE,QAAQ;IACpB,IAAI,EAAE,SAAS;IACf,KAAK,EAAE,MAAM;IACb,IAAI,EAAE,MAAM;IACZ,QAAQ,EAAE,WAAW;IACrB,OAAO,EAAE,QAAQ;IACjB,SAAS,EAAE,MAAM;IACjB,KAAK,EAAE,QAAQ;IACf,QAAQ,EAAE,MAAM;IAChB,IAAI,EAAE,MAAM;IACZ,OAAO,EAAE,QAAQ;IACjB,MAAM,EAAE,MAAM;IACd,MAAM,EAAE,MAAM;IACd,IAAI,EAAE,WAAW;IACjB,SAAS,EAAE,WAAW;CACvB,CAAC;AAoBF;;GAEG;AACH,MAAa,cAAe,SAAQ,wBAAU;IAC5C;;OAEG;IACI,MAAM,CAAC,qBAAqB;QACjC,OAAO,EAAE,CAAC;IACZ,CAAC;IAUD;;OAEG;IACH,YACE,SAgBI,EAAE;QAEN,KAAK,CAAC;YACJ,qBAAqB,EAAE,MAAM,CAAC,qBAAqB;SACpD,CAAC,CAAC;QA5Bc,YAAO,GAAmB,IAAI,CAAC;QAE/B,WAAM,GAAkB,IAAI,CAAC;QA4B9C,MAAM,UAAU,GACd,MAAM,CAAC,UAAU;YACjB,IAAA,yBAAgB,EAAC,SAAS,CAAC,CAAC;QAE9B,IAAI,CAAC,OAAO,GAAG;YACb,MAAM,EAAE;gBACN,0CAA0C;gBAC1C,uCAAuC;aACxC;YACD,SAAS,EAAE,IAAA,eAAM,EAAC,mBAAmB,EAAE,EAAE,UAAU,EAAE,CAAC;YACtD,WAAW,EAAE,IAAA,eAAM,EAAC,iBAAiB,EAAE,EAAE,UAAU,EAAE,CAAC;YACtD,WAAW,EAAE,IAAA,eAAM,EAAC,qBAAqB,EAAE,EAAE,UAAU,EAAE,CAAC;gBACxD,CAAC,CAAC,IAAI,CAAC,KAAK,CACV,MAAM,CAAC,IAAI,CACT,IAAA,eAAM,EAAC,qBAAqB,EAAE,EAAE,UAAU,EAAE,CAAC,EAC7C,QAAQ,CACT,CAAC,QAAQ,CAAC,MAAM,CAAC,CACnB;gBACD,CAAC,CAAC,SAAS;YACb,YAAY,EACV,IAAA,eAAM,EAAC,gBAAgB,EAAE,EAAE,UAAU,EAAE,CAAC;gBACxC,IAAA,eAAM,EAAC,sBAAsB,EAAE,EAAE,UAAU,EAAE,CAAC;YAChD,QAAQ,EAAE,IAAA,eAAM,EAAC,kBAAkB,EAAE,EAAE,UAAU,EAAE,CAAC;YACpD,QAAQ,EAAE,IAAI;YAEd,GAAG,MAAM;YAET,WAAW,EAAE,CACX,MAAM,CAAC,WAAW;gBAClB,IAAA,eAAM,EAAC,eAAe,EAAE,EAAE,UAAU,EAAE,CAAC;gBACvC,IAAA,eAAM,EAAC,gBAAgB,EAAE,EAAE,UAAU,EAAE,CAAC,CACzC,GAAG,IAAI;YACR,eAAe,EAAE,CACf,MAAM,CAAC,eAAe;gBACtB,IAAA,eAAM,EAAC,mBAAmB,EAAE,EAAE,UAAU,EAAE,CAAC,CAC5C,GAAG,IAAI;YACR,2BAA2B,EACzB,IAAA,eAAM,EAAC,+BAA+B,EAAE,EAAE,UAAU,EAAE,CAAC;SAC1D,CAAC;QAEF,IAAA,eAAM,EAAC,oBAAoB,EAAE;YAC3B,UAAU;YACV,SAAS,EAAE,CAAC,KAAK,CAAC;SACnB,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,GAAG,IAAI,mBAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC3C,IAAI,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE;YAC7B,IAAI,CAAC,OAAO,GAAG,IAAI,iBAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACzC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;SAC9D;IACH,CAAC;IAEM,MAAM,CAAC,kBAAkB;QAC9B,oEAAoE;QACpE,4BAA4B;QAC5B,OAAO;YACL,yBAAyB;YACzB,uBAAuB;SACxB,CAAC;IACJ,CAAC;IAED;;OAEG;IACI,QAAQ;QACb,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;IACjC,CAAC;IAED;;OAEG;IACI,YAAY;QACjB,OAAO,EAAE,sBAAsB,EAAE,IAAI,EAAE,CAAC;IAC1C,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,cAAc;QACzB,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;YACxB,KAAK,EAAE,oBAAoB,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC;SAC3C,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,iBAAiB;QAC5B,OAAO,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC;IAC9B,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,MAAM,CACjB,KAAa,EACb,OAAsB;QAEtB,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YAChB,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;SACjD;QACD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK;YACzB,CAAC,CAAC,MAAM,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,OAAO,CAAC;YAC1C,CAAC,CAAC,MAAM,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;QACtC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAC9C,OAAO;YACL,KAAK;YACL,OAAO;YACP,WAAW,EAAE,KAAK;YAClB,2BAA2B,EACzB,IAAI,CAAC,OAAO,CAAC,2BAA2B;SAC3C,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,aAAa,CACzB,KAAa,EACb,OAAsB;QAEtB,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YAChB,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;SACjD;QACD,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE;YAClB,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;SAC5C;QACD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC7D,MAAM,SAAS,GAAG;;;kBAGJ,IAAI,CAAC,OAAO,CAAC,YAAY,IAAI,KAAK;;;;;;;MAO9C,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;QACtB,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QAChC,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,eAAe,CAAC,KAAa;QACzC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YAChB,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;SACjD;QACD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;QACjD,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC7C,MAAM,aAAa,GAAG,IAAI,CAAC,QAAQ;aAChC,OAAO,CAAC,MAAM,CAAC;aACf,KAAK,CAAC,SAAS,CAAC,CAAC;QACpB,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,aAAa,CAAC,gBAAgB,CAChD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,WAAW,CAAC,EACrC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,CAC9B,CAAC;QACF,MAAM,IAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,EAAE,KAAK,CAAC,CAAC;QACnD,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,WAAW,CAAC,KAAa;QACrC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YAChB,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;SACjD;QACD,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;YACzC,MAAM,EAAE,GAAG,KAAK,GAAG;SACpB,CAAC,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,EAAC,IAAI,EAAC,EAAE;YACxD,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC;gBACpC,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,IAAI,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;aACzD,CAAC,CAAC;YACH,OAAO,GAAG,CAAC;QACb,CAAC,CAAC,CAAC,CAAC;QACJ,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,oBAAoB,CAC/B,KAAa,EACb,MAAiB,EACjB,OAAoC;QAEpC,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE;YACzB,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;SACnC;aAAM;YACL,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;SACnC;IACH,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,MAAM,CACjB,KAAa,EACb,MAAiB;QAEjB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;QACjD,MAAM,IAAI,GAAU,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACpD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IACzB,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,MAAM,CACjB,KAAa,EACb,MAAiB;QAEjB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;QACjD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC;YACnD,KAAK;YACL,MAAM,EAAE,MAAM;YACd,aAAa,EAAE,YAAY;YAC3B,YAAY,EAAE,KAAK;SACpB,CAAC,CAAC;QACH,MAAM,SAAS,GAAG,IAAI,iCAAe,EAAE,CAAC;QACxC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACvB,OAAO;YACL,SAAS;YACT,KAAK;YACL,OAAO,EAAE,KAAK,IAAI,EAAE;gBAClB,EAAE;YACJ,CAAC;SACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,gBAAgB,CAAC,GAAW;QACvC,MAAM,MAAM,GAAG,GAAG,GAAG,UAAU,CAAC;QAChC,MAAM,GAAG,GAAG,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC;YAClC,KAAK,EAAE,MAAM;YACb,MAAM,EAAE,EAAE;YACV,aAAa,EAAE,YAAY;YAC3B,YAAY,EAAE,KAAK;SACpB,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACd,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;aAC1B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,oBAAoB,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;aAC9C,IAAI,CAAC,IAAI,CAAC,CAAC;QACd,MAAM,QAAQ,GAAG;wBACG,MAAM;eACf,IAAI;kBACD,CAAC;QACf,MAAM,KAAK,GAAG,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC;YACpC,KAAK,EAAE,QAAQ;YACf,MAAM,EAAE,EAAE;YACV,aAAa,EAAE,YAAY;YAC3B,YAAY,EAAE,KAAK;SACpB,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACd,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACpC,IAAI,EAAE,CAAC;YACP,IAAI,EAAE,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;SACnC,CAAC,CAAC,CAAC;IACN,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,gBAAgB,CAAC,KAAa;QACzC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACxC,MAAM,CAAC,aAAa,CAAC,GAAG,MAAM,IAAI,CAAC,QAAQ;aACxC,OAAO,CAAC,MAAM,CAAC;aACf,KAAK,CAAC,IAAI,CAAC;aACX,WAAW,EAAE,CAAC;QACjB,OAAO,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC;YAClD,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,IAAI,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC;SACjC,CAAC,CAAC,CAAC;IACN,CAAC;IAED;;OAEG;IACI,aAAa,CAAC,IAAY;QAC/B,OAAO,mBAAmB,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YAC5C,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;IAC5C,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,KAAK,CAChB,KAAa,EACb,MAAiB,EACjB,OAAsB;QAEtB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC;YAClC,KAAK;YACL,MAAM,EAAE,MAAM;YACd,aAAa,EAAE,YAAY;YAC3B,YAAY,EAAE,KAAK;SACpB,EAAE,OAAO,CAAC,CAAC;QACZ,OAAY,CACV,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CACpB,GAAG,CAAC,EAAE,CAAC,eAAC,CAAC,GAAG,CACV,KAAK,CAAC,EAAE,CAAC,CACP,KAAK,IAAI,KAAK,CAAC,KAAK,IAAI,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ;YACrD,CAAC,CAAC,KAAK,CAAC,KAAK;YACb,CAAC,CAAC,KAAK,CACV,EACD,GAAG,CACJ,CACF,CACF,CAAC;IACJ,CAAC;IAES,KAAK,CAAC,oBAAoB,CAAC,OAAgB;QACnD,IAAI;YACF,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC;gBACjC,KAAK,EAAE;;mCAEoB,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC;kCACpC,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC;oCAChC,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC;iCACvC,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC;;OAE3D;aACA,CAAC,CAAC;YAEH,IAAI,MAAM,CAAC,MAAM,EAAE;gBACjB,OAAO,eAAC,CAAC,MAAM,CACb,IAAI,CAAC,+BAA+B,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,CACpD,CAAC;aACH;YAED,OAAO,EAAE,CAAC;SACX;QAAC,OAAO,CAAC,EAAE;YACV,IAAU,CAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,gDAAgD,CAAC,EAAE;gBAC/E,OAAO,EAAE,CAAC;aACX;YAED,MAAM,CAAC,CAAC;SACT;IACH,CAAC;IAEM,KAAK,CAAC,YAAY;QACvB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;QACnD,MAAM,eAAe,GAAG,MAAM,OAAO,CAAC,GAAG,CACvC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,CACjE,CAAC;QAEF,OAAO,eAAe,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;IACrF,CAAC;IAEM,KAAK,CAAC,cAAc,CAAC,UAAkB;QAC5C,IAAI;YACF,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;YACxD,IAAI,CAAC,OAAO,EAAE;gBACZ,OAAO,EAAE,CAAC;aACX;YACD,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,SAAS,EAAE,CAAC;YACrE,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;SAChD;QAAC,OAAO,CAAC,EAAE;YACV,IAAU,CAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE;gBAC5C,OAAO,EAAE,CAAC;aACX;YACD,MAAM,CAAC,CAAC;SACT;IACH,CAAC;IAEM,KAAK,CAAC,uBAAuB,CAAC,UAAkB;QACrD,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;IACpE,CAAC;IAEM,KAAK,CAAC,2BAA2B,CACtC,uBAA+B,EAC/B,OAAe,EACf,MAAW,EACX,OAAY;QAEZ,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC,GAAG,uBAAuB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAEhE,MAAM,aAAa,GAAU;YAC3B,KAAK,EAAE,OAAO;YACd,MAAM;YACN,aAAa,EAAE,YAAY;YAC3B,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC;YAC5D,iBAAiB,EAAE,kBAAkB;YACrC,YAAY,EAAE,KAAK;SACpB,CAAC;QAEF,OAAO,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;IACzD,CAAC;IAES,KAAK,CAAC,iBAAiB,CAAC,GAAQ,EAAE,OAAY,EAAE,WAAoB;QAC5E,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,GAAG,CAAC,WAAW,EAAE,CAAC;QACzC,IAAI,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,KAAK,MAAM,EAAE;YACnD,IAAI,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE;gBAC7B,MAAM,IAAI,KAAK,CACb,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;oBACjC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;oBACnC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAC5C,CAAC;aACH;YACD,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;SACnD;aAAM;YACL,OAAO,IAAI,CAAC;SACb;QAED,OAAO,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IACpD,CAAC;IAES,KAAK,CAAC,WAAW,CACzB,aAAoB,EACpB,OAAY,EACZ,cAAuB,IAAI;QAE3B,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC;QAChE,OAAa,IAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;IAChE,CAAC;IAES,KAAK,CAAC,gBAAgB,CAAC,GAAQ,EAAE,OAAY,EAAE,WAAoB;QAC3E,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE/B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,WAAW,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,EAAE,EAAE;YACzE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,GAAG,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;YACvE,IAAI,MAAM,EAAE;gBACV,OAAO,MAAM,CAAC;aACf;YAED,MAAM,IAAA,qBAAY,EAChB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,GAAG,GAAG,CAAC,CAAC,CAChD,CAAC;SACH;QAED,MAAM,GAAG,CAAC,MAAM,EAAE,CAAC;QAEnB,MAAM,IAAI,KAAK,CACb,gCAAgC,IAAI,CAAC,OAAO,CAAC,WAAW,IAAI,CAC7D,CAAC;IACJ,CAAC;IAEM,eAAe,CAAC,UAAkB;QACvC,MAAM,YAAY,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC3C,OAAO,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YAC7B,IAAI,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,EAAE;gBAC9B,OAAO,IAAI,CAAC;aACb;YACD,OAAO,KAAK,UAAU,IAAI,CAAC;QAC7B,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACf,CAAC;CACF;AAlfD,wCAkfC"}
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "@cubejs-backend/bigquery-driver",
|
|
3
3
|
"description": "Cube.js BigQuery database driver",
|
|
4
4
|
"author": "Cube Dev, Inc.",
|
|
5
|
-
"version": "0.32.
|
|
5
|
+
"version": "0.32.30",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|
|
8
8
|
"url": "https://github.com/cube-js/cube.git",
|
|
@@ -28,15 +28,15 @@
|
|
|
28
28
|
"main": "index.js",
|
|
29
29
|
"types": "dist/src/index.d.ts",
|
|
30
30
|
"dependencies": {
|
|
31
|
-
"@cubejs-backend/base-driver": "^0.32.
|
|
31
|
+
"@cubejs-backend/base-driver": "^0.32.30",
|
|
32
32
|
"@cubejs-backend/dotenv": "^9.0.2",
|
|
33
|
-
"@cubejs-backend/shared": "^0.32.
|
|
33
|
+
"@cubejs-backend/shared": "^0.32.30",
|
|
34
34
|
"@google-cloud/bigquery": "^5.6.0",
|
|
35
35
|
"@google-cloud/storage": "^5.7.2",
|
|
36
36
|
"ramda": "^0.27.2"
|
|
37
37
|
},
|
|
38
38
|
"devDependencies": {
|
|
39
|
-
"@cubejs-backend/testing-shared": "^0.32.
|
|
39
|
+
"@cubejs-backend/testing-shared": "^0.32.30",
|
|
40
40
|
"@types/dedent": "^0.7.0",
|
|
41
41
|
"@types/ramda": "^0.27.40",
|
|
42
42
|
"typescript": "~4.9.5"
|
|
@@ -48,5 +48,5 @@
|
|
|
48
48
|
"eslintConfig": {
|
|
49
49
|
"extends": "../cubejs-linter"
|
|
50
50
|
},
|
|
51
|
-
"gitHead": "
|
|
51
|
+
"gitHead": "71afde6187516487d1c38294aae9f494c140fb4a"
|
|
52
52
|
}
|