Tglich 200 Millionen Inserts Aufbau eines weltweiten ChipAnalyseportals
Täglich 200 Millionen Inserts: Aufbau eines weltweiten Chip-Analyseportals mit Oracle 10 g und Advanced PL/SQL Kariem Yehia Dialog Semiconductor Gmb. H Jochen HInderberger Dialog Semiconductor Gmb. H Kirchheim / Teck Innovative silicon for a mobile world 1
Agenda ► Kurze Information über Dialog Semiconductor ► Die erste Datenbank: Eine Leidensgeschichte ► Anforderungen an das neue Portal ► Technische Implementierung: Der Umgang mit Massendaten und PL/SQL als Kern der Datenbank ► 2 Neue Applikationen und Auswertungen Konsequenz: Performanceprobleme ► Die neue Datenbank: Eine Erfolgsstory Innovative silicon for a mobile world Kariem Yehia, DOAG 2006
Informationen über Dialog Semiconductor ► Expertenwissen in der Entwicklung von komplexen analogen und digitalen Schaltkreisen ► „Fabless“ Entwickler von Lieferant von Mixed-Signal IC-Lösungen ► Pionier in der Entwicklung von ASIC-Lösungen für Mobile Endgeräte ► Weltweite Niederlassungen, ca. 250 Mitarbeiter ► Führend in den Produktbereichen in Power Management und Audio-Codecs ► Über 400 Mio. Dialog-Chips in mobilen Endgeräten verbaut ► System-on-chip (So. C)-Lösungen für Industrieanwendungen ► Entwicklung 100% in CMOS ► Innovative Chip-Lösungen für Mobiltelefone der Generationen 2, 5 G, 3 G, GPRS und CDMA ► Breites Kundenportfolio: 3 Innovative silicon for a mobile world Kariem Yehia, DOAG 2006
Wo fallen bei der Chip-Herstellung Daten an ? Foundry ► Wafer Test Assembly Burn-In Final Test Tape&Reel 4 Jeder Fertigungsschritt generiert unterschiedliche Datenvolumina ► Wichtigste Datenquellen: Qualitätsdaten aus Wafer Test/Final Test typ. 60 k. B / Chip d. h. 300 MB / Charge (komprimiert) ► 6 -7 GB Rohdaten pro Tag ► Datenbankgestützte Auswertungen unerlässlich! Innovative silicon for a mobile world Kariem Yehia, DOAG 2006
Die erste Datenbank: Eine Leidensgeschichte ► Erste Generation der Anwendung einer Produktionsdatenbank in 1999/2000 durch Consultant basieren auf vorverdichteten ASCII-Daten ► Akzeptanz gleich Null ! Ursachen: ► Ungeeignetes Tabellendesign, schwer verständlich für den Endnutzer ► schlechte Indizierung, typ. Abfragen ~ 45 min !! ► Zu viele WHERE-Bedingungen notwendig, „automatische“ Aggregation führt sonst zu Fehlinterpretationen ► Oracle Discoverer als Abfragewerkzeug ► 5 Tiefergehende Informationen nötig für sinnvolle Analysen und Auswertungen Redesign der Datenbankanwendung unbedingt notwendig ! Innovative silicon for a mobile world Kariem Yehia, DOAG 2006
Anforderungen an das neue Portal: Projekt RDA ► ► Ehrgeiziges Ziel: Speicherung aller Prüfdaten jedes Chips in der Produktions-Datenbank ! ► typ. 500 Messwerte pro Chip ► typ. 400. 000 Chip-Tests pro Tag ► 200 Mio. Messwerte pro Tag Weshalb ? ► Qualität: Einfache Bearbeitung von Kundenrückfragen ► Analysemöglichkeiten ► 6 ► Yield-Monitoring: Schwankungen in der Ausbeute können sofort analysiert werden ► Einfache Anbindung von 3 rd-Party-Analyse-Software möglich Data Mining: Möglichkeit zur Anwendung von DM-Algorithmen zur automatisierten Analyse somit vorhanden Innovative silicon for a mobile world Kariem Yehia, DOAG 2006
Architektur Phase I Oracle 9 i / Solaris 9 PL/SQL Abstraktions schicht HTTP-Server Tabellen Interne Rohdaten 10 Mio. Rd/day via - OCI - Funktionen JDBC (Thin) Apache / Tomcat - Trigger - Prozeduren 7 Innovative silicon for a mobile world Kariem Yehia, DOAG 2006
Wie finden die User zu Ihren Daten ? ► Web-basiertes Reporting-System ► Keine Client-Installation beim End-User nötig ► Zugriffsteuerung für einzelne Reports & Aktionen möglich ► Durch Standardreporting zuverlässige und fehlerfreie Analysen incl. Hilfesystem für math. 8 Berechnungsvorschriften ► Eigene Konfiguration: Typ. Darstellungsformen Innovative silicon for a mobile world Kariem Yehia, DOAG 2006
Technische Implementierung ► Entwicklung eines verbesserten Tabellendesigns ► Die erste Frage lautet immer: Welche Auswertungen werden benötigt ? ► Drill Down Web Reporting für einfachen Datenzugriff Prüfauftragsinformation Bin Definitionen Statistische Daten 9 Histogramm Daten Einfache Auftragsdaten Zusätzliche Auftragsdaten Test Definitionen Fail Pareto Daten usw. Einzelmessergebnisse (Rohdaten) ► Vorverdichtung der Daten zur Ladezeit mittels PL/SQL Trigger ► Intelligente Indizierung für gesteigerte Performance Innovative silicon for a mobile world Vorverdichtete Daten Rohdaten Kariem Yehia, DOAG 2006
Der Umgang mit Massendaten ► Je tiefergreifender die Analyse, desto mehr Datensätze ► Rollierende Datenhaltung, je nach Aggregationsstufe Partitionierung der Daten und Nutzung von lokalen Indizes auf unterster Ebene (ca. 70% der Daten) ► ► Partitionierung mittels Zeitcodierung in der ID einfach Zuordnung auch für den Menschen ► deutliche Performancesteigerung bei selects UND beim löschen 10 Innovative silicon for a mobile world Kariem Yehia, DOAG 2006
Der Umgang mit Massendaten ► Logging Probleme: ► Verringerte Datenbankperformance für die Anwender ► Großer Platzverbrauch ► Logging der untersten Ebene ist für uns nicht von Vorteil 11 Ø NO_LOGGING und /*+append*/ bei insert Ø Delete von Massendaten mittels drop partition Innovative silicon for a mobile world Kariem Yehia, DOAG 2006
PL/SQL Abstraktionsschicht ► A: Notwendig für schnelles Online-Reporting . . . t ► Vorteile von PL/SQL Code in der Datenbank ► ► Flexibel 12 Wiederverwendbarer / verschachtelter Code ► Übersichtlich und gut wartbar ► Schnell durch effizientes Datenbank-caching Innovative silicon for a mobile world t: . . . x: . . . --main function . . . B: . . . x A . . C: B t . . . C . . . D: . . . D x. . . Kariem Yehia, DOAG 2006
Pipelined Table Functions ► Zusätzliche Vorteile von Pipelined Table Functions ► Wirken nach außen wie eine Tabelle ► Können im Vergleich zu Views Inputparameter verarbeiten höchste Flexibilität ► Liefern genau die aufbereiteten Daten zurück, die für das Reporting benötigt werden 13 ► Live Demonstration und kurze Einführung in PTFs Innovative silicon for a mobile world Kariem Yehia, DOAG 2006
Architektur Phase II Oracle 9 i / Solaris 9 PL/SQL Tabellen Abstraktions schicht HTTP-Server Partitionen Tabellen - Funktionen JDBC (Thin) Apache / Tomcat Clients - Trigger - Prozeduren 14 Interne Rohdaten 200 Mio. Rd/day via - OCI Zuliefererdaten 10. 00 Rd/day via - Perl DBI Innovative silicon for a mobile world Kariem Yehia, DOAG 2006
Import der Produktionsdaten ► Einsatz unterschiedlicher Technologien ► OCI (Oracle Call Interface): ► ► ► Wird lt. Oracle auch innerhalb der Datenbank verwendet Anbindung der STDF-Datenquellen für Bulk-Inserts (bis zu 10. 000 Records / Sekunde erzielbar) Perl-DBI: Ladeskripte für untergeordnete Datenquellen ► Sehr leistungsfähiges Interface 15 ► ► Mehr als 5. 000 Records / Sekunde erzielbar ► Unterstützt ‚prepare‘ von subsequent-SQL-Statements Sehr kurze Enwicklungszeiten durch Nutzung von Open. Source-Werkzeugen (Eclipse zusammen mit E-P-I-C-Plugin) http: //eclipse. org http: //e-p-i-c. sourceforge. net Innovative silicon for a mobile world Kariem Yehia, DOAG 2006
Wachstumsphasen der Produktions-Datenbank erste neue Generation der Datenbank. Anwendung: Integration geringes derder Final Wafer-Test Datenvolumen, -Test Daten dennoch lange Antwortzeiten Integration der Tapeund Reel Daten Konsolidierungsphase: Automatische Lösch -Jobs komplett in Betrieb, quasi „Wartungsfrei“ (derz. 2. 8 Mrd Sätze) 16 Innovative silicon for a mobile world Kariem Yehia, DOAG 2006
Neue Applikationen und Auswertungen Konsequenz: Performanceprobleme ► Gründe für Performanceprobleme ► Up-Time des Filesystems: Performance & Stabilitätsrisiko ► z. T. Gesamtausfall des Filesystems und der Datenbank ► Kumulierung der Ladejobs, Verschiebung von Folgejobs ► ► ► Anschaffung eines NAS-Systems statt herkömmlichen RAID-Systems Backup: Nutzung der Snapshot-Technologie des NAS 17 Steigende Zahl an Applikationen ► Data Engineering Methoden ► Final Test Data Merging ► Wafer Map Reconstruction Innovative silicon for a mobile world Kariem Yehia, DOAG 2006
Neue Applikationen und Auswertungen Konsequenz: Performanceprobleme ► Abhilfe: Tuning-Workshop mit externem Berater ► Analyse der typischen Vorgänge ► Laden der Rohdaten ► PL/SQL-Code in Triggern ► Auswertungen über Web-Reporting mit Hilfe von statspack ► ► ► Ressourcenbedaf für jedes SQL bzw. PL/SQL Statement ermitteln Analyse der Vorgänge Ermittlung des Ressourcen bedarfs 18 Ggf. Sofortmaßnahmen einleiten Fazit: CPU als Engpaß identifiziert ► Definition einer skalierbaren, zukunftssicheren Server-Hardware ► Migration auf Oracle 10 g R 2 : auf neuer Server Hardware Innovative silicon for a mobile world evt. Einleitung von Sofortmassnahmen: z. B. Log/Redo. Buffer-Größe oder Statistiken Kariem Yehia, DOAG 2006
Architektur Phase III Oracle 10 Oracleg 9 i. R 2 / Solaris 9 10 PL/SQL Tabellen Abstraktions schicht HTTP-Server Partitionen - Funktionen JDBC (Thin) Apache / Tomcat Clients - Trigger autom. Feedback. Reports an Kunden & Zulieferer - Prozeduren 19 Interne Rohdaten 200 Mio. Rd/day via - OCI Zuliefererdaten 10. 000 Rd/day via - Perl DBI Innovative silicon for a mobile world Kariem Yehia, DOAG 2006
Die neue Datenbank: Eine Erfolgsstory ► Testsystem ► Unbedingt einzuplanen ► Die ganze Wahrheit: „harmlose “ Oracle-Patches im Produktiv-System ► Analysezeiten signifikant gesenkt ► Analysemöglichkeiten: Design-Bug vor Volumenproduktion gefunden ► Entlastung des DBA als „Query-Builder“ ► 20 Akzeptanz ► Erfolgsrezept: Benennung eines „Champions“, für Anforderungen/Methodik ► Datenbank nun primäre Datenquelle ► Durch Standardreporting zuverlässige und fehlerfreie Analysen bereitgestellt Innovative silicon for a mobile world Kariem Yehia, DOAG 2006
Fragen ? 21 Vielen Dank für Ihre Aufmerksamkeit ! Innovative silicon for a mobile world Kariem Yehia, DOAG 2006
- Slides: 21