data. At the same time it is easily and quickly de-
ployable. This work identified requirements needed
to be considered during designing such an architec-
ture comprising e.g. a well-defined data handling, an
infrastructure management or scalability. Our archi-
tecture is scalable both horizontally and vertically.
A possibility of improving the architecture in the
future would be to switch the container orchestration
from using Docker Swarm to using Kubernetes. It of-
fers a more robust solution and better fine tuning. It
would allow the utilization of a lightweight operating
distribution as opposed to the Ubuntu distribution that
is currently used, which would free up a non-trivial
part of the clusters resources and would reduce man-
agement efforts. Another desirable improvement of
the architecture would be a more extensive focus on
load balancing, synchronization between the cluster’s
machines and the ensuring of service and data con-
sistency within the cluster. Problems with synchro-
nization and consistency are handled on a code level
and should optimally get shifted towards the cluster
management as well, wherever applicable.
In conclusion, our architecture allows to easily
handle all the aforementioned challenges which have
been laid out under Section 4. In addition to that, it is
completely made up by open-source solutions, allow-
ing for more freedom in terms of budget allocation.
REFERENCES
Ahmed Oussous, Fatima-Zahra Benjelloun, Ayoub Ait Lah-
cen, and Samir Belfkih (2018). Big data technologies:
A survey. Journal of King Saud University - Computer
and Information Sciences, 30(4):431–448.
Angular (2019). One framework. mobile & desktop. URL:
https://angular.io, accessed 2019-12-17.
ArangoDB (2019). One engine. one query language. multi-
ple data models. URL: arangodb.com, accessed 2019-
12-17.
django (2020). django: The web framework for perfec-
tionists with deadlines. URL: djangoproject.com/, ac-
cessed 2020-02-18.
Drone (2019). Automate software testing and delivery.
URL: https://drone.io/, accessed 2019-12-17.
Elasticsearch (2019). Get started with elasticsearch. URL:
elastic.co, accessed 2019-12-17.
GraphQL Foundation (2019). A query language for your
api. URL: https://graphql.org, accessed 2019-12-16.
H. Li, N. Chen, B. Liang, and C. Liu (2019). Rpbg: Intel-
ligent orchestration strategy of heterogeneous docker
cluster based on graph theory. In 2019 IEEE 23rd Int.
Conf. on Computer Supported Cooperative Work in
Design (CSCWD), pages 488–493.
K. Lehmann and A. Freymann (2018). Demo abstract:
Smart urban services platform a flexible solution
for smart cities. In 2018 IEEE/ACM Third Int.
Conf. on Internet-of-Things Design and Implementa-
tion (IoTDI), pages 306–307.
Katal, A., Wazid, M., and Goudar, R. H. (2013). Big
data: issues, challenges, tools and good practices.
In 2013 Sixth int. conf. on contemporary computing
(IC3), pages 404–409.
Kubernetes Authors (2020). Production-grade container or-
chestration: Automated container deployment, scal-
ing, and management. URL: kubernetes.io, accessed
2020-02-21.
L. Sun, Y. Li, and R. A. Memon (2017). An open iot frame-
work based on microservices architecture. China
Communications, 14(2):154–162.
M. Kiran, P. Murphy, I. Monga, J. Dugan, and S. S. Baveja
(2015). Lambda architecture for cost-effective batch
and speed big data processing. In 2015 IEEE Int. Conf.
on Big Data (Big Data), pages 2785–2792.
Peinl, R., Holzschuher, F., and Pfitzer, F. (2016). Docker
cluster management for the cloud - survey results and
own solution. Journal of Grid Computing, 14(2):265–
282.
Portainer (2019). Making docker management easy. URL:
portainer.io, accessed 2019-12-17.
RabbitMQ (2019). Understanding rabbitmq. URL: rab-
bitmq.com, accessed 2019-12-17.
S. Kaisler, F. Armour, J. A. Espinosa, and W. Money
(2013). Big data: Issues and challenges moving for-
ward. In 2013 46th Hawaii Int. Conf. on System Sci.,
pages 995–1004.
Sindhu, C. S. and Hegde, N. P. (2017). Handling com-
plex heterogeneous healthcare big data. Int. Journal
of Computational Intelligence Research, 13(5):1201–
1227.
Stucke, M. E. and Grunes, A. P. (2016). Big data and com-
petition policy. Oxford University Press, Oxford, 1st
edition edition.
Tanenbaum, A. S. and van Steen, M. (2007). Distributed
Systems: Principles and Paradigms. Pearson Prentice
Hall, Upper Saddle River, NJ, 2 edition.
Verma, A., Pedrosa, L., Korupolu, M., Oppenheimer, D.,
Tune, E., and Wilkes, J. (2015). Large-scale clus-
ter management at google with borg. In Proceedings
of the Tenth European Conf. on Computer Systems,
page 18.
Volk, M., Staegemann, D., Pohl, M., and Turowski, K.
(2019). Challenging big data engineering: Positioning
of current and future development. In Proceedings of
the 4th Int. Conf. on Internet of Things, Big Data and
Security, pages 351–358. SCITEPRESS - Science and
Technology Publications.
Y. Demchenko, P. Grosso, C. de Laat, and P. Membrey
(2013). Addressing big data issues in scientific data
infrastructure. In 2013 Int. Conf. on Collaboration
Technologies and Systems (CTS), pages 48–55.
IoTBDS 2020 - 5th International Conference on Internet of Things, Big Data and Security
256