layout: true
--- class: title-slide, center, middle
--- # .darkblue[Stations of my] .darkgray[academic] .darkblue[life] .reference[Three rabbits for illustrating deadlocks instead of dining philosophers problem]
--- # .darkblue[Trying to impress] .darkgray[(not sure if it's working)...] .more-condensed[ - .darkblue[$>$ 120 publications] - .darkblue[94 co-authors] - .darkblue[42] publications (33%) are .darkblue[co-authored by] bachelor/master .darkblue[students] (being students at time of writing) - .darkblue[2 supervised dissertations], 3 current PhD students - .darkblue[$\approx$ 85 bachelor/master]/diploma .darkblue[thesis]/student projects - .darkblue[$\approx$ 60 contributors to LUPOSDATE] - .darkblue[$>$ 37 lectures], in the areas of - Semantic Web - Cloud- and Web-Technologies - Mobile and Distributed Databases - Databases - Algorithms and Datastructures - Compiler ] --- # .darkblue[Trying to impress] .darkgray[(not sure if it's working)...] .condensed[ - 8 third-party fundings (.darkblue[$\approx$
2M]) - .darkblue[Scientific Services] -
Workshop
Chairs
Semantic Big Data (SBD)
@ SIGMOD (2016 - 2020)
Big Data in Emergent Distributed Environments (BiDEDE)
@ SIGMOD (2021 - 2021)
Very Large Internet of Things (VLIoT)
@ VLDB (2017 - 2021)
Web Data Processing and Reasoning (WDPAR)
@ KI 2018
-
General Chair
International Semantic Intelligence Conference (ISIC)
2021 - 2022
- many other
scientific services
$\approx$ 92
PC memberships
reviewer
of $\approx$ 30 journals
editor
of 3 journals
...
] --- # .darkblue[Trying to impress] .darkgray[(not sure if it's working)...] .condensed[ Detailed Information available at
https://www.ifis.uni-luebeck.de/~groppe
] --- # .darkblue[Definitions of Internet-of-Things (IoT)] .more-condensed[ - Internet is .darkblue[extended by adding things] as network nodes. - .darkblue[connect those physical objects that are not yet connected with] the help of .darkblue[the Internet and] - thus .darkblue[create significant added value]$^1$ - a
better collaboration between humans and machines
through new types of applications in various areas. - Application domains like .darkblue[Smart City, Smart Healthcare, Smart Farming, Smart Factory], ... - .darkblue["IoT allows people and things to be connected Anytime, Anyplace, Anything and Anyone ideally using any path/network and Any service."]$^2$ .small-font[ $^1$ Hanes et al., IoT Fundamentals: Networking Technologies, Protocols, and Use Cases for the Internet of Things. 1st ed. Cisco Press, 2017
$^2$ Guillemin, P. and Friess, P. Internet of Things: Strategic Research Roadmap. Tech. rep. Oct. 2009. ]] --- # CISCO: .darkblue[Age of IoT emerged between 2008 and 2009] .reference[Data Sources:
#Connected Devices
#Humans on Earth
]
--- # .darkblue[Things in IoT are heterogeneous] .more-condensed[ - .darkblue[Different] kinds of .darkblue[devices]: Smartphone/-watch-/tv/..., sensors, routers, tablets, raspberry pi (and similar), ... - .darkblue[Hardware] (e.g. .darkblue[CPU]) - Operating system (.darkblue[OS]) - .darkblue[Network] protocols - .darkblue[Capabilities] - Performance of .darkblue[CPU] - .darkblue[Storage capacity] - Access to .darkblue[networks (wireless, stationary, ...)] - ... - ... ] --- # .darkblue[Multi-Platform Development] (e.g. of DBMS) .more-more-condensed[ -
.darkblue[Native Binaries] via C/C++ - support of a new platform: .darkblue[porting code] is necessary - code .darkblue[close to hardware, fast execution] - direct access to .darkblue[native libraries] - .darkred[doesn't run in browser] - .darkblue[most server DBMS]: C/C++ code -
.darkblue[Java]/Java Virtual Machine (JVM) - runs on .darkblue[many platforms (without porting code)] - interpreted bytecode, via Just-In-Time compilation .darkblue[comparable speed to native] execution - .darkred[no] direct access to .darkred[native libraries] - .darkred[does neither run on iPhone nor in browser] - .darkblue[many NoSQL/NewSQL/Cloud DBMS]: Java (or JVM language like Scala) code - .darkblue[Code generation for query processing] via C/C++ or Janino-Compiler (JVM) ] --- # .darkblue[Multi-Platform Development] with
.bold[Targets:]
.more-condensed[ - .darkblue[Most target platforms] are supported - Splitting the project in .darkblue[platform-.bold[in]dependent and platform-dependent code] - Platform-dependent code can be partly coded .darkblue[in the programming language of the target platform]
.darkgray[(e.g., Java for JVM, JS for Web)] - Enables .darkblue[one code repository for various target platforms] - Sharing of code between server & .darkgray[(various)] clients - .darkblue[Avoids efforts to port code]
.darkgray[(into other programming languages)] ]
--- # .darkblue[Multi-Platform Development] with
.more-more-condensed[ - .darkblue[Common Module] - .darkblue[Code independent of platforms] containing declarations for platform dependent code without implementation.darkgray[, e.g.:] .small-font.small-margin-bottom.no-text-indent[```kotlin2 expect fun formatString(source: String, vararg args: Any): String expect annotation class Test ```] - .darkblue[Platform Module] - .darkblue[Implementation of] within the common module .darkblue[declared platform-dependent code] .darkgray[(and other platform-dependent code), e.g.:] .small-font.small-margin-bottom.no-text-indent[```kotlin2 actual fun formatString(source: String, vararg args: Any) = String.format(source, args) actual typealias Test = org.junit.Test ```] - .darkblue[Regular Module] - .darkblue[depend on platform modules or platform modules depend on this module] - .bold[However:] .darkred.bold[High compilation times], .darkgreen.bold[faster]: Including different sets of source code directories for different targets and configurations (e.g., centralized, Cloud, P2P, browser, ...) ] --- # .darkblue[The Power of Multi-Platform: LUPOSDATE3000] .more-more-condensed[
.more-more-condensed[ - .darkblue[ultra-fast in jvm]...
.smaller-font[
B. Warnke, M.W. Rehan, S. Fischer, S. Groppe: Flexible data partitioning schemes for parallel merge joins in semantic web queries in: BTW'21
]
]
.more-more-condensed[ - ...but also .darkblue[enabling web demos running completely in] the .darkblue[browser!]
Your browser does not support the video element!
S. Groppe, R. Klinckenberg, B. Warnke. Sound of Databases: Sonification of a Semantic Web Database Engine. PVLDB, 14(12), 2021
]
] --- # .darkblue[Data versus Moore] .reference[CPU:
https://github.com/karlrupp/microprocessor-trend-data
Storage:
https://de.wikipedia.org/wiki/Datei:Hard_drive_capacity_over_time.svg
] .condensed.no-margin[
- .darkblue[Data sizes are growing faster] than computing capacity of single CPU
.darkblue[Parallel/distributed computing] to overcome limitations of single CPUs ] --- # .darkblue[Data Sizes] .reference[S. Groppe, Semantic Hybrid Multi-Model Multi-Platform (SHM3P) Databases, ISIC 2021.]
--- # .darkblue[Amdahl]'s .darkblue[versus Gustafson]‘s law .condensed[ - .darkblue[Amdahl]'s law - a .darkblue[sequential part] of the overall algorithm .darkblue[limits] overall .darkblue[speedup] (in the context of fixed problem/data size)
- .darkblue[Gustafson]‘s law: - programmers tend to set the size of problems to fully exploit the computing power that becomes available as the resources improve - .darkblue[if] faster equipment or .darkblue[more nodes are available, larger problems can be solved within the same time] ] --- # .darkblue[Internet-of-Things (IoT) Architectures] .reference[S. Groppe: Emergent models, frameworks, and hardware technologies for Big data analytics. The Journal of Supercomputing, Vol.76(3), 2020.]
--- # .darkblue[Increase in #Devices from Cloud to Edge] .reference[Based on
P. Varshney, Y. Simmhan, Demystifying Fog Computing: Characterizing Architectures, Applications and Abstractions. ICFEC 2017
]
--- # .darkblue[Example of an IoT Scenario]: Parking Slots .reference[J. Mantler, Simulation Framework for Distributed Database Query Processing in the Semantic Internet of Things, Master Thesis, University of Lübeck, 2021]
--- # .darkblue[Network Topologies] .small-font.darkgray[to be considered for IoT query processing] .reference[Warnke et al., SIMORA: SIMulating Open Routing protocols for Application interoperability on Edge Devices, submitted] .more-more-condensed[ - .darkblue[Scenario:] Subnets of .darkblue[sensors of parking slots] are connected via different network topologies
Random:
Ring:
Full:
Uniform:
] --- # .darkblue[Properties of Routing Algorithms] .reference[J. Mantler, Simulation Framework for Distributed Database Query Processing in the Semantic Internet of Things, Master Thesis, University of Lübeck, 2021] .more-more-condensed[ - .darkblue[Where is the routing performed?]
Centralized
Decentralized
one or few central nodes as routers
each and every node is a router
other nodes ask the routers
nodes exchange information
- .darkblue[How fast do routes change?]
Static
Dynamic
routes change slowly
routes change more quickly
manual configuration or restart of the routing algorithm
proactive or reactive
- .darkblue[How much information do the routers have?]
Global
Local
router node has knowledge of the entire network
no node has knowledge of the entire network
all router nodes have the same view of the network (in a stable state)
node never knows the complete route from a source to a sink
- .darkblue[When is the routing performed?]
In Advance
On Demand
routing is done before forwarding
routing and forwarding is one mixed process
] --- # .darkblue[Routing Protocol for Low-Power and Lossy Networks (RPL)] .reference[
Sobral et al., Routing Protocols for Low Power and Lossy Networks in Internet of Things Applications. Sensors 19(9), 2019
] .more-more-condensed[ - .darkblue[Construction of] a .darkblue[Destination-Oriented Directed Acyclic Graph (DODAG)] - via broadcast of DODAG Information Object (DIO) messages - similar to a sink tree in which not only the optimal routes, but also alternative routes are permitted - alternative routes are to protect against failures or changes in the topology and are only active when required - .darkblue[Maintenance via] a .darkblue[proactive protocol] - Each DODAG maintains a logical clock - When the clock runs out, a DIO broadcast is carried out in order to track down changes in the DODAG - .darkblue[Routing] according to the DODAG ] --- # .darkblue[Construction of DODAG] .reference[J. Mantler, Simulation Framework for Distributed Database Query Processing in the Semantic Internet of Things, Master Thesis, University of Lübeck, 2021]
--- # .darkblue[RPL - Routing] .reference[J. Mantler, Simulation Framework for Distributed Database Query Processing in the Semantic Internet of Things, Master Thesis, University of Lübeck, 2021] .small-font30[.darkblue[Routing Tables and Point-to-Point Traffic in Storing Mode]:]
Oh, S., Hwang, D., Kim, K., and Kim, K.-H. A hybrid mode to enhance the downward route performance in routing protocol for low power and lossy networks. International Journal of Distributed Sensor Networks 14(4), 2018
--- # .darkblue[Embed Query Execution Plan in Topology] .reference[J. Mantler, Simulation Framework for Distributed Database Query Processing in the Semantic Internet of Things, Master Thesis, University of Lübeck, 2021]
--- # .darkblue[Types of Query Processing] in IoT .reference[Warnke et al., SIMORA: SIMulating Open Routing protocols for Application interoperability on Edge Devices, submitted]
--- # .darkblue[Inserting Data] .small-font.darkgray[replicated due to indexing scheme] .reference[Warnke et al., SIMORA: SIMulating Open Routing protocols for Application interoperability on Edge Devices, submitted] .more-more-condensed.no-margin.no-padding[
State-of-the-Art:
Multi-Cast:
- .darkblue[network traffic reduction] during insert by using - IPv6 Routing Protocol for Low-Power and Lossy Networks (.darkblue.bold[RPL])
.darkblue.bold[$\rightarrow$] All-Shortest-Paths (.darkblue.bold[ASP]): .darkblue.bold[17-48%] - .darkblue.bold[multi-cast]: .darkblue.bold[24%] - .darkblue.bold[additional devices]: .darkblue.bold[3%] ] --- # .darkblue[Querying Data] in IoT ($4\bowtie 13 \rightarrow 3$) .reference[Warnke et al., SIMORA: SIMulating Open Routing protocols for Application interoperability on Edge Devices, submitted] .more-more-condensed[
State-of-the-Art:
Combining Routing & Processing:
] --- # .darkblue[IoT and Cloud as Platforms for Processing the IoT DATA] .reference[S. Groppe: Emergent models, frameworks, and hardware technologies for Big data analytics. The Journal of Supercomputing, Vol.76(3), 2020.]
- ...but there are also .bold.darkred[other platforms]! --- # .darkblue[Hybrid Multi-Model Multi-Platform (HM3P) Database] .reference[S. Groppe, J. Groppe, Hybrid Multi-Model Multi-Platform (HM3P) Databases, DATA 2020.] .more-condensed[
+
full and uniform .darkgreen[data integration] at database level
+
.darkgreen[performance]: fully optimized across different data models
+
transparent .darkgreen[fault-tolerance]
+
SQL .darkgreen[standards]: .small-font22[relational ('87), XML ('03), temporal ('11), JSON ('16), Multi-dimensional Arrays ('19), schemaless ('19), streams ('20?), property graphs ('21?)]
+
.darkgreen[features of different] types of .darkgreen[databases running on different platforms] can be used
] --- # Variant: .darkblue[Semantic] HM3P (.darkblue[S]HM3P) DB .reference[S. Groppe, Semantic Hybrid Multi-Model Multi-Platform (SHM3P) Databases, ISIC 2021.] .more-condensed.no-padding.no-margin[
Semantic Layer as glue
between other models and platforms
new challenges
like integrating different types of reasoners in a transparent global reasoner
+
.darkgreen[Features of HM3P] databases
+
Easier .darkgreen[data integration]
-
.darkblue[Performance issues] may occur due to semantic layer ] --- # .darkblue[Challenges for HM3P] Databases 1/2 .reference[S. Groppe, J. Groppe, Hybrid Multi-Model Multi-Platform (HM3P) Databases, DATA 2020.] .more-more-condensed[ - .darkblue[developing only one code base] for the different platforms, but .darkblue[not introducing performance overhead] in comparison to single platform databases - .darkblue[identifying common properties] of several platforms .darkblue[and reusing] those .darkblue[approaches] (like fault tolerance mechanisms) in different combinations, which are best suitable for these considered platforms - .darkblue[data distribution among different platforms] (applying different data distribution approaches as well) - .darkblue[data distribution strategies considering] overall .darkblue[the different properties of used platforms and models] (like fast reads on parallel servers (using relational databases) and fast updates in cloud databases) ] --- # .darkblue[Challenges for HM3P] Databases 2/2 .reference[S. Groppe, J. Groppe, Hybrid Multi-Model Multi-Platform (HM3P) Databases, DATA 2020.] .more-more-condensed[ - .darkblue[query optimization and other] database .darkblue[tasks across] different .darkblue[platforms], which apply different database approaches - dealing with and .darkblue[integrating different privacy and security mechanisms] supporting different privacy and security levels .darkblue[in the different platforms] (with research e.g. on querying heterogeneous encrypted data) - .darkblue[concurrency control] approaches of different type have to be combined and work in cooperation (like 2 phase locking for server platforms and optimistic concurrency control for P2P networks) - .darkblue[combining different types of databases] (on different platforms) to offer the best of these databases and platforms .em[.darkblue[under one hood]] to applications and users transparently or .darkblue[via intelligent integration into query language and API], e.g., - guaranteeing atomicity and isolation in transactions for the data stored on a parallel server, but not for those data in the cloud supporting fast updates ] --- # Semantic Hybrid Multi-Model Multi-Platform (.darkblue.bold[S].darkblue[HM3P]) Database .reference[S. Groppe, Semantic Hybrid Multi-Model Multi-Platform (SHM3P) Databases, ISIC 2021.] .condensed.no-margin[
- .darkblue[How to integrate] the .darkblue[semantic layer] between different types of databases .darkblue[and support semantic processing specialities like reasoning over] the boundaries of .darkblue[different platforms]? ] --- # .darkblue[Challenges for] .darkblue.bold[S].darkblue[HM3P] Databases .reference[S. Groppe, Semantic Hybrid Multi-Model Multi-Platform (SHM3P) Databases, ISIC 2021.] .more-more-condensed[ - .darkblue[integrating different data models in a semantic layer] on top of the underlying data models - efficient .darkblue[transformations from and to the semantic model] in an operational system - developing efficient .darkblue[semantic querying and reasoning over the integrated data of different models] - .darkblue[global reasoning] over reasoners running on different platforms supporting some kind of distributed heterogeneous reasoning - developing a .darkblue[combination of stream reasoning] over streaming data (e.g. of IoT devices) .darkblue[with static reasoning] over large-scale data sets (stored e.g. in clouds) - supporting .darkblue[transactions over semantic data by integrating the reasoner in transaction synchronization] ] --- # Summary and Conclusions .more-more-condensed[ - .darkblue[Internet-of-Things as extension of the Internet for advanced applications by connected things] - .darkblue[Routing Protocols] with RPL as example - .darkblue[Query Processing] as example for data management tasks - .darkblue[Combining] routing and query processing for reducing communication costs as example for new research in IoT by combining approaches of the network and database community - The bigger picture: .darkblue[Combining approaches designed for various platforms with specific properties and benefits] ]