As we know, in the blockchain system every node has historical data that contains all previous transactions to maintain the integrity and approve the future transaction. What if blockchain is implemented in everyday life and people makes billions of transaction in a day, then a node must run out of memory sooner or later. How this is maintained or designed?
Right, most cryptocurrencies store all transaction data in the blockchain, which must be available to every node. You're right that this is a big problem for scalability.
There are several different kinds of strategies being developed to further improve cryptocurrency scaling. These strategies generally either involve sharding the blockchain into multiple related blockchains, so each node only needs to have some subset of the full blockchain (see Ethereum's Sharding FAQ), or moving transactions off-chain (Bitcoin's Lightning Network, state channels, Ethereum's Raiden, etc). Off-chain transaction systems build off of the idea that if two people are sending money back and forth between themselves, they can architect some smart contracts so they can send the transactions privately and instantly between themselves off-chain, and make an on-chain transaction containing all of the private transactions to safely reclaim their money if either defect, and a network can be formed between pairs of users like this to allow instant off-chain transactions between any two people in the network.
The idea that you have to have the entire history is an academic one. Practically speaking you only need to have one node that you can trust is on the chain, plus a trusted record containing what you need to know about the chain you don't have (such as unspent transactions in Bitcoin). Some "fast" synchronization methods already do this.
What you loose is the inidisputability of transactions. If 100% of people agree that a blockchain starts with a given node, and you have the longest chain of blocks, that's accepted as proof that those transactions really occurred. Do you care? Probably not. I'd say 99.9999% of the time people aren't disputing really old transactions.
So what about the 0.00001%? If you can trust others to help you hold onto the chain in a distributed manner, you can decrease the burden. Bitcoin's chain may be 150Gb now, but if 100 people all worked together, that's only 1.5Gb per person that has to be held, so long as you are willing to resolve the disputes in the 0.00001% together. If you start trusting archiving sites, the problem all but goes away -- we have banking systems which do indeed archive every single transaction in gory detail. We already have the harddrives full of that data. We just have to trust the holder of those harddrives that they're correct. Having the whole blockchain locally lets you see if the transactions are valid for yourself.
Right now no blockchain is long enough to really need to worry about this yet. If you are someone who cares about the indisputability of transactions without trusting others, you're willing to go through a paltry 150Gb. But if you see the situation you are talking about, where there are billions of transactions per day, we'll explore more creative solutions.