Learning Data Warehouse Design