Übung: Data Warehousing und Data Mining

Ähnliche Dokumente
Übung: Data Warehousing und Data Mining

Zugriff auf die Datenbank. Ulf Leser Wissensmanagement in der Bioinformatik

Dynamisches SQL. Folien zum Datenbankpraktikum Wintersemester 2009/10 LMU München

Java Database Connectivity (JDBC) Walther Rathenau Gewerbeschule 1

Prozedurale Datenbank- Anwendungsprogrammierung

Dipl. Inf. Dipl. Math. Y. Orkunoglu Datum:

seit Java 1.1 Bestandteil der API: packages java.sql, javax.sql

Gesicherte Prozeduren

Fakultät für Informatik & Wirtschaftsinformatik DB & IS II - SS Metadaten

SQL (Structured Query Language) Schemata Datentypen

Universität Stuttgart Abteilung Anwendersoftware Steht für Embedded SQL in Java. - Java-Methoden als SQL Stored-Procedures

3. Stored Procedures und PL/SQL

DB2 Kurzeinführung (Windows)

Oracle 12c: Neuerungen in PL/SQL. Roman Pyro DOAG 2014 Konferenz

Mengenvergleiche: Alle Konten außer das, mit dem größten Saldo.

Oracle: Abstrakte Datentypen:

Universität Duisburg-Essen Informationssysteme Prof. Dr.-Ing. N. Fuhr. Praktikum Datenbanken / DB2 Woche 8: Trigger, SQL-PL

BitDefender Client Security Kurzanleitung

Name des Servers auf dem die Produktiv-IL-Datenbank läuft. Name des Servers auf dem die Test-IL- Datenbank läuft

Lehrveranstaltung Grundlagen von Datenbanken

Advoware mit VPN Zugriff lokaler Server / PC auf externe Datenbank

Internet Explorer Version 6

SMART Newsletter Education Solutions April 2015

Safexpert Oracle Datenbank Konnektor. Stand: IBF-Automatisierungs-und Sicherheitstechnik GmbH A-6682 Vils Bahnhofstraße 8

php Hier soll ein Überblick über das Erstellen von php Programmen gegeben werden. Inhaltsverzeichnis 1.Überblick Parameterübergabe...

OP-LOG

Einführung Inhaltsverzeichnis

Informatik 12 Datenbanken SQL-Einführung

Handbuch. timecard Connector Version: REINER SCT Kartengeräte GmbH & Co. KG Goethestr Furtwangen

Folgendes PL/SQL Codefragment zeigt das grundlegende Statement für diesen Test: Java.

Verwendung des IDS Backup Systems unter Windows 2000

Universität Augsburg, Institut für Informatik WS 2006/2007 Dr. W.-T. Balke 27. Nov M. Endres, A. Huhn, T. Preisinger Lösungsblatt 5

mit Musterlösungen Prof. Dr. Gerd Stumme, Dipl.-Inform. Christoph Schmitz 11. Juni 2007

Um über FTP Dateien auf Ihren Public Space Server - Zugang laden zu können benötigen Sie folgende Angaben:

Entwicklungsumgebung für die Laborübung

Datenbanken und Informationssysteme II

Sie müssen sich für diesen Fall mit IHREM Rechner (also zeitgut jk o.ä.) verbinden, nicht mit dem Terminalserver.

Inhalt. 1 Einleitung AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER

Java: Vererbung. Teil 3: super()

desk.modul : WaWi- Export

e-books aus der EBL-Datenbank

MySQL Installation. AnPr

IMAP Backup. Das Programm zum Sichern, Synchronisieren, Rücksichern und ansehen von gesicherten Mails. Hersteller: malu-soft

Tevalo Handbuch v 1.1 vom

10.6 Programmier-Exits für Workitems

Bedienungsanleitung für den Online-Shop

Professionelle Seminare im Bereich MS-Office

pro4controlling - Whitepaper [DEU] Whitepaper zur CfMD-Lösung pro4controlling Seite 1 von 9

Programmieren für mobile Endgeräte SS 2013/2014. Dozenten: Patrick Förster, Michael Hasseler

Einrichtung des Cisco VPN Clients (IPSEC) in Windows7

Hochschule Karlsruhe Technik und Wirtschaft Anhänge: Fakultät für Informatik und Wirtschaftsinformatik SS 2013 Prof. Schmidt.

Oracle SQL Tutorium - Wiederholung DB I -

How-to: Webserver NAT. Securepoint Security System Version 2007nx

Anleitung zur Nutzung des SharePort Utility

Windows Server 2008 (R2): Anwendungsplattform

MSDE 2000 mit Service Pack 3a

Lokale Installation von DotNetNuke 4 ohne IIS

Installationsanleitung. Novaline Datenarchivierung / GDPdU

Session Beans & Servlet Integration. Ralf Gitzel ralf_gitzel@hotmail.de

Das Starten von Adami Vista CRM

Projektmanagement in Outlook integriert InLoox 5.x Konfigurationshilfe für Oracle Server

Klausur zur Vorlesung Datenbanksysteme I

Betroffene Produkte: Alle Versionen von Oracle Forms (3.0-10g, C/S und Web), Oracle Clinical, Oracle Developer Suite

3 Richtlinienbasierte Verwaltung und Multi-Server- Administration

Softwaretechnologie Wintersemester 2009/2010 Dr. Günter Kniesel, Pascal Bihler

SWISSVAULT StorageCenter Console Version 5 Kurzanleitung für SWISSVAULT Combo Partner

Meine ZyXEL Cloud. Tobias Hermanns V0.10

desk.modul : ABX-Lokalisierung

Clientkonfiguration für Hosted Exchange 2010

Whitebox-Tests: Allgemeines

INSTALLATIONSANLEITUNG der Version 2.1 (Jänner 2014)

Übungen Programmieren 1 Felix Rohrer. Übungen

SQL für Trolle. mag.e. Dienstag, Qt-Seminar

Planung für Organisation und Technik

mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank

ACCOUNTS. Wer ist marken mehrwert und was passiert mit den Daten? Wozu brauche ich einen Account bei marken mehrwert?

Java Application 1 Java Application 2. JDBC DriverManager. JDBC-ODBC Br idge. ODBC Driver Manager. Dr iver C. Dr iver D.

Datenbanken. Ein DBS besteht aus zwei Teilen:

2. Einrichtung der ODBC-Schnittstelle aus orgamax (für 32-bit-Anwendungen)

VPN CISCO ANYCONNECT

World4You Kundencenter

cs241: Datenbanken mit Übungen HS 2011

Blumen-bienen-Bären Academy. Kurzanleitung für Google Keyword Planer + Google Trends

Workflow. Installationsanleitung

Erfolgreiche Verbindung. 3. Anmeldung: Bitte geben Sie Ihren Benutzernamen und Ihr Kennwort ein.

JDBC. Es kann z.b. eine ODBC-Treiberverbindung eingerichtet werden, damit das JAVA-Programm auf eine ACCESS-DB zugreifen kann.

Synchronisations- Assistent

SQL Server 2008 Standard und Workgroup Edition

ERSTE SCHRITTE.

Kommunikationsübersicht XIMA FORMCYCLE Inhaltsverzeichnis

Installation der 4Dv12sql Software für Verbindungen zum T.Base Server

Sie finden im Folgenden drei Anleitungen, wie Sie sich mit dem Server der Schule verbinden können:

Programmierkurs Java

Transkript:

Übung: Data Warehousing und Data Mining Sebastian Wandelt 20. Oktober 2011 wandelt@informatik.hu-berlin.de

Überblick Organisatorisches Kurze Einführung JDBC PL/SQL 1. Aufgabenblatt

Ablauf des Semesters 7 Pflichttermine (neue Aufgabe/Lösung) Heute 44./45. KW: 03./10.11.2011 46./47. KW: 17./24.11.2011 49. KW: 08.12.2011 01. KW: 05.01.2012 04. KW: 26.01.2012 07. KW: 16.02.2012 (Siegerehrung) Alle anderen Termine sind fakultativ

Ablauf eines Pflichttermins Vorstellung der Lösungen durch jede Gruppe (eine Präsentation 5-10 Minuten) Im Laufe des Semesters muss jeder Student mindestens einmal vortragen! Wer: vorher überlegen! Neues Aufgabenblatt plus eventuelle Lösungshinweise

Gruppenbildung Eine Gruppe mit 2-3 Personen Per Mail schicken Matrikelnummer und Namen der Studenten Alle Mailadressen Ansprechpartner Jede Gruppe bekommt einen Account für die Oracle-Instanz auf delphi.informatik.hu-berlin.de Passwort bekommt die Gruppe per Mail (testen!) VPN benutzen

Die Aufgaben / Wettbewerb Insgesamt gibt es 6 Aufgaben zu lösen 4 der Aufgaben sind als Wettbewerb konzipiert (Aufgaben 2, 4, 5 und 6) Es gibt (parallel zu den Scheinpunkten) Punkte für die schnellste und effizienteste Lösung Die beste Gruppe bekommt am Ende ein kleines Präsent

Kriterien für die Prüfung Alle Aufgaben (durch die Gruppe) bearbeitet Für jede Aufgabe mindestens 50% der Punkte (Mindestens) eine Lösung vorgetragen => Anmeldung zur mündlichen Prüfung

Terminfindung Alternativer Übungstermin (Vermutlich) an Stelle von Donnerstag 13 bis 15 Uhr Constraints Montag - Donnerstag 7 bis 13 Uhr Raum muss verfügbar sein(!)

Datenbankzugriff Alternativen Alles in Java machen JDBC Treiber von Oracle herunterladen Java programmieren Java-basierte GUI verwenden (z.b. Aquafold) JDBC Treiber von Oracle herunterladen Anwendung installieren Tool benutzen, die den Oracle Client verwenden (z.b. SQL*PLUS, Toad, TORA, ) Oracle Client herunterladen (Oracle Technology Network) Ca. 650 MB Installieren Dann Tool installieren

Verbindungsdaten Server: delphi.informatik.hu-berlin.de Port 1522 Instanz: orcl10 Typischer Connect-String delphi.informatik.hu-berlin.de:1522: orcl10 Für lokalen Oracle-Client Tnsnames.ora abändern Eintrag: DWH = (DESCRIPTION = ( ADDRESS = (PROTOCOL = TCP)(HOST = delphi.informatik.hu-berlin.de)(port= 1522)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = orcl10) ) )

Zum Entwicklen / Testen Lokale Installation von Oracle 10g / 11g Express Edition

JDBC - kompakt

JDBC - Idee

JDBC - Konzepte DB-spezifischer JDBC-Treiber: DriverManager Verbindung zur DB: Interface Connection Anfragen formulieren: Statement Ergebnisse auswerten: ResultSet Metadaten über die DB

JDBC Verbindung zu Oracle //classpath um JDBC-Bibliotheken ergänzen DriverManager.registerDriver(oracle.jdbc.OracleDriver()); server= delphi.informatik.hu-berlin.de:1522:orcl10 ; Connection con = DriverManager.getConnection( jdbc:oracle:thin:@ +server, "gruppename", "kennwort");

JDBC Statements Sind gewöhnliche SQL-Statements, die JDBC an die DB weiterleitet erzeugt wird ein Statement über das Interface Connection Statement stmt=con.createstatement();

JDBC Statements Beispiele stmt.execute( "CREATE TABLE coworkers(c_idint, namevarchar(25))" ); stmt.execute( "INSERT INTO coworkers VALUES (1, 'Herbert') ); stmt.close(); //nicht vergessen!

JDBC Anfragen Ausführung von Statement.executeQuery(); Erzeugt einobjekt mit Interface ResultSet ResultSetresult=stmt.executeQuery( "SELECT c_id, name FROM coworkersorder BY c_id) ); ResultSet speichert einen internen aktuellen Pointer auf die Ergebnisliste Buffergöße! Ergebnisse werden tupelweise durchlaufen über result.next(); Bereits das erste Tupel bedarf des vorherigen Aufrufs von result.next(); Aufruf liefert true, wenn weitere Tupel vorhanden; sonst false

JDBC ResultSet Über die Methoden ResultSet.getXXX("<attrib>") also getstring(), getint(), stmt.executequery("selectc_id,name.. while(result.next()) { } intc_id= result.getint("c_id"); String name= result.getstring("name"); Man muss also den Datentypen der Spalte kennen Zugriff möglich über Metadaten (über ResultSet erhältlich)

JDBC PreparedStatements Normale SELECT Statements werden in der DB jedes Mal neu geparst, optimiert und kompliert Bei mehrfacher Ausführung eines Statements mit nur geänderten Parametern ist das ineffektiv Besser: Anstelle von Statement PreparedStatement pstmt=con.preparestatement( {LOOP} // preparetuples: pstmt.setint(1, anint); "INSERT INTO coworkers (c_id, name) VALUES (?,?) ); string as 2nd attribute: pstmt.setstring(2, astring); // executepreparedstatement pstmt.execute(); {POOL} pstmt.close();

JDBC Exceptions JDBC Methoden können SQLExceptionwerfen Abfangen! Beispiele "Geschlossene Anweisung Wo? Statement.execute() Was? Es wird auf ein Instanz von Statement zugegriffen, die zuvor mit Statement.close() geschlossen wurde "ORA-00001: Verstoß gegen Eindeutigkeit" Wo? Statement.execute("INSERT.."); Was? Einfügen bereits vorhandener Werte in eine Spalte (unique)

JDBC - Quellen Google http://www.jdbc-tutorial.com/ http://www.oracle.com/technetwork/databas e/enterprise-edition/jdbc-112010-090769.html

PL/SQL - kompakt Oracle-eigeneProgrammiersprache mit enger Integration in SQL Sämtliche prozeduralen Konzepte sind verfügbar: Funktionen/ Prozeduren, Abfragen/bedingte Ausführung, Schleifen, etc. Wird verwendet für SQL Funktionen, Trigger, Stored-Procedures, etc. Code wird in der Datenbank, uuwährend der Ausführung einer SQL- Anfrage ausgeführt Keine Benutzerschnittstellen Keine Ausgabe auf Bildschirm etc. Logging ist gar nicht so einfach (Transaktionen) Alternative: Java in der Datenbank Oder SQLJ

PL/SQL - Programme DECLARE.. /* Variablen-&Typdeklarationen */ BEGIN.. /* Programmcode, Funktionen.. */ EXCEPTION.. /* Exception-Handling*/ END;

PL/SQL - Beispiel DECLARE cntnumber; BEGIN SELECT count(*) INTO cntfrom USER_TABLES; cnt:= cnt*10; INSERT INTO mytabellevalues (cnt, constant ); END;

PL/SQL - Variablen Alle von Oracle unterstützen Typen + NUMBER, BOOLEAN Ermittlung zur Compilezeitmöglich DECLARE name VARCHAR(20); gruppe NUMBER;

PL/SQL - Sonstiges Kontrollflüsse Bedingungen, Schleifen, Ausnahmen,. Kompilieren von Programmen CREATE OR REPLACE PROCEDURE myproc IS EXEC myproc;

PL/SQL EXPLAIN PLAN EXPLAIN PLAN (FOR) SELECT * FROM user_tables; Parst und optimiert die Query, ohne sie auszuführen Speichert die Abfolge sämtlicher gewählter Operationen in einer Tabelle ab Referenzierte Tabellen Verwendete Zugriffsmethoden Join-Methode Geschätzte Kosten Pläne können durch externe Tools angezeigt werden

Zusammenfassung Bis nächsten Montag: Feste Übungstermine Übungsgruppenfestlegung (per Mail) Dienstag: Zusenden der Zugangsdaten

Fragen, Anregungen?