Graph-QL Responsibility Analysis at Integrated Competency Certification Test System Base on Web Service
Abstract
Graph-QL (Query Language) is a new concept in the Application Programming Interface (API). Graph-QL was developed by Facebook which is implemented on the server-side. Although it is a query language, Graph-QL is not directly related to the database, in other words, Graph-QL is not limited to certain databases, either SQL or NoSQL. The position of Graph-QL is on the client and server-side that access an API. One of the objectives of developing this query language is to facilitate data communication between the backend and frontend / mobile applications. For this reason, this paper will examine the responsibility of Graph-QL in terms of response time and response size in the development of an integrated competency certification test system based on web service and compared with efficiency and flexibility using the REST API. From the test results, it was found that Graph-QL provided some advantages compare to REST API. It give more flexibility for the clients to access the data and solve the most typical problem that was over or under fetching cause by fixed data given by REST API endpoints.
Downloads
References
[2] Brito, G., Mombach, T., & Valente, M. T. “Migrating to GraphQL: A Practical Assessment”. SANER 2019 - Proceedings of the 2019 IEEE 26th International Conference on Software Analysis, Evolution, and Reengineering, (January), 2019, 140–150. https://doi.org/10.1109/SANER.2019.8667986
[3] Malakhov, K. S., Kurgaev, A. P., & Velychko, V. Y. “Modern Restful API DLS and Frameworks for Restful Web Services API Schema Modelling, Documenting, Visualizing”. Scientific Journals Problems of Programming, 2018, Vol. 4, pp. 059–068. https://doi.org/10.15407/pp2018.04.059
[4] Ulrich, H., Kern, J., Tas, D., Kock-Schoppenhauer, A. K., Ückert, F., Ingenerf, J., & Lablans, M. “QL 4 MDR: A GraphQL query language for ISO 11179-based metadata repositories”. BMC Medical Informatics and Decision Making, 2018, Vol. 19, No.1, pp. 1–7. https://doi.org/10.1186/s12911-019-0794-z
[5] Mark Logic Corp. REST Application Developer’s Guide, MarkLogic Corporation.US. 2019.
[6] Neumann, A., Laranjeiro, N., & Bernardino, J. “An Analysis of Public REST Web Service APIs”. IEEE Transactions on Services Computing, June 2018. Pp. 99. https://doi.org/10.1109/TSC.2018.2847344
[7] Hartina, D. A., Lawi, A., & Panggabean, B. L. E. “Performance Analysis of GraphQL and RESTful in SIM LP2M of the Hasanuddin University”. Proceedings - 2nd East Indonesia Conference on Computer and Information Technology: Internet of Things for Industry, EIConCIT November 2018, pp. 237–240. https://doi.org/10.1109/EIConCIT.2018.8878524
[8] Brito, G., Mombach, T., & Valente, M. T. “Migrating to GraphQL: A Practical Assessment”. SANER 2019 - Proceedings of the 2019 IEEE 26th International Conference on Software Analysis, Evolution, and Reengineering, January 2019, pp. 140–150. https://doi.org/10.1109/SANER.2019.8667986
[9] Hartig, O., & Pérez, J. “An initial analysis of facebook’s GraphQL language”. CEUR Workshop Proceedings, June 2017.
[10] Taskula, T. “Advanced Data Fetching with GraphQL: Case Bakery Service”. Janne Kario M.Sc. (Tech.) Jukka Keski-Luopa M.Sc, 2018, pp. 14–15.
[11] Farré, C., Varga, J., & Almar, R. “GraphQL Schema Generation for Data-Intensive Web APIs”. Lecture Notes in Computer Science (Including Subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), 11815 LNCS, 184–194. https://doi.org/10.1007/978-3-030-32065-2_13
[12] Landeiro, M. I. F. Analysis of GraphQL performance: a case study. Springer International Publishing, 2019.
[13] Ritsilä, A. “GraphQL: The API Design Revolution”, Haaga-Helia University, 2017. Retrieved from https://www.theseus.fi/bitstream/handle/10024/141989/GraphQL- The API Design Revolution.pdf?sequence=1&isAllowed=y
[14] Ghebremicael, E. S. “Transformation of REST API to GraphQL for OpenTOSCA”. University of Stuttgart, 2017. https://doi.org/10.18419/opus-9352
[15] Ulrich, H., Kern, J., Tas, D., Kock-Schoppenhauer, A. K., Ückert, F., Ingenerf, J., & Lablans, M. “QL 4 MDR: A GraphQL query language for ISO 11179-based metadata repositories”. BMC Medical Informatics and Decision Making, Vol. 19, No. 1, pp. 1–7, 2019. https://doi.org/10.1186/s12911-019-0794-z
[16] Hossain, A., Nowsin, M., Sheikh, A., Halder, M., Biswas, S., & Arman, A. I. Quality of Service in Software Defined Networking Quality of Service in Software Defined Networking, September, 2018.
[17] Karakus, M., & Durresi, A. “Quality of Service (QoS) in Software Defined Networking (SDN): A survey”. Journal of Network and Computer Applications, Vol. 80, pp. 200–218, 2017. https://doi.org/10.1016/j.jnca.2016.12.019
[18] Febiharsa, D., Sudana, I. M., & Hudallah, N. “Information System for Batik Profession Certification Institution”. Journal of Vocational and Career Education, Vol. 3, No. 2, 2018. https://doi.org/10.15294/jvce.v3i2.17259
[19] Guo, Y., Deng, F., & Yang, X. Design and Implementation of Real-Time Management System Architecture based on GraphQL. IOP Conference Series: Materials Science and Engineering, Vol. 466, No.1, 2018. https://doi.org/10.1088/1757-899X/466/1/012015
[20] Čechák, D. Using GraphQL for Content Delivery in Kentico Cloud. Is.Muni.Cz. 2017. Retrieved from https://is.muni.cz/th/qm0cs/thesis.pdf
[21] Hartig, O., & Pérez, J. Semantics and Complexity of GraphQL Preprint Version *. 27th World Wide Web Conference on World Wide Web (WWW), (Www), 1155–1164, 2018.
[22] Nogatz, F., & Seipel, D. Implementing GraphQL as a query language for deductive databases in SWI-Prolog using DCGs, quasi quotations, and dicts. Electronic Proceedings in Theoretical Computer Science, EPTCS, 234, 42–56, 2017. https://doi.org/10.4204/EPTCS.234.4
The Authors submitting a manuscript do so on the understanding that if accepted for publication, the copyright of the article shall be assigned to Jurnal Lontar Komputer as the publisher of the journal. Copyright encompasses exclusive rights to reproduce and deliver the article in all forms and media, as well as translations. The reproduction of any part of this journal (printed or online) will be allowed only with written permission from Jurnal Lontar Komputer. The Editorial Board of Jurnal Lontar Komputer makes every effort to ensure that no wrong or misleading data, opinions, or statements be published in the journal.
This work is licensed under a Creative Commons Attribution 4.0 International License.