The officer was responding to a call about a man making racially-motivated threats in Chinatown.
According to court documents, the man, later identified as Geraldo Contreras, had previously made threats and said he "specializes in killing Asian people."
The officer who responded to 911 calls about the man was an Asian woman.
Surveillance video captured the entire incident, which began when the officer asked Contreras to turn around and put his hands on his head.
WATCH: Full surveillance video of man's attack on SFPD officer in Chinatown
Contreras complied with that command, but when the officer asked him if he had any weapons, he turned around, shoved her and wrestled her to the ground.
People standing nearby saw what happened and jumped in to help the officer.
"He's a big guy, he was not letting go. He had a death grip on her. And he was not letting go," Michael Waldorf said. "I saw it as an emergency. She needed our help and she needed it right away,"
Court documents reveal that Contreras has a record of prior arrests, including aggravated assault, elder abuse and assaults on officers in other parts of California. It's unclear if he was ever convicted of those charges.
The officer only sustained minor injuries in the attack.