To fully utilize the performance gain of sparse code multiple access (SCMA) system, the channel state information of multiusers must be obtained at the base station. However, conventional channel estimation approach causes significant training overhead as the number of active users becomes large. In this paper, we propose a channel estimation scheme for the uplink SCMA system to reduce the training overhead, which is based on the unstructured channel estimator (UCE). However, it is ineffective in terms of the resource usage to apply the UCE scheme to the SCMA system directly since the data detection requires only channel information on the nonzero subcarriers of the SCMA codeword. Thus, we introduce a sparse pilot structure where the location of nonzero pilot symbols correspond to the location of nonzero symbols in the SCMA codeword and provide an optimal pilot allocation scheme for the sparse pilot structure, which can achieve the mean square error lower bound. In addition, we consider the codebook reuse scenario to support more users with the existing SCMA codebooks. While the codebook reuse can help realize the massive connectivity, it has a problem that interference on each resource grows irregularly, which in turn leads to overwhelming training overhead. To solve this problem, we propose a channel estimation approach to reduce interference per subcarrier uniformly by the weight-regularization (WR) algorithm, and apply the optimal pilot allocation and least squares algorithm. The puncturing channel information by the WR algorithm can be obtained by a minimum mean square error (MMSE) interpolator or a combined interpolator. Analytical results and simulations shows effectiveness of the proposed channel estimators.