<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Arkytekture &#187; Architecture</title>
	<atom:link href="http://psoug.org/blogs/arkytekture/category/architecture/feed/" rel="self" type="application/rss+xml" />
	<link>http://psoug.org/blogs/arkytekture</link>
	<description>Oracle and Data architecture blog</description>
	<lastBuildDate>Sat, 18 Dec 2010 17:22:43 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
		<item>
		<title>VirtualBox</title>
		<link>http://psoug.org/blogs/arkytekture/2010/12/18/110/</link>
		<comments>http://psoug.org/blogs/arkytekture/2010/12/18/110/#comments</comments>
		<pubDate>Sat, 18 Dec 2010 17:22:16 +0000</pubDate>
		<dc:creator>arkytekture</dc:creator>
				<category><![CDATA[Architecture]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[mac]]></category>
		<category><![CDATA[virtual machine]]></category>
		<category><![CDATA[Virtualbox]]></category>
		<category><![CDATA[VM]]></category>

		<guid isPermaLink="false">http://psoug.org/blogs/arkytekture/?p=110</guid>
		<description><![CDATA[Oracle VM VirtualBox If you haven&#039;t had a chance to work with it, consider visiting http://dlc.sun.com/virtualbox/vboxdownload.html It runs on windows, linux, mac os/x and solaris. I downloaded a pre-installed VM with a database, development tools, and an application server pre-installed.&#160; Though I had the minimum required config (~2 GHz processor, 2 GB RAM), I was [...]]]></description>
				<content:encoded><![CDATA[<p><strong>Oracle VM VirtualBox</strong></p>
<p>If you haven&#039;t had a chance to work with it, consider visiting</p>
<p><a href="http://dlc.sun.com/virtualbox/vboxdownload.html">http://dlc.sun.com/virtualbox/vboxdownload.html</a></p>
<p>It runs on windows, linux, mac os/x and solaris.</p>
<p>I downloaded a pre-installed VM with a database, development tools, and an application server pre-installed.&nbsp; Though I had the minimum required config (~2 GHz processor, 2 GB RAM), I was surprised that it ran as well as it did.</p>
<p>Though the initial setup is quite quick, the downloads of actual VMs to use in VirtualBox can take a while, but compared to the aggravation of pulling together Oracle 11gR2, SQL Developer, Apex, and a Weblogic server on your own, it&#039;s a more than fair trade.</p>
<p>If you&#039;ve been putting off exploring Hands-On Database Technology on a home PC or a spare machine at work (<a href="http://www.oracle.com/technetwork/database/enterprise-edition/databaseappdev-vm-161299.html">http://www.oracle.com/technetwork/database/enterprise-edition/databaseappdev-vm-161299.html</a>), then this could be a good way to jump in &#8212; with a virtual machine.</p>
]]></content:encoded>
			<wfw:commentRss>http://psoug.org/blogs/arkytekture/2010/12/18/110/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Search PSOUG from SQL Developer !</title>
		<link>http://psoug.org/blogs/arkytekture/2010/10/20/search-psoug-from-sql-developer/</link>
		<comments>http://psoug.org/blogs/arkytekture/2010/10/20/search-psoug-from-sql-developer/#comments</comments>
		<pubDate>Thu, 21 Oct 2010 02:11:18 +0000</pubDate>
		<dc:creator>arkytekture</dc:creator>
				<category><![CDATA[Architecture]]></category>
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://psoug.org/blogs/arkytekture/?p=73</guid>
		<description><![CDATA[Extend Oracle&#039;s SQL Developer to search PSOUG web pages and&#160; see how much more productive you can be! Anyone who&#039;s used SQL Developer may have noticed the search engines tucked away in the upper right corner of the screen.&#160; With a nod to Firefox, the people who created SQL Developer made it easy to look [...]]]></description>
				<content:encoded><![CDATA[<p>Extend Oracle&#039;s SQL Developer to search PSOUG web pages and&nbsp; see how much more productive you can be!</p>
<p><img src="/blogs/wp-content/SqlDev_Search2.png" /></p>
<p>Anyone who&#039;s used SQL Developer may have noticed the search engines tucked away in the upper right corner of the screen.&nbsp; With a nod to Firefox, the people who created SQL Developer made it easy to look up an error message on Google, consider going to Oracle Technology Network (OTN) forums with your SQL Developer issue, or checking the AskTom or Oracle documentation sites.&nbsp;&nbsp;</p>
<p>While the sites provide valuable information, often they get into esoteric areas or long blogs.&nbsp; PSOUG succinctly exposes the concepts that a developer needs right away with examples of usage and scripts that illuminate topics such as CREATE MATERIALIZED VIEW.</p>
<p>It&#039;s exceedingly easy to try out.&nbsp; Add PSOUG to your search domains by placing an image file and a source file in the <strong>sqldeveloper/sqldeveloper/searchengines</strong> path of your installation.</p>
<p>First file: psoug.src</p>
<p>&lt;search<br />
	&nbsp;&nbsp; name=&quot;PSOUG&quot;<br />
	&nbsp;&nbsp; description=&quot;PSOUG Search&quot;<br />
	&nbsp;&nbsp; method=&quot;POST&quot;<br />
	&nbsp;&nbsp; action=&quot;http://psoug.org/search.htm&quot;<br />
	&nbsp;&nbsp; searchForm=&quot;http://psoug.org/search.htm&quot;<br />
	&nbsp;&nbsp; queryEncoding=&quot;utf-8&quot;<br />
	&nbsp;&nbsp; queryCharset=&quot;utf-8&quot;<br />
	&gt;</p>
<p>&lt;input name=&quot;qwords&quot; user&gt;<br />
	&lt;input name=&quot;querytype&quot; value=&quot;allwords&quot;&gt;<br />
	&lt;input name=&quot;catid&quot; value=&quot;0&quot;&gt;<br />
	&lt;input name=&quot;searchtype&quot; value=&quot;basic&quot;&gt;<br />
	&lt;input name=&quot;submit&quot; value=&quot;GO&quot;&gt;</p>
<p>&lt;interpret<br />
	&nbsp;&nbsp;&nbsp; browserResultType=&quot;result&quot;<br />
	&nbsp;&nbsp;&nbsp; charset = &quot;UTF-8&quot;<br />
	&nbsp;&nbsp;&nbsp; resultListStart=&quot;&lt;!&#8211;a&#8211;&gt;&quot;<br />
	&nbsp;&nbsp;&nbsp; resultListEnd=&quot;&lt;!&#8211;z&#8211;&gt;&quot;<br />
	&nbsp;&nbsp;&nbsp; resultItemStart=&quot;&lt;!&#8211;m&#8211;&gt;&quot;<br />
	&nbsp;&nbsp;&nbsp; resultItemEnd=&quot;&lt;!&#8211;n&#8211;&gt;&quot;<br />
	&gt;<br />
	&lt;/search&gt;</p>
<p>Second file: psoug.gif</p>
<p><img src="/blogs/wp-content/psoug.gif" /></p>
<p>I downloaded the PSOUG title.gif and scaled it down by a factor of about 4.&nbsp; Use whatever tool makes sense to manipulate your image such as GIMP (multi-platform)&nbsp; or Microsoft&#039;s Image editor, or whatever works on the Mac OS/X into an icon-sized image.&nbsp; Jpeg, png, gif are all acceptable formats.</p>
<p>Your files will be discovered automatically the next time you start SQL Developer.</p>
]]></content:encoded>
			<wfw:commentRss>http://psoug.org/blogs/arkytekture/2010/10/20/search-psoug-from-sql-developer/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Dear DBA ( a note from a principal developer)</title>
		<link>http://psoug.org/blogs/arkytekture/2010/04/17/dear-dba-a-note-from-a-principal-developer/</link>
		<comments>http://psoug.org/blogs/arkytekture/2010/04/17/dear-dba-a-note-from-a-principal-developer/#comments</comments>
		<pubDate>Sat, 17 Apr 2010 21:43:12 +0000</pubDate>
		<dc:creator>arkytekture</dc:creator>
				<category><![CDATA[Architecture]]></category>
		<category><![CDATA[data loading]]></category>
		<category><![CDATA[advisor report]]></category>
		<category><![CDATA[append hint]]></category>
		<category><![CDATA[bulk loading]]></category>
		<category><![CDATA[commit strategy]]></category>
		<category><![CDATA[jdbc]]></category>
		<category><![CDATA[noarchive]]></category>
		<category><![CDATA[nologging]]></category>
		<category><![CDATA[redo log]]></category>
		<category><![CDATA[XML]]></category>

		<guid isPermaLink="false">http://psoug.org/blogs/arkytekture/?p=27</guid>
		<description><![CDATA[Besides changing commit intervals, noarchive,  nologging, and SQL append hints can greatly aid bulk-loading data to an Oracle system.]]></description>
				<content:encoded><![CDATA[<blockquote>
<p>Dear DBA, as I am running loadtests with product XYZ in preparation<br />
		for uploading of many thousands of XML documents , I find that there is something<br />
		that&#39;s bogging down your database. I thought your equipment<br />
		should easily outpace the old Compaqs that we have running Windows, and that<br />
		Oracle should do better than our PostgreSQL-based setup. Yet<br />
		I find the numbers show the opposite:</p>
<p>733 Documents in 2325.713 s for an average of 3.173 s<br />
		at ~11% CPU load</p>
<p>944 Documents in 1960.4 s for an average of 2.077 s<br />
		at ~15% CPU load</p>
<p>It takes 50% longer on the Oracle setup. Since the<br />
		application server load is negligible at the same time, it<br />
		goes to show that we are waiting for the database.</p>
<p>I wonder why.</p>
</blockquote>
<p><span id="more-27"></span><br />
	Hmmm, I thinking that this developer is not acquainted with the Oracle database technology choices available to him. He continues on.</p>
<blockquote>
<p>Since I can not observe the Oracle database server&#39;s IO and<br />
		CPU activity directly, I have looked at the Oracle ADVISOR<br />
		report [Query 2: ADVISOR REPORT below]. I am showing<br />
		the most important part from report on task_id 4313<br />
		and task_name ADDM:6344221675_1_1349:<br />
		|<br />
		| FINDING 1: 60% impact (489 seconds)<br />
		| &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
		| Waits on event &quot;log file sync&quot; while performing COMMIT and ROLLBACK<br />
		| operations<br />
		| were consuming significant database time.</p>
<p>Is there anything you could do about this? For example, could<br />
		you move the redo logs onto a different disk device? Or is this<br />
		database or hardware very busy processing other transactions?</p>
<p>The loading of data might take at least 50% longer than expected<br />
		(and possibly more, because we&#39;ll hit the database with 4-8<br />
		processes in parallel). Your help will be much appreciated.</p>
<p>regards,<br />
		Prince</p>
</blockquote>
<p>Dear Prince-<br />
	We&#39;ve noticed many (hundreds of thousands) insert statements being executed through jdbc-client and wondered what your commit strategy was.</p>
<p>Sometimes java programs have auto commit turned on (every DML statement is committed one-at-a-time). If that&#39;s the case, then it is causing a lot of round-trips through the network to confirm a committed row in the database.</p>
<p><!--more--></p>
<p>Other times, a bulk load will attempt to load thousands of rows at a time before committing. That can cause the growth of a large amount of undo segments that slows throughput as well. If that&#39;s the case then the commit interval needs to be changed.</p>
<p>If you are using jdbc&#39;s <a href="http://www.java2s.com/Code/JavaAPI/java.sql/PreparedStatementaddBatch.htm">addBatch</a> and <a href="http://www.java2s.com/Code/JavaAPI/java.sql/StatementexecuteBatch.htm">executeBatch</a> methods for processing multiple SQL statements, then you can make adjustments in how many rows in the batch that you need to commit.</p>
<p>Alternatively, you could make modifications to commit pending transactions after a given number of iterations in your code. If possible, try starting at 500 and varying it either higher or lower to meet your throughput goals.</p>
<p>One thing you should know about the test database that we&#39;re hosting is that we are not collecting and archiving redo logs.</p>
<p>We circulate through the logs very frequently. We have enlarged the redo log size to 200 MB (up from 55 MB), but we need to reduce the amount of redo being written. To that end, we recommend that the<br />
	insert SQL statements for the following tables be rewritten to use the <a href="http://psoug.org/reference/hints.html">&quot;Append&quot; hint</a> since it appears that you are performing bulk load inserts on them.</p>
<p>If you want, we can even put the target tables into &quot;nologging&quot; mode during this phase where you need to load a lot of data. That would ensure that you could put hundreds of thousands of rows in the database in a very brief period of time.</p>
]]></content:encoded>
			<wfw:commentRss>http://psoug.org/blogs/arkytekture/2010/04/17/dear-dba-a-note-from-a-principal-developer/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>What&#8217;s your XML strategy?</title>
		<link>http://psoug.org/blogs/arkytekture/2010/04/15/whats-your-xml-strategy/</link>
		<comments>http://psoug.org/blogs/arkytekture/2010/04/15/whats-your-xml-strategy/#comments</comments>
		<pubDate>Fri, 16 Apr 2010 01:49:38 +0000</pubDate>
		<dc:creator>arkytekture</dc:creator>
				<category><![CDATA[Architecture]]></category>
		<category><![CDATA[CLOB]]></category>
		<category><![CDATA[language]]></category>
		<category><![CDATA[LOB Index]]></category>
		<category><![CDATA[LOB Segment]]></category>
		<category><![CDATA[Text]]></category>
		<category><![CDATA[XML]]></category>
		<category><![CDATA[XMLType]]></category>
		<category><![CDATA[XSD]]></category>

		<guid isPermaLink="false">http://psoug.org/blogs/arkytekture/?p=10</guid>
		<description><![CDATA[The choices you have on implementing XML depends upon the architecture of your solution. 1) Do you plan to a) parse the XML docs and store them into multiple relational tables&#160;&#160; ? If so, what languages or techniques do you intend to use to accomplish this? b) store an XML doc in a single XMLType [...]]]></description>
				<content:encoded><![CDATA[<p>The choices you have on implementing XML depends upon the architecture of your solution.</p>
<h2>1) Do you plan to</h2>
<p>a) parse the XML docs and store them into multiple relational tables&nbsp;&nbsp; ?</p>
<p style="padding-left: 30px"><em>If so, what languages or techniques do you intend to use to accomplish this?</em></p>
<p>b) store an XML doc in a single XMLType column in the Oracle database?</p>
<p style="padding-left: 30px"><em>Do you need to index the data to perform XML or &quot;free text&quot; searches?</em></p>
<p style="padding-left: 30px"><em>If so, what XPATH indexing do you intend to perform?</em></p>
<p>c) Register XSD as an XML Schema and have Oracle validate incoming XML documents such that<br />
	data is automatically shredded into object-relational tables based upon the different<br />
	types and attributes?</p>
<p style="padding-left: 30px"><em>If you choose (c), how will you reload and revalidate data against the new XSD should<br />
	new data elements become available in the XSD?</em></p>
<h2>2) How important is it to preserve the exact XML document ingested in Oracle?</h2>
<p>&nbsp;</p>
<p><li>Will you&nbsp; need to reconstruct or otherwise output data in the exact format to interchange with<br />
		people working in a regulated industry such as banking, health care, education ?</li>
</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<li>Or will a logical copy that is faithful to the structure be acceptable?</li>
<p>&nbsp;</p>
<h2>About Character Large Objects (CLOBs)</h2>
<p>Yes, you can store CLOBs in line with a database row up to 4,000 characters, else it&#39;s written to a separate LOB segment.</p>
<p>	Oracle automatically creates LOB indexes whether you want them or not, so you might want to review the non-XML CLOBS in your design and determine whether they would be well under the 4,000 characters and thus fit into a VARCHAR2 data column.</p>
]]></content:encoded>
			<wfw:commentRss>http://psoug.org/blogs/arkytekture/2010/04/15/whats-your-xml-strategy/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
