Apache MetaModel is a library that encapsulates the differences and enhances the capabilities of different datastores. Rich querying abilities are offered to datastores that do not otherwise support advanced querying and a unified view of the datastore structure is offered through a single model of the schemas, tables, columns and relationships.

Key concepts:

Knowledge base and background information:

Details about Connectors / DataContext implementations:

Datastore typeDataContext class nameProperties "type" valueVariants supported/available

JDBC / Relational Databases

JdbcDataContextjdbc

PostgreSQL, MySQL, Microsoft SQL Server, Oracle DB, IBM DB2
Apache Hive, Apache Derby, SQLite, Ingres, H2, HSQLDB
(... and many more)

CSV files

CsvDataContextcsv

Comma-separated
Tab-separated
Anything-separated files

Fixed width value filesFixedWidthDataContextfixed-width

Fixed width
EBCDIC

Microsoft Excel spreadsheetsExcelDataContextexcel

.xls
.xlsx 

Microsoft Access database filesAccessDataContext-

.mdb
.accdb

OpenOffice.org database filesOpenOfficeDataContext-.odb
XML filesXmlDomDataContext
XmlSaxDataContext 
xml

DOM-based parsing (all in-memory)
SAX-based parsing (streaming) 

JSON filesJsonDataContextjson 
ElasticSearch

ElasticSearchDataContext
ElasticSearchRestDataContext

elasticsearch

Native Java API
RESTful JSON API

MongoDBMongoDbDataContext-MongoDB 2.x
MongoDB 3.x 
Apache CouchDBCouchDbDataContextcouchdb 
Apache CassandraCassandraDataContextcassandra 
Apache HBaseHBaseDataContexthbase 
Apache KafkaKafkaDataContext

Neo4jNeo4jDataContext- 
Salesforce.comSalesforceDataContextsalesforce 
SugarCRMSugarCrmDataContext- 
Java collectionsPojoDataContextpojo

Collection<Object[]>
Collection<Map<String, Object>>
Collection<JavaBean> 

Collections of other datastoresCompositeDataContext  

Additional information for the interested:

 

  • No labels