Difference between 是不是喝酒了? and 喝酒了没有？
The first expression is usually used when the speaker has a feeling that the other person had done something, so he's making a guess, while the second could be either a simple question or suggestion.

In the first case,


  你是不是吃蛋糕了？


can be used when the speaker noticed a cream stain on the other person's shirt or something like that. The speaker is guessing if the other person has had a cake.


  你吃蛋糕了没有？


can be used when the speaker wants to suggest the other person to have a nice piece of cake or simply query whether he has had cake.