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:
- DataContext
- Query object, the QueryBuilder API and Query parsing
- UpdateableDataContext
- UpdateScript (and BatchUpdateScript)
Knowledge base and background information:
Details about Connectors / DataContext implementations:
Datastore type | DataContext class name | Properties "type" value | Variants supported/available |
JdbcDataContext | jdbc | PostgreSQL, MySQL, Microsoft SQL Server, Oracle DB, IBM DB2 | |
CsvDataContext | csv | Comma-separated | |
Fixed width value files | FixedWidthDataContext | fixed-width | Fixed width |
Microsoft Excel spreadsheets | ExcelDataContext | excel | .xls |
Microsoft Access database files | AccessDataContext | - | .mdb |
OpenOffice.org database files | OpenOfficeDataContext | - | .odb |
XML files | XmlDomDataContext XmlSaxDataContext | xml | DOM-based parsing (all in-memory) |
JSON files | JsonDataContext | json | |
ElasticSearch | ElasticSearchDataContext | elasticsearch | Native Java API |
MongoDB | MongoDbDataContext | - | MongoDB 2.x MongoDB 3.x |
Apache CouchDB | CouchDbDataContext | couchdb | |
Apache Cassandra | CassandraDataContext | cassandra | |
Apache HBase | HBaseDataContext | hbase | |
Apache Kafka | KafkaDataContext | ||
Neo4j | Neo4jDataContext | - | |
Salesforce.com | SalesforceDataContext | salesforce | |
SugarCRM | SugarCrmDataContext | - | |
Java collections | PojoDataContext | pojo |
|
Collections of other datastores | CompositeDataContext |
Additional information for the interested:
Blogs and presentations - external readings, presentations, videos etc. about Apache MetaModel
Data type conversion
MetaModel extras - third party modules built on top of Apache MetaModel
Migrating from (legacy) eobjects.org MetaModel to Apache MetaModel
- Release Guide