A cube dimension is a structural attribute of a Cube that is a list of related names–known as Members–all of which belong to a similar category in the user’s perception of a data.
A dimension is a structural attribute of a cube that is a list of members, all of which are of a similar type in the user's perception of the data.
For example, all months, quarters, years, etc., make up a time dimension; likewise all cities, regions, countries, etc., make up a geography dimension.
A dimension acts as an index for identifying values within a multi-dimensional array. It allows to filter or group data.
Flat or hierarchical dimension
A flat dimension is one which only has one level, for example a region dimension that only has cities. However it's usual to define dimensions which include several levels, which build up a tree. For example you can have several cities which belong to the same region, and then several regions which belong to the same conuntry. In this case the geographical dimension has a tree structure, and this is a hierarchical dimension.
Slicing
If you show the cube data in a table, a matrix or a chart, you can include dimensions in the rows or columns or chart axes to partition the data.
Filtering
You can select a member, or several memebers of the dimensions which are not included in the table matrix or chart to limit the data which is shown.
If one member of a dimension is selected, the data shown will correspond only to the selected member.