05 Fakultät Informatik, Elektrotechnik und Informationstechnik
Permanent URI for this collectionhttps://elib.uni-stuttgart.de/handle/11682/6
Browse
120 results
Search Results
Item Open Access Planung von verlässlichen Workflowausführungen(2017) Höhn, PatricWorkflows beschreiben den zeitlichen Ablauf eines komplexen Prozesses. In dieser Arbeit beschäftigen wir uns mit deren Ausführung auf fehleranfälligen Systemen. Wir entwickeln Strategien um diese Ausfühung möglichst effizient und optimal zu planen. Die Planung und Ausführung auf verteilten Systemen stehen dabei im Fokus. Unsere Strategien führen die Planung unter anderem verteilt aus oder teilen einen Workflow in mehrere Teile auf, um die Planungszeit zu verkürzen. Wir testen die Strategien in einem simulierten Netzwerk und stellen die Ergebnisse in einer Evaluation detailiert dar. Es zeigt, sich dass sich durch unsere Strategien unter bestimmten Bedingungen die Dauer für die Ausführungsplanung drastisch verkürzen lässt und die Zeit für eine erfolgreiche Workflowausführung dabei verhältnismäßig gering ansteigt, sodass die Gesamtdauer von Planung und Ausführung deutlich verkürzt werden kann.Item Open Access Robust execution of workflows in a distributed environment(2013) Schäfer, David RichardIn many business applications, workflows are used to describe business processes. Employees and machines get instructions from a plan (the workflow) to be guided or controlled. The workflows make it easier to create and manage business processes. Therefore, using workflows is the standard procedure in the business area today. The distributed execution of workflows plays an important role as almost all nodes are connected to a network today. The importance even increases with the emerging of pervasive environments. Because these systems are prone to failures, it is important to develop reliability methods that ensure that the system works properly even if failures occur. When the robustness of a system in a distributed environment shall be increased, the service that has to be executed is usually replicated and executed by two or more nodes. This means that the exact same behavior is executed by multiple nodes and thereby increases the reliability of the system by being able to cope with node failures. Changing the order of the activities or using alternative activities to increase the robustness is promising because when each node receives a different workflow that achieves the same goal, the possibility of failures should be further reduced by decoupling the replicas in respect of time and hardware dependencies. We developed a robustness metric that evaluates the robustness of a set of workflow replicas. We also developed methods and algorithms that generate workflows with different orders and alternative tasks within reasonable time. Our evaluations show that our proposed methods work significantly better than deploying a brute-force method to achieve the same behavior.Item Open Access Abstraktionsunterstützung für die Definition des Datenmanagements in Simulationsworkflows(2012) Aristidou, StavrosSeit langem wurden Workflows als ein Mittel zur Unterstützung der Geschäftsprozesse in Unternehmen verwendet. Seit kurzem werden Worklows auch im Bereich der wissenschaftlichen Simulationen eingesetzt. Simulationsanwendungen beinhalten viele komplizierte Berechnungen und Datenverwaltungsaufgaben. Der Zugriff, die Bereitstellung und die Generierung großer Datenmengen in heterogenen und verteilten Umgebungen stellen eine große Herausforderung für die Zukunft dar. Aufgrund dieser Problematiken wäre die Entwicklung einer konsolidierten und integrierten Datenmanagementabstraktion für die Wissenschaftler besonders sinnvoll und hilfreich.Diese Arbeit befasst sich mit dem Aspekt der Definition des Datenmanagements in Simulationsworkflows. Ziel ist es die Definition des Datenmanagements für bestimmte Simulationsanwendungen zu vereinfachen. Im Rahmen dieser Arbeit werden zusätzliche Datenmenagementpatterns, die den Wissenschaftler als Templates für ausführbare Workflow-Fragmente zur Verfügung stehen sollen entwickelt. Dadurch wird die Definition des Datenmanagements für weitere Simulationsanwendungen vereinfacht. Aus konkreten Anwendungsszenarien sollen zunächst geeignete Datenmanagementpatterns herausgearbeitet und identifiziert werden. Die identifizierten Datenmangementpattens sollen definiert und anschließend auf ausführbare Workflow-Fragmente, etwa auf Datenmanagmentaktivitäten oder Service Aufrufe, transformiert werden. Für diese Transformationen, soll ein Rahmenwerk entstehen, welches auf Abbildungsregeln und Metadaten über die während der Ausführung eines Simulationsworkflows involvierten Datenquellen basiert.Item Open Access Efficient prediction model management in mobile systems(2012) Belz, JörgWith the advent of affordable mobile devices such as smartphones and tablets, the vision of Pervasive Computing has made a big step closer to becoming reality. In order to become truly ubiquitous and seamlessly integrate into everyday life, the design of context-aware applications is essential. Using contextual information obtained for example from the device's sensors such as motion sensors and gps receiver, context-aware applications can adapt their behavior depending on the environment the user is in. In some scenarios, context aware applications can also benefit from knowledge about future contexts. This necessitates the use of a context prediction model. We examine a social network scenario where in addition, the context in question is originally being acquired on another user's device. In this scenario, the prediction model could for example be used to predict the next location or activity of a friend. Prior to that, the prediction model needs to be distributed to and stored on the mobile device running the application. Both high transfer cost and limited space make it imperative to produce small prediction models which still predict the context considerably well. In this thesis, we examined methods to compress Markov-based prediction models of higher order in a lossless and lossy fashion and evaluated these methods on real world and generated data. Our evaluation showed clearly that the compression mechanisms introduced can be successfully applied to significantly reduce the size of the prediction models with only a minor impact on prediction performance.Item Open Access Effiziente vorhersage-basierte Verteilung von Kontext-Informationen in mobilen Systemen(2011) Fink, TobiasDie weite Verbreitung von sozialen Netzwerken und Smartphones in den letzten Jahren hat bisher zur Möglichkeit geführt von Smartphones mobil seinen Status upzudaten oder seinen Kontakten zu übermitteln, dass man sich an einem bestimmten Ort be?ndet. In einem nächsten Schritt könnte das Smartphone bestimmte Informationen über den Benut- zer über seine Sensoren automatisiert in bestimten Zeitintervallen ermitteln, die Sensordaten zu einem diskreten Kontext reduzieren, und diesen Kontext automatisch an die Smartphones der Kontakte in einem sozialen Netzwerk übermitteln. Da die Datenübertragungen und Rechenoperationen auch bei den heutigen Smartphones noch einen großen Anteil der Akkuleistung kosten, wird in dieser Arbeit untersucht, wie sich durch eine Ressourcen sparende Vorhersage die nächsten Kontexte und das Zeitintervall deren Eintreffens bestimmen lässt. Durch eine synchronisierte Vorhersage beim Veröffentli- cher und dem Empfänger der Informationen müssen nur im Falle von falschen Voraussagen Korrekturen vom Veröffentlicher zum Empfänger geschickt werden. Ziel ist es, mit möglichst wenig Korrekturnachrichten eine hohe Quote an richtig vorher- gesagten Kontexten zu erreichen. Zu diesem Zweck werden verschiedene Prädiktoren auf Markov- und Semi-Markov-Basis simuliert und auf ihre Leistungsfähigkeit geprüft.Item Open Access Comparison of time series databases(2016) Bader, AndreasStoring and analyzing large amounts of data are growing in importance since the fourth industrial revolution. As more devices are becoming “smart” and are equipped with sensors in today’s world, the amount of data that can be stored and analyzed grows. Insights from this data are important for several industries, e. g., energy companies for controlling smart grids. Traditional Relational Database Management Systems (RDBMS) have reached their limits with such huge amounts of data, which resulted in a new database type, the NoSQL Database Management Systems (DBMS). NoSQL DBMS are specialized in handling huge amounts of data with the help of distribution and weaker consistency. Between these two a new type arose: Time Series Database (TSDB), which is specialized for storing and querying time series data. The amount of existing TSDBs is big, whereby for this thesis 75 TSDBs have been found. 42 of them are open source, the remaining TSDBs are commercial. Many of the found open source TSDBs are under ongoing development. The challenge is the selection of one TSDB for a given scenario or problem. Benchmarks that have the ability to compare several TSDBs for a specific scenario or in general are hardly existing. This currently makes a choice based on performance only possible if TSDBs are manually compared in a test environment or with a self-written benchmark. In this thesis, a feature comparison with 19 criteria in five groups between ten of these TSDB is presented and discussed. After presenting metrics, scenarios, and requirements for a benchmark, a benchmark for TSDB, TSDBBench, is presented. TSDBBench uses an Elastic Infrastructure (EI) and alterable workloads to measure the query latency and space consumption in different scenarios that include an alterable cluster setup. All benchmarking steps are automated, so that no user interaction is required after starting the benchmark. It also uses an adapted version of Yahoo Cloud Server Benchmark (YCSB) that is named Yahoo Cloud Server Benchmark for Time Series (YCSB-TS) for creating and measuring the queries of a workload, which is also presented in this thesis. For the performance part of the comparison, two scenarios are compared between the ten TSDBs with the use of TSDBBench. The results of the performance comparison are presented and discussed afterward. The thesis concludes with a discussion of the results from the feature and performance comparison.Item Open Access Confidential subscription clustering in a publish/subscribe system(2012) Bischof, ManuelBroker-less content-based publish/subscribe systems offer the chance for flexible and loosely coupled many-to-many communication. Initially, no centralized component is needed. Routing is done by the peers themselves by looking at the content of the messages. This works fine, as long as no sensitive data is published. In this case, users may want to encrypt their data and even keep their subscriptions confidential. At first glance, this contradicts the content-based routing paradigm. The work of Tariq et al. presented the first system, that supports both by introducing a weaker notion of subscription confidentiality. Identity-based encryption is adapted to suite the requirements in such a system. This thesis will analyze the approach, point out some still existing problems and try to improve them. The current system uses one-hop flooding during event dissemination, which yields a high number of false positives. Simulations will show, that confidentiality can be kept nearly as high with much less false positives. Another issue is private key management as the number of keys to maintain is in order of O(sum (1, 2, log_2(T_i)) with d attributes in total and T_i = (UpperValueLimit_i - LowerValueLimit_i)/Granularity(i), where Granularity(i) determines the finest step value of attribute A_i. As the number of total attributes in a real system may be much greater then the attributes needed by an event, there are two problems: 1) how to specify the attributes that are not required by the event and 2) the cost of cryptographic operations is dependent on the total number of attributes. In the second part of the thesis we will provide another approach that decouples events and subscriptions from the total number of attributes. Timings, based on an implementation using the Pairing-Based Cryptography library (PBC) will be given.Item Open Access Skalierbare parallele Verfahren zur Boolean Constraint Propagation auf Multicore-Architekturen(2011) Stöcklin, JanBeim SAT-Solving werden boolesche Formeln auf Erfüllbarkeit überprüft. Seit den frühen 1990ern gewann das SAT-Solving für Industrie und Forschung stetig an Bedeutung, da sich viele Probleme der Hard- und Softwareentwicklung auf das Erfüllbarkeitsproblem reduzieren lassen. Ein Großteil der Laufzeit eines SAT-Solvers (ca. 80%-90%) entfällt auf die Unit-Propagation. Unit-Propagation ist die iterative Anwendung von Implikationen, die aufgrund der Formel und der aktuellen Belegung gelten. Um Beschleunigungen des Solving-Prozesses zu erzielen, werden in dieser Arbeit verschiedene Parallelisierungsansätze der Unit-Propagation untersucht. Da moderne Prozessoren mit immer mehr Rechenkernen ausgestattet sind, werden Parallelisierungsansätze entwickelt, die auf Mehrkernarchitekturen basieren. In der vorliegenden Arbeit werden zunächst die von aktuellen SAT-Solvern verwendeten Algorithmen und Implementierungstechniken vorgestellt. Insbesondere wird der DPLL-Algorithmus und dessen Erweiterung um Klausellernen (CDCL-Solver) präsentiert. Danach wird mit dem Two-Watched-Literal Schema ein effizientes Verfahren zur Unit-Propagation beschrieben. Im nächsten Schritt wird untersucht, welche Teile der Unit-Propagation sich besonders für eine Parallelisierung eignen und welche Probleme dabei zu lösen sind. Darauf aufbauend wird ein sperrbasierter und ein sperrfreier Lösungsansatz sowie parametrisierbare Alternativen davon entwickelt. Die Algorithmen werden anschließend in Minisat - einem minimalistischen klausellernenden SAT-Solver - implementiert. Nach Auswahl eines geeigneten Formelsatzes werden die Algorithmen evaluiert. Dazu wird der Formelsatz für jeden Algorithmus mehrfach ausgeführt und Parallelisierungskennzahlen (Beschleunigung, parallele Effizienz) ermittelt. Abschließend werden die Ergebnisse beider Ansätze miteinander verglichen und bewertet.Item Open Access Automatisierte Verarbeitung von Crash Dumps(2014) Plödereder, JörgFehler in der Software kennt jeder, der mit Computern arbeitet, zur Genüge. Manche Fehler sind lediglich ein Ärgernis für den Nutzer, andere machen die Nutzung der Software unmöglich. Diese zweite Fehlersorte äußert sich darin, dass die Software abstürzt bzw. nicht mehr weiter nutzbar ist. Um solche Fehler bei einer bereits ausgelieferten Software zu beheben, muss der Hersteller vom Auftreten des Fehlers informiert werden. Hierzu kann sich der Hersteller der Nutzung von Crash Reports bedienen. Crash Reports sind Fehlerberichte, die im Fehlerfall an den Hersteller der Software gesandt werden und Daten enthalten, die Informationen zum Absturzzustand liefern. Abhängig von der Anzahl der beim Hersteller eingehenden Fehlerberichte und der zu Verwaltung deren zugeteilten Entwickler, wird es nach einiger Zeit mühsam und vor allem zeitaufwändig, die Übersicht über bekannte Fehler zu behalten und die neu eingehenden manuell zu verarbeiten. Ziel dieser Diplomarbeit ist es, ein System zu entwickeln, das die Verarbeitung von automatisch erstellten Fehlerberichten von manueller Arbeit in einen halb-automatischen Vorgang überführt. Der Sinn liegt hierbei in der Effizienzsteigerung und Arbeitseinsparung für die Entwickler. Zur Zeit muss jeder eingehende Fehlerbericht noch von Hand manuell überprüft werden, der Fehler bzw. die fehlererzeugende Methode gefunden und danach einem bekannten Fehler im Bug-Tracking-System zugeordnet oder darin als neu klassifiziert werden. Ebenso ist es möglich, dass vergleichbare Fehler nicht als ähnlich vom Menschen klassifiziert werden, da ihnen das Wissen um den anderen Fehler fehlt und ihre subjektive Suchabfrage im Bug-Tracking-System kein Ergebnis liefert. Die Arbeit stützt sich dabei auf die bekannten Theorien und Umsetzungen für Fehlerzuordnung und soll ferner den genauen Grad der Automatisierung feststellen, der für ein System geeignet ist, das sowohl auf händisch erstellten Fehlermeldungen, als auch auf automatisch generierten Fehlerberichten basiert. Die für die Zuordnung bekannter Fehler verschiedenen bekannten Techniken sollen auf ihre Nützlichkeit hin evaluiert werden. Das nützlichste Verfahren soll dann in die Implementierung des Gesamtsystems einfließen.Item Open Access Kooperative Positionierung von Smartphones(2013) Leko, SandaKontextsensitive und ortsbezogene Anwendungen spielen in der heutigen mobilisierten Welt eine bedeutende Rolle. Während die Positionierung mobiler Geräte in Außenbereichen mit GPS hohe Genauigkeiten erreicht, existiert für Innenbereiche bisher kein einheitlicher Standard, mit dem ein Smartphone seine Position festlegen kann. Die aktuelle Forschung zeigt jedoch, dass dies mit modernen Smartphones und verschiedenen Infrastrukturen bewältigt werden kann. Eine Möglichkeit der Innenraumpositionierung bietet die Fingerprintig-Methode. Fingerprintig erfordert allerdings eine zeitaufwändige Sammlung von Daten in der Offline-Phase. Inertialnavigationsverfahren sind eine weitere Möglichkeit für die Positionierung in Innenbereichen. Der Nachteil dieses Ansatzes ist jedoch die Angabe einer Startposition sowie die Notwendigkeit einer Synchronisierung. In dieser Diplomarbeit wird ein kooperatives Innenraumpositionierungssystem mit Smartphones entworfen und implementiert. Die Positionierung eines Smartphones erfolgt mittels der Lateration. Dazu werden die Positonsangaben sowie die Distanz zu seinen Wi-Fi Direct Kommunikationspartnern benötigt. Die Signalstärke einer Wi-Fi Direct Verbindung kann als ein Indikator für die Distanz zwischen zwei verbundenen Geräten verstanden werden. Aus diesem Grund wird sie in dem hier entwickelten Positionierungssystem zusammen mit einem Propagierungsmodell genutzt, um die Distanz zwischen zwei Smartphones zu berechnen. Die Positionierung mittels der Lateration wird zudem durch verschiedene kooperative Algorithmen optimiert. Die Ergebnisse zeigen, dass durch diese Optimierungen eine genauere Distanzberechnung sowie eine robuste Positionierung in Gebäuden erreicht werden kann.