Auf einen Blick TEIL I Grundlagen 1 SAP HANA im Überblick .......................................... 31 2 Einführung in die Entwicklungsumgebung ................ 67 3 Datenbankprogrammierung mit dem SAP NetWeaver AS ABAP ........................................ 107 TEIL II Einführung in die ABAP-Programmierung mit SAP HANA 4 View-Modellierung im SAP HANA Studio ................ 161 5 Programmieroptionen in SAP HANA ........................ 217 6 Transport von Anwendungen ................................... 269 7 Laufzeit- und Fehleranalyse auf SAP HANA .............. 293 8 Beispielszenario: Optimierung einer bestehenden Anwendung ............................................................. 347 TEIL III Fortgeschrittene Techniken für die ABAP-Programmierung auf SAP HANA 9 Textsuche und Analyse von unstrukturierten Daten ....................................................................... 379 10 Integration analytischer Funktionalität ..................... 417 11 Entscheidungstabellen in SAP HANA ........................ 449 12 Funktionsbibliotheken in SAP HANA ........................ 465 13 Beispielszenario: Entwicklung einer neuen Anwendung ............................................................. 483 14 Praxistipps ............................................................... 501 Anhang ........................................................................... 557 5 Inhalt Inhalt Geleitwort .................................................................................... 15 Vorwort ........................................................................................ 17 Einleitung ..................................................................................... 19 TEIL I Grundlagen 1 SAP HANA im Überblick .......................................... 31 1.1 1.2 1.3 1.4 1.5 2 Softwarekomponenten von SAP HANA ....................... 1.1.1 HANA-Datenbank .......................................... 1.1.2 SAP HANA Studio .......................................... 1.1.3 SAP HANA Client ........................................... 1.1.4 HANA-Funktionsbibliotheken ........................ 1.1.5 Software zur Replikation von Daten ............... 1.1.6 Software zur direkten Datenaufbereitung ....... 1.1.7 Lifecycle-Management-Komponenten ............ Grundlagen der In-Memory-Technologie .................... 1.2.1 Hardwareinnovationen ................................... 1.2.2 Softwareinnovationen .................................... Architektur der In-Memory-Datenbank ....................... Anwendungsfälle für SAP HANA ................................. Auswirkungen von SAP HANA auf die Anwendungsentwicklung ............................................ 1.5.1 Neue technische Möglichkeiten ..................... 1.5.2 Code Pushdown ............................................. 1.5.3 Datenbank als Whitebox ................................ 1.5.4 Qualifizierung des Entwicklers ........................ 31 33 33 35 36 36 37 38 39 40 43 54 56 58 59 60 62 64 Einführung in die Entwicklungsumgebung .............. 67 2.1 2.2 2.3 Eclipse im Überblick ................................................... Die Eclipse-Strategie von SAP ..................................... 2.2.1 Entflechtung von Eclipse und SAPSoftware ........................................................ 2.2.2 Zentrale Update-Seite .................................... Installation der Entwicklungsumgebung ...................... 2.3.1 Installation des SAP HANA Studios ................ 67 70 71 71 73 73 7 Inhalt 2.3.2 2.4 3 Installation der ABAP Development Tools for SAP NetWeaver ....................................... Erste Schritte im Entwicklungssystem ......................... 2.4.1 Grundlagen von Eclipse ................................. 2.4.2 ABAP Development Tools for SAP NetWeaver .................................................... 2.4.3 SAP HANA Studio ......................................... 75 76 77 80 90 Datenbankprogrammierung mit dem SAP NetWeaver AS ABAP ................................................ 107 3.1 3.2 3.3 Architektur des SAP NetWeaver AS ABAP .................. 3.1.1 Datenbankschnittstelle und Datenbanktreiber .......................................... 3.1.2 Nutzung der Datenbank durch den SAP NetWeaver AS ABAP .............................. 3.1.3 Datentypen ................................................... ABAP-Datenbankzugriff ............................................. 3.2.1 ABAP Dictionary ........................................... 3.2.2 Open SQL ..................................................... 3.2.3 Datenbank-Views im ABAP Dictionary .......... 3.2.4 Datenbankzugriff über natives SQL ................ 3.2.5 Sekundäre Datenbankverbindungen .............. Datenbankzugriffe mit dem SQL-Trace analysieren ..... 3.3.1 Anweisungstransformationen ........................ 3.3.2 Sekundärverbindungen .................................. 3.3.3 Natives SQL .................................................. 3.3.4 Puffer ............................................................ 109 110 113 115 121 122 127 137 138 145 149 149 155 157 157 TEIL II Einführung in die ABAP-Programmierung mit SAP HANA 4 View-Modellierung im SAP HANA Studio ............... 161 4.1 8 Attribute Views .......................................................... 4.1.1 Grundlagen ................................................... 4.1.2 Attribute Views anlegen ................................ 4.1.3 Berechnete Felder ......................................... 4.1.4 Hierarchien ................................................... 4.1.5 Attributsichten für Zeit .................................. 4.1.6 Laufzeitobjekte und SQL-Zugriff bei Attribute Views ............................................. 164 165 168 175 178 180 183 Inhalt 4.2 4.3 4.4 4.5 5 Analytic Views ............................................................ 4.2.1 Grundlagen .................................................... 4.2.2 Analytic Views anlegen .................................. 4.2.3 Berechnete Kennzahlen .................................. 4.2.4 Währungsumrechnung und Einheitenkonvertierung .................................. 4.2.5 Laufzeitobjekte und SQL-Zugriff bei Analytic Views ............................................... Calculation Views ....................................................... 4.3.1 Grundlagen .................................................... 4.3.2 Grafische Modellierung von Calculation Views ............................................................. 4.3.3 Implementierung von Calculation Views über SQLScript ............................................... 4.3.4 Laufzeitobjekte und SQL-Zugriff bei Calculation Views ........................................... Zugriff auf Column Views über Microsoft Excel ........... Verwendung von SAP HANA Views in ABAP .............. 4.5.1 Zugriff über natives SQL ................................. 4.5.2 Externe Views im ABAP Dictionary ................. 4.5.3 Zugriffsmöglichkeiten auf externe Views ......... 4.5.4 Empfehlungen ................................................ 184 185 187 190 191 195 196 197 199 201 205 206 208 209 210 213 214 Programmieroptionen in SAP HANA ....................... 217 5.1 5.2 5.3 SQLScript im Überblick ............................................... 5.1.1 Qualitäten von SQLScript ............................... 5.1.2 Verarbeitung von SQLScript ........................... Implementierung von Datenbankprozeduren .............. 5.2.1 Grundlagen von Datenbankprozeduren .......... 5.2.2 Datenbankprozeduren anlegen ....................... 5.2.3 Verwendung von Variablen ............................ 5.2.4 CE-Funktionen ............................................... 5.2.5 Imperative Erweiterungen .............................. 5.2.6 Zugriff auf Systemfelder .................................. 5.2.7 Fehlerbehandlung .......................................... Verwendung von Prozeduren in ABAP ........................ 5.3.1 Zugriff über natives SQL ................................. 5.3.2 Definition von Database Procedure Proxies ........................................................... 5.3.3 Aufruf von Database Procedure Proxies .......... 5.3.4 Anpassung von Database Procedure Proxies ... 217 218 224 225 225 228 238 241 251 254 255 257 257 264 267 268 9 Inhalt 6 Transport von Anwendungen ................................... 269 6.1 6.2 7 7.3 7.4 7.5 7.6 Übersicht der verfügbaren Werkzeuge ........................ Fehleranalyse ............................................................. 7.2.1 Unit Tests ...................................................... 7.2.2 Dump-Analyse .............................................. 7.2.3 Tracing in SQLScript ...................................... 7.2.4 Debugging von SQLScript .............................. ABAP-Code-Analyse .................................................. 7.3.1 Prüfungen und Prüfvarianten ......................... 7.3.2 Prüfungen in der Entwicklungsinfrastruktur .............................. 7.3.3 Globale Prüfläufe im System .......................... Laufzeitstatistiken und Traces ..................................... 7.4.1 Laufzeitstatistik ............................................. 7.4.2 ABAP-Trace und ABAP Profiler ...................... 7.4.3 SQL-Trace ..................................................... 7.4.4 Single Transaction Analysis ............................ 7.4.5 Explain Plan .................................................. 7.4.6 SAP HANA Plan Visualizer ............................. Systemweite SQL-Analysen ........................................ 7.5.1 DBA-Cockpit ................................................. 7.5.2 SQL Monitor ................................................. SQL-Performanceoptimierung .................................... 294 296 297 299 302 303 305 305 309 311 313 313 317 324 328 330 331 335 335 339 343 Beispielszenario: Optimierung einer bestehenden Anwendung .............................................................. 347 8.1 8.2 10 271 271 276 285 286 292 Laufzeit- und Fehleranalyse auf SAP HANA ............ 293 7.1 7.2 8 Grundlagen des Transportwesens ............................... 6.1.1 Transport im SAP NetWeaver AS ABAP ......... 6.1.2 Transport in SAP HANA ................................. Kombinierter ABAP-/SAP HANA-Transport ................ 6.2.1 HANA-Transportcontainer ............................. 6.2.2 Erweitertes Transportsystem .......................... Vorgehen bei der Optimierung .................................. 8.1.1 Migration auf SAP HANA .............................. 8.1.2 Systemoptimierung ....................................... 8.1.3 Anwendungsoptimierung .............................. Szenario und Anforderungen ...................................... 348 348 350 351 354 Inhalt 8.3 8.2.1 Ausgangssituation .......................................... 8.2.2 Technische Umsetzung ................................... 8.2.3 Aktuelle Probleme ......................................... Umsetzung der Anforderungen ................................... 8.3.1 Eingrenzung des Problems mit der Laufzeitstatistik .............................................. 8.3.2 Detailanalyse des ABAP-Programms mit Transaktion SAT ............................................. 8.3.3 Detailanalyse der Datenbankzugriffe .............. 8.3.4 Ergebnis der Analyse ...................................... 8.3.5 Optimierung mit Open SQL ........................... 8.3.6 Analyse der ersten Optimierung ..................... 8.3.7 Ergebnis der Analyse ...................................... 8.3.8 Optimierung mit Analytic View ...................... 8.3.9 Analyse nach der zweiten Optimierung .......... 8.3.10 Ergebnis der Analyse ...................................... 354 356 358 359 359 361 363 365 365 367 369 370 371 374 TEIL III Fortgeschrittene Techniken für die ABAP-Programmierung auf SAP HANA 9 Textsuche und Analyse von unstrukturierten Daten ........................................................................ 379 9.1 9.2 9.3 9.4 9.5 9.6 Grundlagen der Textsuche in SAP HANA .................... 9.1.1 Technische Architektur ................................... 9.1.2 Fehlertolerante Suche .................................... 9.1.3 SAP-Komponenten und Produkte für die Suche ............................................................. Text-Datentypen und Full-Text-Indizes in SAP HANA .................................................................. Verwendung der Textsuche über SQL ......................... 9.3.1 Fuzzy-Suche ................................................... 9.3.2 Synonyme und Stoppwörter ........................... 9.3.3 Suche über Datumsfelder und Adressdaten .... Einsatz der Textsuche in ABAP .................................... 9.4.1 Aufruf der Textsuche via SQL aus ABAP ......... 9.4.2 Frei definierte Wertehilfen ............................. Textanalyse ................................................................. Ressourcenverbrauch und Laufzeitaspekte der Textsuche ............................................................. 381 382 383 385 386 391 393 397 400 403 403 404 411 413 11 Inhalt 10 Integration analytischer Funktionalität ................... 417 10.1 10.2 10.3 10.4 Einführung ................................................................. 10.1.1 Was ist analytische Funktionalität? ................ 10.1.2 Exkurs: SAP NetWeaver Business Warehouse .................................................... Mögliche Architekturen im Überblick ......................... 10.2.1 Direkter Zugriff auf analytische Funktionalität in SAP HANA .......................... 10.2.2 Zugriff über den SAP NetWeaver AS ABAP .... Ausgewählte Technologien und Werkzeuge ............... 10.3.1 InfoProvider bei Nutzung von SAP HANA ...... 10.3.2 SAP BusinessObjects-Portfolio ....................... 10.3.3 Easy-Query-Schnittstelle ................................ Benutzeroberflächenbausteine ................................... 417 418 421 423 424 429 433 434 441 445 447 11 Entscheidungstabellen in SAP HANA ...................... 449 11.1 11.2 11.3 11.4 11.5 Grundlagen von Entscheidungstabellen ...................... Anlegen von Entscheidungstabellen im SAP HANA Studio ........................................................................ Entscheidungstabellen basierend auf SAP HANA Views ......................................................................... Laufzeitobjekte und SQL-Zugriff für Entscheidungstabellen ............................................... Zugriff auf Entscheidungstabellen aus ABAP ............... 450 453 458 461 462 12 Funktionsbibliotheken in SAP HANA ...................... 465 12.1 12.2 12.3 Grundlagen der Application Function Library ............. 12.1.1 Technische Grundlagen ................................. 12.1.2 Business Function Library .............................. 12.1.3 Predictive Analysis Library ............................. Nutzung von Application-Function-LibraryFunktionen in SQLScript ............................................ Einbindung der Funktionsbibliotheken in ABAP ......... 468 468 469 471 475 480 13 Beispielszenario: Entwicklung einer neuen Anwendung .............................................................. 483 13.1 13.2 12 Szenario und Anforderungen ...................................... 483 Anwendungsdesign .................................................... 484 13.2.1 Verwaltung der Rabatte durch den Reisevermittler .............................................. 485 Inhalt 13.3 13.4 13.2.2 Zusätzliche Auswertungen über eine Sidepanel-Anwendung ................................... 13.2.3 Mobile Anwendung für den Flugpassagier ...... Implementierung der Anwendung .............................. 13.3.1 SAP HANA Views und Prozeduren ................. 13.3.2 Kern der ABAP-Anwendung ........................... 13.3.3 Benutzeroberflächen ...................................... Nutzung der Anwendungen ........................................ 486 488 490 490 492 494 499 14 Praxistipps ............................................................... 501 14.1 14.2 14.3 14.4 14.5 14.6 Allgemeine Empfehlungen .......................................... 14.1.1 Empfehlungen zu Column und Row Store ...... 14.1.2 HANA-spezifische Implementierungen ........... 14.1.3 Checkliste für datenbankspezifische Implementierungen ........................................ 14.1.4 Empfehlungen zur Migration .......................... 14.1.5 Entwicklung in Landschaften .......................... 14.1.6 Schreibende Zugriffe in SQLScript oder nativem SQL .................................................. Konventionen ............................................................. 14.2.1 Namenskonventionen .................................... 14.2.2 Kapselung von Paketen .................................. Qualitätsaspekte ......................................................... 14.3.1 Testen von Views und Prozeduren ................. 14.3.2 Robuste Programmierung ............................... 14.3.3 Sicherheitsaspekte .......................................... Performanceempfehlungen für Open SQL ................... 14.4.1 Regel 1: Ergebnismengen klein halten ............ 14.4.2 Regel 2: Übertragene Datenmengen klein halten ............................................................ 14.4.3 Regel 3: Anzahl der Anfragen reduzieren ........ 14.4.4 Regel 4: Suchaufwand minimieren ................. 14.4.5 Regel 5: Datenbank entlasten ......................... 14.4.6 Zusammenfassung der Regeln ........................ Performanceempfehlungen für native Implementierungen in SAP HANA .............................. 14.5.1 Empfehlungen für natives SQL ....................... 14.5.2 Empfehlungen für SAP HANA Views .............. 14.5.3 Empfehlungen für SQLScript .......................... Zusammenfassung der Empfehlungen ......................... 502 502 503 505 507 510 511 513 514 515 516 516 517 518 520 520 524 530 537 540 545 546 546 548 551 553 13 Inhalt Anhang ........................................................................... 557 A B C D E F Flugdatenmodell .................................................................. A.1 Grundlagen des Flugdatenmodells ............................. A.2 Datenbanktabellen des Flugdatenmodells .................. A.2.1 Customizing .................................................. A.2.2 Stammdaten .................................................. A.2.3 Bewegungsdaten ........................................... A.2.4 Design des SFLIGHT-Datenmodells ............... A.3 Datengenerierung ...................................................... Neuerungen in ABAP in SAP NetWeaver 7.4 ........................ B.1 Inline-Deklarationen .................................................. B.2 Konstruktor-Ausdrücke .............................................. B.3 Interne Tabellen ......................................................... Lese- und Schreibzugriffe im Column Store ........................... C.1 Grundlagen ................................................................ C.2 Lesezugriff ohne Index ............................................... C.3 Schreibzugriff ohne Index ........................................... C.4 Lesezugriffe mit Index ................................................ SAP Business Application Accelerator powered by SAP HANA ........................................................................... Installation der Beispiele ...................................................... Die Autoren ......................................................................... 559 559 560 560 561 562 564 565 567 567 569 571 573 573 574 576 579 583 587 589 Index ........................................................................................... 591 14 Index A ABAP ABAP 7.4 567 ABAP Unit 297 ABAP-Anwendung, Transport 511 ABAP-Code-Analyse 295, 348 ABAP-Laufzeitumgebung 110 ABAP-Projekt 81 ABAP-Proxy 515 ABAP-Ressourcen-URL 87 ABAP-Tabellenpuffer 씮 Tabellenpuffer ABAP-Trace 297, 317, 368 Schema 113 Typsystem 117 ABAP Connectivity and Integration Development Tools 75 ABAP Core Development Tools 75 ABAP Database Connectivity 씮 ADBC ABAP Development Tools for SAP NetWeaver 34, 211 ABAP-Ressourcen-URL 82, 83 Abwärtskompatibilität 76 Benutzereinstellungen 83 Berechtigungen 80 Code-Analyse 310 Debugger 87 favorisierte Pakete 82 Komponenten 75 Perspektiven 80 Programm anlegen 84 Programm ausführen 87 Project Explorer 82 Projekt 81 SAP-GUI-Integration 82 Systembibliothek 82 Templates 85 ABAP Dictionary 82, 108, 116, 209, 388 Typsystem 118 Wertehilfe 405 ABAP List Viewer 447 ABAP Memory 543 ABAP Profiler 295, 319 ABAP Test Cockpit 86, 275, 295, 308, 311 ABAP-Programm Analyse 361 Ausführungszeit 361 ABAP-Puffer, benutzerübergreifender 540 Accelerator-Szenarien 56 ACID-Prinzip 33 ADBC 139, 257, 403, 508, 548 Add-on Assembly Kit 273 Administration Console 90 AFL 36, 466, 468 After-Import-Methode 276, 289 Aggregatfunktion 131 Alternativimplementierung 504 ALV 463 ALV, integrierter Datenzugriff 486 Analytic Engine 423, 430 Bericht-Bericht-Schnittstelle 433 Formeln 433 Hierarchieverarbeitung 432 Analytic Privilege 99 Analytic View 99, 164, 184, 434, 549 anlegen 187 Aufruf 370 Analytical Search 374 analytische Funktionalität 418 analytische Query 씮 BW Query analytischer Index 435 Änderungsauftrag 273, 288 Änderungsaufzeichnung 269, 273, 278 Änderungstransport 269 Anweisungstransformation 149 Anwendung, Optimierung 347, 351 Anwendungslogik 60 Anwendungsszenario Accelerator-Szenario 56 integriertes 56, 58 Side-by-Side-Szenario 56 Appliance 31 Application Function Library 36, 94, 224, 466, 468 Applikationsschicht 60 591 Index Array-Interface 548 Attribut 166 berechnetes 176, 190 virtuelles 176 Attribute View 99, 164, 166, 394, 491, 549 Attributvektor 47, 573 Aufrufhierarchie 323, 364 Ausführungsplan 씮 Explain Plan Ausgabeparameter 515 Ausnahmebehandler 256 B BAdI 505 B-Baum-Index 577 Benutzeroberfläche, Baustein 447 Berechtigung analytische 90, 519 Paketberechtigung 90 Prüfung 519 SAP HANA Studio 90 SQL-Berechtigung 90 Systemberechtigung 90 Berichtswesen 418 Bewegungsdaten 185, 562 BEx Query Designer 440 BFL 36, 467 Blocking Factor 154 Breakpoint dynamischer 88 externer 88 statischer 88 BRFplus 450 BSP-Framework 488 Business Function Library 36, 467 Business Functions 33 Business Rule Mining 466 Business Server Pages (BSP) 488 BW Query 423, 440, 445 C Calculation Engine 225, 242 Calculation View 99, 164, 196, 217, 249, 434, 462, 491, 549 implementierter 201 modellierter 196 SQLScript 196 592 Callstack 323, 364 Cashflow 469 CE-Funktion 241, 370, 549 CE_AGGREGATION 242, 245, 249 CE_CALC 246 CE_CALC_VIEW 244 CE_COLUMN_TABLE 242, 243, 249 CE_CONVERSION 247 CE_JOIN 244 CE_JOIN_VIEW 243 CE_OLAP_VIEW 244 CE_PROJECTION 242, 245, 249 CE_UNION_ALL 246 CE_VERTICAL_UNION 247, 476 relationale 244 sonstige 247 TRACE 302 Zugriffsfunktion 242 Change and Transport System 씮 CTS CHIP 487 Client-Server 21 Cluster-Codierung 49 Cluster-Tabelle 126, 509 Code Completion 85, 97, 213 Code Inspector 295, 305, 349, 363 Code Pattern 65 Code Pushdown 60, 544 Code-to-Data-Paradigma 60, 62, 359 Codierung Dictionary-Codierung 46 indirekte 49 Lauflängencodierung 49 Präfix-Codierung 49 Sparse-Codierung 49 Column Store 45, 95, 125, 217, 573 Datentypen 386 Empfehlung 502 INSERT ONLY 577 invertierter Index 580 Lesezugriff 574 Merge 578 Schreibzugriff 576 zusammengesetzter Index 581 Column View 94, 162, 183, 209, 213, 269 Commit, impliziter 136 CONTAINS-Schlüsselwort 391 Content 34, 98 Counter 197 Index CPU-Cache 40, 41 CPU-Kern 39 CPU-Zeit 352, 374 CTS 275 Deploy Web Service 281 Plug-in 281 CTS+ 271, 280, 292 Cursor 134, 253, 552 D Data Analyst 465 Data Control Language (DCL) 121 Data Definition Language (DDL) 121 Data Dictionary 씮 ABAP Dictionary Data Manipulation Language (DML) 121 Data Mart 421 Data Modeler 560 Data Warehouse 420 DATA-Anweisung 568 Database Procedure Proxy 257, 264, 480, 492, 511, 515 Anlage 264 Anpassung 268 Aufruf 267 Synchronisation 268 Database Shared Library 35, 112 DataSource 422, 439 Data-to-Code-Paradigma 60 Datenanalyse 418, 441 Datenart 125 Datenbank relationale 33, 44, 162 Typsystem 118 Datenbankindex 537 Datenbank-Interface 508, 512 Datenbankkatalog 93, 162, 209 Datenbankobjekt 94 Datenbankoptimierer 52, 221, 330 Datenbankprogrammierung, Werkzeuge 149 Datenbankprozedur 55, 94, 99, 217, 219, 491, 515 anlegen 228 Arten 226 Ausführung 225 Ausgabeparameter 225, 232 Eingabeparameter 231 Datenbankprozedur (Forts.) Kompilierung 225 Kontrollstruktur 252 testen 516 Verarbeitungslogik 232 Datenbankschema 93, 101 Datenbankschicht 60 Datenbankschnittstelle 110 Datenbanktabelle 95 Datenbanktrigger 95 Datenbankverbindung sekundäre 145, 155 Standard 156 Datenbank-View 123, 137 Datendatei 276 Datendeklaration 567 Datenexploration 441 Dateninkonsistenz 513, 516 Datenlayout 44 Datenmodell, virtuelles 425 Datenreferenz 571 Datenreplikation 36 Direct Extractor Connection (DXC) 37 SAP Data Services 37 SAP Landscape Transformation Replication Server 37 Datensicht 씮 View Datentyp 115, 124, 265 Integer 46 Konvertierung 458 SHORTTEXT 386 TEXT 386 Datenvorschau 96, 104 DBA-Cockpit 145, 335 DBI 110 DBSL 35, 112 DDL 226 DDL-Statement 53 Debug Trace 303 Decision Table 씮 Entscheidungstabelle Default-Schema 231, 233 deklarative Programmierung 222, 552 Delivery Unit 99, 278, 515 Delta Load 36 Delta Merge 416 Delta Store 50, 416, 576 593 Index Delta-Komprimierung 48 Design Time 262 Design-Time-Objekt 102 Diagnostics Agent 39 Dictionary View 211 Dictionary-Codierung 46 Dictionary-Vektor 46, 573 Dimension 185 Direct Extractor Connection (DXC) 37 Document Analysis Toolkit 382 Domäne 124 DRAM 41 Drill-down 178 Dump 299, 518 Dynamic Random Access Memory 41 E Easy Query 431, 445 Echtzeit 19, 421 near Realtime 583 Echtzeitqualität 19 Eclipse 33 ABAP-Entwicklungsumgebung 33 Ansicht 78 Arbeitsbereich 79 Editor 78 Erweiterungspunkt 68 Fenster 78 Foundation 34, 67, 69 Framework 67 Menüleiste 79 Perspektive 78 Plattform 33, 67, 68 Plug-in 68 Projekt 69 Release Train 69 Repository 71 Sammelrelease 69 SAP 70 SAP Release Train for Eclipse 71 SDK 68 Symbolleiste 79 Update Site 71 Workbench 77 Eingabeparameter 193, 515 Einheitenkonvertierung 191 elementare Suchhilfe 405 Embedded Reporting 431 594 Embedded Search 386 Engine 55, 550 Enqueue-Server 109 Enqueue-Service 512 Enqueue-Workprozess 115 Enterprise Data Warehousing 421 Enterprise Search 386 Entity-Relationship-Modell 161 Entkopplung 504, 517 Entscheidungsregel 449, 458 Entscheidungstabelle 99, 449, 451, 453, 486 Aktionen 451 anlegen 453 Bedingungen 451 Transport 464 Entwicklungslandschaft, gemischte 511 Entwicklungsobjekt 84, 94, 98, 99 ABAP 514 Ablage 101 aktivieren 102 Namenskonvention 514 SAP HANA 514 testen 104 validieren 102 Entwicklungsorganisation 270, 271, 277 Delivery Unit 278 Paket 272 Pakethierarchie 271, 277 Paketschnittstelle 273 Softwarekomponente 272 Verwendungserklärung 273 Entwicklungsschema 283 Entwicklungsumgebung ABAP Development Tools 75, 80, 97 Installation 73 SAP HANA Studio 73 Equi-Join 168 Existenzcheck 307 Expensive SQL Statement Trace 296 Explain Plan 296, 330 Aufruf 330 Ausgabe 330 Export 275 Export Release Preprocessing 289 Extension Index 388 externer View 씮 View, externer Index F Factory Pattern 504 Factory-Klasse 493 Faktentabelle 183, 185 Feeder-Klasse 495 Fehleranalyse 293, 295, 296 Fehlerbehandlung 518 Feld, berechnetes 190 Feldliste 527 Feldsymbol 568 Festplatte 41 Filter 166 Filterwert 174 Fiskaljahr 180 Flash-Speicher 41 Floorplan Manager 447, 494 Analytics-Listenkomponente 447 Diagrammkomponente 447 Feeder-Klasse 494 Flugdatenmodell 109, 559, 560 FOR ALL ENTRIES 129, 153, 155, 307, 534 Fremdschlüsselbeziehung 123, 164 Full Outer Join 245 Full-Text-Index 387, 391, 412, 415, 492 Funktion, benutzerdefinierte 94 Funktionsbibliothek 씮 Application Function Library Fuzzy Score 397 Fuzzy-Search-Index 385, 414, 415 Fuzzy-Suche 380, 381, 384, 394, 396, 486, 491 stopwordListId 398 stopwordTable 398 textsearch 399 G Geschäftsjahr 180 Geschäftslogik 223 Geschäftsprozess 449 Geschäftsregel-Managementsystem 449 gewichteter Durchschnitt 470, 475 goldene Regeln für Datenbankprogrammierung 520 Größenkategorie 125 GUID 564 H HANA-Datenbank 33 HANA-Datenbank, Architektur 54 HANA-Softwarekomponente 31 Datenaufbereitung 32, 37 Kernkomponenten 32 Lifecycle-Management-Komponenten 32, 38 Replikation 32 HANA-Transportcontainer 271, 286, 511 Hardwareinnovationen 40 Hardwaretrends 39 Hash-Partitionierung 53 Hashwert 53 Hauptspeicher 39, 41 HAVING-Klausel 522, 537 Hierarchie 166, 178, 186, 200 Level 178 Vater-Kind 178 High Performance Analytical Appliance 씮 SAP HANA Hint 136, 508 Hitliste 321 HTML5 56, 427 hybride Anwendung 60 Hypernym 400 Hyponym 400 I Identical Select 327, 328 imperative Programmierung 222, 251, 552 Import 275 Index 94 Exklusionsliste 125 Full-Text-Index 387 Inklusionsliste 125 invertierter 539, 579 Primärindex 537 zusammengesetzter 539 Indexserver 55 indirekte Codierung 49 InfoObject 422, 435, 437 595 Index InfoProvider 422, 434 transienter 434 virtueller 436 InfoSet, klassisches 439 Initial Load 36 Inline-Deklaration 209, 567 IN-Liste 155 In-Memory-Datenbank 54 In-Memory-Technologie 39 Insight to Action 418 Integer 46 integriertes Szenario 56, 58 interne Tabelle 543 Internet Communication Framework 497 invertierter Index 580 J Java Runtime Environment (JRE) 73 JDBC 35 Job-Log 102 Join 97, 247, 368 Equi-Join 168 Full Outer Join 167 Inner Join 128, 167, 244 Join-Typen 166 komplexer 551 Left Outer Join 128, 167, 245 Outer Join 167 Referential Join 168, 173 Right Outer Join 167, 245 Self Join 203 Text Join 168 Join Engine 166, 552 Join View 씮 Attribute View K Kalender fiskalisch 180 gregorianisch 181 Kalkulationslogik 61 Kapselung 515 Kennzahl 185 berechnete 190 eingeschränkte 187 Kernel 110 K-Means 472, 477 596 Komprimierung Delta-Komprimierung 48 Verfahren 46, 48 Konstruktor-Ausdruck 209, 569 Kontrolldatei 276 Kontrollstruktur 252 Konvertierungs-Exit 506 L L (Programmiersprache) 224, 227 Large Object 386, 416 Lastverteilung 52 Latenz 19 Lauflängencodierung 49 Laufzeit 262 Laufzeitanalyse 293, 295, 367 Laufzeitfehler 300 Laufzeitobjekt 183, 234 Laufzeitstatistik 313, 352, 360 Auswertung 314 Selektion 313 Left Outer Join 245 linguistische Suche 392 L-Knoten 224 Logical Unit of Work 114 LOOP-Schleife 535 LUW-Konzept 114 M Main Store 50, 576 Mainframe 21 Mandantenbehandlung 111, 215, 254, 511 Attribute View 172 automatische 234 Manifest 68 Massenoperation 548 Materialisierung 161 MDX 35, 55, 208 Measure 씮 Kennzahl Mengenoperation 531 Merge 416, 578 Message-Server 109 mobile Anwendung 488 Modeler-Perspektive 90 Modifikationsassistent 276 MODIFY 154 Index Modularisierung 517 Modularisierungseinheit 308 Monitoring View 415 Multidimensional Expressions 씮 MDX N Namensraum 514 Nameserver 55 natives SQL 370, 403, 546 ABAP-Tabellen 511 ADBC 139 Negativtest 298 NEW-Operator 569 NUMA-Architektur 41 O OData 56, 487 OData-Service 427 ODBC 35 ODBO 35 ODS-Objekte 422 öffentliches Synonym 234, 235 OLAP 60, 420 OLAP Engine 552 OLTP 60, 420 on the fly 421 Open SQL 62, 107, 121, 218, 222, 365 Array-Operation 135 Cursor 134 dynamisches 133 Existenzprüfung 132 Hints 136 Paketgröße 134 Transaktionskontrolle 136 Unterabfrage 132 Operational Data Provisioning 439 Optimierer 씮 Datenbankoptimierer Orchestrierungslogik 61 Originalsystem 276, 282 OR-Verbindung 154 Outer Join 120 P Paket 98, 99, 515 Entwicklungspaket 272, 277 Paket (Forts.) gekapseltes 273 Hauptpaket 272 SAP HANA 514 Schnittstelle 273 Strukturpaket 272, 277 system-local 278 Testpaket 273 PAL 36, 467 Parallelisierung 52, 221, 251, 257, 332, 552 Parameter-Marker 547 Partition Pruning 52 Partitionierung 50 Arten 53 explizites Partition Handling 53 Hash-Partitionierung 53 horizontale 51 Range-Partitionierung 54 Round-Robin-Partitionierung 52 vertikale 51 PBO-Modul 463 Performance 520 Phrase-Index 414 Phrase-Index-Ratio 414 physikalisches Schema 283 Planungs-Engine 55 PlanViz 296, 331, 353, 373 Aufzeichnung 331 Auswertung 331 PMML 472 Pool-Tabelle 126, 509 Präfix-Codierung 49 Präfixnamensraum 287 Präprozessor-Server 55 Präsentationsschicht 60 Predictive Analysis 33, 465 Predictive Analysis Library 36, 467 Predictive Model Markup Language (PMML) 472 Prepared-Anweisung 142, 519, 546 Prepare-Phase 547 Pretty Printer 85 Primärdatenbank 56, 257, 436 Projektion 242 Projektionsview 123 Proxy-Objekt 264 Public Synonym 104 597 Index Puffer-Trace 157 Pufferzugriff 366 R R (Programmiersprache) 227, 475 Rabattschema 484 RAM 39 Range 129 Range-Partitionierung 54 Read Only Procedures 226 Read Write Procedures 226 Realtime 씮 Echtzeit Redirected Database Access (RDA) 145, 583 Refactoring 297 REF-Operator 570 Regel 452 regi 237 relationale Funktion 242, 244 Reparaturkennzeichen 276 Reporting 418 Repository 씮 SAP HANA Repository RESTful Service 56 Result View 461, 462 Revision 74 Right Outer Join 245 robuste Programmierung 517 Rollback 136 Rollenverwaltung 487 Rollenverwaltung, SAP HANA Studio 91 Round Trip 154 Round-Robin-Partitionierung 53 Row Store 44, 125, 217 Run-Time-Objekt 씮 Laufzeitobjekt S Sammelsuchhilfe 405 SAP Business Application Accelerator 583 SAP Business Explorer (BEx) 423 SAP Business Suite 57 SAP Business Suite powered by SAP HANA 505 SAP BusinessObjects 423 SAP BusinessObjects Business Intelligence-Plattform 206, 425 598 SAP Community Network 488 SAP CO-PA Accelerator 57 SAP Crystal Reports 447 SAP Data Services 37 SAP HANA 31 Anwendungen 57 Anwendungsfälle 56 Funktionsbibliotheken 36 Migration 348, 507 zertifizierte Hardware 40 SAP HANA Analytics Foundation 425 SAP HANA Client 35 HTTP 36 JDBC 35 ODBC 35 ODBO 35 Package for Microsoft Excel 37 SQLDBC-Bibliothek 35 SAP HANA Client Software 74 SAP HANA Development 90 SAP HANA Extended Application Services 씮 XS Engine SAP HANA Live 425 SAP HANA MDX Provider 207 SAP HANA Plan Visualizer 씮 PlanViz SAP HANA Repository 90, 98, 277, 514, 515 SAP HANA Repository Client (regi) 74, 237 SAP HANA Repository View 210, 213 SAP HANA Studio 33, 34, 90 Arbeitsbereich 92 Benutzereinstellungen 93 Berechtigungen 90 Datenbankkatalog 93 hdbinst 74 hdbsetup 74 Perspektive 90 SQL-Anweisung 373 SQL-Konsole 97, 226 Systemverbindung 92 Templates 97 View-Modellierung 164, 168 SAP HANA UI for Information Access 38, 386 SAP HANA View 63, 209, 370, 511 Auswahl 215 Performance 548 testen 516 Index SAP HANA View (Forts.) Typ 548 SAP Host Agent 38 SAP Landscape Transformation Replication Server 37 SAP Lumira 467 SAP Management Console 38 SAP Memory 543 SAP NetWeaver AS ABAP 35 SAP NetWeaver Business Client 485, 487, 499 SAP NetWeaver BW 420 SAP NetWeaver Gateway 431, 487, 488 SAP NetWeaver Operational Process Intelligence 453 SAP Predictive Analysis 467 SAP Solution Manager 39 SAP Visual Intelligence 467 SAPUI5 427, 487, 488 Anwendung 497 Model View Controller 498 Scale-out 40, 109 Scale-up 40 Schattenspalte 387 Schema 씮 Datenbankschema Schemabehandlung 215, 510 Schema-Mapping 233, 283, 510 Schleife 552 Schlüsselfeld 166 Scorecard 466 Script Server 468 Segmentierung 472 Sekundärdatenbank 56, 145, 428 Sekundärindex 537 Sekundärverbindung 155 SELECT *-Anweisung 366 SELECT-Anweisung 521 SELECT-Anweisung, geschachtelte 366, 533 Selektivität 385 Sentiment-Analyse 380, 382, 412 Sequenz 95 Server-Komponente 55 Service Builder 488, 496 Session-Kontext 171 SFLIGHT 109, 559, 560 Shared Buffer 543 Shared Memory 543 Shared Objects 543 Side-by-Side-Szenario 22, 36, 56 Sidepanel 432, 485 Konfiguration 498 Single Transaction Analysis 295, 328 skalare Variable 229 skalarer Parameter 228 Slice-and-dice 186 Software Update Manager for SAP HANA (SUM) 38 Softwareinnovation 43 Softwarekomponente 272 Sortierverhalten 509 spaltenorientierte Datenablage 45, 95 Sparse-Codierung 49 Sperre 512 Sperrkennzeichen 275 Sperrobjekt 115, 124 SQL 121 dynamisches 253, 552 Fehlercode 256 Injection 254 natives 62, 138, 257 Open 62 SQL-Cache 296, 337, 547 SQL-Datentyp 232, 233 SQL-Injection 519 SQL-Konsole 97, 226 SQL-Performanceoptimierungswerkzeug 349 SQL-Profil 363 SQL-Prozessor 55 Standard 218 SQL Monitor 296, 339, 349, 363 aktivieren 339 Auswertung 340 Einstiegspunkt 341 SQL Performance Tuning Worklist 343 SQL View 162 SQL-Analyse, systemweite 335 SQL-Anweisung Analyse 351, 364 BINARY SEARCH 510 CREATE FULLTEXT INDEX 387 EXEC 518 EXEC SQL 508 FOR ALL ENTRIES 534, 535 599 Index SQL-Anweisung (Forts.) INTO CORRESPONDING FIELDS OF 526 ORDER BY 509 SELECT * 366 SELECT COUNT(*) 528 UP TO n ROWS 524 UPDATE 529 UPDATE ... SET 529 SQLDBC-Bibliothek 35 SQLScript 33, 63, 194, 198, 217, 370 ABAP-Tabellen 511 Aktivierung 224 Aufruf 225 Ausgabeparameter 232, 259 benutzerdefinierte Funktionen 227 BREAK 252 CALL 235 CE-Funktion 241 CONTINUE 252 CREATE PROCEDURE 228, 238 CREATE TYPE 229 Cursor-Verarbeitung 253 Debugger 237, 303 dynamisches 253, 518 eigene Ausnahmen 256 Eingabeparameter 231, 263 EXEC 253 EXECUTE IMMEDIATE 253 explizite Typisierung 239 Fallunterscheidung 223, 252 Fehlerbehandlung 255 Groß-/Kleinschreibung 234 Grundlagen 225 implizite Typisierung 239 Kontrollstrukturen 252 Mandantenbehandlung 234, 254 Modularisierung 218 Optimierungen 249, 254 Orchestrierung 222 Parallelisierung 221 Performance 251 Qualitäten 218 Regeln 551 Schleife 223, 252 SESSION_CONTEXT 254 skalare Variable 229, 240 skalarer Parameter 228 Standardausnahmen 256 600 SQLScript (Forts.) Systemfelder 254 Tabellenparameter 228 Tabellentyp 229, 237 Tabellenvariable 220, 229, 239 Typisierung 239, 240 UDF 227 User Defined Functions 227 Variable 238 Verarbeitung 224 Verarbeitungslogik 232 versus CE-Funktionen 248 Wiederverwendung 219 WITH RESULT VIEW 229 Zerlegung 219 Zugriff auf Geschäftslogik 223 SQL-Standard (SQL92, SQL99) 217 SQL-Trace 151, 295, 324, 352, 363, 368 aufzeichnen 151, 325 auswerten 325 Stacktrace 327 Stammdaten 185 Standarddatenbankverbindung 113 Standard-View 162 Statistiksatz 295 Statistikserver 55 Sternschema 162, 186 Stoppwort 385, 397 Stored Procedure 씮 Datenbankprozedur String 48 String Template 567 Structured Query Language 씮 SQL Struktur 570 Suche exakte 392 Freestyle 381 Fuzzy 380, 381 linguistische 381, 384 Synonymsuche 381 Suchfacette 382 Suchhilfe 123, 405 Suchhilfe-Exit 405 Vorschlagswert 410 Summentabelle 161 Synonym 95, 104 Synonymliste 385, 399 Syntaxprüfung 85 Index Systemfeld 505 Systemlandschaft, gemischte 290 Systemoptimierung 350 Systemschema 93, 113 T Tabelle 122 interne 570, 571 replizierte 583 Tabellendefinition 95 Tabelleninhalt 96 Tabellenparameter 228 Tabellenpuffer 112, 125, 512, 536, 542 Tabellenstatistik 360 Tabellentyp 229, 237 Tabellenvariable 220, 229, 239 temporäre Tabelle 261, 262 Term Mapping 399 Test 517 Textanalyse 380, 382, 411 Textsuche 382, 386 Thread 337 Token 387, 411 Trace 313 Transaktion ATC 295 DBACOCKPIT 145, 296, 335 EQPREVIEW 446 PFCG 487, 498 RSA1 436 RSDD_HM_PUBLISH 435 RSRT 440 SAT 295, 317, 361, 368 SCI 295, 306 SE11 82 SE80 409 SEGW 496 SQLM 296, 339 ST04 335 ST05 151, 156, 157, 295, 368 ST12 295, 328 ST22 299 STAD 295, 313, 352, 359, 368 SWLT 296, 343, 363 transaktionales System 420 Transport 269 Änderungsauftrag 288 Transport (Forts.) Änderungsaufzeichnung 269, 273, 278 CTS Deploy Web Service 281 CTS+ 280, 292 CTS-Plug-in 281 Datendatei 276 Developer Mode 280 Eigenschaften 273, 278 Empfehlungen 291 Export 280 gemischte Systemlandschaft 290 HANA-Transportcontainer 271 Import 280 kombinierter 285 Kontrolldatei 276 logisches Transportobjekt 286 Mechanismen 270 mögliche Probleme 269 Objektliste 275 Originalsystem 282 Protokoll 276, 289 Schema-Mapping 233 Sperrkennzeichen 275 Synchronisation 288 Transport Domain Controller 275, 281 Transport von Kopien 276 Transportcontainer 286 Transportschicht 274 Transportsystem 274, 278 Transportverzeichnis 276 Umzug 276 TREX 386 U Unit Test 296, 353, 516, 517 Unterabfrage 132, 534 UPSERT 153 V Validierung 102 VALUE-Operator 570 Variable 238 deklarieren 567 Gültigkeitsbereich 569 skalare 240 601 Index Variable (Forts.) Tabellenvariable 239 Verbuchung 109 Versionshistorie 105 Verwendungserklärung 273 Verwendungsnachweis 87 View 95, 123, 161 Analytic View 164, 184 Attribute View 164 Calculation View 164, 196 Column View 162, 269 Datenbank-View 137 Dictionary View 211 externer 210, 216, 269, 492, 511, 515 SQL View 162 Virtual Data Model (VDM) 58 Vorschlagsliste 382 Vorwärtsnavigation 87 W Währungsumrechnung Customizing 192 parametrisieren 193 Web Dynpro ABAP 409, 447, 485 Eclipse 409 Floorplan Manager 447, 490, 494 602 Web Dynpro ABAP (Forts.) Kontext 409 Tools 75 Wertehilfe 씮 Suchhilfe WHERE-Klausel 521, 537 White List 519 Widget 485 Wildcard 379, 392 Workprozess 109, 262 Wort-Dictionary 414 Wrapper-Funktion, AFL 469 X XS Engine 36, 55, 90, 94, 217, 427, 519 Z zeilenorientierte Datenablage 44 Zeitdaten, generieren 181 Zeitzone 506 Zugriffsfunktion 242 Zugriffszeit 40 CPU-Cache 41 Festplatten 41 Flash-Speicher 41 Hauptspeicher 41 zusammengesetzter Index 581