Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
ee9e94f
Second skeleton for ColGroupDDCLZW using the IMapToDataInterface and …
florian-jobs Jan 7, 2026
007611c
Idea:
florian-jobs Jan 8, 2026
b1bf906
More TODOS written and cleaned up project.
florian-jobs Jan 9, 2026
8027458
Dictionary initialisierung für Compress und rudimentäre Implementieru…
Jan 10, 2026
ef3b834
Uebersichtlichkeit verbessert
Jan 10, 2026
9886821
Minor error fixing. Redesigned compress method.
florian-jobs Jan 11, 2026
e0d5d75
Added red/write methods to serialize and deserialize from stream.
florian-jobs Jan 11, 2026
beb4613
Commented code, error handling for compress. next step make compress …
florian-jobs Jan 11, 2026
620e03a
Added first stages of tests. improved compression and decompression a…
florian-jobs Jan 11, 2026
b7911d7
Added convertToDDCLZW() method to ColGroupDDC Class. Added convertToD…
florian-jobs Jan 12, 2026
1dfe91e
Started working on ColGroupDDCLZW's other methods that need to be imp…
florian-jobs Jan 12, 2026
3156863
test commit
florian-jobs Jan 13, 2026
10d5776
[SYSTEMDS-3779] Added new Compression and ColGroup Types DDCLZW.
florian-jobs Jan 13, 2026
3c9e2ed
[SYSTEMDS-3779] Introduce initial ColGroupDDCLZW with LZW-compressed …
florian-jobs Jan 13, 2026
a8df1fe
Decompression to a specific index
Jan 15, 2026
96cb6e9
slice Rows
Jan 16, 2026
a30cc91
[SYSTEMDS-3779] Add imemdiate stop after index certain index in decom…
florian-jobs Jan 16, 2026
d39fad0
[SYSTEMDS-3779] Reverted formatting of ColGroupDDC,ColGroupDDCLZW,Col…
florian-jobs Jan 16, 2026
9e2cf11
[SYSTEMDS-3779] Intermediate DDCLZW Scheme
Jan 17, 2026
7de7f1d
[SYSTEMDS-3779] Added getIdx using LZWMappingIterator. Reverted forma…
florian-jobs Jan 18, 2026
4f3f413
[SYSTEMDS-3779] Fixed out of bounds logic
LukaDeka Jan 18, 2026
ca7e6ff
[SYSTEMDS-3779] Added new tests for ColGroupDDCLZW (draft)
LukaDeka Jan 18, 2026
ddd2a8b
[SYSTEMDS-3779] Increased sliceRows performance by using iterator. Ad…
florian-jobs Jan 19, 2026
a8735e1
Added various fallbacks to ddc for functions with complex access patt…
florian-jobs Jan 19, 2026
72a439b
Added various functions which can be implemented by decoding the lzw …
florian-jobs Jan 21, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ public abstract class AColGroup implements Serializable {

/** Public super types of compression ColGroups supported */
public static enum CompressionType {
UNCOMPRESSED, RLE, OLE, DDC, CONST, EMPTY, SDC, SDCFOR, DDCFOR, DeltaDDC, LinearFunctional;
UNCOMPRESSED, RLE, OLE, DDC, CONST, EMPTY, SDC, SDCFOR, DDCFOR, DeltaDDC, DDCLZW, LinearFunctional;

public boolean isDense() {
return this == DDC || this == CONST || this == DDCFOR || this == DDCFOR;
Expand All @@ -86,7 +86,7 @@ public boolean isSDC() {
* Protected such that outside the ColGroup package it should be unknown which specific subtype is used.
*/
protected static enum ColGroupType {
UNCOMPRESSED, RLE, OLE, DDC, CONST, EMPTY, SDC, SDCSingle, SDCSingleZeros, SDCZeros, SDCFOR, DDCFOR, DeltaDDC,
UNCOMPRESSED, RLE, OLE, DDC, CONST, EMPTY, SDC, SDCSingle, SDCSingleZeros, SDCZeros, SDCFOR, DDCFOR, DDCLZW, DeltaDDC,
LinearFunctional;
}

Expand Down
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please revert the indentation to tabs again, to avoid changing the DDC base class.

Original file line number Diff line number Diff line change
Expand Up @@ -1112,13 +1112,13 @@ protected boolean allowShallowIdentityRightMult() {
public AColGroup convertToDeltaDDC() {
int numCols = _colIndexes.size();
int numRows = _data.size();

DblArrayCountHashMap map = new DblArrayCountHashMap(Math.max(numRows, 64));
double[] rowDelta = new double[numCols];
double[] prevRow = new double[numCols];
DblArray dblArray = new DblArray(rowDelta);
int[] rowToDictId = new int[numRows];

double[] dictVals = _dict.getValues();

for(int i = 0; i < numRows; i++) {
Expand All @@ -1134,13 +1134,13 @@ public AColGroup convertToDeltaDDC() {
prevRow[j] = val;
}
}

rowToDictId[i] = map.increment(dblArray);
}

if(map.size() == 0)
return new ColGroupEmpty(_colIndexes);

ACount<DblArray>[] vals = map.extractValues();
final int nVals = vals.length;
final double[] dictValues = new double[nVals * numCols];
Expand All @@ -1153,7 +1153,7 @@ public AColGroup convertToDeltaDDC() {
oldIdToNewId[dac.id] = i;
idx += numCols;
}

DeltaDictionary deltaDict = new DeltaDictionary(dictValues, numCols);
AMapToData newData = MapToFactory.create(numRows, nVals);
for(int i = 0; i < numRows; i++) {
Expand All @@ -1162,4 +1162,7 @@ public AColGroup convertToDeltaDDC() {
return ColGroupDeltaDDC.create(_colIndexes, deltaDict, newData, null);
}

public AColGroup convertToDDCLZW() {
return ColGroupDDCLZW.create(_colIndexes, _dict, _data, null);
}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It looks to me the only change in this file is this method convertToDDCLZW, please revert all the formatting only changes.

}
Loading
Loading