Abstract: We study data structures that maintain approximate maximum matchings in graphs under edge insertions/deletions. Our main result is a data structure that maintains a matching whose size is at least $(1 - \epsilon)$ of the maximum in worst case $O(\sqrt{m}\epsilon^{-2})$ per update. It is the first data structure that's able to maintain arbitrary quality approximations on sparse graphs in sublinear time per update. Our results of maximum cardinality matching easily extend to maximum weighted matching. Using known schemes, we first obtain a $(3+\epsilon)$ approximation of maximum weighted matching with $O( \sqrt m \epsilon^{-2} \log N)$ update time. Using intricate rounding schemes, we then obtain a $(1+\epsilon)$ approximation of maximum matching in $O( \sqrt{m} \epsilon^{-2 - O(\epsilon^{-1})} \log N)$ update time. It is the first data-structure which maintains arbitrary quality approximation on a weighted graph.