my first two thoughts are "why can't you use SQL?" true,or to extended the thought a bit "why not an RDBMS?"
For the bulk inserts just use a HEAP structured table which has no keys and so it is the prefered structure for bulk inserts.
are your keys unique? then create primary index on the key in the structure of your choice and requirements. I need very fast read access;for example a HASH index would make exact key lookups very fast which at the same time does not make it suitable for pattern matching