클래스: BasicIndex<TKey>
정의 위치: packages/db/src/indexes/basic-index.ts:43
Map + 정렬된 Array를 사용하는 기본 인덱스입니다.
- O(1) 동등성 조회를 위한 Map
- 이진 검색을 통한 O(log n) 범위 쿼리를 위한 정렬된 Array
- 정렬 순서를 유지하기 위한 O(n) 업데이트
BTreeIndex보다 단순하고 작으며 읽기 중심 워크로드에 적합합니다. 컬렉션이 크고 쓰기 중심인 워크로드에는 BTreeIndex를 사용합니다.
상속
BaseIndex<TKey>
타입 매개변수
TKey
TKey 확장 string | number = string | number
생성자
생성자
new BasicIndex<TKey>(
id,
expression,
name?,
options?): BasicIndex<TKey>;
정의 위치: packages/db/src/indexes/basic-index.ts:64
매개변수
id
number
expression
name?
string
options?
any
반환값
BasicIndex<TKey>
재정의된 메서드
속성
compareOptions
protected compareOptions: CompareOptions;
정의 위치: packages/db/src/indexes/base-index.ts:102
상속받은 속성
expression
readonly expression: BasicExpression;
정의 위치: packages/db/src/indexes/base-index.ts:96
상속받은 속성
hasCustomComparator
protected hasCustomComparator: boolean = false;
정의 위치: packages/db/src/indexes/base-index.ts:108
사용자 제공 비교 함수로 생성될 때 서브클래스에서 설정되며, 이 비교 함수의 정렬 순서는 WHERE 평가기의 관계 연산자와 일치하지 않을 수 있습니다.
상속받은 속성
id
readonly id: number;
정의 위치: packages/db/src/indexes/base-index.ts:94
상속받은 속성
lastUpdated
protected lastUpdated: Date;
정의 위치: packages/db/src/indexes/base-index.ts:101
상속받은 속성
lookupCount
protected lookupCount: number = 0;
정의 위치: packages/db/src/indexes/base-index.ts:99
상속받은 속성
name?
readonly optional name: string;
정의 위치: packages/db/src/indexes/base-index.ts:95
상속받은 속성
supportedOperations
readonly supportedOperations: Set<"eq" | "gt" | "gte" | "lt" | "lte" | "in" | "like" | "ilike">;
정의 위치: packages/db/src/indexes/basic-index.ts:46
재정의된 메서드
totalLookupTime
protected totalLookupTime: number = 0;
정의 위치: packages/db/src/indexes/base-index.ts:100
상속받은 속성
접근자
indexedKeysSet
가져오기 시그니처
get indexedKeysSet(): Set<TKey>;
정의 위치: packages/db/src/indexes/basic-index.ts:519
반환값
Set<TKey>
재정의된 메서드
keyCount
가져오기 시그니처
get keyCount(): number;
정의 위치: packages/db/src/indexes/basic-index.ts:273
인덱싱된 키의 수를 가져옵니다.
반환값
number
재정의된 메서드
orderedEntriesArray
가져오기 시그니처
get orderedEntriesArray(): [any, Set<TKey>][];
정의 위치: packages/db/src/indexes/basic-index.ts:523
반환값
[any, Set<TKey>][]
재정의된 메서드
orderedEntriesArrayReversed
가져오기 시그니처
get orderedEntriesArrayReversed(): [any, Set<TKey>][];
정의 위치: packages/db/src/indexes/basic-index.ts:530
반환값
[any, Set<TKey>][]
재정의된 메서드
BaseIndex.orderedEntriesArrayReversed
supportsRangeOptimization
가져오기 시그니처
get supportsRangeOptimization(): boolean;
정의 위치: packages/db/src/indexes/base-index.ts:163
이 인덱스의 범위 조회(gt/gte/lt/lte)가 일치하는 모든 키를 반환한다고 신뢰할 수 있는지 여부입니다. 범위 순회는 인덱스 순서에 의존하므로, 사용자 지정 비교 함수를 사용하는 인덱스에서는 안전하지 않습니다. 사용자 지정 비교 함수의 순서가 WHERE 평가기의 관계 연산자와 일치하지 않을 수 있기 때문입니다. 이 값이 false인 경우 호출자는 전체 스캔으로 대체해야 합니다.
반환값
boolean
상속받은 속성
BaseIndex.supportsRangeOptimization
valueMapData
가져오기 시그니처
get valueMapData(): Map<any, Set<TKey>>;
정의 위치: packages/db/src/indexes/basic-index.ts:539
반환값
Map<any, Set<TKey>>
재정의된 메서드
메서드
add()
add(key, item): void;
정의 위치: packages/db/src/indexes/basic-index.ts:83
인덱스에 값을 추가합니다.
매개변수
key
TKey
item
any
반환값
void
재정의된 메서드
build()
build(entries): void;
정의 위치: packages/db/src/indexes/basic-index.ts:191
항목 컬렉션에서 인덱스를 빌드합니다.
매개변수
entries
Iterable<[TKey, any]>
반환값
void
재정의된 메서드
clear()
clear(): void;
정의 위치: packages/db/src/indexes/basic-index.ts:228
인덱스에서 모든 데이터를 지웁니다.
반환값
void
재정의된 메서드
equalityLookup()
equalityLookup(value): Set<TKey>;
정의 위치: packages/db/src/indexes/basic-index.ts:280
동등성 조회를 수행합니다 - O(1)
매개변수
value
any
반환값
Set<TKey>
재정의된 메서드
evaluateIndexExpression()
protected evaluateIndexExpression(item): any;
정의 위치: packages/db/src/indexes/base-index.ts:214
매개변수
item
any
반환값
any
상속받은 속성
BaseIndex.evaluateIndexExpression
getStats()
getStats(): IndexStats;
정의 위치: packages/db/src/indexes/base-index.ts:202
반환값
상속받은 속성
inArrayLookup()
inArrayLookup(values): Set<TKey>;
정의 위치: packages/db/src/indexes/basic-index.ts:504
IN 배열 조회를 수행합니다 - k는 values.length입니다 - O(k)
매개변수
values
any[]
반환값
Set<TKey>
재정의된 메서드
initialize()
protected initialize(_options?): void;
정의 위치: packages/db/src/indexes/basic-index.ts:78
매개변수
_options?
반환값
void
재정의된 메서드
lookup()
lookup(operation, value): Set<TKey>;
정의 위치: packages/db/src/indexes/basic-index.ts:238
조회 작업을 수행합니다
매개변수
operation
"eq" | "gt" | "gte" | "lt" | "lte" | "in" | "like" | "ilike"
value
any
반환값
Set<TKey>
재정의된 메서드
matchesCompareOptions()
matchesCompareOptions(compareOptions): boolean;
정의 위치: packages/db/src/indexes/base-index.ts:179
비교 옵션이 인덱스의 비교 옵션과 일치하는지 확인합니다. 인덱스는 방향이 다르면 반전할 수 있으므로 방향은 무시됩니다.
매개변수
compareOptions
CompareOptions
반환값
boolean
상속받은 속성
BaseIndex.matchesCompareOptions
matchesDirection()
matchesDirection(direction): boolean;
정의 위치: packages/db/src/indexes/base-index.ts:198
인덱스가 제공된 방향과 일치하는지 확인합니다.
매개변수
direction
반환값
boolean
상속받은 속성
matchesField()
matchesField(fieldPath): boolean;
정의 위치: packages/db/src/indexes/base-index.ts:167
매개변수
fieldPath
string[]
반환값
boolean
상속받은 속성
rangeQuery()
rangeQuery(options): Set<TKey>;
정의 위치: packages/db/src/indexes/basic-index.ts:288
이진 검색을 사용하여 범위 쿼리를 수행합니다 - O(log n + m)
매개변수
options
RangeQueryOptions = {}
반환값
Set<TKey>
재정의된 메서드
rangeQueryReversed()
rangeQueryReversed(options): Set<TKey>;
정의 위치: packages/db/src/indexes/basic-index.ts:349
반전된 범위 쿼리를 수행합니다
매개변수
options
RangeQueryOptions = {}
반환값
Set<TKey>
재정의된 메서드
remove()
remove(key, item): void;
정의 위치: packages/db/src/indexes/basic-index.ts:124
인덱스에서 값을 제거합니다
매개변수
key
TKey
item
any
반환값
void
재정의된 메서드
supports()
supports(operation): boolean;
정의 위치: packages/db/src/indexes/base-index.ts:159
매개변수
operation
"eq" | "gt" | "gte" | "lt" | "lte" | "in" | "like" | "ilike"
반환값
boolean
상속받은 속성
take()
take(
n,
from?,
filterFn?): TKey[];
정의 위치: packages/db/src/indexes/basic-index.ts:374
정렬된 순서로 다음 n개 항목을 반환합니다
매개변수
n
number
from?
any
filterFn?
(key) => boolean
반환값
TKey[]
재정의된 메서드
takeFromStart()
takeFromStart(n, filterFn?): TKey[];
정의 위치: packages/db/src/indexes/basic-index.ts:459
정렬된 순서로 처음 n개 항목을 반환합니다(시작부터)
매개변수
n
number
filterFn?
(key) => boolean
반환값
TKey[]
재정의된 메서드
takeReversed()
takeReversed(
n,
from?,
filterFn?): TKey[];
정의 위치: packages/db/src/indexes/basic-index.ts:416
역순으로 정렬된 다음 n개 항목을 반환합니다
매개변수
n
number
from?
any
filterFn?
(key) => boolean
반환값
TKey[]
재정의된 메서드
takeReversedFromEnd()
takeReversedFromEnd(n, filterFn?): TKey[];
정의 위치: packages/db/src/indexes/basic-index.ts:478
역순으로 정렬된 처음 n개 항목을 반환합니다(끝부터)
매개변수
n
number
filterFn?
(key) => boolean
반환값
TKey[]
재정의된 메서드
trackLookup()
protected trackLookup(startTime): void;
정의 위치: packages/db/src/indexes/base-index.ts:220
매개변수
startTime
number
반환값
void
상속받은 속성
update()
update(
key,
oldItem,
newItem): void;
정의 위치: packages/db/src/indexes/basic-index.ts:162
인덱스의 값을 업데이트합니다
매개변수
key
TKey
oldItem
any
newItem
any
반환값
void
재정의된 메서드
updateTimestamp()
protected updateTimestamp(): void;
정의 위치: packages/db/src/indexes/base-index.ts:226
반환값
void