Visible to the public Spring Boot Based REST API to Improve Data Quality Report Generation for Big Scientific Data: ARM Data Center Example

TitleSpring Boot Based REST API to Improve Data Quality Report Generation for Big Scientific Data: ARM Data Center Example
Publication TypeConference Paper
Year of Publication2018
AuthorsGuntupally, K., Devarakonda, R., Kehoe, K.
Conference Name2018 IEEE International Conference on Big Data (Big Data)
Keywordsapplication program interfaces, application server, arm data center example, atmospheric radiation measurement data center, auto configuration, Big Data, big data security, computer centres, CRUD, CRUD web applications, data integrity, data quality report generation, Databases, enterprise applications, Internet, Java, java framework, Metrics, natural sciences computing, popular Spring Boot java-based framework, production-grade Spring applications, pubcrawl, public domain software, resilience, Resiliency, rest, REST service API, Scalability, Servers, service-oriented architecture, spring boot, spring boot application, spring configuration, spring model-view-controller framework, Springs, Tools, user interfaces, web application technologies

Web application technologies are growing rapidly with continuous innovation and improvements. This paper focuses on the popular Spring Boot [1] java-based framework for building web and enterprise applications and how it provides the flexibility for service-oriented architecture (SOA). One challenge with any Spring-based applications is its level of complexity with configurations. Spring Boot makes it easy to create and deploy stand-alone, production-grade Spring applications with very little Spring configuration. Example, if we consider Spring Model-View-Controller (MVC) framework [2], we need to configure dispatcher servlet, web jars, a view resolver, and component scan among other things. To solve this, Spring Boot provides several Auto Configuration options to setup the application with any needed dependencies. Another challenge is to identify the framework dependencies and associated library versions required to develop a web application. Spring Boot offers simpler dependency management by using a comprehensive, but flexible, framework and the associated libraries in one single dependency, which provides all the Spring related technology that you need for starter projects as compared to CRUD web applications. This framework provides a range of additional features that are common across many projects such as embedded server, security, metrics, health checks, and externalized configuration. Web applications are generally packaged as war and deployed to a web server, but Spring Boot application can be packaged either as war or jar file, which allows to run the application without the need to install and/or configure on the application server. In this paper, we discuss how Atmospheric Radiation Measurement (ARM) Data Center (ADC) at Oak Ridge National Laboratory, is using Spring Boot to create a SOA based REST [4] service API, that bridges the gap between frontend user interfaces and backend database. Using this REST service API, ARM scientists are now able to submit reports via a user form or a command line interface, which captures the same data quality or other important information about ARM data.

Citation Keyguntupally_spring_2018