Table 12: Generated elements for Key Value stores.
MainKey Values Output Pairs
Kvpo 1 1 139.535
Kvpf 24 24 3.348.840
Khpf 1 24 3.348.840
Kvpfo 24 24 3.348.840
Kvpav 28 28 3.906.980
the key that will compose the document has a direct
consequence in the number of generated values: dpo
produced 139.535 elements; ipo generated 3.348.840
and cpo generated 139.535 elements. Finally, the out-
put for the Graph databases was one main node, the
input class, and one leaf node for each field or array
in the original file. The values are then inserted into
each leaf node, totalling 3.348.840 elements.
4 CONCLUSIONS
We presented an approach for NoSQL interoperabi-
lity based on the JSON format and applying the pull-
parser programming model for executing a set of rules
over a stream of objects. We have two main contribu-
tions. First, we use the JSON nested data model as
a basis for interoperability between different NoSQL
data formats. The utilization of JSON has confrimed
to be an effective choice, since it has many support
for several APIs, making it easy to connect to diffe-
rent output datastores.
The second main contribution is the utilization of
the pull-parser programming model, which has alre-
ady been used in the XML context, for reading the
input from a stream of objects. This enables to have
large files as input, since it does not need to keep the
input objects in memory. The translation itself is free
of context, if the JSON objects are well-formed nes-
ted documents.
We detailed a set of rules from JSON to a set of
NoSQL data representation strategies. The data mi-
gration rules are simple to implement, relying only on
get() and set() primitives, available in several imple-
mentations of NoSQL databases. Despite covering a
large number of representations,other representations
exist, specially with respect to the composition of the
input keys. They are often path/based expressions to
reach a given object.
As future work, we could extend the model to sup-
port complex query compositions, and to compare the
results of a same query in different NoSQL stores.
REFERENCES
Alomari, E., Barnawi, A., and Sakr, S. (2015). Cdport: A
portability framework for nosql datastores. Arabian
Journal for Science and Engineering, pages 1–23.
Atzeni, P., Bugiotti, F., Cabibbo, L., and Torlone, R. (2016).
Data modeling in the nosql world. Computer Stan-
dards & Interfaces.
Atzeni, P., Bugiotti, F., and Rossi, L. (2012). Uniform
access to non-relational database systems: The sos
platform. In Advanced Information Systems Engineer-
ing, pages 160–174. Springer.
Atzeni, P., Bugiotti, F., and Rossi, L. (2014). Uni-
form access to nosql systems. Information Systems,
43:117–133.
Bondiombouy, C. and Valduriez, P. (2016). Query Proces-
sing in Multistore Systems: an overview. PhD thesis,
INRIA Sophia Antipolis-M
´
editerran
´
ee.
Bugiotti, F. and Cabibbo, L. (2013). A comparison of data
models and apis of nosql datastores. Dipartamento di
Ingegneria della Universit
`
a di Roma.
Bugiotti, F., Cabibbo, L., Atzeni, P., and Torlone, R. (2013).
A logical approach to nosql databases.
Bugiotti, F., Cabibbo, L., Atzeni, P., and Torlone, R. (2014).
Database design for nosql systems. In In proc. of ER,
pages 223–231. Springer.
Chung, W.-C., Lin, H.-P., Chen, S.-C., Jiang, M.-F., and
Chung, Y.-C. (2014). Jackhare: a framework for sql
to nosql translation using mapreduce. Automated Soft-
ware Engineering, 21(4):489–508.
Consortium, W. W. W. et al. (2012). R2rml: Rdb to rdf
mapping language.
Hecht, R. and Jablonski, S. (2011). Nosql evaluation: A use
case oriented survey.
Michel, F., Djimenou, L., Faron-Zucker, C., and Montag-
nat, J. (2014). xr2rml: Relational and non-relational
databases to rdf mapping language. Technical report,
ISRN I3S/RR 2014-04-FR v3.
Scavuzzo, M., Di Nitto, E., and Ceri, S. (2014). Interopera-
ble data migration between nosql columnar databases.
In 2014 IEEE 18th EDOCW, pages 154–162. IEEE.
Slomiski, A. (2001). TR550: Design of a Pull and Push
Parser System for Streaming XML. Technical report,
University of Indiana, US.
ICEIS 2018 - 20th International Conference on Enterprise Information Systems
102