ODI series are usually 3,5 and even 7 matches and are set in stone. Sports like basketball and the baseball in the USA have best of series. So ODI series with a best of 3,5,7 would be ideal but of course cricket administrators would be against that since tickets, sponsorship and TV rights are done before a series start. I dont think the ECB would have been too happy to cancel matches 5-7 of the Australia v England ODI series last year.
With the recent pathetically limp series between Australia and West Indies and Pakistan its apparent that dead matches, in Australia at least, have to be resolved. For years Australia had the tri-angular series with a best of 3 final which worked well. Australia usually won but quite often teams in the final caused upset wins. See England in 2006/07 and India in the last series in 2007/08 and fans like that since it felt like teams were actually playing for something and anything could happen in the final.
I dont think how long a series really matters. Last summer South Africa was leading 3-1 going into the 5th and final ODI against Australia and I barely watched the 5th game and didnt particularly care. Compare that to the NZ series straight after that was 2-2 going into the 5th (unfortunately it was washed out) and my interest was a thousand times that of the South Africa series.
I dont care if an ODI was 9 matches long if it was 4-4 going into the 9th match.
The solution is to turn dead matches in an ODI series into Twenty20 matches. That way administrators, sponsors and TV still get to keep their $$ without damaging cricket with lop sided ODI matches which do more harm than good.
I'm no huge fan of Twenty20 at all. Some people might think its sacrilegious to replace an ODI match with a Twenty20 match and hurt ODI's, oh so sacred 40 year history. A lot of people will hate this idea purely because they hate Twenty20 rather than any great interest in the 50 over format.
But if meaningless, dead matches are going to be played then why not play them in the format that best suits?