Hi Edward, By default, the embedded version of apache derby database is used as a metadb. You can run multiple queries against same metadb by providing a jdbc connection (where the metadata is located) to a mysql/derby or any other relational database in the options 'javax.jdo.option.ConnectionURL' & 'javax.jdo.option.ConnectionDriverName' . If you want to use derby start a networked server using the instructions here http://db.apache.org/derby/papers/DerbyTut/ns_intro.html and provide address to that server.
For mysql you can do something like below <name>javax.jdo.option.ConnectionURL</name> <value>jdbc:mysql://<mysql server hostname>/<database name>?createDatabaseIfNotExist=true</value> <name>javax.jdo.option.ConnectionDriverName</name> <value>com.mysql.jdbc.Driver</value> It is generally good to have data and metadata at the same place. But there are couple of reasons that we couldn't use HDFS to put the metadata the foremost being that updates are not allowed on HDFS. By putting the data in an SQL system, it is easy to query and build other applications around it. But if you have ideas about how to put it on HDFS, please share them with us. Let me know if you need more help Prasad
