@soulcraft/brainy 0.31.0 → 0.33.0
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.
- package/README.md +552 -357
- package/dist/brainyData.d.ts +123 -0
- package/dist/coreTypes.d.ts +27 -0
- package/dist/storage/adapters/baseStorageAdapter.d.ts +16 -0
- package/dist/storage/adapters/baseStorageAdapter.d.ts.map +1 -1
- package/dist/storage/adapters/s3CompatibleStorage.d.ts +75 -0
- package/dist/storage/adapters/s3CompatibleStorage.d.ts.map +1 -1
- package/dist/storage/baseStorage.d.ts +4 -0
- package/dist/storage/baseStorage.d.ts.map +1 -1
- package/dist/storage/cacheManager.d.ts +264 -0
- package/dist/storage/cacheManager.d.ts.map +1 -0
- package/dist/storage/storageFactory.d.ts +44 -0
- package/dist/storage/storageFactory.d.ts.map +1 -1
- package/dist/unified.js +2341 -330
- package/dist/unified.min.js +748 -748
- package/dist/utils/fieldNameTracking.d.ts +21 -0
- package/dist/utils/fieldNameTracking.d.ts.map +1 -0
- package/dist/utils/index.d.ts +2 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/jsonProcessing.d.ts +43 -0
- package/dist/utils/jsonProcessing.d.ts.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,264 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Multi-level Cache Manager
|
|
3
|
+
*
|
|
4
|
+
* Implements a three-level caching strategy:
|
|
5
|
+
* - Level 1: Hot cache (most accessed nodes) - RAM (automatically detecting and adjusting in each environment)
|
|
6
|
+
* - Level 2: Warm cache (recent nodes) - OPFS, Filesystem or S3 depending on environment
|
|
7
|
+
* - Level 3: Cold storage (all nodes) - OPFS, Filesystem or S3 depending on environment
|
|
8
|
+
*/
|
|
9
|
+
import { HNSWNoun, GraphVerb } from '../coreTypes.js';
|
|
10
|
+
declare global {
|
|
11
|
+
interface Navigator {
|
|
12
|
+
deviceMemory?: number;
|
|
13
|
+
}
|
|
14
|
+
interface WorkerGlobalScope {
|
|
15
|
+
storage?: {
|
|
16
|
+
getDirectory?: () => Promise<any>;
|
|
17
|
+
[key: string]: any;
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
type HNSWNode = HNSWNoun;
|
|
22
|
+
type Edge = GraphVerb;
|
|
23
|
+
interface CacheStats {
|
|
24
|
+
hits: number;
|
|
25
|
+
misses: number;
|
|
26
|
+
evictions: number;
|
|
27
|
+
size: number;
|
|
28
|
+
maxSize: number;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Multi-level cache manager for efficient data access
|
|
32
|
+
*/
|
|
33
|
+
export declare class CacheManager<T extends HNSWNode | Edge> {
|
|
34
|
+
private hotCache;
|
|
35
|
+
private stats;
|
|
36
|
+
private environment;
|
|
37
|
+
private warmStorageType;
|
|
38
|
+
private coldStorageType;
|
|
39
|
+
private hotCacheMaxSize;
|
|
40
|
+
private hotCacheEvictionThreshold;
|
|
41
|
+
private warmCacheTTL;
|
|
42
|
+
private batchSize;
|
|
43
|
+
private autoTune;
|
|
44
|
+
private lastAutoTuneTime;
|
|
45
|
+
private autoTuneInterval;
|
|
46
|
+
private storageStatistics;
|
|
47
|
+
private warmStorage;
|
|
48
|
+
private coldStorage;
|
|
49
|
+
private options;
|
|
50
|
+
/**
|
|
51
|
+
* Initialize the cache manager
|
|
52
|
+
* @param options Configuration options
|
|
53
|
+
*/
|
|
54
|
+
constructor(options?: {
|
|
55
|
+
hotCacheMaxSize?: number;
|
|
56
|
+
hotCacheEvictionThreshold?: number;
|
|
57
|
+
warmCacheTTL?: number;
|
|
58
|
+
batchSize?: number;
|
|
59
|
+
autoTune?: boolean;
|
|
60
|
+
warmStorage?: any;
|
|
61
|
+
coldStorage?: any;
|
|
62
|
+
readOnly?: boolean;
|
|
63
|
+
});
|
|
64
|
+
/**
|
|
65
|
+
* Detect the current environment
|
|
66
|
+
*/
|
|
67
|
+
private detectEnvironment;
|
|
68
|
+
/**
|
|
69
|
+
* Detect the optimal cache size based on available memory and operating mode
|
|
70
|
+
*
|
|
71
|
+
* Enhanced to better handle large datasets in S3 or other storage:
|
|
72
|
+
* - Increases cache size for read-only mode
|
|
73
|
+
* - Adjusts based on total dataset size when available
|
|
74
|
+
* - Provides more aggressive caching for large datasets
|
|
75
|
+
* - Optimizes memory usage based on environment
|
|
76
|
+
*/
|
|
77
|
+
private detectOptimalCacheSize;
|
|
78
|
+
/**
|
|
79
|
+
* Tune cache parameters based on statistics and environment
|
|
80
|
+
* This method is called periodically if auto-tuning is enabled
|
|
81
|
+
*
|
|
82
|
+
* The auto-tuning process:
|
|
83
|
+
* 1. Retrieves storage statistics if available
|
|
84
|
+
* 2. Tunes each parameter based on statistics and environment
|
|
85
|
+
* 3. Logs the tuned parameters if debug is enabled
|
|
86
|
+
*
|
|
87
|
+
* Auto-tuning helps optimize cache performance by adapting to:
|
|
88
|
+
* - The current environment (Node.js, browser, worker)
|
|
89
|
+
* - Available system resources (memory, CPU)
|
|
90
|
+
* - Usage patterns (read-heavy vs. write-heavy workloads)
|
|
91
|
+
* - Cache efficiency (hit/miss ratios)
|
|
92
|
+
*/
|
|
93
|
+
private tuneParameters;
|
|
94
|
+
/**
|
|
95
|
+
* Tune hot cache size based on statistics, environment, and operating mode
|
|
96
|
+
*
|
|
97
|
+
* The hot cache size is tuned based on:
|
|
98
|
+
* 1. Available memory in the current environment
|
|
99
|
+
* 2. Total number of nodes and edges in the system
|
|
100
|
+
* 3. Cache hit/miss ratio
|
|
101
|
+
* 4. Operating mode (read-only vs. read-write)
|
|
102
|
+
* 5. Storage type (S3, filesystem, memory)
|
|
103
|
+
*
|
|
104
|
+
* Enhanced algorithm:
|
|
105
|
+
* - Start with a size based on available memory and operating mode
|
|
106
|
+
* - For large datasets in S3 or other remote storage, use more aggressive caching
|
|
107
|
+
* - Adjust based on access patterns (read-heavy vs. write-heavy)
|
|
108
|
+
* - For read-only mode, prioritize cache size over eviction speed
|
|
109
|
+
* - Dynamically adjust based on hit/miss ratio and query patterns
|
|
110
|
+
*/
|
|
111
|
+
private tuneHotCacheSize;
|
|
112
|
+
/**
|
|
113
|
+
* Tune eviction threshold based on statistics
|
|
114
|
+
*
|
|
115
|
+
* The eviction threshold determines when items start being evicted from the hot cache.
|
|
116
|
+
* It is tuned based on:
|
|
117
|
+
* 1. Cache hit/miss ratio
|
|
118
|
+
* 2. Operation patterns (read-heavy vs. write-heavy workloads)
|
|
119
|
+
*
|
|
120
|
+
* Algorithm:
|
|
121
|
+
* - Start with a default threshold of 0.8 (80% of max size)
|
|
122
|
+
* - For high hit ratios, increase the threshold to keep more items in cache
|
|
123
|
+
* - For low hit ratios, decrease the threshold to evict items more aggressively
|
|
124
|
+
* - For read-heavy workloads, use a higher threshold
|
|
125
|
+
* - For write-heavy workloads, use a lower threshold
|
|
126
|
+
*/
|
|
127
|
+
private tuneEvictionThreshold;
|
|
128
|
+
/**
|
|
129
|
+
* Tune warm cache TTL based on statistics
|
|
130
|
+
*
|
|
131
|
+
* The warm cache TTL determines how long items remain in the warm cache.
|
|
132
|
+
* It is tuned based on:
|
|
133
|
+
* 1. Update frequency from operation statistics
|
|
134
|
+
*
|
|
135
|
+
* Algorithm:
|
|
136
|
+
* - Start with a default TTL of 24 hours
|
|
137
|
+
* - For frequently updated data, use a shorter TTL
|
|
138
|
+
* - For rarely updated data, use a longer TTL
|
|
139
|
+
*/
|
|
140
|
+
private tuneWarmCacheTTL;
|
|
141
|
+
/**
|
|
142
|
+
* Tune batch size based on environment, statistics, and operating mode
|
|
143
|
+
*
|
|
144
|
+
* The batch size determines how many items are processed in a single batch
|
|
145
|
+
* for operations like prefetching. It is tuned based on:
|
|
146
|
+
* 1. Current environment (Node.js, browser, worker)
|
|
147
|
+
* 2. Available memory
|
|
148
|
+
* 3. Operation patterns
|
|
149
|
+
* 4. Cache hit/miss ratio
|
|
150
|
+
* 5. Operating mode (read-only vs. read-write)
|
|
151
|
+
* 6. Storage type (S3, filesystem, memory)
|
|
152
|
+
* 7. Dataset size
|
|
153
|
+
*
|
|
154
|
+
* Enhanced algorithm:
|
|
155
|
+
* - Start with a default based on the environment
|
|
156
|
+
* - For large datasets in S3 or other remote storage, use larger batches
|
|
157
|
+
* - For read-only mode, use larger batches to improve throughput
|
|
158
|
+
* - Dynamically adjust based on network latency and throughput
|
|
159
|
+
* - Balance between memory usage and performance
|
|
160
|
+
*/
|
|
161
|
+
private tuneBatchSize;
|
|
162
|
+
/**
|
|
163
|
+
* Detect the appropriate warm storage type based on environment
|
|
164
|
+
*/
|
|
165
|
+
private detectWarmStorageType;
|
|
166
|
+
/**
|
|
167
|
+
* Detect the appropriate cold storage type based on environment
|
|
168
|
+
*/
|
|
169
|
+
private detectColdStorageType;
|
|
170
|
+
/**
|
|
171
|
+
* Initialize warm storage adapter
|
|
172
|
+
*/
|
|
173
|
+
private initializeWarmStorage;
|
|
174
|
+
/**
|
|
175
|
+
* Initialize cold storage adapter
|
|
176
|
+
*/
|
|
177
|
+
private initializeColdStorage;
|
|
178
|
+
/**
|
|
179
|
+
* Get an item from cache, trying each level in order
|
|
180
|
+
* @param id The item ID
|
|
181
|
+
* @returns The cached item or null if not found
|
|
182
|
+
*/
|
|
183
|
+
get(id: string): Promise<T | null>;
|
|
184
|
+
/**
|
|
185
|
+
* Get an item from warm cache
|
|
186
|
+
* @param id The item ID
|
|
187
|
+
* @returns The cached item or null if not found
|
|
188
|
+
*/
|
|
189
|
+
private getFromWarmCache;
|
|
190
|
+
/**
|
|
191
|
+
* Get an item from cold storage
|
|
192
|
+
* @param id The item ID
|
|
193
|
+
* @returns The item or null if not found
|
|
194
|
+
*/
|
|
195
|
+
private getFromColdStorage;
|
|
196
|
+
/**
|
|
197
|
+
* Add an item to hot cache
|
|
198
|
+
* @param id The item ID
|
|
199
|
+
* @param item The item to cache
|
|
200
|
+
*/
|
|
201
|
+
private addToHotCache;
|
|
202
|
+
/**
|
|
203
|
+
* Add an item to warm cache
|
|
204
|
+
* @param id The item ID
|
|
205
|
+
* @param item The item to cache
|
|
206
|
+
*/
|
|
207
|
+
private addToWarmCache;
|
|
208
|
+
/**
|
|
209
|
+
* Evict items from hot cache based on LRU policy
|
|
210
|
+
*/
|
|
211
|
+
private evictFromHotCache;
|
|
212
|
+
/**
|
|
213
|
+
* Set an item in all cache levels
|
|
214
|
+
* @param id The item ID
|
|
215
|
+
* @param item The item to cache
|
|
216
|
+
*/
|
|
217
|
+
set(id: string, item: T): Promise<void>;
|
|
218
|
+
/**
|
|
219
|
+
* Delete an item from all cache levels
|
|
220
|
+
* @param id The item ID to delete
|
|
221
|
+
*/
|
|
222
|
+
delete(id: string): Promise<void>;
|
|
223
|
+
/**
|
|
224
|
+
* Clear all cache levels
|
|
225
|
+
*/
|
|
226
|
+
clear(): Promise<void>;
|
|
227
|
+
/**
|
|
228
|
+
* Get cache statistics
|
|
229
|
+
* @returns Cache statistics
|
|
230
|
+
*/
|
|
231
|
+
getStats(): CacheStats;
|
|
232
|
+
/**
|
|
233
|
+
* Prefetch items based on ID patterns or relationships
|
|
234
|
+
* @param ids Array of IDs to prefetch
|
|
235
|
+
*/
|
|
236
|
+
prefetch(ids: string[]): Promise<void>;
|
|
237
|
+
/**
|
|
238
|
+
* Check if it's time to tune parameters and do so if needed
|
|
239
|
+
* This is called before operations that might benefit from tuned parameters
|
|
240
|
+
*
|
|
241
|
+
* This method serves as a checkpoint for auto-tuning, ensuring that:
|
|
242
|
+
* 1. Parameters are tuned periodically based on the auto-tune interval
|
|
243
|
+
* 2. Tuning happens before critical operations that would benefit from optimized parameters
|
|
244
|
+
* 3. Tuning doesn't happen too frequently, which could impact performance
|
|
245
|
+
*
|
|
246
|
+
* By calling this method before get(), getMany(), and prefetch() operations,
|
|
247
|
+
* we ensure that the cache parameters are optimized for the current workload
|
|
248
|
+
* without adding unnecessary overhead to every operation.
|
|
249
|
+
*/
|
|
250
|
+
private checkAndTuneParameters;
|
|
251
|
+
/**
|
|
252
|
+
* Get multiple items at once, optimizing for batch retrieval
|
|
253
|
+
* @param ids Array of IDs to get
|
|
254
|
+
* @returns Map of ID to item
|
|
255
|
+
*/
|
|
256
|
+
getMany(ids: string[]): Promise<Map<string, T>>;
|
|
257
|
+
/**
|
|
258
|
+
* Set the storage adapters for warm and cold caches
|
|
259
|
+
* @param warmStorage Warm cache storage adapter
|
|
260
|
+
* @param coldStorage Cold storage adapter
|
|
261
|
+
*/
|
|
262
|
+
setStorageAdapters(warmStorage: any, coldStorage: any): void;
|
|
263
|
+
}
|
|
264
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cacheManager.d.ts","sourceRoot":"","sources":["../../src/storage/cacheManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -143,6 +143,50 @@ export interface StorageOptions {
|
|
|
143
143
|
* Operation configuration for timeout and retry behavior
|
|
144
144
|
*/
|
|
145
145
|
operationConfig?: OperationConfig;
|
|
146
|
+
/**
|
|
147
|
+
* Cache configuration for optimizing data access
|
|
148
|
+
* Particularly important for S3 and other remote storage
|
|
149
|
+
*/
|
|
150
|
+
cacheConfig?: {
|
|
151
|
+
/**
|
|
152
|
+
* Maximum size of the hot cache (most frequently accessed items)
|
|
153
|
+
* For large datasets, consider values between 5000-50000 depending on available memory
|
|
154
|
+
*/
|
|
155
|
+
hotCacheMaxSize?: number;
|
|
156
|
+
/**
|
|
157
|
+
* Threshold at which to start evicting items from the hot cache
|
|
158
|
+
* Expressed as a fraction of hotCacheMaxSize (0.0 to 1.0)
|
|
159
|
+
* Default: 0.8 (start evicting when cache is 80% full)
|
|
160
|
+
*/
|
|
161
|
+
hotCacheEvictionThreshold?: number;
|
|
162
|
+
/**
|
|
163
|
+
* Time-to-live for items in the warm cache in milliseconds
|
|
164
|
+
* Default: 3600000 (1 hour)
|
|
165
|
+
*/
|
|
166
|
+
warmCacheTTL?: number;
|
|
167
|
+
/**
|
|
168
|
+
* Batch size for operations like prefetching
|
|
169
|
+
* Larger values improve throughput but use more memory
|
|
170
|
+
*/
|
|
171
|
+
batchSize?: number;
|
|
172
|
+
/**
|
|
173
|
+
* Whether to enable auto-tuning of cache parameters
|
|
174
|
+
* When true, the system will automatically adjust cache sizes based on usage patterns
|
|
175
|
+
* Default: true
|
|
176
|
+
*/
|
|
177
|
+
autoTune?: boolean;
|
|
178
|
+
/**
|
|
179
|
+
* The interval (in milliseconds) at which to auto-tune cache parameters
|
|
180
|
+
* Only applies when autoTune is true
|
|
181
|
+
* Default: 60000 (1 minute)
|
|
182
|
+
*/
|
|
183
|
+
autoTuneInterval?: number;
|
|
184
|
+
/**
|
|
185
|
+
* Whether the storage is in read-only mode
|
|
186
|
+
* This affects cache sizing and prefetching strategies
|
|
187
|
+
*/
|
|
188
|
+
readOnly?: boolean;
|
|
189
|
+
};
|
|
146
190
|
}
|
|
147
191
|
/**
|
|
148
192
|
* Create a storage adapter based on the environment and configuration
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"storageFactory.d.ts","sourceRoot":"","sources":["../../src/storage/storageFactory.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAC,cAAc,EAAC,MAAM,iBAAiB,CAAA;AAC9C,OAAO,EAAC,aAAa,EAAC,MAAM,6BAA6B,CAAA;AACzD,OAAO,EAAC,WAAW,EAAC,MAAM,2BAA2B,CAAA;AACrD,OAAO,EAAC,mBAAmB,EAAE,SAAS,EAAC,MAAM,mCAAmC,CAAA;AAChF,OAAO,EAAC,iBAAiB,EAAC,MAAM,iCAAiC,CAAA;AAEjE,OAAO,EAAC,eAAe,EAAC,MAAM,4BAA4B,CAAA;AAE1D;;GAEG;AACH,MAAM,WAAW,cAAc;IAC3B;;;;;;;;;OASG;IACH,IAAI,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,MAAM,GAAG,YAAY,GAAG,IAAI,GAAG,IAAI,GAAG,KAAK,CAAA;IAEtE;;OAEG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAE5B;;OAEG;IACH,sBAAsB,CAAC,EAAE,OAAO,CAAA;IAEhC;;OAEG;IACH,wBAAwB,CAAC,EAAE,OAAO,CAAA;IAElC;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAA;IAEtB;;OAEG;IACH,SAAS,CAAC,EAAE;QACR;;WAEG;QACH,UAAU,EAAE,MAAM,CAAA;QAElB;;WAEG;QACH,MAAM,CAAC,EAAE,MAAM,CAAA;QAEf;;WAEG;QACH,WAAW,EAAE,MAAM,CAAA;QAEnB;;WAEG;QACH,eAAe,EAAE,MAAM,CAAA;QAEvB;;WAEG;QACH,YAAY,CAAC,EAAE,MAAM,CAAA;KACxB,CAAA;IAED;;OAEG;IACH,SAAS,CAAC,EAAE;QACR;;WAEG;QACH,UAAU,EAAE,MAAM,CAAA;QAElB;;WAEG;QACH,SAAS,EAAE,MAAM,CAAA;QAEjB;;WAEG;QACH,WAAW,EAAE,MAAM,CAAA;QAEnB;;WAEG;QACH,eAAe,EAAE,MAAM,CAAA;KAC1B,CAAA;IAED;;OAEG;IACH,UAAU,CAAC,EAAE;QACT;;WAEG;QACH,UAAU,EAAE,MAAM,CAAA;QAElB;;WAEG;QACH,MAAM,CAAC,EAAE,MAAM,CAAA;QAEf;;WAEG;QACH,WAAW,EAAE,MAAM,CAAA;QAEnB;;WAEG;QACH,eAAe,EAAE,MAAM,CAAA;QAEvB;;WAEG;QACH,QAAQ,CAAC,EAAE,MAAM,CAAA;KACpB,CAAA;IAED;;OAEG;IACH,eAAe,CAAC,EAAE;QACd;;WAEG;QACH,UAAU,EAAE,MAAM,CAAA;QAElB;;WAEG;QACH,MAAM,CAAC,EAAE,MAAM,CAAA;QAEf;;WAEG;QACH,QAAQ,EAAE,MAAM,CAAA;QAEhB;;WAEG;QACH,WAAW,EAAE,MAAM,CAAA;QAEnB;;WAEG;QACH,eAAe,EAAE,MAAM,CAAA;QAEvB;;WAEG;QACH,WAAW,CAAC,EAAE,MAAM,CAAA;KACvB,CAAA;IAED;;OAEG;IACH,eAAe,CAAC,EAAE,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"storageFactory.d.ts","sourceRoot":"","sources":["../../src/storage/storageFactory.ts"],"names":[],"mappings":"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"}
|