Datasheet direct is an online catalogue providing free datasheets for electrical and mechanical components and is operated by New York Semi. I was asked to develop the back-end system and search capabilities for the site (the design was done by the eminent Nick Fuchs) which had to be scalable to more than one million datasheets.
Designing this system required heavy design and integration of the file-system and a large MySQL database, which is optimised for search. The file system is run by a small shell script to put the datasheets (and any new ones as more are always being added) into correct folders (the ext2 soft limit of 50'000 files was quickly encountered) and onto the database. The search engine would then access the database, an if need be modify the search criterion so a match is made.
The client wished to restrict downloads to only those who had signed up to the service, and also to track how many downloads where being made. This was done by developing a file streaming script, which all datasheets were streamed through for downloading. This script would check several parameters, including user name, IP, Port and number of pervious downloads before streaming the file to the web-browser. A control panel was also developed to allow the client to edit register users details, and send out mass mailings to users who registered stating that they wished to receive e-mail information.