Internal
Use Db.admin to obtain an instance of this class.
Optional
rawAdminOpts: AdminOptionsPrivate
Readonly
#dbPrivate
Readonly
#httpCreates a new, additional, keyspace for this database.
NB. The operation will always wait for the operation to complete, regardless of the AstraAdminBlockingOptions. Expect it to take roughly 8-10 seconds.
The name of the new keyspace.
Optional
options: DataAPICreateKeyspaceOptionsThe options for the timeout & replication behavior of the operation.
A promise that resolves when the operation completes.
await dbAdmin.createKeyspace('my_keyspace');
await dbAdmin.createKeyspace('my_keyspace', {
replication: {
class: 'SimpleStrategy',
replicationFactor: 3,
},
});
await dbAdmin.createKeyspace('my_keyspace', {
replication: {
class: 'NetworkTopologyStrategy',
datacenter1: 3,
datacenter2: 2,
},
});
Gets the underlying Db
object. The options for the db were set when the DataAPIDbAdmin
instance, or whatever
spawned it, was created.
The underlying Db
object.
const dbAdmin = client.admin().dbAdmin('<endpoint>', {
keyspace: 'my-keyspace',
useHttp2: false,
});
const db = dbAdmin.db();
console.log(db.keyspace);
Drops a keyspace from this database.
NB. The operation will always wait for the operation to complete, regardless of the AstraAdminBlockingOptions. Expect it to take roughly 8-10 seconds.
The name of the keyspace to drop.
Optional
options: WithTimeout<"keyspaceAdminTimeoutMs">The options for the timeout of the operation.
A promise that resolves when the operation completes.
// ['default_keyspace', 'my_other_keyspace']
console.log(await dbAdmin.listKeyspaces());
await dbAdmin.dropKeyspace('my_other_keyspace');
// ['default_keyspace', 'my_other_keyspace']
console.log(await dbAdmin.listKeyspaces());
Returns detailed information about the availability and usage of the vectorize embedding providers available on the current database (may vary based on cloud provider & region).
Optional
options: WithTimeout<"databaseAdminTimeoutMs">The options for the timeout of the operation.
The available embedding providers.
const { embeddingProviders } = await dbAdmin.findEmbeddingProviders();
// ['text-embedding-3-small', 'text-embedding-3-large', 'text-embedding-ada-002']
console.log(embeddingProviders['openai'].models.map(m => m.name));
Lists the keyspaces in the database.
The first element in the returned array is the default keyspace of the database, and the rest are additional keyspaces in no particular order.
Optional
options: WithTimeout<"keyspaceAdminTimeoutMs">A promise that resolves to list of all the keyspaces in the database.
const keyspaces = await dbAdmin.listKeyspaces();
// ['default_keyspace', 'my_other_keyspace']
console.log(keyspaces);
An administrative class for managing non-Astra databases, including creating, listing, and deleting keyspaces.
Shouldn't be instantiated directly; use Db.admin to obtain an instance of this class.
Note that the
environment
parameter MUST match the one used in theDataAPIClient
options.Example
See