Dear All<div><br></div><div>First time to send question here. Sorry in advance, if I did anything wrong. : )</div><div><br></div><div>About Redland, we are working on a RDF store based vocabulary repository and engine these days. </div>

<div>Still in the feasibility analysis phase, this project requires cross-platform feature. </div><div>Redland becomes the only choice based on related survey. </div><div><br></div><div>We tried to use redland &amp; sqlite together and did some performance test with the following random </div>


<div>generated data: </div><div><br></div><div><br></div><div><div>&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;</div><div>&lt;rdf:RDF xmlns:rdf=&quot;<a href="http://www.w3.org/1999/02/22-rdf-syntax-ns#" target="_blank">http://www.w3.org/1999/02/22-rdf-syntax-ns#</a>&quot;&gt;</div>


<div>  &lt;rdf:Description rdf:about=&quot;<a href="http://www.sec.com/str20969" target="_blank">http://www.sec.com/str20969</a>&quot;&gt;</div><div>    &lt;ns0:str912 xmlns:ns0=&quot;<a href="http://www.sec.com/" target="_blank">http://www.sec.com/</a>&quot;&gt;398517&lt;/ns0:str912&gt;</div>


<div>  &lt;/rdf:Description&gt;</div><div>  &lt;rdf:Description rdf:about=&quot;<a href="http://www.sec.com/str3648" target="_blank">http://www.sec.com/str3648</a>&quot;&gt;</div><div>    &lt;ns0:str729 xmlns:ns0=&quot;<a href="http://www.sec.com/" target="_blank">http://www.sec.com/</a>&quot;&gt;752983&lt;/ns0:str729&gt;</div>


<div>  &lt;/rdf:Description&gt;</div><div>   ... ...</div><div>   ... ...</div><div>   ... ...</div><div>  &lt;rdf:Description rdf:about=&quot;<a href="http://www.sec.com/str85940" target="_blank">http://www.sec.com/str85940</a>&quot;&gt;</div>


<div>    &lt;ns0:str797 xmlns:ns0=&quot;<a href="http://www.sec.com/" target="_blank">http://www.sec.com/</a>&quot;&gt;531931&lt;/ns0:str797&gt;</div><div>  &lt;/rdf:Description&gt;</div><div>&lt;/rdf:RDF&gt;</div><div><div>

<br></div><div>
<br></div><div>As we can see, the subject is a URI with &quot;str&quot; + rand (100000), </div><div>the predicate is &quot;str&quot; + rand(1000&quot;), the object is a literal string. </div><div><br></div><div>sqlite store is openned with no option setting. The storage performance result is like follows:</div>


<div><br></div><div>&lt;Triple_Num, Storage_Time&gt; </div><div>: means we save Triple_Num triples into the store together with Storage_Time (time)</div><div>&lt;500, 00:03:07.0295802&gt;</div><div>&lt;1000, 00:05:17.3689650&gt;</div>


<div>&lt;2000, 00:10:52.1397176&gt;</div><div>&lt;3000, 00:13:01.7167990&gt;</div><div>&lt;5000, 00:23:51.0318815&gt;</div><div>&lt;8000, 00:35:36.7551649&gt;</div><div>&lt;10000, 00:46:42.6747223&gt;</div><div>&lt;20000, 01:29:07.9316124&gt;</div>


<div><br></div><div>Though the storage time is linear scale, but for each triple, it takes around 300 milliseconds. </div><div>Surprisingly, the simple query for sqlite works very fast, and it &#39;s constant scale with avg time less than 1 millisecond. </div>


<div><br></div><div>The Redland version we are using is C# binding, 1.0.3 downloaded from <a href="http://download.librdf.org/binaries/win32/" target="_blank">http://download.librdf.org/binaries/win32/</a></div><div>The testing machine is a high performance PC. </div>


<div><br></div><div>To get the answer why it takes so long, we did some study about previous emails in the mailist:</div><div>I found the similar question raised Nov. 2006</div><div><a href="http://lists.librdf.org/pipermail/redland-dev/2006-November/001461.html" target="_blank">http://lists.librdf.org/pipermail/redland-dev/2006-November/001461.html</a></div>


<div><br></div><div>Dave mentioned that there is a &#39;synchronous&#39; setting, we tried to use it when open the sqlite store, but</div><div>the performance is the same. </div><div><br></div><div>We think the problem maybe as follows?</div>


<div>1. our version is too old ? [we&#39;ll try on 1.0.10 on linux soon]</div><div>2. there&#39;s no such setting? [as the document said in 1.0.10 for sqlite there&#39;s only &#39;new&#39; setting option. </div><div><br>

</div>
<div>Before digging into the code, we decide ask something here. </div><div><br></div><div>Dave, if you have time, would you please give us some description and hint about sqlite storage current status. I mean</div><div>

1. how to store data into sqlite faster</div>
<div>2. is the document of sqlite the up to date version? If not, where to find one? or shall we dig into the code directly. </div><div><br></div><div>Dave, we noticed you&#39;re calling for maintainer for windows these days. If possible, would you please</div>

<div>send us some guide about how to port Redland to windows based on experience before. We noticed there is visual  </div><div>studio solution file in some source code version back to 2006. If we finally use Redland &amp; sqlite in the current </div>

<div>project, probably, we can maintain this part for certain period of time since we definitely need to port our solution </div><div>on windows. </div><div><br></div><div>Thanks in advance. : )</div><div><br></div><div>
Best Regards, </div>
<div><br></div><div>Hugh</div><div><br></div></div></div>