L-Store is a relational database that separates records into base records and tail records to track updates. It uses a columnar storage layout where each column's data is stored together on separate pages to improve performance. Queries in L-Store can retrieve the latest record values by traversing the record lineage stored in tail records. The milestone implementation provides basic database, table, and query classes to support record storage, indexing, and SQL-like operations like selection, insertion, updating, deletion and aggregation.