On understanding distributed database systems