Skip to content

Latest commit

 

History

History
625 lines (347 loc) · 10.5 KB

File metadata and controls

625 lines (347 loc) · 10.5 KB
id BTreeIndex
title BTreeIndex

Class: BTreeIndex<TKey>

Defined in: packages/db/src/indexes/btree-index.ts:28

B+Tree index for sorted data with range queries This maintains items in sorted order and provides efficient range operations

Extends

Type Parameters

TKey extends string | number = string | number

Constructors

new BTreeIndex()

new BTreeIndex<TKey>(
   id, 
   expression, 
   name?, 
options?): BTreeIndex<TKey>

Defined in: packages/db/src/indexes/btree-index.ts:48

Parameters

id

number

expression

BasicExpression

name?

string

options?

any

Returns

BTreeIndex<TKey>

Overrides

BaseIndex.constructor

Properties

expression

readonly expression: BasicExpression;

Defined in: packages/db/src/indexes/base-index.ts:33

Inherited from

BaseIndex.expression


id

readonly id: number;

Defined in: packages/db/src/indexes/base-index.ts:31

Inherited from

BaseIndex.id


lastUpdated

protected lastUpdated: Date;

Defined in: packages/db/src/indexes/base-index.ts:38

Inherited from

BaseIndex.lastUpdated


lookupCount

protected lookupCount: number = 0;

Defined in: packages/db/src/indexes/base-index.ts:36

Inherited from

BaseIndex.lookupCount


name?

readonly optional name: string;

Defined in: packages/db/src/indexes/base-index.ts:32

Inherited from

BaseIndex.name


supportedOperations

readonly supportedOperations: Set<"eq" | "gt" | "gte" | "lt" | "lte" | "in" | "like" | "ilike">;

Defined in: packages/db/src/indexes/btree-index.ts:31

Overrides

BaseIndex.supportedOperations


totalLookupTime

protected totalLookupTime: number = 0;

Defined in: packages/db/src/indexes/base-index.ts:37

Inherited from

BaseIndex.totalLookupTime

Accessors

indexedKeysSet

Get Signature

get indexedKeysSet(): Set<TKey>

Defined in: packages/db/src/indexes/btree-index.ts:250

Returns

Set<TKey>


keyCount

Get Signature

get keyCount(): number

Defined in: packages/db/src/indexes/btree-index.ts:188

Gets the number of indexed keys

Returns

number

Overrides

BaseIndex.keyCount


orderedEntriesArray

Get Signature

get orderedEntriesArray(): [any, Set<TKey>][]

Defined in: packages/db/src/indexes/btree-index.ts:254

Returns

[any, Set<TKey>][]


valueMapData

Get Signature

get valueMapData(): Map<any, Set<TKey>>

Defined in: packages/db/src/indexes/btree-index.ts:260

Returns

Map<any, Set<TKey>>

Methods

add()

add(key, item): void

Defined in: packages/db/src/indexes/btree-index.ts:64

Adds a value to the index

Parameters

key

TKey

item

any

Returns

void

Overrides

BaseIndex.add


build()

build(entries): void

Defined in: packages/db/src/indexes/btree-index.ts:132

Builds the index from a collection of entries

Parameters

entries

Iterable<[TKey, any]>

Returns

void

Overrides

BaseIndex.build


clear()

clear(): void

Defined in: packages/db/src/indexes/btree-index.ts:143

Clears all data from the index

Returns

void

Overrides

BaseIndex.clear


equalityLookup()

equalityLookup(value): Set<TKey>

Defined in: packages/db/src/indexes/btree-index.ts:197

Performs an equality lookup

Parameters

value

any

Returns

Set<TKey>


evaluateIndexExpression()

protected evaluateIndexExpression(item): any

Defined in: packages/db/src/indexes/base-index.ts:87

Parameters

item

any

Returns

any

Inherited from

BaseIndex.evaluateIndexExpression


getStats()

getStats(): IndexStats

Defined in: packages/db/src/indexes/base-index.ts:74

Returns

IndexStats

Inherited from

BaseIndex.getStats


inArrayLookup()

inArrayLookup(values): Set<TKey>

Defined in: packages/db/src/indexes/btree-index.ts:236

Performs an IN array lookup

Parameters

values

any[]

Returns

Set<TKey>


initialize()

protected initialize(_options?): void

Defined in: packages/db/src/indexes/btree-index.ts:59

Parameters

_options?

BTreeIndexOptions

Returns

void

Overrides

BaseIndex.initialize


lookup()

lookup(operation, value): Set<TKey>

Defined in: packages/db/src/indexes/btree-index.ts:153

Performs a lookup operation

Parameters

operation

"eq" | "gt" | "gte" | "lt" | "lte" | "in" | "like" | "ilike"

value

any

Returns

Set<TKey>

Overrides

BaseIndex.lookup


matchesField()

matchesField(fieldPath): boolean

Defined in: packages/db/src/indexes/base-index.ts:66

Parameters

fieldPath

string[]

Returns

boolean

Inherited from

BaseIndex.matchesField


rangeQuery()

rangeQuery(options): Set<TKey>

Defined in: packages/db/src/indexes/btree-index.ts:205

Performs a range query with options This is more efficient for compound queries like "WHERE a > 5 AND a < 10"

Parameters

options

RangeQueryOptions = {}

Returns

Set<TKey>


remove()

remove(key, item): void

Defined in: packages/db/src/indexes/btree-index.ts:92

Removes a value from the index

Parameters

key

TKey

item

any

Returns

void

Overrides

BaseIndex.remove


supports()

supports(operation): boolean

Defined in: packages/db/src/indexes/base-index.ts:62

Parameters

operation

"eq" | "gt" | "gte" | "lt" | "lte" | "in" | "like" | "ilike"

Returns

boolean

Inherited from

BaseIndex.supports


trackLookup()

protected trackLookup(startTime): void

Defined in: packages/db/src/indexes/base-index.ts:92

Parameters

startTime

number

Returns

void

Inherited from

BaseIndex.trackLookup


update()

update(
   key, 
   oldItem, 
   newItem): void

Defined in: packages/db/src/indexes/btree-index.ts:124

Updates a value in the index

Parameters

key

TKey

oldItem

any

newItem

any

Returns

void

Overrides

BaseIndex.update


updateTimestamp()

protected updateTimestamp(): void

Defined in: packages/db/src/indexes/base-index.ts:98

Returns

void

Inherited from

BaseIndex.updateTimestamp