On 2013-12-14 07:29, JL wrote: > I have a number of python processes which communicate with each > other through writing/reading config text files. The python > ConfigParser is used. I am wondering if it is more CPU-efficient to > switch to using sqlite database instead of using configuration > files. If the software does plenty of reading/writing, is it more > efficient to use config text files or sqlite database?
I'm pretty sure that the CPU aspect doesn't really play into things. A few thoughts: + You'll be I/O bound most of the time. Even if you used a ramdisk to reduce disk access delays, accessing multiple .txt files requires the OS to do permission-checking each time, while a single sqlite file gets checked once upon opening the DB initially. + text-files are fragile unless you take extra pains to keep things atomic + sqlite guarantee* atomicity, so you either see all-or-nothing + sqlite is also very efficient for querying + sticking with plain-text config files is just asking for some sort of race-condition or partial-file issue to come up + sqlite may give you less CPU load is just an added benefit -tkc * well, except on NFS shares and other places where file-locking is unreliable -- https://mail.python.org/mailman/listinfo/python-list