Perlでハッシュの配列を使ってて疑問に思ったのですが

$data[0]{'date'} = "20050204"
$data[0]{'title'} = "hoge"
$data[1]{'date'} = "20051001"
$data[1]{'title'} = "test"
$data[2]{'date'} = "20040403"
$data[2]{'title'} = "abcd"

こういうデータがあったとして'date'をキーにして
ソートする場合は、どうしたら良いのでしょうか?
1次的なハッシュや配列はsort関数でできたのですが
上記のような場合はわかりません。

それと、このようなデータ形式を扱うのは
Perlでは良く使われるのでしょうか?
それともあまり使われないのでしょうか?