I know that Fuseki is a server that sits on top of TDB and provides SPARQL capabilities over HTTP , if I were to write code in Java using the Apache Jena API do I need the Fuseki server to be running and have the data transmission via HTTP to execute a read query? is there other faster mechanism like JDBC where I can connect directly to the TDB without going thru Fuseki for querying it ?
You can use TDB directly (same JVM). See http://jena.apache.org/documentation/tdb/tdb_transactions.html
Otherwise Fuseki(+it's internal TDB) over HTTP is acting like a SQL database server over JDBC.
answered 11 Jan, 04:33