JavaScript & React libraryAPI

Class: MosaicDBCoordinator

The MosaicDBCoordinator class serves as a coordinator between a internal or remote DuckDB instance and the Mosaic. It abstracts the connection and query execution process, offering table indexing and results caching.

Param

The connector used to interface with the DuckDB instance.

Param

An optional internal DuckDB instance for WASM-based operations.

Extends

  • Coordinator

Constructors

Constructor

new MosaicDBCoordinator(connector, internalInstance?): MosaicDBCoordinator

Parameters

ParameterType
connectorRestConnector | DuckDBWASMConnector
internalInstance?DuckDBInstance

Returns

MosaicDBCoordinator

Overrides

Coordinator.constructor

Accessors

internalDB

Get Signature

get internalDB(): undefined | DuckDBInstance

Returns

undefined | DuckDBInstance

Methods

create()

static create(connection?): Promise<undefined | MosaicDBCoordinator>

Static method to create a new MosaicDBCoordinator.

Parameters

ParameterTypeDescription
connection?string | WasmDuckDBConnectionThe connection string for a remote HTTP rest DuckDB instance or an existing WasmDuckDBConnection.

Returns

Promise<undefined | MosaicDBCoordinator>

A promise that resolves to a new MosaicDBCoordinator instance. If no connection is provided, a internal instance of duckdb-wasm will be created.


connect()

connect(client): void

Connect a client to the coordinator. Throws an error if the client is already connected.

Parameters

ParameterTypeDescription
clientMosaicClientThe Mosaic client to connect.

Returns

void

Overrides

Coordinator.connect


disconnect()

disconnect(client): void

Disconnect a client from the coordinator. This method has no effect if the client is already disconnected.

Parameters

ParameterTypeDescription
clientMosaicClientThe Mosaic client to disconnect.

Returns

void

Overrides

Coordinator.disconnect


clearCache()

clearCache(): void

Returns

void


destroy()

destroy(): Promise<void>

Returns

Promise<void>


query()

query(query, options): QueryResult<Table<any>>

Issue a query to the backing database. The submitted query may be consolidate with other queries and its results may be cached.

Parameters

ParameterTypeDescription
querystring | QueryThe query as either a Query builder object or a SQL string.
options{[k: string]: unknown; cache?: boolean; }An options object.
options.cache?booleanIf true, cache the query result client-side within the QueryManager.

Returns

QueryResult<Table<any>>

A query result promise.

Overrides

Coordinator.query