<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8">
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>

<META content="MSHTML 6.00.2900.2963" name=GENERATOR></HEAD>
<BODY dir=ltr>
<DIV>&nbsp;</DIV>
<DIV>If you are looping 16 times and then dividing the total time by 16, then 
it's probably fine.&nbsp;Your timing includes both executing the select command 
and then reading through the resulting feature reader?</DIV>
<DIV>&nbsp;</DIV>
<DIV>Traian</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;</DIV>
<BLOCKQUOTE dir=ltr style="MARGIN-RIGHT: 0px">
  <DIV><FONT size=2>-----Original Message----- <BR><B>From:</B> Haris Kurtagic 
  [mailto:haris@sl-king.com] <BR><B>Sent:</B> Sun 10/29/2006 5:40 PM 
  <BR><B>To:</B> users@mapguide.osgeo.org <BR><B>Cc:</B> <BR><B>Subject:</B> RE: 
  [mapguide-users] perfomance test<BR><BR></FONT></DIV>
  <DIV dir=ltr align=left><SPAN class=109323322-29102006><FONT face=Arial 
  color=#0000ff size=2>Thank you for all your suggestions. This is my first test 
  so :)</FONT></SPAN></DIV>
  <DIV dir=ltr align=left><SPAN class=109323322-29102006><FONT face=Arial 
  color=#0000ff size=2></FONT></SPAN>&nbsp;</DIV>
  <DIV dir=ltr align=left><SPAN class=109323322-29102006><FONT face=Arial 
  color=#0000ff size=2>Yes, I also think that other factors have more 
  influence.</FONT></SPAN></DIV>
  <DIV dir=ltr align=left><SPAN class=109323322-29102006><FONT face=Arial 
  color=#0000ff size=2>I' ve used <FONT size=2>clock() on windows and I ran it 
  in loop of 16.</FONT></FONT></SPAN></DIV>
  <DIV dir=ltr align=left><SPAN class=109323322-29102006><FONT face=Arial 
  color=#0000ff size=2></FONT></SPAN>&nbsp;</DIV>
  <DIV dir=ltr align=left><SPAN class=109323322-29102006><FONT face=Arial 
  color=#0000ff size=2>I suppose I should take some much larger data 
  set.</FONT></SPAN></DIV>
  <DIV dir=ltr align=left><SPAN class=109323322-29102006></SPAN><SPAN 
  class=109323322-29102006><FONT face=Arial color=#0000ff 
  size=2></FONT></SPAN>&nbsp;</DIV>
  <DIV dir=ltr align=left><SPAN class=109323322-29102006><FONT face=Arial 
  color=#0000ff size=2>Thanks,</FONT></SPAN></DIV>
  <DIV dir=ltr align=left><SPAN class=109323322-29102006><FONT face=Arial 
  color=#0000ff size=2>Haris</FONT></SPAN></DIV><BR>
  <DIV class=OutlookMessageHeader lang=en-us dir=ltr align=left>
  <HR tabIndex=-1>
  <FONT face=Tahoma size=2><B>From:</B> Traian Stanev 
  [mailto:traian.stanev@autodesk.com] <BR><B>Sent:</B> Sunday, October 29, 2006 
  11:32 PM<BR><B>To:</B> users@mapguide.osgeo.org; 
  users@mapguide.osgeo.org<BR><B>Subject:</B> RE: [mapguide-users] perfomance 
  test<BR></FONT><BR></DIV>
  <DIV></DIV>
  <DIV>OK. All I was saying is that EnvelopeIntersects does not incur a 
  secondary geometry filter processing for each feature in the SDF provider, 
  which Intersects does. I would have expected a significant difference between 
  Intersects and EnvelopeIntersects for the SDF provider. Also, 
  EnvelopeIntersects is what MapGuide uses to render every map.</DIV>
  <DIV>&nbsp;</DIV>
  <DIV>About the FGF thing -- yes SDF has the luxury of not having to convert 
  geometry formats, so in the limit, it would be faster than a provider that 
  converts, but (in my opinion) there are many other factors which have a much 
  bigger impact on performance, than a simple geometry conversion loop.</DIV>
  <DIV>&nbsp;</DIV>
  <DIV>Also,&nbsp;another question... How do you do the timing? If you use the 
  Windows clock, it has a resolution of 16 milliseconds, which makes the 
  accuracy of the 0.031 sec measurement for SDF very doubtful to me, unless you 
  repeated the operation 100 times and then took the total time and divided by 
  100, for example.</DIV>
  <DIV>&nbsp;</DIV>
  <DIV>Traian</DIV>
  <BLOCKQUOTE dir=ltr style="MARGIN-RIGHT: 0px">
    <DIV><FONT size=2>-----Original Message----- <BR><B>From:</B> Haris Kurtagic 
    [mailto:haris@sl-king.com] <BR><B>Sent:</B> Sun 10/29/2006 5:18 PM 
    <BR><B>To:</B> users@mapguide.osgeo.org <BR><B>Cc:</B> <BR><B>Subject:</B> 
    RE: [mapguide-users] perfomance test<BR><BR></FONT></DIV>
    <DIV dir=ltr align=left><SPAN class=781371422-29102006><FONT face=Arial 
    color=#0000ff size=2>Yes, I've&nbsp;&nbsp;tried envelope but I 
    wanted&nbsp;to&nbsp;try more complicated query (to use primary and secondary 
    filter in Oracle) and also couldn't see huge difference on this small 
    set.</FONT></SPAN></DIV>
    <DIV dir=ltr align=left><SPAN class=781371422-29102006><FONT face=Arial 
    color=#0000ff size=2></FONT></SPAN>&nbsp;</DIV>
    <DIV dir=ltr align=left><SPAN class=781371422-29102006><FONT face=Arial 
    color=#0000ff size=2>If&nbsp;I understood you correctly you mean sdf 
    provider is not loosing time in converting to FGF format 
    ?</FONT></SPAN></DIV>
    <DIV dir=ltr align=left><SPAN class=781371422-29102006><FONT face=Arial 
    color=#0000ff size=2>I agree on that but that is format use in MG, so that 
    is one + for sdf :)</FONT></SPAN></DIV>
    <DIV dir=ltr align=left><SPAN class=781371422-29102006><FONT face=Arial 
    color=#0000ff size=2></FONT></SPAN>&nbsp;</DIV>
    <DIV dir=ltr align=left><SPAN class=781371422-29102006><FONT face=Arial 
    color=#0000ff size=2>Haris</FONT></SPAN></DIV><BR>
    <DIV class=OutlookMessageHeader lang=en-us dir=ltr align=left>
    <HR tabIndex=-1>
    <FONT face=Tahoma size=2><B>From:</B> Traian Stanev 
    [mailto:traian.stanev@autodesk.com] <BR><B>Sent:</B> Sunday, October 29, 
    2006 11:13 PM<BR><B>To:</B> users@mapguide.osgeo.org; 
    users@mapguide.osgeo.org<BR><B>Subject:</B> RE: [mapguide-users] perfomance 
    test<BR></FONT><BR></DIV>
    <DIV></DIV>
    <DIV>&nbsp;</DIV>
    <DIV>Did&nbsp;you try an EnvelopeIntersects filter? That one is by far the 
    most common one,&nbsp;rather than&nbsp;Intersects.</DIV>
    <DIV>It is not surprising that SDF is fastest by far... The SDF provider 
    does not add any intelligence to the data and stores everything in FGF 
    format so you are basically getting back a pointer into database memory when 
    you ask for the geometry.</DIV>
    <DIV>&nbsp;</DIV>
    <DIV>Traian</DIV>
    <DIV>&nbsp;</DIV>
    <DIV>&nbsp;</DIV>
    <BLOCKQUOTE dir=ltr style="MARGIN-RIGHT: 0px">
      <DIV><FONT size=2>-----Original Message----- <BR><B>From:</B> Haris 
      Kurtagic [mailto:haris@sl-king.com] <BR><B>Sent:</B> Sun 10/29/2006 4:57 
      PM <BR><B>To:</B> users@mapguide.osgeo.org <BR><B>Cc:</B> 
      <BR><B>Subject:</B> [mapguide-users] perfomance test<BR><BR></FONT></DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial 
      size=2>Hi,</FONT></SPAN></DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial 
      size=2></FONT></SPAN>&nbsp;</DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial size=2>After some 
      discussion's here on this list I got interested in comparing different 
      data source and fdo providers.</FONT></SPAN></DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial 
      size=2></FONT></SPAN>&nbsp;</DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial size=2>So, I have 
      used an test application written as pure FDO client.</FONT></SPAN></DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial size=2>I have run 
      test again sdf, shp , 10gr2 and xe, using osgeo sdf, shp and king.oracle 
      provider.</FONT></SPAN></DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial size=2>Data used in 
      test is Sheboygan_Parcels.sdf from MG unittest data.</FONT></SPAN></DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial 
      size=2></FONT></SPAN>&nbsp;</DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial size=2>Before I 
      wrote&nbsp;the results I would like to make strong point that this could 
      be altogether false results, I don't know anything about writing true fair 
      tests.</FONT></SPAN></DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial size=2>As my lawyer 
      told me I should put in here : whatever is written is not promise, could 
      be wrong and ..... :)</FONT></SPAN></DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial 
      size=2></FONT></SPAN>&nbsp;</DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial size=2>17565 features 
      read in case 1,2, 6681 fetaures&nbsp;in 3,4</FONT></SPAN></DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial size=2>results are in 
      seconds</FONT></SPAN></DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial 
      size=2></FONT></SPAN>&nbsp;</DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial size=2>Test case 1: 
      </FONT></SPAN><SPAN class=656421321-29102006><FONT face=Arial size=2>No 
      geometry filter,&nbsp;Fetch all&nbsp;attributes&nbsp;</FONT></SPAN></DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial 
      size=2></FONT></SPAN>&nbsp;</DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial 
      size=2>SDF&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0.937 
      </FONT></SPAN></DIV>
      <DIV><SPAN class=656421321-29102006>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial 
      size=2>SHP&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 8.531 
      </FONT></SPAN></DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial 
      size=2>10GR2&nbsp;&nbsp;&nbsp; 18.172</FONT></SPAN></DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial 
      size=2>XE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
      18.500</FONT></SPAN></DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial 
      size=2></FONT></SPAN>&nbsp;</DIV>
      <DIV><SPAN class=656421321-29102006>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial size=2>Test case 2: 
      </FONT></SPAN></SPAN><SPAN class=656421321-29102006><SPAN 
      class=656421321-29102006><FONT face=Arial size=2>No geometry 
      filter,&nbsp;Fetch Geometry and Identity</FONT></SPAN></DIV></DIV>
      <DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial 
      size=2></FONT></SPAN>&nbsp;</DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial 
      size=2>SDF&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0.031 
      </FONT></SPAN></DIV>
      <DIV><SPAN class=656421321-29102006>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial 
      size=2>SHP&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0.109 
      </FONT></SPAN></DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial 
      size=2>10GR2&nbsp;&nbsp;&nbsp; 1.938</FONT></SPAN></DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial 
      size=2>XE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1.735</FONT></SPAN></DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial 
      size=2></FONT></SPAN>&nbsp;</DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial size=2>Test Case 
      3:&nbsp; Geometry Filter, Fetch all attributes</FONT></SPAN></DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial 
      size=2></FONT></SPAN>&nbsp;</DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial 
      size=2>SDF&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
      0.390</FONT></SPAN></DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial 
      size=2>SHP&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
      3.391</FONT></SPAN></DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial 
      size=2>10GR2&nbsp;&nbsp;&nbsp;&nbsp; 6.906</FONT></SPAN></DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial 
      size=2>XE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
      6.218</FONT></SPAN></DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial 
      size=2></FONT></SPAN>&nbsp;</DIV>
      <DIV><SPAN class=656421321-29102006>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial size=2>Test Case 
      4:&nbsp; Geometry Filter, Fetch Geometry and Identity</FONT></SPAN></DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial 
      size=2></FONT></SPAN>&nbsp;</DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial 
      size=2>SDF&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
      0.031</FONT></SPAN></DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial 
      size=2>SHP&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
      0.140</FONT></SPAN></DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial 
      size=2>10GR2&nbsp;&nbsp;&nbsp;&nbsp; 0.891</FONT></SPAN></DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial 
      size=2>XE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0.797</FONT></SPAN></DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial 
      size=2></FONT></SPAN>&nbsp;</DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial size=2>Geometry 
      Filter was: <FONT size=2>SHPGEOM INTERSECTS GeomFromText('POLYGON ((-87.72 
      44, -86 44, -86 42, -87.72 42, -87.72 44))')</FONT></FONT></SPAN></DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial size=2>and for SDF 
      and King.Oracle it returns same number of features 6683 which is 
      good</FONT></SPAN></DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial size=2>shape provider 
      returned : 6681 ?</FONT></SPAN></DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial 
      size=2></FONT></SPAN>&nbsp;</DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial size=2>Original SDF 
      file was copied to Oracle using that same tool, I call it 
      Fdo2Sdo.</FONT></SPAN></DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial size=2>Oracle 10GR2 
      is running on my same desktop in virtual machine and&nbsp;XE on 
      localhost.</FONT></SPAN></DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial 
      size=2></FONT></SPAN>&nbsp;</DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial size=2>My 
      Remarks:</FONT></SPAN></DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial size=2>SDF is really 
      fast and highly optimized for this kind of queries. Test Case 4 would be 
      the most used case in real word app. and differences there are 
      smallest.</FONT></SPAN></DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial size=2>I think if you 
      add overhead of MG and other overheads&nbsp;than influence would be even 
      smaller.</FONT></SPAN></DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial size=2>I think these 
      tests are very unfavorable to Oracle.</FONT></SPAN></DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial size=2>This test is 
      run with very small data set (just 17565 polygons),&nbsp;I believe much 
      larger data sets would be more preferable to Oracle.</FONT></SPAN></DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial size=2>I also 
      couldn't run test with ordering or grouping (sdf,shp don't support it). I 
      run this test immediately after installing Oracle, not using any spatial 
      index optimization</FONT></SPAN></DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial size=2>and also 
      provider is not highly optimized as could be.</FONT></SPAN></DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial size=2>Here I am 
      comparing file system to database ( it is&nbsp;little unusual&nbsp;), It 
      would make more sense to test against other db.</FONT></SPAN></DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial 
      size=2></FONT></SPAN>&nbsp;</DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial size=2>I will make 
      this tool freely available very soon, so you will be able to run test by 
      your self's, and also it would be nice to test other data sources and 
      providers.</FONT></SPAN></DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial 
      size=2></FONT></SPAN>&nbsp;</DIV>
      <DIV><SPAN class=656421321-29102006></SPAN><SPAN 
      class=656421321-29102006><FONT face=Arial size=2>I hope that someone will 
      find this tests useful.</FONT></SPAN></DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial size=2>I 
      will&nbsp;welcome every comment on this and if I made this tests wrongly 
      please do tell me.</FONT></SPAN></DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial 
      size=2></FONT></SPAN>&nbsp;</DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial 
      size=2>Haris</FONT></SPAN></DIV>
      <DIV><SPAN class=656421321-29102006><FONT face=Arial 
      size=2></FONT></SPAN>&nbsp;</DIV></SPAN></DIV></SPAN></DIV></SPAN></DIV></SPAN></DIV></BLOCKQUOTE></BLOCKQUOTE></BLOCKQUOTE></BODY></HTML>