GraphQL esineiden internetissä

Esineiden internetin laajentumisen yhteydessä käytettävissä olevien laitteiden ja teknologioiden lukumäärä on kasvanut. Samalla verkkoinfrastruktuurien kuormitus on lisääntynyt, mikä heijastuu väistämättöminä ongelmina resurssirajoittuneissa systeemeissä. Järjestelmällisellä standardoinnilla on onni...

Täydet tiedot

Bibliografiset tiedot
Päätekijä: Rantala, Paavo
Muut tekijät: Informaatioteknologian tiedekunta, Faculty of Information Technology, Informaatioteknologia, Information Technology, Jyväskylän yliopisto, University of Jyväskylä
Aineistotyyppi: Pro gradu
Kieli:fin
Julkaistu: 2022
Aiheet:
Linkit: https://jyx.jyu.fi/handle/123456789/80578
_version_ 1828193047196729344
author Rantala, Paavo
author2 Informaatioteknologian tiedekunta Faculty of Information Technology Informaatioteknologia Information Technology Jyväskylän yliopisto University of Jyväskylä
author_facet Rantala, Paavo Informaatioteknologian tiedekunta Faculty of Information Technology Informaatioteknologia Information Technology Jyväskylän yliopisto University of Jyväskylä Rantala, Paavo Informaatioteknologian tiedekunta Faculty of Information Technology Informaatioteknologia Information Technology Jyväskylän yliopisto University of Jyväskylä
author_sort Rantala, Paavo
datasource_str_mv jyx
description Esineiden internetin laajentumisen yhteydessä käytettävissä olevien laitteiden ja teknologioiden lukumäärä on kasvanut. Samalla verkkoinfrastruktuurien kuormitus on lisääntynyt, mikä heijastuu väistämättöminä ongelmina resurssirajoittuneissa systeemeissä. Järjestelmällisellä standardoinnilla on onnistuttu parantamaan eri tekniikoiden yhteensopivuutta ja palvelukeskeinen arkkitehtuuri on edistänyt verkkojen skaalautuvuutta. Erityisesti web-palveluna tunnettu REST-arkkitehtuuri on saavuttanut suosiota esineiden internetissä ja mahdollistanut aikaisemmin opitun siirtämisen uuteen laiteympäristöön. HTTP:tä kevyempi CoAP-protokolla on ollut ominaisuuksiltaan järkevä vaihtoehto REST-arkkitehtuurin tuomiseksi esineiden internetiin. Vastaavasti kuten REST, GraphQL on web-palveluna kehittynyt spesifikaatio rajapinta-arkkitehtuurille, jonka tärkeimmät osat ovat kyselykieli ja ajonaikainen järjestelmä. Spesifikaation suunnittelua on lähestytty asiakkaan tarpeista, pyrkien RESTiä joustavampaan viestintään. GraphQL on varteen otettava vaihtoehto esineiden internetille, sillä sen ominaisuuksilla on edellytyksiä vähentää energiankulutusta ja parantaa järjestelmien integroimista keskenään. Lisäksi GraphQL:n kommunikaatiomallit tukevat RESTiä kattavammin muitakin IoT-protokollia kuin CoAPia. Tässä tutkielmassa selvitetään GraphQL:ää ja esineiden internetiä käsittelevissä tutkimuksissa tehtyjä havaintoja ja niiden perusteella kartoitetaan aiheen nykytilannetta. Tutkimuksista opitun perusteella toteutetaan yksinkertainen IoT-järjestelmä, jossa web-sovellukseen haetaan mittausdataa IoT-laitteelta ja toisen osapuolen hallitsemasta web-palvelusta hyödyntäen GraphQL:ää osana arkkitehtuuria. As the Internet of Things has expanded, the number of usable devices and technologies has increased as well. The network infrastructure has gained more stress that reflects inevitable problems in resource constrained systems. Well-organized standardizing has accomplished to improve the integration of different techniques and service-oriented architecture has enhanced the network scalability. Especially known as a web service, REST has gained popularity in the Internet of Things and made it possible to reuse the learned knowledge in a new device environment. Regarding its features, CoAP protocol has been a reasonable lighter alternative to HTTP for bringing REST into the Internet of Things. As with REST, GraphQL is another interface architecture specification that has matured as a web service whose most important parts are a query language and an execution engine. The specification tries to achieve a more flexible communication than in REST by approaching the design from the needs of the clients. GraphQL is a considerable alternative to the Internet of Things because its features possess implications to reduce energy consumption and to achieve a better integration among systems. Additionally, the communication models of GraphQL have a more comprehensive support for other IoT protocols than only CoAP. In this study the results of the research made about GraphQL and IoT are examined and used to depict the present understanding about the subject. A simple IoT system is developed by what is learned from the research. GraphQL is used as a part of the system architecture to fetch measurement data from an IoT device and a web service owned by a different party to be shown in a web application.
first_indexed 2024-09-11T08:50:49Z
format Pro gradu
free_online_boolean 1
fullrecord [{"key": "dc.contributor.advisor", "value": "Hakala, Ismo", "language": "", "element": "contributor", "qualifier": "advisor", "schema": "dc"}, {"key": "dc.contributor.author", "value": "Rantala, Paavo", "language": "", "element": "contributor", "qualifier": "author", "schema": "dc"}, {"key": "dc.date.accessioned", "value": "2022-04-13T05:26:30Z", "language": null, "element": "date", "qualifier": "accessioned", "schema": "dc"}, {"key": "dc.date.available", "value": "2022-04-13T05:26:30Z", "language": null, "element": "date", "qualifier": "available", "schema": "dc"}, {"key": "dc.date.issued", "value": "2022", "language": "", "element": "date", "qualifier": "issued", "schema": "dc"}, {"key": "dc.identifier.uri", "value": "https://jyx.jyu.fi/handle/123456789/80578", "language": null, "element": "identifier", "qualifier": "uri", "schema": "dc"}, {"key": "dc.description.abstract", "value": "Esineiden internetin laajentumisen yhteydess\u00e4 k\u00e4ytett\u00e4viss\u00e4 olevien laitteiden ja teknologioiden lukum\u00e4\u00e4r\u00e4 on kasvanut. Samalla verkkoinfrastruktuurien kuormitus on lis\u00e4\u00e4ntynyt, mik\u00e4 heijastuu v\u00e4ist\u00e4m\u00e4tt\u00f6min\u00e4 ongelmina resurssirajoittuneissa systeemeiss\u00e4. J\u00e4rjestelm\u00e4llisell\u00e4 standardoinnilla on onnistuttu parantamaan eri tekniikoiden yhteensopivuutta ja palvelukeskeinen arkkitehtuuri on edist\u00e4nyt verkkojen skaalautuvuutta. Erityisesti web-palveluna tunnettu REST-arkkitehtuuri on saavuttanut suosiota esineiden internetiss\u00e4 ja mahdollistanut aikaisemmin opitun siirt\u00e4misen uuteen laiteymp\u00e4rist\u00f6\u00f6n. HTTP:t\u00e4 kevyempi CoAP-protokolla on ollut ominaisuuksiltaan j\u00e4rkev\u00e4 vaihtoehto REST-arkkitehtuurin tuomiseksi esineiden internetiin. Vastaavasti kuten REST, GraphQL on web-palveluna kehittynyt spesifikaatio rajapinta-arkkitehtuurille, jonka t\u00e4rkeimm\u00e4t osat ovat kyselykieli ja ajonaikainen j\u00e4rjestelm\u00e4. Spesifikaation suunnittelua on l\u00e4hestytty asiakkaan tarpeista, pyrkien RESTi\u00e4 joustavampaan viestint\u00e4\u00e4n. GraphQL on varteen otettava vaihtoehto esineiden internetille, sill\u00e4 sen ominaisuuksilla on edellytyksi\u00e4 v\u00e4hent\u00e4\u00e4 energiankulutusta ja parantaa j\u00e4rjestelmien integroimista kesken\u00e4\u00e4n. Lis\u00e4ksi GraphQL:n kommunikaatiomallit tukevat RESTi\u00e4 kattavammin muitakin IoT-protokollia kuin CoAPia. T\u00e4ss\u00e4 tutkielmassa selvitet\u00e4\u00e4n GraphQL:\u00e4\u00e4 ja esineiden interneti\u00e4 k\u00e4sitteleviss\u00e4 tutkimuksissa tehtyj\u00e4 havaintoja ja niiden perusteella kartoitetaan aiheen nykytilannetta. Tutkimuksista opitun perusteella toteutetaan yksinkertainen IoT-j\u00e4rjestelm\u00e4, jossa web-sovellukseen haetaan mittausdataa IoT-laitteelta ja toisen osapuolen hallitsemasta web-palvelusta hy\u00f6dynt\u00e4en GraphQL:\u00e4\u00e4 osana arkkitehtuuria.", "language": "fi", "element": "description", "qualifier": "abstract", "schema": "dc"}, {"key": "dc.description.abstract", "value": "As the Internet of Things has expanded, the number of usable devices and technologies has increased as well. The network infrastructure has gained more stress that reflects inevitable problems in resource constrained systems. Well-organized standardizing has accomplished to improve the integration of different techniques and service-oriented architecture has enhanced the network scalability. Especially known as a web service, REST has gained popularity in the Internet of Things and made it possible to reuse the learned knowledge in a new device environment. Regarding its features, CoAP protocol has been a reasonable lighter alternative to HTTP for bringing REST into the Internet of Things. As with REST, GraphQL is another interface architecture specification that has matured as a web service whose most important parts are a query language and an execution engine. The specification tries to achieve a more flexible communication than in REST by approaching the design from the needs of the clients. GraphQL is a considerable alternative to the Internet of Things because its features possess implications to reduce energy consumption and to achieve a better integration among systems. Additionally, the communication models of GraphQL have a more comprehensive support for other IoT protocols than only CoAP. In this study the results of the research made about GraphQL and IoT are examined and used to depict the present understanding about the subject. A simple IoT system is developed by what is learned from the research. GraphQL is used as a part of the system architecture to fetch measurement data from an IoT device and a web service owned by a different party to be shown in a web application.", "language": "en", "element": "description", "qualifier": "abstract", "schema": "dc"}, {"key": "dc.description.provenance", "value": "Submitted by Paivi Vuorio (paelvuor@jyu.fi) on 2022-04-13T05:26:30Z\nNo. of bitstreams: 0", "language": "en", "element": "description", "qualifier": "provenance", "schema": "dc"}, {"key": "dc.description.provenance", "value": "Made available in DSpace on 2022-04-13T05:26:30Z (GMT). No. of bitstreams: 0\n Previous issue date: 2022", "language": "en", "element": "description", "qualifier": "provenance", "schema": "dc"}, {"key": "dc.format.extent", "value": "94", "language": "", "element": "format", "qualifier": "extent", "schema": "dc"}, {"key": "dc.format.mimetype", "value": "application/pdf", "language": null, "element": "format", "qualifier": "mimetype", "schema": "dc"}, {"key": "dc.language.iso", "value": "fin", "language": null, "element": "language", "qualifier": "iso", "schema": "dc"}, {"key": "dc.rights", "value": "In Copyright", "language": "en", "element": "rights", "qualifier": null, "schema": "dc"}, {"key": "dc.subject.other", "value": "GraphQL", "language": "", "element": "subject", "qualifier": "other", "schema": "dc"}, {"key": "dc.subject.other", "value": "palvelukeskeinen arkkitehtuuri", "language": "", "element": "subject", "qualifier": "other", "schema": "dc"}, {"key": "dc.subject.other", "value": "REST", "language": "", "element": "subject", "qualifier": "other", "schema": "dc"}, {"key": "dc.subject.other", "value": "spesifikaatio", "language": "", "element": "subject", "qualifier": "other", "schema": "dc"}, {"key": "dc.subject.other", "value": "web", "language": "", "element": "subject", "qualifier": "other", "schema": "dc"}, {"key": "dc.title", "value": "GraphQL esineiden internetiss\u00e4", "language": "", "element": "title", "qualifier": null, "schema": "dc"}, {"key": "dc.type", "value": "master thesis", "language": null, "element": "type", "qualifier": null, "schema": "dc"}, {"key": "dc.identifier.urn", "value": "URN:NBN:fi:jyu-202204132258", "language": "", "element": "identifier", "qualifier": "urn", "schema": "dc"}, {"key": "dc.type.ontasot", "value": "Pro gradu -tutkielma", "language": "fi", "element": "type", "qualifier": "ontasot", "schema": "dc"}, {"key": "dc.type.ontasot", "value": "Master\u2019s thesis", "language": "en", "element": "type", "qualifier": "ontasot", "schema": "dc"}, {"key": "dc.contributor.faculty", "value": "Informaatioteknologian tiedekunta", "language": "fi", "element": "contributor", "qualifier": "faculty", "schema": "dc"}, {"key": "dc.contributor.faculty", "value": "Faculty of Information Technology", "language": "en", "element": "contributor", "qualifier": "faculty", "schema": "dc"}, {"key": "dc.contributor.department", "value": "Informaatioteknologia", "language": "fi", "element": "contributor", "qualifier": "department", "schema": "dc"}, {"key": "dc.contributor.department", "value": "Information Technology", "language": "en", "element": "contributor", "qualifier": "department", "schema": "dc"}, {"key": "dc.contributor.organization", "value": "Jyv\u00e4skyl\u00e4n yliopisto", "language": "fi", "element": "contributor", "qualifier": "organization", "schema": "dc"}, {"key": "dc.contributor.organization", "value": "University of Jyv\u00e4skyl\u00e4", "language": "en", "element": "contributor", "qualifier": "organization", "schema": "dc"}, {"key": "dc.subject.discipline", "value": "Tietotekniikka", "language": "fi", "element": "subject", "qualifier": "discipline", "schema": "dc"}, {"key": "dc.subject.discipline", "value": "Mathematical Information Technology", "language": "en", "element": "subject", "qualifier": "discipline", "schema": "dc"}, {"key": "yvv.contractresearch.funding", "value": "0", "language": "", "element": "contractresearch", "qualifier": "funding", "schema": "yvv"}, {"key": "dc.type.coar", "value": "http://purl.org/coar/resource_type/c_bdcc", "language": null, "element": "type", "qualifier": "coar", "schema": "dc"}, {"key": "dc.rights.accesslevel", "value": "openAccess", "language": null, "element": "rights", "qualifier": "accesslevel", "schema": "dc"}, {"key": "dc.type.publication", "value": "masterThesis", "language": null, "element": "type", "qualifier": "publication", "schema": "dc"}, {"key": "dc.subject.oppiainekoodi", "value": "602", "language": "", "element": "subject", "qualifier": "oppiainekoodi", "schema": "dc"}, {"key": "dc.subject.yso", "value": "rajapinnat (tietokoneohjelmat)", "language": null, "element": "subject", "qualifier": "yso", "schema": "dc"}, {"key": "dc.subject.yso", "value": "esineiden internet", "language": null, "element": "subject", "qualifier": "yso", "schema": "dc"}, {"key": "dc.subject.yso", "value": "standardit", "language": null, "element": "subject", "qualifier": "yso", "schema": "dc"}, {"key": "dc.subject.yso", "value": "protokollat", "language": null, "element": "subject", "qualifier": "yso", "schema": "dc"}, {"key": "dc.subject.yso", "value": "v\u00e4liohjelmistot", "language": null, "element": "subject", "qualifier": "yso", "schema": "dc"}, {"key": "dc.format.content", "value": "fulltext", "language": null, "element": "format", "qualifier": "content", "schema": "dc"}, {"key": "dc.rights.url", "value": "https://rightsstatements.org/page/InC/1.0/", "language": null, "element": "rights", "qualifier": "url", "schema": "dc"}, {"key": "dc.type.okm", "value": "G2", "language": null, "element": "type", "qualifier": "okm", "schema": "dc"}]
id jyx.123456789_80578
language fin
last_indexed 2025-03-31T20:03:11Z
main_date 2022-01-01T00:00:00Z
main_date_str 2022
online_boolean 1
online_urls_str_mv {"url":"https:\/\/jyx.jyu.fi\/bitstreams\/c696d930-c2bc-4a44-bf15-d9e32646b000\/download","text":"URN:NBN:fi:jyu-202204132258.pdf","source":"jyx","mediaType":"application\/pdf"}
publishDate 2022
record_format qdc
source_str_mv jyx
spellingShingle Rantala, Paavo GraphQL esineiden internetissä GraphQL palvelukeskeinen arkkitehtuuri REST spesifikaatio web Tietotekniikka Mathematical Information Technology 602 rajapinnat (tietokoneohjelmat) esineiden internet standardit protokollat väliohjelmistot
title GraphQL esineiden internetissä
title_full GraphQL esineiden internetissä
title_fullStr GraphQL esineiden internetissä GraphQL esineiden internetissä
title_full_unstemmed GraphQL esineiden internetissä GraphQL esineiden internetissä
title_short GraphQL esineiden internetissä
title_sort graphql esineiden internetissä
title_txtP GraphQL esineiden internetissä
topic GraphQL palvelukeskeinen arkkitehtuuri REST spesifikaatio web Tietotekniikka Mathematical Information Technology 602 rajapinnat (tietokoneohjelmat) esineiden internet standardit protokollat väliohjelmistot
topic_facet 602 GraphQL Mathematical Information Technology REST Tietotekniikka esineiden internet palvelukeskeinen arkkitehtuuri protokollat rajapinnat (tietokoneohjelmat) spesifikaatio standardit väliohjelmistot web
url https://jyx.jyu.fi/handle/123456789/80578 http://www.urn.fi/URN:NBN:fi:jyu-202204132258
work_keys_str_mv AT rantalapaavo graphqlesineideninternetissä