Although some operations of Bigtable are just like any traditional database, it is not based on relational database model. Architecturally, Bigtable is designed as a sparse, distributed, persistent multi-dimensional sorted map. Each value of the map is an array of bytes which is indexed by a row key, column key, and a timestamp. Bigtable basically treats data as series of continuous strings. Tables in BigTable are multidimensional and split-able.
Data model of BigTable supports dynamic control over data layout and format. Bigtable has a number of choices for schema which can be used to control the locality of data dynamically based on particular client application. Location of data can be in-memory or directly from the disk. Also, BigTable is designed to handle serialized inputs of structured as well as semi-structured data into these strings from client applications by application of indexing mechanism used in BigTable.
BigTable supports MapReduce programming model for parallel computations over large datasets over clustering computers. BigTable uses Chubby Lock service in order to facilitate synchonizing of the distributed applications for sharing application resources.