Simple Nonlinear Solve



I did not search the archive (not really searchable is it?)--so if this
is a common question please sling mud at will.

I'm new to maxima, but encountered a similar point in Mathcad recently. 
Very simple equation/function

f(x) = a*x^-b;
I have two data points, e.g.,
f( 5e9) = 290; f( 1e8)=3e6;
This is easily solved with some logarithms...but not with solve().  For
example:
(%i1) solve( [290 = a*5e9^-b, 3e8=a*1e8^-b],[a,b]);

RAT replaced 3.0E+8 by 300000000//1 = 3.0E+8
(%o1)                                 []

Any hints?  Is this general sort of problem beyond symbolic solver's
capabilities?

Yours,
Park