The term data compression refers to decreasing the number of bits of information that needs to be stored or transmitted. This can be achieved with or without losing data, which means that what will be deleted throughout the compression will be either redundant data or unneeded one. When the data is uncompressed later on, in the first case the info and its quality shall be identical, whereas in the second case the quality shall be worse. You will find different compression algorithms that are more efficient for various kind of information. Compressing and uncompressing data normally takes a lot of processing time, therefore the server performing the action must have enough resources to be able to process your data fast enough. One simple example how information can be compressed is to store just how many consecutive positions should have 1 and how many should have 0 in the binary code rather than storing the actual 1s and 0s.