1. A method of analyzing genetic data using a distributed parallel framework, comprising: receiving row-wise data, each row of the row-wise data storing an identifier of a respective individual and characteristics of the respective individual under respective column names; converting the row-wise data into entry-wise tables each organized in a plurality of columns and a plurality of rows, wherein the converting comprises: parsing, based on the column names, each row of the row-wise data into genetic data representing genetic variants of the respective individual and non-genetic data representing covariate data of the respective individual; storing the genetic data of each row of the row-wise data as a plurality of rows in a first entry-wise table, wherein a portion of the column names in the row-wise data corresponding to the genetic variants are inserted as values in a plurality of rows in the first entry-wise table, wherein the parsing comprises: grouping the first entry-wise table by identifiers of the genetic variant or individuals; and grouping the second entry-wise table by genotype or individuals, and wherein the first entry-wise table is indexed at least by identifiers of the genetic variants, and the second entry-wise table is indexed at least by values of the covariate data; and storing the non-genetic data of each row of the row-wise data as a plurality of rows in a second entry-wise table, wherein a portion of the column names in the row-wise data corresponding to the covariate data are inserted as values in a plurality of rows in the second entry-wise table; distributing the first and second entry-wise tables across a plurality of database segments of a parallel distributed database; and running database queries in parallel on the distributed first and second entry-wise tables by joining the first and second entry-wise tables by the identifier of the individual.