data abstraction and data independence in dbms