Sophie

Sophie

distrib > Fedora > 15 > i386 > by-pkgid > 2e9c43658e374d290a2de15d25134ac8 > files > 924

db4o-doc-8.0-1.fc15.i686.rpm

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns:MadCap="http://www.madcapsoftware.com/Schemas/MadCap.xsd" MadCap:lastBlockDepth="2" MadCap:lastHeight="120" MadCap:lastWidth="624" MadCap:disableMasterStylesheet="true" MadCap:tocPath="Tuning|Performance Hints" MadCap:InPreviewMode="false" MadCap:RuntimeFileType="Topic" MadCap:TargetType="WebHelp" MadCap:PathToHelpSystem="../../../" MadCap:HelpSystemFileName="index.xml" MadCap:SearchType="Stem">
    <head><title>Database Size	</title>
        <script type="text/javascript">/* <![CDATA[ */
window.onload = function(){
	var pathToFlash = $('html').attr('MadCap:PathToHelpSystem') + 'Content/Resources/Code/ZeroClipboard.swf';
	ZeroClipboard.setMoviePath(pathToFlash);
			
	function bindToClipBord(element,content){
		var clip = new ZeroClipboard.Client();
		clip.setText(content);
		clip.glue(element);
	};
		
	if(location.protocol==='file:'){
		$('.copylink-marker').remove();
	} else{
			$('.copylink-marker').each(function(){
				var text = $(this).parent().parent().children('.prettyprint').html();
				$(this).hover(function(){
					bindToClipBord(this,text);
				},
				function(){});
			});	
	}		
	prettyPrint();	
};
                /* ]]> */</script>
        <link href="../../SkinSupport/MadCap.css" rel="stylesheet" />
        <link href="../../Resources/Stylesheets/OnlineStyle.css" rel="stylesheet" />
        <script src="../../Resources/Code/prettify.js">
        </script>
        <script src="../../Resources/Code/lang-vb.js">
        </script>
        <script src="../../Resources/Code/jquery.min.js">
        </script>
        <script src="../../Resources/Code/ZeroClipboard.js">
        </script>
        <script src="../../SkinSupport/MadCapAll.js" type="text/javascript">
        </script>
    </head>
    <body>
        <p class="MCWebHelpFramesetLink" style="display: none;"><a href="../../../index_CSH.html#tuning/performance_hints/database_size.htm" style="">Open topic with navigation</a>
        </p>
        <div class="MCBreadcrumbsBox"><span class="MCBreadcrumbsPrefix">You are here: </span><a class="MCBreadcrumbsLink" href="../../tuning.htm">Tuning</a><span class="MCBreadcrumbsDivider"> &gt; </span><a class="MCBreadcrumbsLink" href="../performance_hints.htm">Performance Hints</a><span class="MCBreadcrumbsDivider"> &gt; </span><span class="MCBreadcrumbs">Database Size</span>
        </div>
        <p>
            <script type="text/javascript">/*<![CDATA[*/document.write('<a href="' + location.href +'">');
				document.write("Direct Link");
			document.write('</a>');/*]]>*/</script>
        </p>
        <p>
        </p>
        <h1>Database Size</h1>
        <p>If you are concerned about the size of your database file, it is importnant to understand what contributes to it and what are the strategies to keep it down.</p>
        <h2>Object Overhead</h2>
        <p>When you create a new db4o fatabase file - it contains only the header and has a fixed size. As soon as you start storing the information the file will grow. The size overhead per object depends on the typehandler implementation. </p>
        <p>In
general the object consists of internal ID and value types, i.e.
integers, arrays, enums etc. Overhead per object type is ID, which is
integer. The overhead for value type is an integer value showing which
value type is it, i.e. int or string etc.For variable length
value types, there is a long value to store the length. If object
contains another complex object - the id of another object is
referenced in the top-level object.
 
If you decide to use UUIDs and version number for your objects, you will get an additional overhead:</p>
        <p>UUID = 35 bytes (signature part) + 8 bytes (long part) version number = 8 bytes.
</p>
        <p>Additional overhead per object will appear from using indexes and will depend on the amount of indexes fields and indexes value types.</p><a name="Block Size"></a>
        <h2>Block Size </h2>
        <p>Block Size is a configurable value, which defines the way information is stored in db4o database. Using bigger block sizes can result in unnecessary growth of the database. For motr information see <a href="increasing_the_maximum_database_file_size.htm">Increasing The Maximum Database File Size</a></p><a name="Freespace"></a>
        <h2>Freespace</h2>
        <p>  Freespace appears in db4o database after unneeded objects were deleted. The amount of the freespace can be controlled from the <a href="discarding_free_space.htm">configuration</a>. Another option to get rid of the freespace is <a href="../../advanced_topics/defragment.htm">Defragment</a>. It is a good practice to run Defragment regularly to maintain the minimum database file size. </p>
        <script type="text/javascript" src="../../SkinSupport/MadCapBodyEnd.js">
        </script>
    </body>
</html>