Apache Cassandra 2.2 introduced User Defined Functions (UDFs) and User Defined Aggregates (UDAs), which allow certain types of computation to occur server-side, directly on the Cassandra cluster. UDAs are aggregate functions that can be run directly on Cassandra and are composed of two parts: a UDF (called a 'state function' when in the context of UDAs) and the UDA itself, which calls the UDF for each row returned from the query. These features help to both conserve network bandwidth and cut down on client-side computations by performing functions and aggregations directly at the data source.