I watched the 2015 presentation of LN, and I've read a portion of the paper - so I understand basically how the channels work (I think). However, I'm not sure I've fully grasped how this will help scalability in practice.
If Bob and Alice want to transact (let's say Alice is a random internet retailer - not Amazon - and Bob wants to buy waaaaaay too many tattoo stickers for his daughters for Christmas, not realizing that each little package has like 40 sheets of the things). Bob would then have to open a channel with Alice, transfer the balance required to complete the purchase, and then the channel would be closed.
For pretty much all economic relationships except for a few enormous ones (Amazon, eBay, Walmart, etc), you won't (and wouldn't be able to) keep open channels all the time.
From these two observations, I wonder: wouldn't the process of opening / closing a channel actually create two transactions to be processed on the blockchain? If most transactions are between actors who don't maintain channels between themselves, then how does LN actually help?
If the answer is "you keep open channels with a small number of other actors and then route payments through open channels", doesn't that encourage a very high degree of centralization due to the prohibitively large capital requirements for main hub nodes?