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 & sqlite together and did some performance test with the following random </div>
<div>generated data: </div><div><br></div><div><br></div><div><div><?xml version="1.0" encoding="utf-8"?></div><div><rdf:RDF xmlns:rdf="<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>"></div>
<div> <rdf:Description rdf:about="<a href="http://www.sec.com/str20969" target="_blank">http://www.sec.com/str20969</a>"></div><div> <ns0:str912 xmlns:ns0="<a href="http://www.sec.com/" target="_blank">http://www.sec.com/</a>">398517</ns0:str912></div>
<div> </rdf:Description></div><div> <rdf:Description rdf:about="<a href="http://www.sec.com/str3648" target="_blank">http://www.sec.com/str3648</a>"></div><div> <ns0:str729 xmlns:ns0="<a href="http://www.sec.com/" target="_blank">http://www.sec.com/</a>">752983</ns0:str729></div>
<div> </rdf:Description></div><div> ... ...</div><div> ... ...</div><div> ... ...</div><div> <rdf:Description rdf:about="<a href="http://www.sec.com/str85940" target="_blank">http://www.sec.com/str85940</a>"></div>
<div> <ns0:str797 xmlns:ns0="<a href="http://www.sec.com/" target="_blank">http://www.sec.com/</a>">531931</ns0:str797></div><div> </rdf:Description></div><div></rdf:RDF></div><div><div>
<br></div><div>
<br></div><div>As we can see, the subject is a URI with "str" + rand (100000), </div><div>the predicate is "str" + rand(1000"), 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><Triple_Num, Storage_Time> </div><div>: means we save Triple_Num triples into the store together with Storage_Time (time)</div><div><500, 00:03:07.0295802></div><div><1000, 00:05:17.3689650></div>
<div><2000, 00:10:52.1397176></div><div><3000, 00:13:01.7167990></div><div><5000, 00:23:51.0318815></div><div><8000, 00:35:36.7551649></div><div><10000, 00:46:42.6747223></div><div><20000, 01:29:07.9316124></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 '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 'synchronous' 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'll try on 1.0.10 on linux soon]</div><div>2. there's no such setting? [as the document said in 1.0.10 for sqlite there's only 'new' 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'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 & 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>