DoxDB

A data framework to allow storing of structured data using JPA.

License

License

Categories

Categories

Net
GroupId

GroupId

net.trajano.doxdb
ArtifactId

ArtifactId

doxdb
Last Version

Last Version

1.0.4
Release Date

Release Date

Type

Type

pom
Description

Description

DoxDB
A data framework to allow storing of structured data using JPA.
Project Organization

Project Organization

Trajano
Source Code Management

Source Code Management

http://github.com/trajano/doxdb

Download doxdb

Filename Size
doxdb-1.0.4.pom 14 KB
Browse

How to add to project

<!-- https://jarcasting.com/artifacts/net.trajano.doxdb/doxdb/ -->
<dependency>
    <groupId>net.trajano.doxdb</groupId>
    <artifactId>doxdb</artifactId>
    <version>1.0.4</version>
    <type>pom</type>
</dependency>
// https://jarcasting.com/artifacts/net.trajano.doxdb/doxdb/
implementation 'net.trajano.doxdb:doxdb:1.0.4'
// https://jarcasting.com/artifacts/net.trajano.doxdb/doxdb/
implementation ("net.trajano.doxdb:doxdb:1.0.4")
'net.trajano.doxdb:doxdb:pom:1.0.4'
<dependency org="net.trajano.doxdb" name="doxdb" rev="1.0.4">
  <artifact name="doxdb" type="pom" />
</dependency>
@Grapes(
@Grab(group='net.trajano.doxdb', module='doxdb', version='1.0.4')
)
libraryDependencies += "net.trajano.doxdb" % "doxdb" % "1.0.4"
[net.trajano.doxdb/doxdb "1.0.4"]

Dependencies

provided (1)

Group / Artifact Type Version
javax : javaee-api jar 7.0

test (4)

Group / Artifact Type Version
fish.payara.extras : payara-embedded-all jar 4.1.153
junit : junit jar 4.12
net.trajano.commons : commons-testing jar 2.1.0
org.mockito : mockito-core jar 1.10.19

Project Modules

  • doxdb-rest
  • doxdb-sample
  • doxdb-sample-web
  • json-path

DoxDB

TL;DR : MongoDB on SQL

This is structured document oriented data management module that runs on top of an RDBMS and file system. It keeps the notion of document data away from the storage facility, but still provides robust ACID transactions using standard RDBMS transactions.

Build Status

Roadmap

Completed:

  • JSON validation
  • Distributed Search (using ElasticSearch using REST API via JAX-RS)
  • CRUD
  • Event handling
  • REST API
  • Angular JS sample
  • Event notification using WebSockets
  • Allow for retrieving large collections
  • Import/Export
  • Schema retrieval
  • Explicit locking and unlocking of Dox records
  • Example with Angular Schema Form
  • AngularJS Module Generation
  • Change database schema
  • Advanced ElasticSearch queries
  • Unique lookup queries
  • Non-unique lookup queries
  • Defining lookups via json-path
  • Scripting/Rule engine

Remaining:

  • Access control
  • OOB
  • Automatic Schema migration
  • Temporal data
  • Corrupted index repair
  • Off-line sync
  • Data anonymization
  • Create a data dictionary and rename the methods and fields to correspond to the data dictionary.

Out of scope:

  • Alternate search (not going to be in scope until a better alternative to ElasticSearch is found)
  • Extra operations are out of scope. Instead the application will provide their own REST API. However, DoxDB provides a Local EJB API that the REST API may invoke.

Notes:

  • Jest is no longer used to avoid having too many transitive dependencies.

Versions

Version
1.0.4
1.0.3
1.0.2