UNPKG

semantic-ds-toolkit

Version:

Performance-first semantic layer for modern data stacks - Stable Column Anchors & intelligent inference

58 lines 2.23 kB
import { ColumnData, StableColumnAnchor, ColumnFingerprint } from '../types/anchor.types'; interface BatchProcessingOptions { batchSize: number; maxConcurrency: number; retryAttempts: number; priorityWeight: number; memoryLimit?: number; useWorkerThreads?: boolean; streamingMode?: boolean; } interface ProcessingContext { batchId: string; batchIndex: number; totalBatches: number; startTime: number; memoryUsage: () => NodeJS.MemoryUsage; } type BatchProcessor<T, R> = (batch: T[], context: ProcessingContext) => Promise<R[]>; export declare class HighPerformanceBatchProcessor { private activeJobs; private jobQueue; private workerPool; private maxWorkers; private processingStats; constructor(maxWorkers?: number); private initializeWorkerPool; processColumns(columns: ColumnData[], processor: BatchProcessor<ColumnData, any>, options?: Partial<BatchProcessingOptions>): Promise<any[]>; generateFingerprints(columns: ColumnData[], fingerprintFn: (column: ColumnData) => ColumnFingerprint): Promise<ColumnFingerprint[]>; private parallelFingerprinting; private processChunkOptimized; private optimizeColumnForProcessing; createAnchors(dataset: string, columns: ColumnData[], anchorFn: (dataset: string, column: ColumnData) => StableColumnAnchor): Promise<StableColumnAnchor[]>; private processBatch; private processStandardBatch; private processStreamingBatch; private executeBatchWithRetry; private createBatches; private createDataStream; private updateProcessingStats; benchmark(testData: ColumnData[], processor: BatchProcessor<ColumnData, any>, iterations?: number): Promise<{ averageThroughput: number; peakThroughput: number; averageLatency: number; memoryEfficiency: number; }>; getProcessingStats(): { totalJobs: number; completedJobs: number; failedJobs: number; totalRowsProcessed: number; averageThroughput: number; peakThroughput: number; }; cleanup(): void; } export declare const globalBatchProcessor: HighPerformanceBatchProcessor; export {}; //# sourceMappingURL=batch-processor.d.ts.map