A computer-implemented method to compress a dataset, comprising: receiving the dataset at a particular frequency and at particular time intervals from sensor nodes; based on one or more attributes of data associated with a unified dataset stored in an in-memory data store, determining a dataset including sensor node identifier data (102; 502; 602; 702), sensor node timestamp data (104; 604; 704) and sensor measurement data (106; 606; 706); determining a first data compression logic; compressing the sensor node identifier data (102; 502; 602; 702) based on the first data compression logic; and determining a second data compression logic; compressing the sensor measurement data (106; 606; 706) based on the second data compression logic; executing a sensor node timestamp data compression model to compress the sensor node timestamp data (104; 604; 704); and storing the compressed sensor node identifier data (102; 502; 602; 702), the compressed sensor measurement data (106; 606; 706) and the compressed sensor node timestamp data (104; 604; 704) in the in-memory data store; wherein determining the first data compression logic, comprises: based on the data transmission frequency from a plurality of sensor nodes (A-Z), determining one or more types of data patterns associated with the sensor node identifier data (102; 502; 602; 702); and from the determined one or more type of data patterns, determining at least one frequently repetitive type of data pattern; wherein determining the sensor node timestamp data compression model, comprises: determining attributes associated with the sensor node timestamp data including start time, the count of number of intervals (610; 710; 804), interval duration and number of sensor nodes, wherein determining the the at least one frequently repetitive type of data pattern comprises: executing a suffix tree algorithm for generating a suffix tree to determine a data compression logic, the suffix tree including the sensor node identifier data (102; 502; 602; 702), the suffix tree including a plurality of nodes (A-Z) and a plurality of paths connecting the plurality of nodes (A-Z); traversing the suffix tree and determining one or more non-overlapping nodes from the plurality of nodes (A-Z); for the determined one or more non-overlapping nodes, computing data compression scores corresponding to the one or more non-overlapping nodes; and based on a comparison of the computed data compression scores, determining the first data compression logic. receiving the dataset at a particular frequency and at particular time intervals from sensor nodes; based on one or more attributes of data associated with a unified dataset stored in an in-memory data store, determining a dataset including sensor node identifier data (102; 502; 602; 702), sensor node timestamp data (104; 604; 704) and sensor measurement data (106; 606; 706); determining a first data compression logic; compressing the sensor node identifier data (102; 502; 602; 702) based on the first data compression logic; and determining a second data compression logic; compressing the sensor measurement data (106; 606; 706) based on the second data compression logic; executing a sensor node timestamp data compression model to compress the sensor node timestamp data (104; 604; 704); and storing the compressed sensor node identifier data (102; 502; 602; 702), the compressed sensor measurement data (106; 606; 706) and the compressed sensor node timestamp data (104; 604; 704) in the in-memory data store; based on the data transmission frequency from a plurality of sensor nodes (A-Z), determining one or more types of data patterns associated with the sensor node identifier data (102; 502; 602; 702); and from the determined one or more type of data patterns, determining at least one frequently repetitive type of data pattern; wherein determining the sensor node timestamp data compression model, comprises: determining attributes associated with the sensor node timestamp data including start time, the count of number of intervals (610; 710; 804), interval duration and number of sensor nodes, wherein determining the the at least one frequently repetitive type of data pattern comprises: executing a suffix tree algorithm for generating a suffix tree to determine a data compression logic, the suffix tree including the sensor node identifier data (102; 502; 602; 702), the suffix tree including a plurality of nodes (A-Z) and a plurality of paths connecting the plurality of nodes (A-Z); traversing the suffix tree and determining one or more non-overlapping nodes from the plurality of nodes (A-Z); for the determined one or more non-overlapping nodes, computing data compression scores corresponding to the one or more non-overlapping nodes; and based on a comparison of the computed data compression scores, determining the first data compression logic. executing a suffix tree algorithm for generating a suffix tree to determine a data compression logic, the suffix tree including the sensor node identifier data (102; 502; 602; 702), the suffix tree including a plurality of nodes (A-Z) and a plurality of paths connecting the plurality of nodes (A-Z); traversing the suffix tree and determining one or more non-overlapping nodes from the plurality of nodes (A-Z); for the determined one or more non-overlapping nodes, computing data compression scores corresponding to the one or more non-overlapping nodes; and based on a comparison of the computed data compression scores, determining the first data compression logic.