A stream based storage system comprising: a plurality of physical storage volumes configured to store data in a distributed manner, each of the plurality of physical storage volumes having a corresponding throughput limitation; a plurality of storage nodes configured to provide storage and retrieval of at least a time-based portion of one or more data streams in response to a receipt of a data storage/retrieval request associated with the one or more data streams and configured to manage the plurality of physical storage volumes, each of the one or more data streams comprising a plurality of time-ordered items, each of the plurality of time-ordered items belonging to one of a plurality of item types, wherein, in response to a receipt of a data storage request, the stream based storage system is configured to decompose the one or more data streams associated with the data storage request into a plurality of substreams having a corresponding throughput limitation so that the plurality of storage volumes stores the plurality of substreams based on the corresponding throughput limitations; and a plurality of applications communicatively coupled to the plurality of storage nodes, the plurality of applications providing a user interface to issue said data storage/retrieval request associated with the one or more data streams, the system characterised in that: treatment of the one or more data streams is determined by a set of user-configurable rules specifying data classification and filtering criteria, and wherein the set of user-configurable rules includes at least a data security class indicative of a required security level for a corresponding data stream. a plurality of physical storage volumes configured to store data in a distributed manner, each of the plurality of physical storage volumes having a corresponding throughput limitation; a plurality of storage nodes configured to provide storage and retrieval of at least a time-based portion of one or more data streams in response to a receipt of a data storage/retrieval request associated with the one or more data streams and configured to manage the plurality of physical storage volumes, each of the one or more data streams comprising a plurality of time-ordered items, each of the plurality of time-ordered items belonging to one of a plurality of item types, wherein, in response to a receipt of a data storage request, the stream based storage system is configured to decompose the one or more data streams associated with the data storage request into a plurality of substreams having a corresponding throughput limitation so that the plurality of storage volumes stores the plurality of substreams based on the corresponding throughput limitations; and a plurality of applications communicatively coupled to the plurality of storage nodes, the plurality of applications providing a user interface to issue said data storage/retrieval request associated with the one or more data streams, the system characterised in that: treatment of the one or more data streams is determined by a set of user-configurable rules specifying data classification and filtering criteria, and wherein the set of user-configurable rules includes at least a data security class indicative of a required security level for a corresponding data stream.