The Astros, who have the worst record in baseball and field a team full of rookies, scored five runs in the first inning through hustle and timely hitting.
J.D. Martinez collected three RBI, while Jimmy Paredes and Carlos Corporan added two runs batted in each.
In total, the Astros had 16 hits on Monday while the Diamondbacks were only able to pick up four over the entire game. Henry Blanco hit a solo home run to score Arizona's only run.
Zach Duke looked good in relief, pitching four innings and giving up two runs as a mop-up reliever after Hudson came out of the game.
Wandy Rodriguez won his eighth decision of the year, going six strong innings and striking out five D-backs. He painted the outside corner all night.
Tomorrow's game features Jason Marquis facing Jordan Lyles. It is another night of "buy a ticket, get a children's ticket free" at Chase Field.