3DExperience Forum - Mannheim - 26. bis 27.06.2013 IBM Deutschland Global Business Services GmbH. Guido Schmidt. “In-memory” Technologie für PLM eröffnet neue Anwendungsfelder. ZIELE DIESES WORKSHOPS § Mögliche Anwendungsfelder erkennen, die durch den technologischen Sprung von plain erschlossen werden können. § Verstehen, wie plain aufgebaut ist, und wie es eingesetzt werden kann. § Erkennen, welche Gemeinsamkeiten und Unterschiede es zwischen plain und vergleichbaren Technologien wie z. B. SAP HANA™ gibt. § Überzeugen, dass durch plain “in-memory” Technologie nun auch für PLM möglich wird. 2 © 2013 IBM Corporation Agenda 1 Aufbau und Architektur 2 Gemeinsamkeiten und Unterschiede zu ähnlichen Technologien 3 Anwendungsfelder 4 Beispiele 3 © 2013 IBM Corporation Agenda 1 Aufbau und Architektur 2 Gemeinsamkeiten und Unterschiede zu ähnlichen Technologien 3 Anwendungsfelder 4 Beispiele 4 © 2013 IBM Corporation Aufbau und Architektur 5 Was ist plain? Und was nicht? Ein sogenannter Business Value Accelerator der IBM Global Business Services, der die Umsetzung von Serviceprojekten beschleunigen kann. ü O Ein Softwareprodukt, wie z. B. DB2™ oder Lotus Notes™, für das Lizenzen erworben werden können. Ein hochperformantes und hochskalierbares Softwareframework für PLM-spezifische Anwendungsintegration und -erweiterung ü O Ein generischer Web- und Servletcontainer, wie z. B. WebSphere™ oder Tomcat™. Ein integrierender oder ein erweiternder Bestandteil einer komplexen, sich kontinuierlich verändernden PLM Landschaft. ü O Ein Ersatz und damit Konkurrent für PLM Systeme, wie z. B. Dassault Systèmes ENOVIA™ V4, V5 oder V6. Ein Enabler für „in-memory“ Technologie im PLM Bereich und damit für neue, hochkomplexe Anwendungsfelder oder für extrem hohe Nutzungsszenarien. ü O Das neue SAP HANA™ für PLM. (na ja, vielleicht noch nicht...) © 2013 IBM Corporation Aufbau und Architektur - Metadaten Front § N-Schichten Architektur Konsumenten PLM Resourcen Hybrid-DB In-memory PLM Objektmodelle* Graphen Spalten Metadatenladung SSD Back Exporte Journale Produzenten 6 * In Anlehnung an IBM PLM 2.0, DS XPDMXML, PLMXML § Konsumenten greifen auf Metadaten von PLM Resourcen zu § PLM Resourcen werden “in-memory” in Objektmodellen vorgehalten § PLM Objektmodelle setzen sich aus Graphen und Spalten zusammen § Die Hybrid-DB wird (periodisch) über Metadatenladung befüllt § Exporte und Journale beschleunigen und persistieren das Laden § Produzenten liefern PLM Metadaten © 2013 IBM Corporation Aufbau und Architektur - Datenrepräsentationen (2d/3d/Andere) Front Konsumenten Hybrid-DB In-memory Repräsentationsreferenzen File-/Stream Access PLM Resourcen SSD Back Cache (optional) Produzenten 7 § Konsumenten greifen auf Repräsentationen von PLM Resourcen zu PLM Resourcen Ladung § PLM Resourcen erlauben den Zugriff auf Objektrepräsentationen § Die Hybrid-DB hält die Referenzen der Repräsentationen “in-memory” § Das Laden einer Repräsentation erfolgt nur bei Bedarf § Ein optionaler Cache kann das Laden beschleunigen § Produzenten liefern Repräsentationen als Datei oder Stream © 2013 IBM Corporation Aufbau und Architektur - Technologiestack Frontend Application Backend 8 Desktop Webtop Mobile Backend GWT JSP/F JavaFX Javascript HTML5 HTTP/S JAX-RS WEBSOCKETS Functional Programming Async IO JAVA 7u25 SCALA 2.10.2 64bit UNIX LINUX W2008R2 W2012 JDBC XPDM JAX-WS JMS ENOVIA V4 V5 V6 SAP LEGACY Other Vendors § JAVA7™ bildet die Basisplattform für plain § Im Kern wird in SCALA™ mittels funktionaler Programmierung entwickelt § Alle state-of-the-art Javabasierten Kommunikationsprotokolle können eingesetzt werden § Im Frontend werden sowohl browser- wie server-lastige Technologien unterstützt § Konsequenter Einsatz asynchroner Methodiken ermöglichen extrem hohen Durchsatz § Vendor-spezifische Technologien kommen wo notwendig zum Einsatz © 2013 IBM Corporation Agenda 1 Aufbau und Architektur 2 Gemeinsamkeiten und Unterschiede zu ähnlichen Technologien 3 Anwendungsfelder 4 Beispiele 9 © 2013 IBM Corporation Was genau ist eigentlich “in-memory” Technologie? http://epic.hpi.uni-potsdam.de/Home/InMemoryDataMgmt Dies sind die „key concepts of in-memory technology“ der Erfinder von SAP HANA™. 10 © 2013 IBM Corporation Spaltenorientiert Zeilenorientiert Wir werfen hier nur den Blick auf zwei dieser “key concepts”, Erstens: Column vs. Row Store § Row Store benötigt immer den Speicherplatz “Anzahl der Zeilen x Summe aller Spaltengrößen”. § Column Store kann je nach Spaltenart die Werte sehr kompakt speichern, z. B. nur die Zeilennummern mit Ja für den Wert “IsStandard”, oder nur die drei Werte von “Status” jeweils mit den Zeilennummern. § Kombiniert mit anderen Maßnahmen lässt sich so der Speicherbedarf für die Datenhaltung um den Faktor 100-1000 verringern. Column Store macht „in-memory“ Datenbanken erst wirklich möglich. 11 © 2013 IBM Corporation Zweitens: Multi-core and Parallelization § Moores Gesetz ist spätestens seit 2010 widerlegt: Die CPU-Leistung steigt nicht mehr mit derselben Rate wie in den 30 Jahren davor. Leistungssteigerungen müssen durch andere Techniken erzielt werden. § Unter diesen Voraussetzungen ist die Implementierung einer hochperformanten “in-memory” Lösung nur möglich, wenn Aspekte der sogenannten “Mechanical Sympathy” berücksichtigt werden: – Wichtige Daten müssen nahe an der CPU liegen (siehe rechts) – Concurrency contention muss vermieden werden – “false sharing” muss berücksichtigt werden – Datenstrukturen sollten “lock-free” und “immutable” sein – Datenstrukturen sollten parallelen Zugriff ermöglichen § Diese sehr software-spezifischen technischen Probleme sind bei plain durch den Einsatz von Java7 und der funktionalen Programmiersprache SCALA 2.10 gelöst worden. „Mechanical Sympathy“ ist der Schlüssel zu extrem hoher Performanz. 12 © 2013 IBM Corporation Gemeinsamkeiten und Unterschiede zu ähnlichen Technologien Feature IBM plain SAP HANA™ Zeilenorientierte Datenbank ü Graphenorientierte Datenbank für traversierende Algorithmen ü ü O Metadatenverarbeitung (textuell, numerisch) ü Graphische Datenverarbeitung (2D, 3D) ü O Eigener Persistenzlayer (ersetzt Systeme wie z. B. Oracle™, DB2™) Unterstützung von CRUD (Create, Read, Update, Delete) SQL als Abfragesprache Abfragen über mehrere/alle Backendsystem gleichzeitig Kompressionsmechanismen mit aktivem und passivem Store 13 ü O ü ü O ü ü ü ü ü ü © 2013 IBM Corporation Alleinstellungsmerkmale: Graphendatenbank und 3D-Unterstützung § Im Gegensatz zu SAP HANA™ ist es nicht das Ziel von plain ein vollwertiges Datenbanksystem zu sein. § Daten aus Backend-PLM-Systemen werden zusätzlich zu Column Store auch in gerichteten Graphen abgelegt. Dies ermöglicht eine extrem schnelle Verarbeitung von traversierenden Algorithmen (z. B. Bill of Material, Where-used). § Ein entscheidender Vorteil von plain ist die zusätzliche Verarbeitung (Erstellen, Modifizieren, Bereitstellen) von grafischen Informationen. Es können neue, so nicht in den Backend-PLM-Systemen vorhandene 3D-Repräsentationen generiert werden. § Unterstützte Formate sind zur Zeit: – Dassault Systèmes 3DXML – Dassault Systèmes CATIA V5 – PLMXML, JT, VFZ – TIFF, PDF Graphen und 3D Informationen „in-memory“ eröffnen ganz neue Anwendungsfelder. 14 © 2013 IBM Corporation Ein paar Performancezahlen “count children” einer Baugruppe mit 300.000 Knoten Testumgebung Latency in ms per concurrent access „in-memory“ Technologie kann um den Faktor 1000 bis 100000 schneller sein. 15 © 2013 IBM Corporation Agenda 1 Aufbau und Architektur 2 Gemeinsamkeiten und Unterschiede zu ähnlichen Technologien 3 Anwendungsfelder 4 Beispiele 16 © 2013 IBM Corporation niedrig Anwenderanzahl hoch Anwendungsfelder - Generelle Einsatzmöglichkeiten gering Komplexität hoch plain erlaubt hoch komplexe Anwendungsszenarien oder eine hohe Anzahl von Anwendern. 17 © 2013 IBM Corporation Anwendungsfelder - Beispiele 1 § Integration von mehreren auch heterogenen PLM-Systemen sowie weiteren Legacysystemen zu einer neuen PLM-oriertierten unternehmensweiten Serviceschicht. § Nutzung dieser Serviceschicht zur Implementierung von unternehmensweiten Informationssystemen, die textuelle und numerische mit 2D- und 3D-Daten zusammenbringen, allerdings nicht im Sinne eines “Portals”, sondern als integriertes Geschäftsmodell. § Unterstützung der Koexistenz von Alt- und Neusystemen im PLM Umfeld, insbesondere, wenn diese sehr divergent sind und der Zeitraum der Koexistenz sich über mehrere Jahre erstrecken kann. plain als PLM-orientiertes Tool zur Enterprise Application Integration (EAI). 18 © 2013 IBM Corporation Anwendungsfelder - Beispiele 2 § Automatisierung komplexer immer wiederkehrender Prozesse, die Informationen aus verschiedenen auch nicht PLM-Systemen verarbeiten und dabei 2D- oder 3D-Daten als Teilergebnisse generieren (z. B. 3D-Aufbereitung von DMU Analysen aus zwei verschiedenen Systemen). § “bounding grid” statt “bounding box”: Eine Invertierung der üblichen geometrischen Umkreissuche, die gerade bei extremen Objektgrößen (Schiffbau, Aerospace) eine enorme Leistungssteigerung verspricht (in der Entwicklung in Verbindung mit IBM FASTDMU™). § Vision (oder Spinnerei?): “real-time virtual augmented reality” (z. B. Qualitätskontrolle durch visuellen Abgleich der DMU Informationen mit der realen Einbausituation mit Hilfe von Tablets in Echtzeit) plain als Entwicklungsplattform für Innovationen in der 3DEXPERIENCE. 19 © 2013 IBM Corporation Anwendungsfelder § Workshop, Diskussion 20 © 2013 IBM Corporation Agenda 1 Aufbau und Architektur 2 Gemeinsamkeiten und Unterschiede zu ähnlichen Technologien 3 Anwendungsfelder 4 Beispiele 21 © 2013 IBM Corporation Beispiele § Demo § Video: http://youtu.be/Sd_5klt92X4 22 © 2013 IBM Corporation Haben Sie noch Fragen? 23 © 2013 IBM Corporation Kontakt Guido Schmidt IBM Deutschland Global Business Services GmbH Solution Architect / Senior Managing Consultant Hollerithstraße 1 D-81829 München Mobil: +49 151 64 61 71 50 Mail: [email protected] 24 © 2013 IBM Corporation Vielen Dank für Ihre Aufmerksamkeit 25 © 2013 IBM Corporation