Hello Shixiang ,
you are mixing things up. BQSR (Base Quality Score Recalibration) and MarkDuplicates are two different things.
1 BQSR (Base Quality Score Recalibration):
The quality values assigned to each base within a read by sequencing machine gets reassigned by new values. These new values are meant to be more correct.
More information about it: https://gatkforums.broadinstitute.org/gatk/discussion/44/base-quality-score-recalibration-bqsr
During library preparation you have PCR steps resulting in fragments that are copies of one and the same original dna molecule. Based on the most 5' mapping position those duplicates are recognized and only one will be retained. The reason for removing such duplicates is to avoid introducing a bias if one original molecule is overrepresented due to some amplification bias. Note: If your library prep is amplicon based, which means you use pcr to get your target region, do not remove duplicates. Because all your reads are virtually duplicates.