1. A method comprising: receiving, with a database system, a first query and a second query for a Resource Description Framework (RDF) database that stores a plurality of data chunks to one or more storage drives, wherein each of the plurality of data chunks includes a plurality of triples that represent an RDF subgraph of the RDF database; accessing a first index that indexes one or more of the data chunks to identify a first subset of the data chunks relevant to the first query, wherein the first index comprises keys defined by a first characteristic of the first subset of the data chunks; loading the first subset of the data chunks to a main memory associated with the database system; executing the first query only against triples included within the subset of the data chunks loaded to the main memory to obtain a query result for the first query; based on the query result for the first query, accessing a second index to identify a second subset of the data chunks relevant to the second query, wherein the second index comprises keys defined by a second characteristic of the second subset of the data chunks; loading the second subset of the data chunks to the main memory; and executing the second query only against triples included within the first subset of the data chunks and the second subset of the data chunks loaded to the main memory to obtain a query result for the second query.