Re: [GNC] XML vs MySQL Data Storage

2021-09-17 Thread Thomas Forrester
Very good explanation, Derek.  Seems my choice of MySQL was the
best decision for me, and you've reminded me of some of the more subtle
reasons.  I'll keep things as they are.

Appreciate the help!
- Tom

On Fri, Sep 17, 2021 at 11:39 AM Derek Atkins  wrote:

> Hi,
>
> On Fri, September 17, 2021 12:21 pm, Thomas Forrester wrote:
> > I've been using GnuCash for several years now, and almost right from the
> > start I made the decision to use MySQL as the database engine.  Other
> that
> > forgetting to start MySQL first now and then, it's working fine, and the
> > ability to easily schedule automated backups is nice.
> >
> > I am assuming that the program gains some optimization by using a
> > professional RDBMS as its data engine.  But is it?  I know that XML is
> the
> > native data storage type for GnuCash, but that's really just a text file
> > format without any back end optimization.
> >
> > My question is:  With an ever-increasing data load, am I correct in
> > assuming that performance is going to take in increasingly large hit over
> > MySQL?  Would there be any reason at all to move back to XML over MySQL?
>
> At this point, the only real benefit of using a SQL backend is that
> commits go into storage immediately instead of waiting for you to save
> them.  Beyond that, GnuCash generally doesn't differentiate between them.
> Specifically, GnuCash always loads the whole dataset into RAM when the
> application starts.  It does this regardless of whether it's SQL or XML.
> In this case, you may find that as the dataset size increases, SQL may
> "load" slower, but you will be able to exit faster (because saves are
> incremental).
>
> On the roadmap is a plan to change to full SQL, so GnuCash would be a true
> SQL DB application and (hopefully) not have to read the whole dataset into
> RAM.  For XML it would load the data into an in-RAM SQLite image, but
> MySQL would just be used directly.
>
> Whether to move from SQL back to XML is up to you, of course.
>
> Hope this helps!
>
> > Thanks!
> > --
> > Tom
> > Thomas L. Forrester
> > Middleton, WI  USA
>
> > Please remember to CC this list on all your replies.
> > You can do this by using Reply-To-List or Reply-All.
>
> -derek
>
> --
>Derek Atkins 617-623-3745
>de...@ihtfp.com www.ihtfp.com
>Computer and Internet Security Consultant
>
>

-- 
Tom
Thomas L. Forrester
3211 Patty Lane
Middleton, WI 53562-1652 USA
608-831-0769
___
gnucash-user mailing list
gnucash-user@gnucash.org
To update your subscription preferences or to unsubscribe:
https://lists.gnucash.org/mailman/listinfo/gnucash-user
If you are using Nabble or Gmane, please see 
https://wiki.gnucash.org/wiki/Mailing_Lists for more information.
-
Please remember to CC this list on all your replies.
You can do this by using Reply-To-List or Reply-All.


Re: [GNC] XML vs MySQL Data Storage

2021-09-17 Thread Derek Atkins
Hi,

On Fri, September 17, 2021 12:21 pm, Thomas Forrester wrote:
> I've been using GnuCash for several years now, and almost right from the
> start I made the decision to use MySQL as the database engine.  Other that
> forgetting to start MySQL first now and then, it's working fine, and the
> ability to easily schedule automated backups is nice.
>
> I am assuming that the program gains some optimization by using a
> professional RDBMS as its data engine.  But is it?  I know that XML is the
> native data storage type for GnuCash, but that's really just a text file
> format without any back end optimization.
>
> My question is:  With an ever-increasing data load, am I correct in
> assuming that performance is going to take in increasingly large hit over
> MySQL?  Would there be any reason at all to move back to XML over MySQL?

At this point, the only real benefit of using a SQL backend is that
commits go into storage immediately instead of waiting for you to save
them.  Beyond that, GnuCash generally doesn't differentiate between them. 
Specifically, GnuCash always loads the whole dataset into RAM when the
application starts.  It does this regardless of whether it's SQL or XML. 
In this case, you may find that as the dataset size increases, SQL may
"load" slower, but you will be able to exit faster (because saves are
incremental).

On the roadmap is a plan to change to full SQL, so GnuCash would be a true
SQL DB application and (hopefully) not have to read the whole dataset into
RAM.  For XML it would load the data into an in-RAM SQLite image, but
MySQL would just be used directly.

Whether to move from SQL back to XML is up to you, of course.

Hope this helps!

> Thanks!
> --
> Tom
> Thomas L. Forrester
> Middleton, WI  USA

> Please remember to CC this list on all your replies.
> You can do this by using Reply-To-List or Reply-All.

-derek

-- 
   Derek Atkins 617-623-3745
   de...@ihtfp.com www.ihtfp.com
   Computer and Internet Security Consultant

___
gnucash-user mailing list
gnucash-user@gnucash.org
To update your subscription preferences or to unsubscribe:
https://lists.gnucash.org/mailman/listinfo/gnucash-user
If you are using Nabble or Gmane, please see 
https://wiki.gnucash.org/wiki/Mailing_Lists for more information.
-
Please remember to CC this list on all your replies.
You can do this by using Reply-To-List or Reply-All.


[GNC] XML vs MySQL Data Storage

2021-09-17 Thread Thomas Forrester
I've been using GnuCash for several years now, and almost right from the
start I made the decision to use MySQL as the database engine.  Other that
forgetting to start MySQL first now and then, it's working fine, and the
ability to easily schedule automated backups is nice.

I am assuming that the program gains some optimization by using a
professional RDBMS as its data engine.  But is it?  I know that XML is the
native data storage type for GnuCash, but that's really just a text file
format without any back end optimization.

My question is:  With an ever-increasing data load, am I correct in
assuming that performance is going to take in increasingly large hit over
MySQL?  Would there be any reason at all to move back to XML over MySQL?

Thanks!
-- 
Tom
Thomas L. Forrester
Middleton, WI  USA
___
gnucash-user mailing list
gnucash-user@gnucash.org
To update your subscription preferences or to unsubscribe:
https://lists.gnucash.org/mailman/listinfo/gnucash-user
If you are using Nabble or Gmane, please see 
https://wiki.gnucash.org/wiki/Mailing_Lists for more information.
-
Please remember to CC this list on all your replies.
You can do this by using Reply-To-List or Reply-All.