1. A scheduler computing device comprising: a computing task memory configured to store at least one computing task, wherein the computing task is to be executed by a data node of a distributed computing system, wherein the distributed computing system comprises at least one data node, each data node having a central processor and an intelligent storage medium, wherein the intelligent storage medium comprises a controller processor and a non-volatile memory; and a processor configured to reduce the transmittal of data between elements of the data node by: deciding whether to assign the computing task to be executed by either the central processor of the data node or the controller processor of the intelligent storage medium based, at least in part, upon an amount of output data associated with the computing task compared to an amount of input data associated with the computing task, wherein: when the amount of output data is greater than the amount of input data, assigned the computing task to the central processor of the data node; and when the amount of output data is less than or equal to the amount of input data, assigned the computing task to the controller processor of the intelligent storage medium.