Steve,

Thanks for your input. I believe we’re in agreement here; I wasn’t trying to 
suggest that GC become a DBMS, but rather it would learn to utilize DBMS 
features that many seem to expect.

I’m not great with the appropriate terminology to use. Do you have language I 
could use that would more accurately reflect the direction that GC is headed?

David

> On Aug 14, 2018, at 3:50 PM, Stephen M. Butler <[email protected]> wrote:
> 
> On 08/14/2018 03:05 PM, David T. via gnucash-user wrote:
>> Hello,
>> 
>> In response to Bug 777893 (https://bugs.gnucash.org/show_bug.cgi?id=777893 
>> <https://bugs.gnucash.org/show_bug.cgi?id=777893>), I have written a more 
>> detailed description of the storage choices available to users for insertion 
>> into the Tutorial & Concepts Guide at section 2.5. Given the extent of the 
>> text, I am including it here so that the broader community can offer 
>> suggestions for improvement. Note that I will insert appropriate encoding 
>> once I finalize the content.
>> 
>> Thanks,
>> David T.
>> 
>> ————————————————————
>> Proposed text for Tutorial & Concepts Guide section 2.5
>> ————————————————————
>> 
>> 2.5 Storing your financial data
>> 2.5.1 Overview
>> GnuCash offers several formats for storing your financial data. The default 
>> file storage format is XML, while a number of flavors of SQL storage are 
>> available. Users can choose a file format from the File Save and File Save 
>> As dialogs.
>> The primary GnuCash storage format is an XML file. The file is by default 
>> compressed with gzip, which is a preference that is set at 
>> Edit→Preferences→General→Use file compression. 
>> GnuCash also supports SQL storage via the DBI back end. It supports 
>> PostgreSQL, MySQL and SQLite3 databases.
>> 
>> Storage Comparison
>> As noted, GnuCash allows storage in either XML or SQL formats. Each of these 
>> formats has benefits and shortcomings that the user should consider for 
>> their needs and abilities. 
>> The XML format is the most stable and established format, and for this 
>> reason, it is the recommended format for most users. SQL storage was added 
>> for the 2.4 release and has become an increasingly popular choice for users.
>> Use of SQL formats for storage implies to many that GnuCash is database 
>> management software (DBMS). While that is a long term goal of the 
>> development team, GnuCash as currently designed is not DBMS. It is a 
>> financial application that can store its data in SQL files.
> 
> I would strongly suggest that GnuCash never (triple underscore) become a
> DBMS engine.  I would encourage it to be an application that uses a
> strong DBMS engine (which it already does) as a back-end and that the
> team would apply data normalization and multi-user techniques to the
> front-end application.
> 
> Note the difference between a front-end application and the back-end
> DBMS engine.
> --Steve  (retired Oracle DBA and former application developer)
>> Many features that users of DBMS expect from a DBMS are not implemented in 
>> GnuCash. The GnuCash data schema is not normalized. Significant elements of 
>> the data logic is implemented in code, rather than data structure.
>> Gnucash uses the SQL back end to load the entire data store into memory in 
>> the same manner as the XML back end. Consequently, use of the SQL back end 
>> does not enable simultaneous multi-user access to a GnuCash file, although 
>> that is one long term goal.
>> One benefit of the SQL back end is that it saves changes incrementally, and 
>> every change is committed to the back end as it happens. This is in contrast 
>> to the XML back end, which only writes to the data file when the user 
>> invokes the Save command. 
>> The SQL back end does allow users with SQL experience to write queries 
>> against the data to create custom reports without using Gnucash’s internal 
>> report system. It is important to note that modification of GnuCash data 
>> using external access modes is strongly discouraged by the development team, 
>> and damages to a GnuCash data file that result from such modifications are 
>> strictly the responsibility of the user.
>> 
>> Storage Comparison Table
>> 
>> XML                                                  SQL
>> Default                                              Optional
>> Requires no additional software      Requires additional software
>> Requires no additional expertise     Requires expertise with DBMS 
>> Compressed                                   Uncompressed
>> Save on command                              Save on commit
>> Uses log files                                       Does not use log files
>> Not multi-user                                       Not multi-user
>> Limited external processing          External processing through SQL queries
>> 
>> 
>> _______________________________________________
>> gnucash-user mailing list
>> [email protected]
>> 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.
> 
> 
> -- 
> Stephen M Butler, PMP, PSM
> [email protected]
> [email protected]
> 253-350-0166
> -------------------------------------------
> GnuPG Fingerprint:  8A25 9726 D439 758D D846 E5D4 282A 5477 0385 81D8
> 
> _______________________________________________
> gnucash-user mailing list
> [email protected]
> 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.

_______________________________________________
gnucash-user mailing list
[email protected]
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.

Reply via email to