January 25, 2011

Sphinx v/s Microsoft Search Server - Part 1

I have been playing with the Sphinx Search Engine on the Linux Ubuntu since long time. Recently I had to embed a vertical search over a database that runs on Windows.

I tried Microsoft Sharepoint Search Server & Sphinx and did some benchmarking.


System Configuration:

Operating System: Windows Server 64 Bit
Processor: Quad Core AMD Opteron 2356 (2 processors/2.3GHz)
Memory: 4 GB RAM
Cache per processor: L1 (data) = 64 KB, L2 = 512 KB, L3 = 6MB
Database: MS SQL Server for Sharepoint, MySQL for Sphinx

Database Size:

I did the benchmarking for up to [15 million rows of data X 32 columns] for Sphinx. However for Microsoft Sharepoint Search it was just done for [1 million rows X 32 columns]. You would soon come to know the reason for this.

Here you go:

Sphinx

Data Size: 1 million rows X 32 columns
Time to Index: 95 seconds
Time To Search: 0.001 to 0.01 sec
Index Size: 0.14GB

Microsoft Sharepoint Search Server 2010

Data Size: 1 million rows X 32 columns
Time To Index: 3hrs:46 minutes
Time To Search: 0.001 to 0.01 sec
Index Size: 3.4GB

Now after seeing the above results (please compare the index size also for both & not just time to index) you would have come to know why I didnt carry out any further tests with Sharepoint Search :)

I continued with Sphinx and completed the benchmarking for 15 million rows X 32 columns.

Here is the report:

Sphinx Tests

Data Size: 5 million rows X 32 columns
Time To Index: 6 minutes
Time to Search: 0.001 to 0.01 seconds
Sphinx Index Size: 0.75GB

Data Size: 10 million rows X 32 columns
Time To Index: 18 minutes
Time to Search: 0.001 to 0.05 seconds
Sphinx Index Size: 1.45GB

Data Size: 15 million rows X 32 columns
Time To Index: 24 minutes
Time to Search: 0.001 to 0.05 seconds
Sphinx Index Size: 2.25GB

Soon I will be posting a similar report on Incremental Indexing/Crawling for both Microsoft Sharepoint & Sphinx Search Server.


No comments:

Post a Comment