A method, said method comprising steps of: storing rows in a table in a database, wherein storing rows in said table comprises storing one or more column-major columns of said rows in column-major format and storing one or more row-major columns of said rows in row-major format; wherein storing rows in said table further comprises: storing said one or more row-major columns in a row partition comprising one or more row pages (RP 1, RP 2, RP 3) in volatile or non-volatile random access memory, each of said one or more row pages (RP 1, RP 2, RP 3) comprising a plurality of row slots; storing said one or more column-major columns in one or more column partitions (DE, F, P), each column partition (DE, F, P) of said one or more column partitions (DE, F, P) comprising one or more column pages (P 1, P 2, P 3, P 4) in volatile or non-volatile random access memory, each of said one or more column pages (P 1, P 2, P 3, P 4) comprising a plurality of column slots; executing a database transaction, wherein executing said database transaction comprises updating a particular row of said table in said database to obtain an updated row; committing said database transaction; wherein said updating comprises storing one or more values of said one or more row-major columns of the updated row in a particular row slot in a particular row page (RP 1, RP 2, RP 3) of said row partition, and storing one or more values of said one or more column-major columns of the updated row in particular one or more column slots in particular one or more column pages (P 1, P 2, P 3, P 4) of said one or more column partitions (DE, F, P) before committing said database transaction; and wherein, based on a functional mapping, the particular row slot in said particular row page (RP 1, RP 2, RP 3) of said row partition is associated with the particular one or more column slots in said particular one or more column pages (P 1, P 2, P 3, P 4) of said one or more column partitions (DE, F, P). storing rows in a table in a database, wherein storing rows in said table comprises storing one or more column-major columns of said rows in column-major format and storing one or more row-major columns of said rows in row-major format; wherein storing rows in said table further comprises: storing said one or more row-major columns in a row partition comprising one or more row pages (RP 1, RP 2, RP 3) in volatile or non-volatile random access memory, each of said one or more row pages (RP 1, RP 2, RP 3) comprising a plurality of row slots; storing said one or more column-major columns in one or more column partitions (DE, F, P), each column partition (DE, F, P) of said one or more column partitions (DE, F, P) comprising one or more column pages (P 1, P 2, P 3, P 4) in volatile or non-volatile random access memory, each of said one or more column pages (P 1, P 2, P 3, P 4) comprising a plurality of column slots; executing a database transaction, wherein executing said database transaction comprises updating a particular row of said table in said database to obtain an updated row; committing said database transaction; wherein said updating comprises storing one or more values of said one or more row-major columns of the updated row in a particular row slot in a particular row page (RP 1, RP 2, RP 3) of said row partition, and storing one or more values of said one or more column-major columns of the updated row in particular one or more column slots in particular one or more column pages (P 1, P 2, P 3, P 4) of said one or more column partitions (DE, F, P) before committing said database transaction; and wherein, based on a functional mapping, the particular row slot in said particular row page (RP 1, RP 2, RP 3) of said row partition is associated with the particular one or more column slots in said particular one or more column pages (P 1, P 2, P 3, P 4) of said one or more column partitions (DE, F, P). storing said one or more row-major columns in a row partition comprising one or more row pages (RP 1, RP 2, RP 3) in volatile or non-volatile random access memory, each of said one or more row pages (RP 1, RP 2, RP 3) comprising a plurality of row slots; storing said one or more column-major columns in one or more column partitions (DE, F, P), each column partition (DE, F, P) of said one or more column partitions (DE, F, P) comprising one or more column pages (P 1, P 2, P 3, P 4) in volatile or non-volatile random access memory, each of said one or more column pages (P 1, P 2, P 3, P 4) comprising a plurality of column slots; executing a database transaction, wherein executing said database transaction comprises updating a particular row of said table in said database to obtain an updated row; committing said database transaction; wherein said updating comprises storing one or more values of said one or more row-major columns of the updated row in a particular row slot in a particular row page (RP 1, RP 2, RP 3) of said row partition, and storing one or more values of said one or more column-major columns of the updated row in particular one or more column slots in particular one or more column pages (P 1, P 2, P 3, P 4) of said one or more column partitions (DE, F, P) before committing said database transaction; and wherein, based on a functional mapping, the particular row slot in said particular row page (RP 1, RP 2, RP 3) of said row partition is associated with the particular one or more column slots in said particular one or more column pages (P 1, P 2, P 3, P 4) of said one or more column partitions (DE, F, P).