The biggest issue I have with Azure Table Storage is the lack of string comparison operators.

If I can do
.Where(a=>a.Age > 21)

and

.Where(a=>a.Name.CompareTo("Dave"))

then why can't I do

.Where(a=>a.Name.ToLower().Contains("dave"))

Is this an architectural constraint or rather an implementation limitation?

If it's an implementation limitation, then I can hope that it will be fixed in a future release.

If it's architectural, then I will have to find an alternative solution such as SQL Azure.