Pages:
Author

Topic: Running a node on a low spec notebook computer. - page 2. (Read 2690 times)

legendary
Activity: 3430
Merit: 3083
You are suggesting that I use an USB stick rather than an SD card, and thanks for that observation. USB sticks are easier to use and to store, so that looks to be the option to use. Can you see any problems in keeping the blockchain on a USB stick?
Bitcoin chain storage using database engine is putting high stress on the flash storage media (SD, USB, etc.) in terms of wear and tear. It is close to worst possible access pattern: write-ahead-logging causes many rewrites with almost no reads. Cheaper flash media would fail before you complete the whole blockchain synchronization.

The same thing was tried by somebody else on cheap Dell laptops with cheap SSD in the days when the main blockchain database was still Berkeley DB. They would reproducibly permanently fail during initial synchronization. The current LevelDB is less bad than BerkeleyDB, but still far from being flash-optimized.

Could this be mitigated by copying (most) new blockchain data to the cheap flash from a desktop machine?
legendary
Activity: 2128
Merit: 1074
You are suggesting that I use an USB stick rather than an SD card, and thanks for that observation. USB sticks are easier to use and to store, so that looks to be the option to use. Can you see any problems in keeping the blockchain on a USB stick?
Bitcoin chain storage using database engine is putting high stress on the flash storage media (SD, USB, etc.) in terms of wear and tear. It is close to worst possible access pattern: write-ahead-logging causes many rewrites with almost no reads. Cheaper flash media would fail before you complete the whole blockchain synchronization.

The same thing was tried by somebody else on cheap Dell laptops with cheap SSD in the days when the main blockchain database was still Berkeley DB. They would reproducibly permanently fail during initial synchronization. The current LevelDB is less bad than BerkeleyDB, but still far from being flash-optimized.

To be really reliable you would need two separate hardware storage pieces: one for the main OS and important files like wallet.dat and one for constantly rewritten data that is really throwaway: blockchain storage and log files.

Edit: One thing that I forgot about: many SD card media have controllers that are internally optimized for FAT or exFAT file systems and don't perform well when formatted with NTFS. NTFS security and reliability features are pointless for blockchain storage. This is one more reason to have split devices when specifying cheap flash storage media.
legendary
Activity: 2870
Merit: 2474
https://JetCash.com
OK - a bit more clarification.

With regard to nodes. There seem to be a variety of options, and descriptive names.
1. A node with a complete blockchain and both inbound and outbound connections
2. As above but with only outbound connections
3. A pruned version of 1
4. A pruned version of 2

As I mentioned before, I run a type 2 node on a notebook with a 2Tb hard disk. I plan to copy this blockchain onto a USB stick, and start a new wallet on the Linux computer using the copied blockchain. I have decided to prune this, so I will end up with a type 4 node. I don't have inbound connections because I use public WiFi for this project, and that only allows outbound connections.

Always on is not a possibility because the project is about people on the move or with a mobile lifestyle.
sr. member
Activity: 261
Merit: 523
You are suggesting that I use an USB stick rather than an SD card, and thanks for that observation. USB sticks are easier to use and to store, so that looks to be the option to use. Can you see any problems in keeping the blockchain on a USB stick? Would it be better to run a full node rather than a pruned node?

Your terminology could be corrected to stop misconceptions spreading:

Pruned nodes are full nodes. The 'full' in full node refers to that the node fully verifies all the rules of bitcoin.

Nodes which store the entire blockchain on disk as opposed to pruning can be called 'archival nodes'.

As for your project, I run a similar one on a notebook laptop which is always-on. I installed ubuntu, uninstalled the desktop environment and only control it using the terminal or ssh. Be prepared to wait some time to sync the blockchain from the beginning, but once you're done it will use barely any power, bandwidth or CPU time.

One possibility is to enable pruning and sync the blockchain on another faster computer. Switch off bitcoind and then copy over the ~/.bitcoin/ directory to your notebook, when it starts up it will not need to sync.

I am aware of 3rd party wallets, but don't wish to use them. I prefer to control things via a core wallet. The transactions that I hope to make will include cash purchases of Bitcoin, and the sale and purchase of domain names.

If this is your use case, have you considered running an always-on full node at home, and then pointing your lightweight wallet to connect only to it. That way you'd get the full privacy, security and trustlessness benefits of a full node but without having the potentially long startup time.
legendary
Activity: 2870
Merit: 2474
https://JetCash.com
Just to clarify a bit.

The idea of this second small computer is to be able to take it into a place such as a supermarket cafe without a power source, but with WiFi. That would allow me to make a Bitcoin transaction using a core wallet. An external hard drive would normally be a better solution, but it would increase the power requirement, and reduce the portability. The notebook would not be run 24/7, but would probably be on for 5 or 6 hours per day. This should be enough to keep the blockchain synchronised.

I am aware of 3rd party wallets, but don't wish to use them. I prefer to control things via a core wallet. The transactions that I hope to make will include cash purchases of Bitcoin, and the sale and purchase of domain names.
legendary
Activity: 3038
Merit: 4418
Crypto Swap Exchange
You are suggesting that I use an USB stick rather than an SD card, and thanks for that observation. USB sticks are easier to use and to store, so that looks to be the option to use. Can you see any problems in keeping the blockchain on a USB stick? Would it be better to run a full node rather than a pruned node?
I would say preferably, a portable hard drive or similar. No problems with using Blockchain on a USB stick, just remember to start Bitcoin Core up with a datadir pointed there.

Definitely, a full node is better. A full node contains all the blocks and can relay them. A pruned node will however, only relay new blocks, blocks they have and transactions. Not that I know of any serious implications, but laptops generally aren't designed to run for 24/7.
legendary
Activity: 2870
Merit: 2474
https://JetCash.com
Thanks again. I hadn't thought about the DVD option. I've got a writer on the main computer, but I think I'll still run with the USB option so that I can document the process for other people. I've just looked at my blockchain directory, and it's reported to be 106Gb. That bears out your comment, and it would seem to mean that it will have to be a pruned node. It will probably be more interesting to run this anyway, so that I can see what limitations ( if any ) crop up.
legendary
Activity: 3430
Merit: 3083
A full node would subject the flash memory to far more of a random-access heavy workload, which is hard on flash memory's longevity (especially if you encrypt the disk). Although, I'm still using a 2010 Intel SSD for my blockchain, and it's not showing signs of age yet.

The real consideration (also expense) is the size of your flash memory. The blockchain can grow at upto about 5GB a month (and mostly does at the moment, as blocks are mostly full). That could easily double sometime this year, and it might even quadruple. I would definitely go with a ~ 500GB minimum if you go full-chain, that might only be good for another 2 years. That puts the SD route further out of the picture, as the max capacity tends to be lower than other form factors (I think 500GB SD cards might just be available these days, though).

Another consideration would be M2 expansions slots: LTE WWAN modems can be fitted to modern laptops (firmware dependent), and could fit this usage model. If you've got the space/correct size slot available, I'd look into that.



As far as installing Linux goes, possessing USB flash drives is indeed useful. Another recommendation: a USB DVD player. If, for whatever reason, you have trouble correctly flashing the install image to USB, it's much much easier to get the image onto the installation medium correctly using DVD burning software (and, of course, DVDs).

The read-only aspect of DVDs also adds a little safety; you can extract an ISO image file of the OS installer once it's burnt, then check that against published hashes from the installer website (i.e. as you would with new Bitcoin binaries).
legendary
Activity: 2870
Merit: 2474
https://JetCash.com
I found this helpful video, so it looks as if I'm going to be installing Ubuntu fairly soon. I just need to get a couple of extra memory sticks.

https://www.youtube.com/watch?v=mbglTmowRK4
legendary
Activity: 2870
Merit: 2474
https://JetCash.com
Thanks for that post. You've more or less confirmed my opinion of Windows 10. I really don't want Microsoft keeping a copy of my wallet, or making me pay to keep a 3rd copy of the blockchain. It would be worth blocking it ( if I could ) just on performance considerations, let alone the security risks.

You are suggesting that I use an USB stick rather than an SD card, and thanks for that observation. USB sticks are easier to use and to store, so that looks to be the option to use. Can you see any problems in keeping the blockchain on a USB stick? Would it be better to run a full node rather than a pruned node?
legendary
Activity: 3430
Merit: 3083
Windows 10.... it depends on the specific security considerations you have in mind; you're probably safe against all but the most well-resourced and determined thieves. But there's definitely one possible adversary you'll never be protected against: Microsoft themselves. I'm not saying they'll steal your Bitcoins, that's unlikely, but you're almost certainly providing Microsoft with all sorts of information about how you use your computer when you use a Microsoft OS.


SD cards.... in my short experience using SD cards for the Bitcoin blockchain, the limiting factor was actually the processor (using a RasPi 1.1 Cheesy). But my guess is that SD will be painfully slow, unless you are using the newest SD standards (which are comparable to SATA 1-2 interface speeds). USB 3.0 is still faster, AFAIA
legendary
Activity: 2870
Merit: 2474
https://JetCash.com
My local computer shop knocked £100 of the price of a low(ish)spec computer because it has a blue case. At least, I assume that's the reason as the grey one is full price. I bought one to conduct a few experiments for my computing-on-the-move project. This is the computer.
http://www.pcworld.co.uk/gbuk/computing/laptops/laptops/hp-stream-x360-11-6-2-in-1-aqua-blue-10151741-pdt.html
One of the projects is to run a second full node with a different wallet on this machine. I appreciate that 32 GB of eMMC storage isn't enough for the blockchain Smiley . The idea was to copy the blockchain from my main PC onto an SD card, and to install core using this card, and to run as a pruned node with a new wallet. I could then remove the card when core wasn't running.

Another project was to install Ubuntu ( or another Linux variant ) in a years time. The machine has Windows 10 installed at the moment. I've been looking at the Windows installation, and I don't like it. It includes Cortana, and they seem to have made this harder to remove. It also includes a free subscription to one-drive for a year, followed by paid renewals. Well I don't want one-drive, even if it's free. It also has McAfee pre-installed, and a load of other items. These seem to slow down the computer, and to increase web traffic. These are important considerations when you are running a "celery" computer over public WiFi. I'm a gnat's ovipositor away from junking Windows, and going straight to the Ubuntu project, and include the Bitcoin node in that.

I'd be grateful for comments and advice about this project. I'm happy to post details of the project on this forum for the use of other members. The two major considerations are -

The security implications of running a node under the new Windows 10 operating environment.
The feasibility of starting a pruned node from an SD card created on my other computer, and the additional files needed in addition to the blockchain.

I'll research the possibility of using Ubuntu on this machine, and the support for the drivers required. A brief initial check seems to indicate that it would be a good move.
Pages:
Jump to: