@cubejs-backend/prestodb-driver 0.36.5 → 0.36.8

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.
@@ -4,9 +4,15 @@
4
4
  * @fileoverview The `PrestoDriver` and related types declaration.
5
5
  */
6
6
  /// <reference types="node" />
7
- import { DownloadQueryResultsOptions, DownloadQueryResultsResult, DriverCapabilities, DriverInterface, StreamOptions, StreamTableData, TableStructure, BaseDriver } from '@cubejs-backend/base-driver';
7
+ import { DownloadQueryResultsOptions, DownloadQueryResultsResult, DriverCapabilities, DriverInterface, StreamOptions, StreamTableData, TableStructure, BaseDriver, UnloadOptions } from '@cubejs-backend/base-driver';
8
8
  import type { ConnectionOptions as TLSConnectionOptions } from 'tls';
9
- export type PrestoDriverConfiguration = {
9
+ export type PrestoDriverExportBucket = {
10
+ exportBucket?: string;
11
+ bucketType?: 'gcs';
12
+ credentials?: any;
13
+ exportBucketCsvEscapeSymbol?: string;
14
+ };
15
+ export type PrestoDriverConfiguration = PrestoDriverExportBucket & {
10
16
  host?: string;
11
17
  port?: string;
12
18
  catalog?: string;
@@ -46,5 +52,26 @@ export declare class PrestoDriver extends BaseDriver implements DriverInterface
46
52
  }[];
47
53
  stream(query: string, values: unknown[], _options: StreamOptions): Promise<StreamTableData>;
48
54
  capabilities(): DriverCapabilities;
55
+ createSchemaIfNotExists(schemaName: string): Promise<void>;
56
+ isUnloadSupported(): Promise<boolean>;
57
+ unload(tableName: string, options: UnloadOptions): Promise<{
58
+ exportBucketCsvEscapeSymbol: string | undefined;
59
+ csvFile: string[];
60
+ types: {
61
+ name: string;
62
+ type: string;
63
+ }[];
64
+ csvNoHeader: boolean;
65
+ }>;
66
+ private splitTableFullName;
67
+ private generateTableColumnsForExport;
68
+ private unloadWithSql;
69
+ private unloadWithTable;
70
+ private unloadGeneric;
71
+ queryColumnTypes(sql: string, params: unknown[]): Promise<{
72
+ name: string;
73
+ type: string;
74
+ }[]>;
75
+ private getCsvFiles;
49
76
  }
50
77
  //# sourceMappingURL=PrestoDriver.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PrestoDriver.d.ts","sourceRoot":"","sources":["../../src/PrestoDriver.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;AAEH,OAAO,EACL,2BAA2B,EAAE,0BAA0B,EACvD,kBAAkB,EAAE,eAAe,EACnC,aAAa,EACb,eAAe,EACf,cAAc,EACd,UAAU,EACX,MAAM,6BAA6B,CAAC;AAOrC,OAAO,KAAK,EAAE,iBAAiB,IAAI,oBAAoB,EAAE,MAAM,KAAK,CAAC;AASrE,MAAM,MAAM,yBAAyB,GAAG;IACtC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,UAAU,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IAChD,GAAG,CAAC,EAAE,MAAM,GAAG,oBAAoB,CAAC;IACpC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF;;GAEG;AACH,qBAAa,YAAa,SAAQ,UAAW,YAAW,eAAe;IACrE;;OAEG;WACW,qBAAqB;IAInC,OAAO,CAAC,MAAM,CAA4B;IAE1C,OAAO,CAAC,OAAO,CAAqB;IAEpC,OAAO,CAAC,MAAM,CAAM;IAEpB;;OAEG;gBACgB,MAAM,GAAE,yBAA8B;IA8BlD,cAAc;IAWd,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAIvD,sBAAsB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE;IAMvD,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,GAAG,OAAO,CAAC,GAAG,EAAE,GAAG,eAAe,CAAC;IA2DlF,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,2BAA2B,GAAG,OAAO,CAAC,0BAA0B,CAAC;IAOjI,sBAAsB;IAOtB,0BAA0B,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,OAAO,EAAE,cAAc;;;IAM/D,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,aAAa,GAAG,OAAO,CAAC,eAAe,CAAC;IAM3F,YAAY,IAAI,kBAAkB;CAK1C"}
1
+ {"version":3,"file":"PrestoDriver.d.ts","sourceRoot":"","sources":["../../src/PrestoDriver.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;AAEH,OAAO,EACL,2BAA2B,EAAE,0BAA0B,EACvD,kBAAkB,EAAE,eAAe,EACnC,aAAa,EACb,eAAe,EACf,cAAc,EACd,UAAU,EACV,aAAa,EACd,MAAM,6BAA6B,CAAC;AAOrC,OAAO,KAAK,EAAE,iBAAiB,IAAI,oBAAoB,EAAE,MAAM,KAAK,CAAC;AASrE,MAAM,MAAM,wBAAwB,GAAG;IACrC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,KAAK,CAAC;IACnB,WAAW,CAAC,EAAE,GAAG,CAAC;IAClB,2BAA2B,CAAC,EAAE,MAAM,CAAC;CACtC,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG,wBAAwB,GAAG;IACjE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,UAAU,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IAChD,GAAG,CAAC,EAAE,MAAM,GAAG,oBAAoB,CAAC;IACpC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAGF;;GAEG;AACH,qBAAa,YAAa,SAAQ,UAAW,YAAW,eAAe;IACrE;;OAEG;WACW,qBAAqB;IAInC,OAAO,CAAC,MAAM,CAA4B;IAE1C,OAAO,CAAC,OAAO,CAAqB;IAEpC,OAAO,CAAC,MAAM,CAAM;IAEpB;;OAEG;gBACgB,MAAM,GAAE,yBAA8B;IAiClD,cAAc;IAWd,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAIvD,sBAAsB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE;IAMvD,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,GAAG,OAAO,CAAC,GAAG,EAAE,GAAG,eAAe,CAAC;IA2DlF,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,2BAA2B,GAAG,OAAO,CAAC,0BAA0B,CAAC;IAOjI,sBAAsB;IAOtB,0BAA0B,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,OAAO,EAAE,cAAc;;;IAM/D,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,aAAa,GAAG,OAAO,CAAC,eAAe,CAAC;IAM3F,YAAY,IAAI,kBAAkB;IAM5B,uBAAuB,CAAC,UAAU,EAAE,MAAM;IAQ1C,iBAAiB;IAIjB,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa;;;;;;;;;IAyB7D,OAAO,CAAC,kBAAkB;IAK1B,OAAO,CAAC,6BAA6B;YAIvB,aAAa;YAUb,eAAe;YAUf,aAAa;IA4Bd,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;KAAE,EAAE,CAAC;YAS3F,WAAW;CAgB1B"}
@@ -15,6 +15,7 @@ const stream_1 = require("stream");
15
15
  const ramda_1 = require("ramda");
16
16
  const sqlstring_1 = __importDefault(require("sqlstring"));
17
17
  const presto = require('presto-client');
18
+ const SUPPORTED_BUCKET_TYPES = ['gcs'];
18
19
  /**
19
20
  * Presto driver class.
20
21
  */
@@ -50,6 +51,9 @@ class PrestoDriver extends base_driver_1.BaseDriver {
50
51
  }
51
52
  : undefined,
52
53
  ssl: this.getSslOptions(dataSource),
54
+ bucketType: (0, shared_1.getEnv)('dbExportBucketType', { supported: ['gcs'], dataSource }),
55
+ exportBucket: (0, shared_1.getEnv)('dbExportBucket', { dataSource }),
56
+ credentials: (0, shared_1.getEnv)('dbExportGCSCredentials', { dataSource }),
53
57
  ...config
54
58
  };
55
59
  this.catalog = this.config.catalog;
@@ -154,6 +158,98 @@ class PrestoDriver extends base_driver_1.BaseDriver {
154
158
  unloadWithoutTempTable: true
155
159
  };
156
160
  }
161
+ async createSchemaIfNotExists(schemaName) {
162
+ await this.query(`CREATE SCHEMA IF NOT EXISTS ${this.config.catalog}.${schemaName}`, []);
163
+ }
164
+ // Export bucket methods
165
+ async isUnloadSupported() {
166
+ return this.config.exportBucket !== undefined;
167
+ }
168
+ async unload(tableName, options) {
169
+ if (!this.config.exportBucket) {
170
+ throw new Error('Export bucket is not configured.');
171
+ }
172
+ if (!SUPPORTED_BUCKET_TYPES.includes(this.config.bucketType)) {
173
+ throw new Error(`Unsupported export bucket type: ${this.config.bucketType}`);
174
+ }
175
+ const types = options.query
176
+ ? await this.unloadWithSql(tableName, options.query.sql, options.query.params)
177
+ : await this.unloadWithTable(tableName);
178
+ const csvFile = await this.getCsvFiles(tableName);
179
+ return {
180
+ exportBucketCsvEscapeSymbol: this.config.exportBucketCsvEscapeSymbol,
181
+ csvFile,
182
+ types,
183
+ csvNoHeader: true,
184
+ };
185
+ }
186
+ splitTableFullName(tableFullName) {
187
+ const [schema, tableName] = tableFullName.split('.');
188
+ return { schema, tableName };
189
+ }
190
+ generateTableColumnsForExport(types) {
191
+ return types.map((c) => `CAST(${c.name} AS varchar) ${c.name}`).join(', ');
192
+ }
193
+ async unloadWithSql(tableFullName, sql, params) {
194
+ return this.unloadGeneric({
195
+ tableFullName,
196
+ typeSql: sql,
197
+ typeParams: params,
198
+ fromSql: sql,
199
+ fromParams: params
200
+ });
201
+ }
202
+ async unloadWithTable(tableFullName) {
203
+ return this.unloadGeneric({
204
+ tableFullName,
205
+ typeSql: `SELECT * FROM ${tableFullName}`,
206
+ typeParams: [],
207
+ fromSql: tableFullName,
208
+ fromParams: []
209
+ });
210
+ }
211
+ async unloadGeneric(params) {
212
+ if (!this.config.exportBucket) {
213
+ throw new Error('Export bucket is not configured.');
214
+ }
215
+ const { bucketType, exportBucket } = this.config;
216
+ const types = await this.queryColumnTypes(params.typeSql, params.typeParams);
217
+ const { schema, tableName } = this.splitTableFullName(params.tableFullName);
218
+ const tableWithCatalogAndSchema = `${this.config.catalog}.${schema}.${tableName}`;
219
+ const protocol = bucketType === 'gcs' ? 'gs' : bucketType;
220
+ const externalLocation = `${protocol}://${exportBucket}/${schema}/${tableName}`;
221
+ const withParams = `( external_location = '${externalLocation}', format = 'CSV')`;
222
+ const select = `SELECT ${this.generateTableColumnsForExport(types)} FROM (${params.fromSql})`;
223
+ const createTableQuery = `CREATE TABLE ${tableWithCatalogAndSchema} WITH ${withParams} AS (${select})`;
224
+ try {
225
+ await this.query(createTableQuery, params.fromParams);
226
+ }
227
+ finally {
228
+ await this.query(`DROP TABLE IF EXISTS ${tableWithCatalogAndSchema}`, []);
229
+ }
230
+ return types;
231
+ }
232
+ async queryColumnTypes(sql, params) {
233
+ const response = await this.stream(`${sql} LIMIT 0`, params || [], { highWaterMark: 1 });
234
+ const result = [];
235
+ for (const column of response.types || []) {
236
+ result.push({ name: column.name, type: this.toGenericType(column.type) });
237
+ }
238
+ return result;
239
+ }
240
+ async getCsvFiles(tableFullName) {
241
+ if (!this.config.exportBucket) {
242
+ throw new Error('Export bucket is not configured.');
243
+ }
244
+ const { bucketType, exportBucket, credentials } = this.config;
245
+ const { schema, tableName } = this.splitTableFullName(tableFullName);
246
+ switch (bucketType) {
247
+ case 'gcs':
248
+ return this.extractFilesFromGCS({ credentials }, exportBucket, `${schema}/${tableName}`);
249
+ default:
250
+ throw new Error(`Unsupported export bucket type: ${bucketType}`);
251
+ }
252
+ }
157
253
  }
158
254
  exports.PrestoDriver = PrestoDriver;
159
255
  //# sourceMappingURL=PrestoDriver.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PrestoDriver.js","sourceRoot":"","sources":["../../src/PrestoDriver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PrestoDriver.js","sourceRoot":"","sources":["../../src/PrestoDriver.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@cubejs-backend/prestodb-driver",
3
3
  "description": "Cube.js Presto database driver",
4
4
  "author": "Cube Dev, Inc.",
5
- "version": "0.36.5",
5
+ "version": "0.36.8",
6
6
  "repository": {
7
7
  "type": "git",
8
8
  "url": "https://github.com/cube-js/cube.git",
@@ -27,8 +27,8 @@
27
27
  "lint:fix": "eslint --fix src/* --ext .ts"
28
28
  },
29
29
  "dependencies": {
30
- "@cubejs-backend/base-driver": "^0.36.5",
31
- "@cubejs-backend/shared": "^0.36.5",
30
+ "@cubejs-backend/base-driver": "^0.36.8",
31
+ "@cubejs-backend/shared": "^0.36.8",
32
32
  "presto-client": "^0.12.2",
33
33
  "ramda": "^0.27.0",
34
34
  "sqlstring": "^2.3.1"
@@ -51,5 +51,5 @@
51
51
  "eslintConfig": {
52
52
  "extends": "../cubejs-linter"
53
53
  },
54
- "gitHead": "893004a135f6b009efa23d11232cc2e285a75330"
54
+ "gitHead": "f582d68cf8b3f9e707d58b914430be5836224ccf"
55
55
  }