Updated

Rookie Daniel Hudson shut down the NL's top offense for eight innings, and Tony Abreu had a pair of hits and scored a run in Arizona's minimalist offense Tuesday night, leading the Diamondbacks to a 3-1 victory over the Cincinnati Reds.

Arizona beat the NL Central leaders for the first time in five games this season.

Hudson (7-2) gave up four hits and fanned eight before leaving with a 3-0 lead. He also had a run-scoring single off left-hander Travis Wood (5-3), who continued his fade. Wood lasted only five innings, giving up nine hits — eight of them singles.

A night after they drew a season-low 12,061 fans, the Reds sold 16,973 tickets for one of their pet promotion games — fans were allowed to bring dogs.

The Reds took control of the NL Central by putting up the best record in the majors during August, going 19-8 while pulling away from St. Louis. They're 5-8 in September but have maintained their lead — seven games coming in — while the Cardinals crumbled.

Arizona has struggled against the Reds, dropping 13 of their last 16 games. This time, their rookie starter got the better of Cincinnati's rookie starter.

The Reds got only two runners as far as second base against Hudson, who retired 14 of the last 15 he faced. Juan Gutierrez started the ninth and let Cincinnati load the bases on a pair of hits and Jay Bruce's walk with two outs. Gutierrez hit Drew Stubbs on a 1-1 pitch, forcing in a run.

Right fielder Justin Upton ran down Ramon Martinez's liner toward the gap, securing Gutierrez's ninth save in 11 chances.

Arizona got the 23-year-old Hudson from the White Sox in the trade for right-hander Edwin Jackson on July 30. Hudson was the NL's rookie of the month in August, going 4-1 with a 1.85 ERA. The only loss came against Cincinnati on Aug. 17 at Coors Field, where he struck out eight in the first three innings but dropped the game 6-2.

The 23-year-old Wood has a 4.73 ERA in his last six starts. He gave up three runs in five innings — the fourth time in his last five starts that he's failed to go more than five innings.

He was helped by the Diamondbacks' tendency to strike out. Arizona fanned 12 times, the seventh time in the last eight games that it's had at least 12 strikeouts in a game.

NOTES: Arizona 3B Mark Reynolds singled in the fourth inning, ending an 0-for-24 slump. ... Reds manager Dusty Baker is playing 2B Brandon Phillips even though his right hand is still sore. He was hit by a pitch on Aug. 27 and has struggled at the plate, going 1 for 20. "Defense is so valuable," Baker said. "We need him out there." ... OF Jim Edmonds is taking batting practice but isn't yet available to play. He's been bothered by a strained abdomen since Aug. 24. ... RH Aaron Harang made his first appearance since he was moved to the bullpen last week, pitching the ninth.