Design scalable semantic models