Storing 3D Tile based maps

Hey there!
I’m starting an Adventure Game and I’m currently starting to plan the structure of my maps.

The maps will be (because it’s easier to create) tile based.

But I have no idea how to store them efficiently. I thought of a three-dimensional array, but I’m not sure if this is efficient, since empty space have to be calculated too.

https://dl.dropboxusercontent.com/u/13341521/map.jpg

has someone an Idea on how to make this less space-consuming and more efficient?