@milaboratories/pl-model-common 1.19.1 → 1.19.3

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@milaboratories/pl-model-common",
3
- "version": "1.19.1",
3
+ "version": "1.19.3",
4
4
  "description": "Platforma SDK Model",
5
5
  "types": "./dist/index.d.ts",
6
6
  "main": "./dist/index.js",
@@ -85,6 +85,62 @@ export type BinaryPartitionedDataInfo<Blob> = {
85
85
  parts: Record<string, BinaryChunk<Blob>>;
86
86
  };
87
87
 
88
+ type ParquetChunkMappingAxis = {
89
+ /** Data type (matches PColumn axis types) */
90
+ type: 'Int' | 'Long' | 'String';
91
+
92
+ /** Field name in the Parquet file */
93
+ id: string;
94
+ };
95
+
96
+ type ParquetChunkMappingColumn = {
97
+ /** Data type (matches PColumn value type) */
98
+ type: 'Int' | 'Long' | 'Float' | 'Double' | 'String';
99
+
100
+ /** Field name in the Parquet file */
101
+ id: string;
102
+ };
103
+
104
+ type ParquetChunkStats = {
105
+ /** Number of rows in the chunk */
106
+ numberOfRows?: number;
107
+ /** Byte size information for storage optimization and query planning */
108
+ size?: {
109
+ /** Byte sizes for each axis column in the same order as axes mapping */
110
+ axes: number[];
111
+ /** Byte size for the data column */
112
+ column: number;
113
+ };
114
+ };
115
+
116
+ export type ParquetChunk<Blob> = {
117
+ /** Parquet file (PTable) containing column data */
118
+ data: Blob;
119
+
120
+ /** Content hash calculated for the specific axes and data this chunk represents */
121
+ dataDigest?: string;
122
+
123
+ /** Axes mappings - Parquet file is sorted by these fields in this order */
124
+ axes: ParquetChunkMappingAxis[];
125
+
126
+ /** Column mapping */
127
+ column: ParquetChunkMappingColumn;
128
+
129
+ /** Pre-computed statistics for optimization without blob download */
130
+ stats?: ParquetChunkStats;
131
+ };
132
+
133
+ export type ParquetPartitionedDataInfo<Blob> = {
134
+ /** Identifier for this data format ('ParquetPartitioned') */
135
+ type: 'ParquetPartitioned';
136
+
137
+ /** Number of leading axes used for partitioning */
138
+ partitionKeyLength: number;
139
+
140
+ /** Map of stringified partition keys to parquet files */
141
+ parts: Record<string, ParquetChunk<Blob>>;
142
+ };
143
+
88
144
  /**
89
145
  * Union type representing all possible data storage formats for PColumn data.
90
146
  * The specific format used depends on data size, access patterns, and performance requirements.