Effiziente Abläufe, Prozesstransparenz und Risikoerkennung sind der Schlüsselfaktor für eine erfolgreiche Organisation. Nicht ohne Grund beschäftigen größere Unternehmen eigene Abteilungen mit dem Auftrag zur Prozessoptimierung und der Revision. Die komplette Prozesskette – z. B. im Einkauf von der Bedarfsentstehung bis zur Zahlung – ist auf operativer und strategischer Arbeitsebene regelmäßig zu hinterfragen. Infolge der erhöhten Unterstützung der Prozessverarbeitung durch ERP– und andere IT-Systeme sowie der steigenden Abhängigkeiten inner- und außerbetrieblicher Prozesse, nimmt der Aufwand für das Monitoring von Geschäftsprozessen rasant zu.
Informatik
Structured Storage / NoSQL [Teil II/II]
NoSQL ist ein aktueller Trendbegriff und steht für Datenbanken, die auch unstrukturierte Daten optimal und in großen Mengen verarbeiten können. Der Begriff NoSQL ist allerdings irreführend und stattdessen besser von Structured Storage gesprochen werden, denn dieses Akronym steht für Not only SQL. NoSQL bezeichnet zudem nicht ein einziges Datenbankmodell, sondern sehr viele unterschiedliche, die in vier Kategorien unterschieden werden können:
NoSQL-Datenbanken im Vergleich zu SQL-Datenbanken [Teil I/II]
Big Data ist ein aktueller Wirtschaftstrend, der zum Kerngeschäft vieler neuer Start-Ups ist und zu gleich den Konzernen der traditionellen Industrie Kopfzerbrechen bereitet, aber auch als Hoffnung auf neue Geschäftsmodelle gesehen wird. Dabei wird Big Data in der Regel nicht von der IT-Abteilung, sondern von Fachbereichen getrieben. Das macht diesen Trend insbesondere für Wirtschaftsinformatiker sehr bedeutend, denn diese können mit technischen Wissen den Fachabteilungen bei der Umsetzung von Big Data Projekten nicht nur behilflich sein, sondern dank des Schnittstellenwissens direkt die Projektleitung übernehmen, wenn Sie über technisches Wissen um die Verarbeitung von sehr großen Datenmengen verfügen.
Big Data Analytics mit Hadoop – Buchempfehlung
Big Data ist eines der Buzzwords dieser Jahre und steht für das Potenzial der heranwachsenden Datenmengen für Wirtschaft und Wissenschaft. Das Potenzial ergibt sich aus dem Erfassen und Sammeln dieser Datenmengen aus den unterschiedlichsten Quellen. Die Nutzung des Potenzials erfolgt jedoch erst mit der Datenanalyse, daher wird oftmals zwar von Big Data geredet, jedoch Big Data Analytics gemeint.
Das in der Praxis am häufigsten vorkommende Datenbankmodell ist die relationale Datenbank, die Daten in untereinander verknüpfte Tabellenstrukturen speichert. Relationale Datenbanken sind zwar nicht direkt auf eine bestimmte Größe beschränkt, so begrenzt ausschließlich das Betriebssystem die Größe einer MySQL-Datenbank, dennoch tauchen bei großen Abfragen mit SQL-Queries oftmals schwer nachvollziehbare Fehler auf. Eine fehlgeschlagene SQL-Query lässt sich nur schwer debuggen, wenn sie nach Stunden abbricht.
Abhilfe verspricht Apache Hadoop mit einem verteilten Dateisystem (HDFS) und dem NoSQL-Ansatz und MapReduce-Algorithmus, der auch die Analyse von unstrukturierten Daten ermöglicht. Durch HDFS werden mit Commodity Hardware Datensammlungen und Analysen im Petabyte-Bereich möglich. Für die Auswertung der Datenmengen werden dadurch auch keine backup-kritischen Großrechner mehr benötigt, denn MapReduce-Jobs können auf verschiedener, räumlich getrennter Hardware zeitlich parallel erfolgen, erst die Ergebnisse werden auf einem dafür vorbestimmten Rechner (Server) zusammengetragen und weiterverarbeitet. Dabei werden Daten über die verteilte Hardware redundant gehalten, was als Data Warehouse (unter bestimmten Voraussetzungen) Ausfallsicherheit bedeutet.
Hadoop ist ein freies Open Source Framework, dessen Entwicklung von der Apache Software Foundation vorangetrieben wurde. Es wird auch von den Unternehmen eingesetzt, die heute als Pioniere von Big Data gelten, beispielsweise Facebook, Yahoo!, Twitter, Amazon und Google. Vor allem Google, Facebook und Yahoo! steuerten große Teile zu Hadoop bei.
Hadoop: Zuverlässige, verteilte und skalierbare Big-Data-Anwendungen
Das Buch Hadoop – Zuverlässige, verteilte und skalierbare Big-Data-Anwendungen vom Autor Ramon Wartala bietet einen breiten und tiefen Einblick in Hadoop und dessen modulare Nebensysteme:
- Datenfluss-Sprachen:
- Hive
- Pig
- CludBase
- Spaltenorientierte Datenbanken
- HBase
- Hypertable
- Daten-Serialisierung
- Avro
- Thrift
- Google Protocol Buffer
- Sqoop
- Workflow-Systeme
- Azkaban
- Oozie
- Cascading
- Hue
- ZooKeeper
- Mahout
- Whirr
Das Buch führt ausführlich durch die Installation von Hadoop auf einem Linux-System, leitet die ersten Schritte im Umgang mit dem verteilten Dateisystem von Hadoop (HDFS) sowie zur Implementierung von MapReduce-Algorithmen an. Auch in die empfohlene Entwicklungsumgebung Eclipse (mit Plugin) wird hinreichend eingewiesen. Zum Ende gibt der Autor noch Tipps rund um das Management und die Überwachung der MapReduce-Jobs und des Hadoop-Ökosystems. Ferner werden vier Beispiele des Hadoop-Einsatzes in der Praxis vorgestellt. Wer einen Einstieg in die Praxis von Hadoop finden möchte, kann sich Hadoop als Standalone-Anwendung installieren und die Datenverteilung simulieren, oder sich Linux-Server bei Providern anmieten.
Hadoop besteht im Wesentlichen aus Java Programmcode (von Oracle, vormals Sun Microsystems), daher ist zumindest ein Grundwissen in Java notwendig, um tiefer in Hadoop eintauchen zu können und auch um die Quellcode-Beispiele im Buch verstehen zu können. Außerdem sind Linux-Kenntnisse (insbesondere Ubuntu/Debian) vorteilhaft. Wer kein Freund der Programmiersprache Java ist, kann durch das Hadoop Streaming auch MapReduce-Funktionen in C, Ruby, PHP oder Python realisieren; Hierfür bietet Hadoop eine Standardein/ausgabe-Schnittstelle an.
Industrie 4.0 – Konzepte und Herausforderungen
Das Zukunftsprojekt Industrie 4.0 wird unsere Industrie verändern. Produktions- und Lieferzeiten werden durch intelligente Steuerung verkürzt und hinsichtlich des Ressourceneinsatzes optimiert werden. Die virtuelle Realität wird Produkte von noch besserer Qualität schaffen, bei kostengünstigerer Produktentwicklung, die näher an die Fertigungsprozesse rücken wird. Durch das Internet der Dinge wird die Produktion und Logistik zuverlässiger sowie für Kunden transparenter werden. Insgesamt wird die Industrie 4.0 anders als die vorangegangenen Industrierevolutionen nicht nur insgesamt die Produktivität, sondern vor allem die Flexibilität erhöhen, bis hin zur kundenindividuellen Massenproduktion.
Die Fabrik 4.0 soll…
- sich selbst digital abbilden und simulieren können und gleichzeitig möglichst mit der Realität verschmelzen,
- Produktionssysteme, Produkte und Dienste mit Informationen ausstatten und miteinander kommunizieren lassen,
- durch Datenanalysen in ihrer Situation aufgenommen, überwacht und im Generellen optimiert werden,
- sich darauf aufbauend durch künstliche Intelligenz selbst steuern und im Speziellen auch selbst optimieren können.
Transportprotokolle – TCP und UDP
Die TCP/IP ist die Protokollfamilie, über die grundsätzlich jeglicher Datenverkehr auf der Datenautobahn Internet abgewickelt wird. TCP/IP basiert auf einem eigenen Referenzmodell und setzt sich aus den Protokollen Transmission Control Protocol (TCP) und Internet Protocol (IP) zusammen. TCP ist ein Protokoll der Transportschicht im OSI-Referenzmodell und wurde bei der Entwicklung auf zuverlässige bzw. verlustfreie Übertragung von Nutzdaten ausgerichtet.
TCP und IP errichten im Zusammenspiel eine Punkt-zu-Punkt-Verbindung über Sockets. Über IP-Adressen können Endgeräte zum Zeitpunkt der Verbindung eindeutig identifiziert werden. IP-Adressen alleine reichen jedoch nicht aus, da die meisten Endgeräte (z. B. ein Tablet-PC) gleichzeitig eine Vielzahl an Verbindungen (über eine IP-Adresse) aufbauen können. Ein Verbindungspunkt wird als Socket bezeichnet und erst durch weitere Adress-Zusätze definiert: Neben den IP-Adressen (Sender, Empfänger) gehören zu einem Socket auch Portnummern (auf der Anwendungsschicht, z. B. 80 für HTTP-Verbindungen) für Sender und Empfänger sowie Angaben über welches Protokoll kommuniziert werden soll. Ein Socket ist demnach ein Verbindungspunkt, der Sender- und Empfänger-Adressen sowie die Übertragungsform kennt. Die socket-bezogene Kommunikation geschieht auf Ebene der Transportschicht. Dennoch muss TCP nicht zwangsläufig mit IP zusammen in Erscheinung treten, denn TCP-Pakete können auch über andere Netzwerkprotokolle (Vermittlungsschicht) übertragen werden.
Das User Datagram Protocol (UDP) ist ebenfalls wie TCP ein Transportprotokoll für Netzwerkverbindungen, steht jedoch nicht in direkter Konkurrenz zum TCP, da es einen ganz anderen Zweck erfüllt -> Die schnellstmögliche Übertragung von Nutzdaten.
Da sowohl TCP als auch UDP auch mit anderen Protokollen der Vermittlungsschicht zusammenarbeiten können, also nicht nur auf das Netzwerkprotokoll IP angewiesen sind, können TCP und UDP auch als unabhängig von den Protokollfamilien TCP/IP bzw. UDP/IP betrachtet werden.
Workflowmanagement -Systeme
Das Workflowmanagement (zu Deutsch etwa: Verwaltung von Arbeitsabläufen) steht dem (Geschäfts-)Prozessmanagement sehr nahe. Ziel des Workflowmanagements ist die Koordination von Prozessen über Workflowmanagementsysteme, indem sie die Ausführungsreihenfolge der Prozesse oder der Aktivitäten von Prozessen überwachen, Daten für die Ausführung von Aktivitäten bereitstellen, anstehende Aktivitäten menschlichen oder technischen Bearbeitern zur Ausführung zuordnen und Anwendungssysteme für die Bearbeitung zur Verfügung stellen.
Während die Steigerung der Produktivität im Produktionsbereich durch Prozessmanagement bereits früh erschlossen wurde, blieben Produktivitätssteigerungen im Bürobereich verhältnismäßig lange aus. In den 1980er Jahren begann sich mit der Office Automation und dem Ziel der computergesteuerten Durchführung wiederkehrender Vorgänge auch im Bereich der Büroarbeit Prozessmanagement durchzusetzen. Workflowmanagement ist jedoch nicht nur eine Büroangelegenheit, sondern dringt auch bis tief in die Produktionsplanung und -steuerung vor. Beispielsweise sind Stücklisten, Arbeitspläne, Produktionspläne usw. Arbeitsmittel und Kommunikationsmittel zwischen der Logistik- bzw. Produktionsplanung/-steuerung, die überwiegend als Bürotätigkeit geschieht, und der ausführenden Produktion. Auch die Erfassung der Arbeitszeiten und -tätigkeiten findet zwischen der Personalwirtschaft/Buchhaltung und der Produktion statt. Wann welche Arbeitsmitteln an welchem Ort bzw. bei welcher Person sein müssen und wer wann und wo welche Arbeitsschritte auszuführen hat, entscheiden Workflowmanagementsysteme.
Verteilte Systeme – Buchempfehlung
Verteilte Anwendungen sind aus dem Alltag der Industrienationen nicht mehr wegzudenken, auch wenn die meisten Anwender nicht viel davon bemerken. Insbesondere mobile Anwendungen und die immer leistungsfähiger werdenden dienstorientierten Architekturen (Service-Oriented Architecture – SOA) lassen verteilte Anwendungen immer bedeutsamer werden. Verteilte Systeme bestehen aus verteilten Systembausteinen, welche im Netzwerk (z. B. dem Internet) miteinander kommunizieren und zusammenarbeiten. Es gibt heute kaum noch Anwendungen, welche nicht verteilt sind und gerade industrielle Anwendungen sind ohne verteilte Systeme undenkbar. Typische Einsatzfelder sind der Handel, die Büroautomatisierung, PPS-Anwendungen (z. B. Fertigungssteuerung), ERP-Anwendungen, PLM-Anwendungen, Überwachungssysteme und alltägliche Anwendungen (z. B. Browser, Instant-Messenger, Smartphone Apps).
Das Buch Verteilte Systeme von Alexander Schill und Thomas Springer geht auf die Systemarchitekturen (z. B. das Cloud Computing) und Kommunikationsmodelle verteilter Anwendungen ausführlich ein. Auch Transaktionen (Kommunikationsschritte zwischen den verteilten Systembausteinen), Namens- und Verzeichnisdienste, Sicherheit, Konzepte der Softwareentwicklung speziell für verteilte Systeme, dienstbasierte Architekturen (SOA) sowie das mobile Computing werden behandelt. Das Buch steht unter dem Dach der Wirtschaftsinformatik mit Fokus auf die Modellierung und Unterstützung von Geschäftsprozessen.
Verteilte Systeme: Grundlagen und Basistechnologien (eXamen.press) (German Edition)
Cloud Computing
Cloud Computing ist ein modernes Konzept der Bereitstellung von Programmlogik, Netzwerk-, Rechen- und/oder Speicherkapazität über Dienste im Internet.
Cloud Computing ist ein Begriff aus dem angelsächsischem Sprachraum und ins Deutsche nur schwer zu übersetzen, die möglichweise verständlichste Übersetzung ist „Rechnerwolke“. Die Wolke als Symbol für das Internet unterstreicht die Unbestimmtheit des Internets als weltweites und unüberschaubar verzweigtes Netzwerk. In der Netzwerktechnik sind Wolken das Symbol für das Internet im Netzwerkplan.
Der Bundesverband Informationswirtschaft, Telekommunikation und neue Medien e.V. definiert Cloud Computing wie folgt:
Cloud Computing ist eine Form der bedarfsgerechten und flexiblen Nutzung von IT-Leistungen. Diese werden in Echtzeit als Service über das Internet bereitgestellt und nach Nutzung abgerechnet. Damit ermöglicht Cloud Computing den Nutzern eine Umverteilung von Investitions- zu Betriebsaufwand. Die IT-Leistungen können sich auf:
- Anwendungen,
- Plattformen für Anwendungsentwicklungen und -betrieb und auf die
- Basisinfrastruktur
beziehen.
Von Diensten des Cloud Computing wird auch von Cloud-Diensten oder von Diensten in der Cloud gesprochen.