A 2D antenna array introduces a new level of control and additional degrees of freedom in multiple-input-multiple-output (MIMO) systems particularly for the so-called "massive MIMO" systems. To accurately assess the performance gains of these large arrays, existing azimuth-only channel models have been extended to handle 3D channels by modeling both the elevation and azimuth dimensions. In this paper, we study the channel correlation matrix of a generic ray-based 3D channel model, and our analysis and simulation results demonstrate that the 3D correlation matrix can be well approximated by a Kronecker production of azimuth and elevation correlations. This finding lays the theoretical support for the usage of a product codebook for reduced complexity feedback from the receiver to the transmitter. We also present the design of a product codebook based on Grassmannian line packing.