<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title>Answers to: Where should I store my data?</title><link>https://answers.axonivy.com/questions/211/where-should-i-store-my-data</link><description>&lt;p&gt;Xpert.ivy provides multiple possibilities to manage data. Is there a overview to get a quick overview in which case I should use which 'data store'? &lt;/p&gt;</description><atom:link href="https://answers.axonivy.com/questions/211/where-should-i-store-my-data" rel="self"></atom:link><language>en</language><lastBuildDate>Tue, 17 Dec 2013 10:37:05 -0500</lastBuildDate><item><title>Answer by Flavio Sadeghi</title><link>https://answers.axonivy.com/questions/211/where-should-i-store-my-data/212</link><description>&lt;p&gt;Which data management is the right one, depends from case to case. Most projects use a combination of the provided possibilities. &lt;/p&gt;
&lt;p&gt;This q&amp;amp;a-entry offers an overview of the provided possibilities and provides for each possibility a conclusion with pros and cons and some remarks. The list should help to get a quick overview.&lt;/p&gt;
&lt;p&gt;Please note, this is a wiki-entry. Feedback and enhancements are highly recommended. Who are interested about updates could subscribe this entry on the rights side and will get automatically an email on each change.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="http://www.xpertivy.ch/releases/Xpert.ivy/5.0.latest/documents/DesignerGuideHtml/ivy.cms.html"&gt;Content Management System&lt;/a&gt;&lt;/strong&gt; &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;CMS entries could be overridden by the overriding-mechanism.&lt;/li&gt;
&lt;li&gt;When a CMS entry is resolved, the projects dependencies are respected.&lt;/li&gt;
&lt;li&gt;To manage the CMS entries, an extended graphical Editor/View is provided and a public API exists for scripting.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;+&lt;/strong&gt; Use the CMS for multi language content (like labels, texts, titles etc.).&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="http://www.xpertivy.ch/releases/Xpert.ivy/5.0.latest/documents/DesignerGuideHtml/ivy.html.webContent.html"&gt;WebContent&lt;/a&gt;&lt;/strong&gt; (like css or js files)&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;When a WebContent entry is resolved, the projects dependencies are respected.&lt;/li&gt;
&lt;li&gt;The content of a WebContent is free accessible over the web.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;+&lt;/strong&gt; The WebContent-folder could be administrated over the filesystem (e.g. via FTP, SSH, …).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;+&lt;/strong&gt; The WebContent-folder is the rights place to store files (like images etc.). Especially in contrast to the CMS or a database.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;-&lt;/strong&gt; Content which is related to a HTML User Dialog (like CSS, JS-Scripts etc) should be stored in to the WebContent or resource folder of the dialog (and not in the CMS). In this case the CMS serves only the multi language content.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Filesystem&lt;/strong&gt; (extern)&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;+&lt;/strong&gt; Because file management has to be implemented by yourself, it is possible to control (and restrict) the access from the web (in contrast to the WebContent-folder).&lt;/li&gt;
&lt;li&gt;Otherwise the same pros and cons are true as for the WebContent-Folder.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="http://www.xpertivy.ch/releases/Xpert.ivy/5.0.latest/documents/DesignerGuideHtml/ivy.htmldialogs.html"&gt;HTML User Dialog&lt;/a&gt;/resources&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The content of a resource-folder is free accessible over the web.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;+&lt;/strong&gt; The resources-folder is the rights place to store files (like images, js-scripts etc.) which belongs to the HTML User Dialog.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="http://www.xpertivy.ch/releases/Xpert.ivy/5.0.latest/documents/DesignerGuideHtml/ivy.processmodels.elements.dbstep.html"&gt;Database&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;+&lt;/strong&gt; Read access to external systems&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;+&lt;/strong&gt; Data management of simple database structures (read and write) within Xpert.ivy .&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="http://www.xpertivy.ch/releases/Xpert.ivy/5.0.latest/documents/DesignerGuideHtml/ivy.processmodels.elements.webservice.html"&gt;Webservice&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;+&lt;/strong&gt; Read and write access to external systems (service oriented)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="http://www.xpertivy.ch/releases/Xpert.ivy/5.0.latest/documents/DesignerGuideHtml/ivy.persistence.html"&gt;Persistency&lt;/a&gt;&lt;/strong&gt; (Java Persistence API)&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;JPA is a Java standard, it is well documented and widely used.&lt;/li&gt;
&lt;li&gt;There are some pitfalls. Start your first JPA experience with some simple examples.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;+&lt;/strong&gt; management of relational database structures within Xpert.ivy&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="http://www.xpertivy.ch/releases/Xpert.ivy/5.0.latest/documents/DesignerGuideHtml/ivy.configuration.environments.html"&gt;Environment Variables&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Configurations could be defined for different environments (e.g. Development, Testing, Production)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;+&lt;/strong&gt; Environment specific configuration exists for Database-/Webservice-configuration and custom String variables&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;-&lt;/strong&gt; The environment and its configuration should not be changed at runtime (e.g. over the public API).&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Application Custom Properties&lt;/strong&gt; (Axon.ivy 6.0 and newer)&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Simple API to store key/value pairs per application&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;+&lt;/strong&gt; Simple to use. No own database needed.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;-&lt;/strong&gt; No UI yet&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;-&lt;/strong&gt; No environment support&lt;/li&gt;
&lt;/ul&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Flavio Sadeghi</dc:creator><pubDate>Tue, 17 Dec 2013 10:37:05 -0500</pubDate><guid>https://answers.axonivy.com/questions/211/where-should-i-store-my-data/212</guid></item></channel></rss>