Let me tell you how recruiters seem to find me.....
1) Linked In...they search you and look up that way
2) Monster.com/other job resume resume harvesting
Mostly that is all they do. Just cut out the middle man. Also they tend to put up ads on Monster.com, Craigslist.com, etc... So developers can search for your roles themselves without you needing a recruiter. You mentioned you used some hiring websites and they don't work. So the first question is do you use relevant ones like monster/craigslist/dice or are you just in the wrong websites. Most people who place a monster.com ad or a craigslist ad (well maybe craigslist isn't as popular in your metro, I'm not sure) get more responses then they know what to do with. So maybe you are using some local site.
And the second question is your ad. Are you asking for 20 years of C#, strong C/C++, Expert in Java, with ability to hand optimize assembly for 30,000 per year? :) But anyway when I left my first company I saw the job ad that they put up. They were basically asking for at least 2 years experience in everything that I ever touched... If I submitted my resume, I wouldn't have qualified for my old job. Some stuff was just side projects where we used a new technology's reference material and implemented a project in it, however it is not a main part of the job and was not too sophisticated. Also you need to watch out for using words like "expert" anything. I think most of the time someone saying expert in programming language x is lying or delusional. You might want to ask what the people on this site think of your job ad.
As far as networking you can join a users group and get to know the developers in the area so you can tell who is looking for a job and maybe see how smart they are by conversations in the users group.
And of course the other question is what is does the large data size really matter? If your database is so large that you need to partition it to multiple DBMSes or spread the storage over thousands of computers, then yes you have large data size and you will want a specific skillset. If it is tens or a few hundred GB and fits in a single Database package, then most likely it won't matter that much. There will be a few areas where the performance of a query might matter, but most of the app will be dealing with a small subset. Inserting data is not much different if all your data is in one place, if it is partitioned then you need to use the partitioning scheme with it. Also tuning SQL queries can be easily learned with practice, most of it is common sense. Even if they don't know then it is no big deal. If your data is so large that you need to do odd partitioning, then it would help to have someone with experience. But still if the scheme is already set, they just have to learn to work with it, and most developers could do that.