database - Data compression in RDBMS like Oracle, MySQL etc -
i reading in-memory database incorporates feature data compression. using that, instead of storing first name, last name, father's name etc. values in column (which leads lot of data duplication , waste of disk storage), creates dictionary , attribute vector table each column, unique values stored in dictionary , corresponding attribute vector stored in original table.
clear advantage of approach lot of space removing overhead of data duplication.
i want know:
- does rdbms oracle, mysql etc. implicitly follow approach when store data on disk? or when use these rdbms have implement same if want take advantage of same?
- as know there no free lunch, understand trade-offs if developer implements above explained data compression approach? 1 can think of in order fetch data database, have make join between dictionary table , main table. isn't it?
please share thoughts , inputs.
this answer based on understanding of query. appears mixing 2 concepts : data normalisation , data storage optimisation.
data normalisation : process needs undertaken application developer. here pieces of data need stored repeatedly stored once , referenced using identifiers typically integers. way database consumes spaces as needed store repeating data once. common practice while storing string , variable length data database tables. in order retrieve data, application have perform joins between related tables. , process contributes directly application performance depending on manner in related tables designed.
data storage optimisation : handled rdbms itself. involves various steps maintaining b-tree structures hold data, compressing data before storage, managing free space within data files etc. different rdbms systems handle them in different ways (some of them patented , proprietary while others more general); when speaking of rdbms oracle , mysql can assured follow best in class storage algorithms efficiently store data.
hope helps.
Comments
Post a Comment