For the smallest turret that will get the job done eventually, you only need to be able to do a tiny bit more damage than the enemy's shield regen. However, "eventually" might take days. For example, if the enemy has 123456 shield capacity and 2222 shield regen per second when under fire, and your turret does 2223 damage per second, then it's going to take 123456 seconds to get the enemy's shield down (almost 1.5 days).
Of course for this "minimal damage" you're wasting a huge amount of damage and power. For the example above, 123456*2223 = a total of almost 275 million damage just to take down a weeny 123456 shield.
The more damage a turret does the quicker the enemy dies; and the quicker an enemy dies the less power/damage is wasted due to enemy shield regen; up until you reach "overkill". For the example above, if your turret did 123456 damage in one shot then shields would be gone with only 123456 damage rather than 275 million damage; but there's probably not much point doing more damage than that (as the additional damage would be wasted).
Also note that it depends a lot on the type of damage. E.g. a turret with a stop effect won't do any damage at all; a turret that only does shield damage won't damage hulls, etc. With this in mind you're mostly looking for the most effective combination. For an example; you might have a stop effect on one turret/weapon, an anti-shield turret/weapon (to take down shields quickly), and a (slow moving) missile on another weapon/turret to damage blocks/hulls. The idea here is for the slow moving missile to hit the target after shields are down (because it moves slower than beam/cannon), where the enemy can't dodge the slow missile because of the stop effect.
Basically; with so many variables the best answer is "build a turret and see".