Mehr finden: Hayoo! Haskell API Search
|
|
- Hertha Bach
- vor 7 Jahren
- Abrufe
Transkript
1 Mehr finden: Hayoo! Haskell API Search Eine Einführung in das Holumbus Framework Timo B. Hübel Fachhochschule Wedel / freiheit.com technologies gmbh 12. Juni 2009 HaL4 Halle (Saale) 1 / 31
2 Motivation Architektur Datenstrukturen Einführung 1 Einführung Motivation Architektur Datenstrukturen 2 Dokumente Crawler Indexer 3 Modell Auswertung 2 / 31
3 Motivation Architektur Datenstrukturen Geschichte Idee Flexibles Framework zur Erstellung von spezialisierten n Bisherige Arbeiten S. Schlatt: Creating scalable and highly customized crawlers and indexers T. Hübel: Creating fast, flexible and highly customizable search engines with Haskell S. Schmidt: Distributed computing with MapReduce in Haskell 3 / 31
4 Motivation Architektur Datenstrukturen Hayoo! 4 / 31
5 Motivation Architektur Datenstrukturen Hayoo! Umfang Sämtliche Haskell Pakete von hackage.haskell.org Durchschnittliche Dokumentgröße: 16 Wörter Statistik Dokumente Wörter / Größe 35,1 MB Speicher 548 MB Wachstum > > > / 31
6 Motivation Architektur Datenstrukturen n Crawler-Indexer Architektur nach [BYRN99] 6 / 31
7 Motivation Architektur Datenstrukturen Komponenten Struktur des Holumbus Framework 7 / 31
8 Motivation Architektur Datenstrukturen Schnittstellen Typklassen HolIndex Zentrale Index-Schnittstelle HolDocuments Bidirektionale Abbildung zwischen URI und Id HolCache Volltext-Cache zum Speichern von Dokumenten Typparameter Beliebige Zusatzinformationen zu einem Dokument data Document a = Document { t i t l e : : T i t l e, u r i : : URI, custom : : Maybe a } 8 / 31
9 Motivation Architektur Datenstrukturen Inverted File Komponenten Vocabulary Verzeichnis aller Wörter Occurrences Positionsangaben zu den Wörtern Inverted File Datenstruktur 9 / 31
10 Motivation Architektur Datenstrukturen Index Definition newtype I n v e r t e d = I n v e r t e d { i n d e x P a r t s : : P a r t s } type P a r t s = Map Context Part type Part = StrMap O c c u r r e n c e s type O c c u r r e n c e s = IntMap I n t S e t Details Modellierung der Dokumentstruktur durch mehrere Indexe Speicherung der Wortpositionen (Fully Inverted File) 10 / 31
11 Motivation Architektur Datenstrukturen Patricia-Trie Eigenschaften Präfix-Baum mit zusammengefassten Knoten. Vorteile Suche in O(l) Präfix-Suche möglich Speichereffizienz Nachteile Teure Einfügeoperation 11 / 31
12 Motivation Architektur Datenstrukturen StrMap Definition data T r i e a = End Key a [ T r i e a ] Seq Key [ T r i e a ] type Key = [ Word8 ] Unicode? Darstellung von Unicode-Zeichen als Word8 durch UTF8-Encoding Vorteil Beliebige auf ByteString abbildbare Typen als Schlüssel 12 / 31
13 Dokumente Crawler Indexer 1 Einführung Motivation Architektur Datenstrukturen 2 Dokumente Crawler Indexer 3 Modell Auswertung 13 / 31
14 Dokumente Crawler Indexer Haddock Haskell Dokumentation generiert von Haddock 14 / 31
15 Dokumente Crawler Indexer Dokumente Hayoo! type HayooDoc = Document F u n c t i o n I n f o data Document a = Document { t i t l e : : T i t l e Funktionsname, u r i : : URI URI ( i n k l. Textmarke ), custom : : Maybe a Z u s a t z i n f o r m a t i o n } data F u n c t i o n I n f o = F u n c t i o n I n f o { modulename : : S t r i n g Modulname, s i g n a t u r e : : S t r i n g S i g n a t u r, package : : S t r i n g Cabal Paket, sourceuri : : Maybe S t r i n g Q u e l l c o d e } 15 / 31
16 Dokumente Crawler Indexer Anforderungen Grundfunktionen Verwaltung bearbeiteter und zu bearbeitender Dokumentmengen Identifikation von Referenzen Ein-/Ausschluss von Dokumenten & -bäumen Erweiterte Funktionalität Identifikation identischer Dokumente mit unterschiedlichen URIs Extraktion von Zusatzinformationen 16 / 31
17 Dokumente Crawler Indexer Funktionsweise Ablauf 1 Abrufen des Dokuments unter einer URI 2 Rekursiver Aufruf für alle im Dokument enthaltenen URIs Interner Zustand (vereinfacht) data C r a w l e r S t a t e a = C r a w l e r S t a t e { cs_tobeprocessed : : Set URI, c s _ w e r e P r o c e s s e d : : Set URI, c s _ f C r a w l F i l t e r : : ( URI > Bool ), cs_ docs : : Documents a, cs_ fgetcustom : : IOSArrow XmlTree ( Maybe a ), cs_ dochashes : : Map MD5Hash URI } 17 / 31
18 Dokumente Crawler Indexer Transformation Mögliche Transformationen Berechnung Ranking-relevanter Werte Aufteilung von Dokumenten in logische Dokumente Änderung der URIs um auf lokalen Kopien zu arbeiten Hayoo! Zerlegung der Haddock-Dokumentation in viele Einzeldokumente (eines pro Funktion) 18 / 31
19 Dokumente Crawler Indexer Anforderungen Grundfunktionen Konfiguration verschiedener Kontexte Zerlegung von Zeichenketten in Wörter Identifikation von Stop-Wörtern Erweiterte Funktionalität Vorverarbeitung des Dokuments Erstellung eines Caches 19 / 31
20 Dokumente Crawler Indexer Indexer Konfiguration (vereinfacht) data I n d e x e r C o n f i g = I n d e x e r C o n f i g { i c _ s t a r t P a g e s : : [ URI ], ic_tmppath : : Maybe S t r i n g, i c _ c o n t e x t C o n f i g s : : [ C o n t e x t C o n f i g ] } data C o n t e x t C o n f i g = C o n t e x t C o n f i g { cc_name : : S t r i n g, c c _ p r e F i l t e r : : ArrowXml a => a XmlTree XmlTree, c c _ f E x t r a c t : : ArrowXml a => a XmlTree XmlTree, c c _ f T o k e n i z e : : S t r i n g > [ S t r i n g ], cc_fisstopword : : S t r i n g > Bool, cc_addtocache : : Bool } 20 / 31
21 Dokumente Crawler Indexer Hayoo! Indexer Kontexte im Hayoo! Index description Funktionsbeschreibung (Fold the values...) hierarchy Vollqualifizierter Modulname (Data.Map) module Modulname (Map) name Funktionsname (foldwithkey) package Paketname (containers) signature Signatur der Funktion (Int -> Int -> Bool) normalized Normalisierte Signatur (a -> a -> b) 21 / 31
22 Modell Auswertung 1 Einführung Motivation Architektur Datenstrukturen 2 Dokumente Crawler Indexer 3 Modell Auswertung 22 / 31
23 Modell Auswertung Boolean Model Operatoren AND Schnitt von Dokumentmengen OR Vereinigung von Dokumentmengen NOT Komplement einer Dokumentmenge Eigenschaften Weit verbreitet und bekannt Einfacher und prägnanter Formalismus 23 / 31
24 Modell Auswertung Erweiterte Funktionalität Präfix-Suche Suche nach Test liefert z.b. auch Testbericht, Testanalyse, Testergebnisse, Testen, etc. Zusätzliche Wörter als Vorschläge (suggestions) Suchergebnisse ab dem ersten Buchstaben (find as you type) Dokumentstruktur Nutzung der Abbildung der Dokumentstruktur im Index. Standardmäßig Durchsuchen aller Indexe Konkrete Anfragen an einzelne Indexe 24 / 31
25 Modell Auswertung Erweiterte Funktionalität Präfix-Suche Suche nach Test liefert z.b. auch Testbericht, Testanalyse, Testergebnisse, Testen, etc. Zusätzliche Wörter als Vorschläge (suggestions) Suchergebnisse ab dem ersten Buchstaben (find as you type) Dokumentstruktur Nutzung der Abbildung der Dokumentstruktur im Index. Standardmäßig Durchsuchen aller Indexe Konkrete Anfragen an einzelne Indexe 24 / 31
26 Modell Auswertung Query data Query = Word String Phrase String CaseWord String CasePhrase String FuzzyWord String Negation Query S p e c i f i e r [ Context ] Query BinQuery BinOp Query Query data BinOp = And Or But Verwendung Parser - Umwandlung beliebiger Syntax in Query-Struktur Prozessor - Rekursive Auswertung der Query-Struktur 25 / 31
27 Modell Auswertung Query data Query = Word String Phrase String CaseWord String CasePhrase String FuzzyWord String Negation Query S p e c i f i e r [ Context ] Query BinQuery BinOp Query Query data BinOp = And Or But Verwendung Parser - Umwandlung beliebiger Syntax in Query-Struktur Prozessor - Rekursive Auswertung der Query-Struktur 25 / 31
28 Modell Auswertung Query Beispiel Beispiel first,second:( dogs are great AND (garden OR!House)) Resultierende Query-Strukur 26 / 31
29 Modell Auswertung Prozessor Funktionsweise 1 Rekursiver Abstieg durch den Query-Baum 2 Auswertung der Blätter durch Indexanfragen 3 Anwendung entsprechender Operatoren Operationen Einschränkung der Kontexte und Abbildung der Boolschen Operatoren auf entsprechende Mengen-Operationen. data P r o c e s s S t a t e i = P r o c e s s S t a t e { c o n t e x t s : : [ Context ], i n d e x : : i } 27 / 31
30 Modell Auswertung Ergebnis Inhalt Ergebnis enthält Dokumente und Vervollständigungen Datenstruktur data R e s u l t a = R e s u l t { d o c H i t s : : ( DocHits a ), wordhits : : WordHits } data DocInfo a = DocInfo ( Document a ) Score data WordInfo = WordInfo Terms S c o r e type DocHits a = IntMap ( DocInfo a, Map Context (Map Word P o s i t i o n s ) ) type WordHits = Map Word ( WordInfo, Map Context ( IntMap P o s i t i o n s ) ) 28 / 31
31 Modell Auswertung Ranking Konfiguration data RankConfig = RankConfig { docranking : : DocId > DocHits > Score, wordranking : : Word > WordHits > S c o r e } Hayoo! Bevorzugung von Treffern in Prelude und base Gewichtung der Kontexte (z.b. Name vor Beschreibung) Bessere Bewertung exakter Treffer 29 / 31
32 Modell Auswertung Ausblick Holumbus Alternative Implementierungen der Index-Datenstruktur Verteilung und Parallelisierung der Query-Auswertung Praktischer Einsatz des MapReduce Frameworks Hayoo! Verbessertes Ranking durch Dependency-Rank Automatisierte Aktualisierung des Index 30 / 31
33 Modell Auswertung Ausblick Holumbus Alternative Implementierungen der Index-Datenstruktur Verteilung und Parallelisierung der Query-Auswertung Praktischer Einsatz des MapReduce Frameworks Hayoo! Verbessertes Ranking durch Dependency-Rank Automatisierte Aktualisierung des Index 30 / 31
34 Modell Auswertung Fragen? Vielen Dank für die Aufmerksamkeit! Weitere Infos, Quellcode etc. unter: Hayoo! Haskell API Search unter: Fragen an: 31 / 31
Inverted Files for Text Search Engines
Inverted Files for Text Search Engines Justin Zobel, Alistair Moffat PG 520 Intelligence Service Emel Günal 1 Inhalt Einführung Index - Inverted Files - Indexkonstruktion - Indexverwaltung Optimierung
MehrDie Warenkorbfunktion (workbasket)
Beschreibung der Komponente zur integration eines Warenkorbs in die Anwendung Table of contents 1 Allgemein...2 2 Körbe speichern und laden...3 3 Aufgelöstes XML oder beliebige weitere Metadaten im Korb...
MehrÜbersicht. Grundidee des Indexing Lucene Wichtige Methoden und Klassen Lucene Indizierungsbeispiele Lucene Suchbeispiele Lucene QueryParser Syntax
Indizierung Lucene Übersicht Grundidee des Indexing Lucene Wichtige Methoden und Klassen Lucene Indizierungsbeispiele Lucene Suchbeispiele Lucene QueryParser Syntax Grundideen und Ziel des Indexing Effizientes
MehrFederated Search: Integration von FAST DataSearch und Lucene
Federated Search: Integration von FAST DataSearch und Lucene Christian Kohlschütter L3S Research Center BSZ/KOBV-Workshop, Stuttgart 24. Januar 2006 Christian Kohlschütter, 24. Januar 2006 p 1 Motivation
Mehr11. Komponenten Grundlagen der Programmierung 1 (Java)
11. Komponenten Grundlagen der Programmierung 1 (Java) Fachhochschule Darmstadt Haardtring 100 D-64295 Darmstadt Prof. Dr. Bernhard Humm FH Darmstadt, 10. Januar 2006 Einordnung im Kontext der Vorlesung
MehrPraktikum Information Retrieval Wochen 12: Suchmaschine
Praktikum Information Retrieval Wochen 12: Suchmaschine Melikka Khosh-Niat Matthias Jordan 23. Mai 3. Juni 2011 Lösungen: Upload bis 3. Juni 2011 Aktuelle Informationen, Ansprechpartner, Material und Upload
MehrEinführung in das Eclipse Modeling Framework. 5. November 2014
Einführung in das Eclipse Modeling Framework 5. November 2014 Überblick Einführung in das Eclipse Modeling Framework: zur objektorientierten Modellierung von Datenstrukturen Welcher Teil einer mobilen
MehrKurzanleitung zu XML2DB
Kurzanleitung zu XML2DB Inhaltsverzeichnis 1. Einleitung...3 2. Entwicklungsumgebung...3 3. Betriebsanleitung...3 3.1 Einrichten der Java Umgebung...3 3.2 Allgemeines zu java und javac...4 3.2.1 Allgemeines
MehrJakarta Lucene. Eine Java-Bibliothek zur Suchindex-Erstellung. Seminararbeit Tilman Schneider
Jakarta Lucene Eine Java-Bibliothek zur Suchindex-Erstellung Seminararbeit Tilman Schneider 2004 Tilman Schneider Seminararbeit: Jakarta Lucene Folie 1 Agenda Definition: Suchmaschine Vorstellung von Jakarta
MehrProgrammieren in Haskell Einstieg in Haskell
Programmieren in Haskell Einstieg in Haskell Peter Steffen Universität Bielefeld Technische Fakultät 24.10.2008 1 Programmieren in Haskell Was wir heute machen Umfrage: Wer hat den Hugs ausprobiert? Ausdrücke
MehrProgrammieren in Haskell
Programmieren in Haskell Wir steigen ein... Programmieren in Haskell 1 Was wir heute machen Umfrage: Wer hat den Hugs ausprobiert? Ausdrücke und Werte Datentypen Funktionen Aufgabe für diese Woche Programmieren
MehrSuchmaschinen. Anwendung RN Semester 7. Christian Koczur
Suchmaschinen Anwendung RN Semester 7 Christian Koczur Inhaltsverzeichnis 1. Historischer Hintergrund 2. Information Retrieval 3. Architektur einer Suchmaschine 4. Ranking von Webseiten 5. Quellenangabe
MehrProgrammieren in Haskell Programmiermethodik
Programmieren in Haskell Programmiermethodik Peter Steffen Universität Bielefeld Technische Fakultät 12.01.2011 1 Programmieren in Haskell Bisherige Themen Was soll wiederholt werden? Bedienung von hugs
MehrWas bisher geschah. deklarative Programmierung. funktionale Programmierung (Haskell):
Was bisher geschah deklarative Programmierung funktional: Programm: Menge von Termgleichungen, Term Auswertung: Pattern matsching, Termumformungen logisch: Programm: Menge von Regeln (Horn-Formeln), Formel
MehrEinführung in die Informatik: Programmierung und Software-Entwicklung, WS 12/13. Kapitel 3. Grunddatentypen, Ausdrücke und Variable
1 Kapitel 3 Grunddatentypen, Ausdrücke und Variable 2 Eine Datenstruktur besteht aus Grunddatentypen in Java einer Menge von Daten (Werten) charakteristischen Operationen Datenstrukturen werden mit einem
MehrRepetitorium Informatik (Java)
Repetitorium Informatik (Java) Tag 6 Lehrstuhl für Informatik 2 (Programmiersysteme) Übersicht 1 Klassen und Objekte Objektorientierung Begrifflichkeiten Deklaration von Klassen Instanzmethoden/-variablen
MehrWebsite-Suche mit OpenText Web Site Management. Frank Steffen - Senior Product Manager
Website-Suche mit OpenText Web Site Management Frank Steffen - Senior Product Manager Inhalt Überblick Konzepte der Suchmaschinenanbindung Verity K2 Anbindung Der neue OT Search Engine Connector Federated
MehrSUCHMASCHINEN XAPIAN. Michael Strzempek FH Wiesbaden, 5. Juni 2008
SUCHMASCHINEN XAPIAN Michael Strzempek FH Wiesbaden, 5. Juni 2008 INHALT 1. Motivation 2. Prinzip / Vokabular 3. Xapian 4. Omega 5. Datenbank Indizierung 6. Levenshtein Distanz 7. Boolesche Suche 8. Probabilistische
MehrEinstieg in die Informatik mit Java
1 / 15 Einstieg in die Informatik mit Java Collections Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 15 1 Überblick Collections 2 Hierarchie von Collections 3 Verwendung
MehrAgenda. Anwendungsfälle. Integration in Java
Florian Hopf @fhopf Agenda Anwendungsfälle Integration in Java Agenda Vorbereitung Installation # download archive wget https://download.elastic.co/ elasticsearch/elasticsearch/elasticsearch-1.7.1.zip
MehrEinführung in die Informatik I (autip)
Einführung in die Informatik I (autip) Dr. Stefan Lewandowski Fakultät 5: Informatik, Elektrotechnik und Informationstechnik Abteilung Formale Konzepte Universität Stuttgart 24. Oktober 2007 Was Sie bis
MehrÜbung Medienretrieval WS 07/08 Thomas Wilhelm, Medieninformatik, TU Chemnitz
02_Grundlagen Lucene Übung Medienretrieval WS 07/08 Thomas Wilhelm, Medieninformatik, TU Chemnitz Was ist Lucene? (1) Apache Lucene is a high-performance, full-featured text search engine library written
MehrTransinstitutionelle Informationssystem-Architekturen in vernetzten kooperativen Versorgungsformen des Gesundheitswesens
Technische Universität Braunschweig Transinstitutionelle Informationssystem-Architekturen in vernetzten kooperativen Versorgungsformen des Gesundheitswesens Von Universität Carolo-Wilhelmina zu zur Erlangung
MehrProf. Dr. Uwe Schmidt. 12. August Aufgaben zur Klausur Softwaredesign im SS 2014 (BInf v310, BMInf v300, BWInf v310, BWInf- 23)
Prof. Dr. Uwe Schmidt 12. August 2014 Aufgaben zur Klausur Softwaredesign im SS 2014 (BInf v310, BMInf v300, BWInf v310, BWInf- 23) Zeit: 90 Minuten erlaubte Hilfsmittel: keine Bitte tragen Sie Ihre Antworten
MehrINEX. INitiative for the Evaluation of XML Retrieval. Sebastian Rassmann, Christian Michele
INEX INitiative for the Evaluation of XML Retrieval Was ist INEX? 2002 gestartete Evaluierungsinitiative Evaluierung von Retrievalmethoden für XML Dokumente Berücksichtigt die hierarchische Dokumentstruktur
MehrProgrammieren in Haskell
Programmieren in Haskell Wir steigen ein... Programmieren in Haskell 1 Was wir heute machen Umfrage: Wer hat den Hugs ausprobiert? Ausdrücke und Werte Datentypen Funktionen Aufgabe für s Wochenende Programmieren
MehrUE Algorithmen und Datenstrukturen 1 UE Praktische Informatik 1. Übung 2. Spezifikation Schrittweise Verfeinerung
UE Algorithmen und Datenstrukturen 1 UE Praktische Informatik 1 Übung 2 Spezifikation Schrittweise Verfeinerung Institut für Pervasive Computing Johannes Kepler Universität Linz Altenberger Straße 69,
MehrSuchen und Finden mit Lucene und Solr. Florian Hopf 04.07.2012
Suchen und Finden mit Lucene und Solr Florian Hopf 04.07.2012 http://techcrunch.com/2010/08/04/schmidt-data/ Suche Go Suche Go Ergebnis 1 In Ergebnis 1 taucht der Suchbegriff auf... Ergebnis 2 In Ergebnis
MehrHaskell, Typen, und Typberechnung. Grundlagen der Programmierung 3 A. Einige andere Programmiersprachen. Typisierung in Haskell
Haskell, Typen, und Typberechnung Grundlagen der Programmierung 3 A Typen, Typberechnung und Typcheck Prof. Dr. Manfred Schmidt-Schauß Ziele: Haskells Typisierung Typisierungs-Regeln Typ-Berechnung Milners
MehrMotivation Grundlagen Technologien Manipulation Ecore Genmodell Demo Persistenz Notification Ausblick GMF Fazit / Quellen
Motivation Grundlagen Technologien Manipulation Ecore Genmodell Demo Persistenz Notification Ausblick GMF Fazit / Quellen Soll ich Modellieren oder Programmieren? sowohl als auch!!! Produktivitäts-Steigerung
Mehrzu große Programme (Bildschirmseite!) zerlegen in (weitgehend) unabhängige Einheiten: Unterprogramme
Bisher Datentypen: einfach Zahlen, Wahrheitswerte, Zeichenketten zusammengesetzt Arrays (Felder) zur Verwaltung mehrerer zusammengehörender Daten desselben Datentypes eindimensional, mehrdimensional, Array-Grenzen
MehrCOPE COuPled Evolution of metamodels and models
COPE COuPled Evolution of metamodels and models Diplomarbeit in Zusammenarbeit mit der BMW Car IT (Betreuer: Elmar Jürgens, Sebastian Benz) Markus Herrmannsdörfer 7. November 2007 Perlen der Informatik
MehrReflection. Arthur Zaczek. Nov 2014
Arthur Zaczek Nov 2014 1 Einleitung 1.1 Definition Reflection ist das Auslesen von Metainformationen über Klassen, deren Methoden & Eigenschaften zur Laufzeit. 1.2 Anwendungsfälle Analyse von Programmen
MehrGrundlagen der Informatik. Prof. Dr. Stefan Enderle NTA Isny
Grundlagen der Informatik Prof. Dr. Stefan Enderle NTA Isny 2 Datenstrukturen 2.1 Einführung Syntax: Definition einer formalen Grammatik, um Regeln einer formalen Sprache (Programmiersprache) festzulegen.
Mehrzu große Programme (Bildschirmseite!) zerlegen in (weitgehend) unabhängige Einheiten: Unterprogramme
Bisher Datentypen: einfach Zahlen, Wahrheitswerte, Zeichenketten zusammengesetzt Arrays (Felder) zur Verwaltung mehrerer zusammengehörender Daten desselben Datentypes eindimensional, mehrdimensional, Array-Grenzen
MehrResults in time. DIE MEHRWERTE DES SAP SOLUTION MANAGER 7.2. Beratung. Support. Ganzheitliche Lösungen.
DIE MEHRWERTE DES SAP SOLUTION MANAGER 7.2 Results in time. Beratung. Support. Ganzheitliche Lösungen. BIT.Group GmbH www.bitgroup.de Klassifizierung: Öffentlich Autor: Henry Flack Version: 1.5 Datum:
MehrBeispiele elementarer Datentypen Ganze Zahlen (integer) Unterbereiche Gleitkommazahlen Festkommazahlen
Beispiele elementarer Datentypen Ganze Zahlen (integer) - Werte sind ganze Zahlen in vorgegebenen Bereich (z. B. -2 31 bis 2 31-1) - Übliche Operationen: Arithmetik (z. B. +,-,*, Division mit Rest, Rest
MehrSeminarphase PG 402 Thema: Semantic Web Autor: Phillip Look
Seminarphase PG 402 Thema: Semantic Web Autor: Phillip Look Phillip Look Folie 1 Übersicht Vision des Semantic Web Ontologien RDF(S) DAML+OIL Suche im Semantic Web Fazit Phillip Look Folie 2 Vision des
MehrAdressen. Praktikum Funktionale Programmierung Organisation und Überblick. Termine. Studienleistung
Adressen Adressen, Termine Studienleistung Praktikum Funktionale Programmierung Organisation und Überblick Dr. David Sabel Büro und Email Raum 216, Robert-Mayer-Str. 11-15 sabel@ki.informatik.uni-frankfurt.de
MehrBeweissicheres elektronisches Laborbuch (BeLab)
Beweissicheres elektronisches Laborbuch (BeLab) Workshop am in Braunschweig Darstellung des BeLab-Konzepts Dipl.-Inform. Karlsruher Institut für Technologie (KIT) Gliederung Scientific Data Lifecycle Dokumentation
MehrUniform Resource Identifiers (URI) und Domain Name Service (DNS)
Kurzvortrag zum Thema: Uniform Resource Identifiers (URI) und Domain Name Service (DNS) Beschreiben Sie Aufbau und Einsatzzweck von URI, URL und URN. Lesen Sie die dazu passenden RFCs. Was ist der Domain
MehrJava Einführung Operatoren Kapitel 2 und 3
Java Einführung Operatoren Kapitel 2 und 3 Inhalt dieser Einheit Operatoren (unär, binär, ternär) Rangfolge der Operatoren Zuweisungsoperatoren Vergleichsoperatoren Logische Operatoren 2 Operatoren Abhängig
MehrPyLucene. Installation, Verwendung, Probleme, Lösungen. DZUG -Tagung 2010. Stefan Schwarzer, SSchwarzer.com info@sschwarzer.com
PyLucene Installation, Verwendung, Probleme, Lösungen DZUG -Tagung 2010 Stefan Schwarzer, SSchwarzer.com info@sschwarzer.com Dresden, Germany, 2010-09-17 PyLucene Stefan Schwarzer, info@sschwarzer.com
MehrIndexstrukturen in XML
Seminar XML und Datenbanken Indexstrukturen in XML Vanessa Schäfer 07.02.2003 Übersicht Einführung Indexstrukturen in XML Ein Vergleich SphinX vs. Lore Zusammenfassung und Ausblick Seminar XML und Datenbanken
MehrGoogle API Teil II / Überblick CVS
Projektgruppe 520 12. Oktober 2007 Überblick Webservice Denition Webservice Aufruf Webservice Ergebnis auswerten Demonstration Google API: Denition des WebService Aufruf des Webservice Auswertung des Ergebnisses
MehrChristoph Broschinski, <broschinski@uni bielefeld.de>
Normalisierung von Lizenzinformationen in OAI Metadaten: Ein Beitrag zur Verbesserung der Open Access Statusanzeige in wissenschaftlichen Suchmaschinen Christoph Broschinski,
MehrSeminar Informationsintegration und Informationsqualität. Dragan Sunjka. 30. Juni 2006
Seminar Informationsintegration und Informationsqualität TU Kaiserslautern 30. Juni 2006 Gliederung Autonomie Verteilung führt zu Autonomie... Intra-Organisation: historisch Inter-Organisation: Internet
MehrBig Data Management Thema 14: Cassandra
Thema 14: Cassandra Jan Kristof Nidzwetzki Thema 14: Cassandra 1 / 25 Übersicht 1 Grundlagen Überblick Geschichte Datenmodel 2 Architektur Der logische Ring Persistenz der Daten Tunable Consistency Read
MehrEine Workflow-Applikation mit InterSystems Ensemble im Rahmen einer DICOM-Modality Worklist. M. Sc. Sebastian Thiele NestorIT GmbH
Eine Workflow-Applikation mit InterSystems Ensemble im Rahmen einer DICOM-Modality Worklist M. Sc. Sebastian Thiele NestorIT GmbH Agenda V Ausgangslage Zielstellung Lösungsansatz Unterstützung durch Ensemble
MehrTEIL I: OBJEKTORIENTIERUNG UND GRUNDKURS JAVA GRUNDLAGEN DER PROGRAMMIERUNG... 4
Inhaltsverzeichnis TEIL I: OBJEKTORIENTIERUNG UND GRUNDKURS JAVA... 1 1 GRUNDLAGEN DER PROGRAMMIERUNG... 4 1.1 Das erste Java-Programm... 4 1.2 Programme und ihre Abläufe... 6 1.3 Entwurf mit Nassi-Shneiderman-Diagrammen...
MehrKapitel 3. Grunddatentypen, Ausdrücke und Variable
Kapitel 3 Grunddatentypen, Ausdrücke und Variable Grunddatentypen, Ausdrücke und Variable 1 Eine Datenstruktur besteht aus Grunddatentypen in Java einer Menge von Daten (Werten) charakteristischen Operationen
MehrGATE General Architecture for Text Engineering. Alexander Hein & Erik Dießler (VL Text Analytics - 08.05.2008)
GATE General Architecture for Text Engineering Alexander Hein & Erik Dießler (VL Text Analytics - 08.05.2008) Überblick GATE Die Idee Die Architektur Was noch - JAPE / DIFF / GUK ANNIE Einige Beispiele
MehrModellgetriebene Softwareentwicklung bei der IBYKUS AG
Modellgetriebene Softwareentwicklung bei der IBYKUS AG Theorie Teil 7: Modelltransformationen Dr. Steffen Skatulla IBYKUS AG 1 Inhalt Teil 7: Modelltransformationen Wozu Modelltransformationen? Konzepte
MehrMaster Seminar Generische Modelbasierte. Benedikt Johannsen INF-M3 Master Seminar - Wintersemester 2010/ Dezember 2010
Master Seminar Generische Modelbasierte Kommunikationsinfrastruktur INF-M3 Master Seminar - Wintersemester 2010/11 09. Dezember 2010 Gliederung Motivation Rückblick AW2 Zielsetzung Geplantes Vorgehen Herausforderungen
MehrCrashkurs Haskell Mentoring WiSe 2016/17. Anja Wolffgramm Freie Universität Berlin
Crashkurs Haskell Mentoring WiSe 2016/17 Anja Wolffgramm Freie Universität Berlin 02/11/2016 , Inhalt Kommandozeile Haskell installieren & starten Ein 1. Haskell-Programm Funktionsdefinition Primitive
MehrDie XML-Schnittstelle von FreelancerWelt.de Projektimport
Die XML-Schnittstelle von FreelancerWelt.de Projektimport Die Schnittstelle ermöglicht es neue IT Projekte auf FreelancerWelt.de automatisch einzustellen, bestehende zu aktualisieren oder zu löschen. Wenn
Mehrwindream SDK Einfache System-Erweiterungen und Software-Integrationen mit windream
windream SDK Einfache System-Erweiterungen und Software-Integrationen mit windream 2 Einfache System-Erweiterungen und Software- Integrationen mit windream Die offene Architektur des Enterprise-Content-Management-Systems
MehrBlöcke Strukturelemente. Dr. Beatrice Amrhein
Blöcke Strukturelemente Block Definitionsdiagramm Dr. Beatrice Amrhein Definition Ein Block Definitionsdiagramm (oder Blockdiagramm) o zeigt die statische Struktur des Systems, o beschreibt, welche Systembausteine
MehrWissenschaftliche Vertiefung Web Services. Esslingen, 22. Januar 2016 Simon Schneider
Wissenschaftliche Vertiefung Web Services Esslingen, 22. Januar 2016 Agenda 1. Einführung 2. Serviceorientierte Architektur 3. SOAP Web Service 4. Standards und Protokolle von SOAP Web Services 5. Bewertung
MehrWas ist Informatik? Alexander Lange
Was ist Informatik? Was ist Informatik? Alexander Lange 12.11.2003 Was ist Informatik? Inhalt 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. Das Wort»Informatik«Die Idee Teilgebiete der Informatik Technische Informatik
MehrSODA. Die Datenbank als Document Store. Rainer Willems. Master Principal Sales Consultant Oracle Deutschland B.V. & Co. KG
SODA Die Datenbank als Document Store Rainer Willems Master Principal Sales Consultant Oracle Deutschland B.V. & Co. KG vs No Anforderungskonflikte Agile Entwicklung Häufige Schema-Änderungen Relationales
MehrJava Metadata Interface. Thorsten Pivl
Java Metadata Interface Thorsten Pivl Einleitung Was sind Metadaten? Das Wort Meta stammt aus dem griechischen und bedeutet über Meta-Daten: Daten über Daten Beschreibung von Daten 2 Einleitung Warum Metadaten?
Mehr20.01.2015 Fabian Grimme und Tino Krüger 1 INDREX. Evaluierung von H2O. Enterprise Data Management Beuth Hochschule für Technik
20.01.2015 Fabian Grimme und Tino Krüger 1 INDREX Evaluierung von H2O Enterprise Data Management Beuth Hochschule für Technik 20.01.2015 Fabian Grimme und Tino Krüger 2 INDREX im Überblick In-Database
MehrAllgemeine Hinweise: TECHNISCHE UNIVERSITÄT MÜNCHEN. Name Vorname Studiengang Matrikelnummer. Hörsaal Reihe Sitzplatz Unterschrift
TECHNISCHE UNIVERSITÄT MÜNCHEN FAKULTÄT FÜR INFORMATIK Lehrstuhl für Sprachen und Beschreibungsstrukturen WS 2008/09 Einführung in die Informatik 2 Klausur Prof. Dr. Helmut Seidl, T. M. Gawlitza, S. Pott,
MehrA Big Data Change Detection System. Carsten Lanquillon und Sigurd Schacht
A Big Data Change Detection System Carsten Lanquillon und Sigurd Schacht Digitale Transformation in Unternehmen u Umfassende Erfassung, Speicherung und Verfügbarkeit von Daten à Big Data Quelle: Rolland
MehrXML Verarbeitung mit einer in Haskell eingebetteten DSL. Manuel Ohlendorf (xi2079)
XML Verarbeitung mit einer in Haskell eingebetteten DSL Manuel Ohlendorf (xi2079) 2.0.200 Manuel Ohlendorf Übersicht 1 2 Einführung Datenstruktur Verarbeitung Vergleich mit anderen Verfahren Fazit 2 Übersicht
MehrVorlesung Datenstrukturen
Vorlesung Datenstrukturen Binärbaum Suchbaum Dr. Frank Seifert Vorlesung Datenstrukturen - Sommersemester 2016 Folie 356 Datenstruktur Binärbaum Strukturrepräsentation des mathematischen Konzepts Binärbaum
MehrDefinition Ein Heap (priority queue) ist eine abstrakte Datenstruktur mit folgenden Kennzeichen:
HeapSort Allgemeines Sortieralgorithmen gehören zu den am häufigsten angewendeten Algorithmen in der Datenverarbeitung. Man hatte daher bereits früh ein großes Interesse an der Entwicklung möglichst effizienter
Mehrtransportation SYMTES Testen mit System www.ics-ag.de
transportation SYMTES Testen mit System 1 Motivation Seit mehreren Jahrzehnten ist die ICS AG in Sachen Test in verschiedensten Projekten und bei zahlreichen Kunden unterwegs. Bei eingebetteten Anwendungen
MehrEinführung Datentypen Verzweigung Schleifen. Java Crashkurs. Kim-Manuel Klein May 4, 2015
Java Crashkurs Kim-Manuel Klein (kmk@informatik.uni-kiel.de) May 4, 2015 Quellen und Editoren Internet Tutorial: z.b. http://www.java-tutorial.org Editoren Normaler Texteditor (Gedit, Scite oder ähnliche)
MehrB / B* - Bäume. Guido Hildebrandt Seminar Datenbanksysteme
B / B* - Bäume Guido Hildebrandt Seminar Datenbanksysteme 25.11.2010 Gliederung Einleitung Binärbaum B - Baum B* - Baum Varianten Zusammenfassung Quellen Gliederung Einleitung Binärbaum B - Baum B* - Baum
MehrGeneric Interface. Einfacher Datenaustausch zwischen Drittanwendungen und OTRS.
Einfacher Datenaustausch zwischen Drittanwendungen und OTRS. Das Generic Interface von OTRS OTRS ist weltweit eine der am weitesten verbreiteten Open Source Help Desk Software-Lösungen und der Integrationsbedarf
MehrSearch Evolution von Lucene zu Solr und ElasticSearch
Search Evolution von Lucene zu Solr und ElasticSearch 20.06.2013 Florian Hopf @fhopf http://www.florian-hopf.de Index Indizieren Index Suchen Index Term Document Id Analyzing http://www.flickr.com/photos/quinnanya/5196951914/
MehrProgrammieren in Haskell Einführung
Programmieren in Haskell Einführung Peter Steffen Universität Bielefeld Technische Fakultät 16.10.2009 1 Programmieren in Haskell Veranstalter Dr. Peter Steffen Raum: M3-124 Tel.: 0521/106-2906 Email:
MehrGrundlagen der Rechnerarchitektur
Grundlagen der Rechnerarchitektur Einführung Unsere erste Amtshandlung: Wir schrauben einen Rechner auf Grundlagen der Rechnerarchitektur Einführung 2 Vorlesungsinhalte Binäre Arithmetik MIPS Assembler
MehrTechnische Universität Wien Institut für Computergraphik und Algorithmen Arbeitsbereich für Algorithmen und Datenstrukturen
Technische Universität Wien Institut für Computergraphik und Algorithmen Arbeitsbereich für Algorithmen und Datenstrukturen 186.172 Algorithmen und Datenstrukturen 1 VL 4.0 Übungsblatt 4 für die Übung
Mehr2.5 Listen. Kurzschreibweise: [42; 0; 16] Listen werden mithilfe von [] und :: konstruiert.
2.5 Listen Listen werden mithilfe von [] und :: konstruiert. Kurzschreibweise: [42; 0; 16] # let mt = [];; val mt : a list = [] # let l1 = 1::mt;; val l1 : int list = [1] # let l = [1;2;3];; val l : int
MehrZEIGEN SIE DEM USER, WAS ER EIGENTLICH WILL
ZEIGEN SIE DEM USER, WAS ER EIGENTLICH WILL Wieso es sinnvoll ist, in das Nutzerverhalten Ihrer User einzugreifen Mehr als 50 % Bis zu 40 % aller Webseiten-Besucher nutzen sofort und ohne Umwege die interne
MehrComputerlinguistik im Service Management eine neue Suche für TOPdesk
Computerlinguistik im Service Management eine neue Suche für TOPdesk Anna Hunecke Diplom Computerlinguistin TOPdesk A.Hunecke@topdesk.com Inhalt TOPdesk Suchen in TOPdesk Lucene Lucene in TOPdesk TOPdesk
MehrÜbersicht. Aufgabe. Organisatorisches. Gruppeneinteilung. Projektvorstellung Komponenten Anforderungen. Soft- und Hardware Arbeitsräume Projektplan
Softwareentwickungspraktikum Sommersemester 2006 Sven Lahde, Matthias Dick, Wolf-Bastian Pöttner Institut für Betriebssysteme und Rechnerverbund Technische Universität Braunschweig Übersicht Projektvorstellung
MehrMichael Weigend. Python GE-PACKT. 5. Auflage
Michael Weigend Python GE-PACKT 5. Auflage E Einleitung 13 E.i Was ist Python? 13 E.2 Einige besondere Merkmale von Python 13 E.3 Python 2 und 3 14 E.4 Hinweise zum Lesen dieses Buches 15 1 Basiskonzepte
MehrMBEES Research Abstract Ein Framework zur automatisierten Ermittlung der Modellqualität bei eingebetteten Systemen
MBEES 2010 - Research Abstract Ein Framework zur automatisierten Ermittlung der Modellqualität bei eingebetteten Systemen Jan Scheible (jan.scheible@daimler.com) Daimler AG Group Research and Advanced
Mehroccam 2 Das Referenz-Handbuch
INMOS Limited occam 2 Das Referenz-Handbuch Die deutsche Ausgabe besorgte Dieter Weiß Tecbnischß Koi;h5(:hule Darmstadt FACHBER jfc:h INFORMATIK ' ; * Wh IL1QJ H E K! Soch8ehie»e! A; "N Eine Coedition
Mehr1 Aufgaben 1.1 Umgebungsvariable setzen: CLASSPATH
1 Aufgaben 1.1 Umgebungsvariable setzen: CLASSPATH Die Umgebungsvariable CLASSPATH kann im Hamster-Simulator sowohl für Compiler als auch für die Ausführung des Hamster-Programms gesetzt werden: Hierdurch
MehrBlöcke. Block Definitionsdiagramm. Dr. Beatrice Amrhein
Blöcke Strukturelemente Block Definitionsdiagramm Dr. Beatrice Amrhein Definition: Block (Systembaustein) Eine Block beschreibt den Aufbau, die Eigenschaften und das Verhalten einer Komponente (eines Systems)
MehrFramework zur Anomalie-basierten Angriffserkennung durch verteilte Instanzen Endvortrag Diplomarbeit, Christoph Mayer
Endvortrag Diplomarbeit, 08.11.2007 Motivation DDoS- und Wurmangriffe sind die größten Gefahren, die zur Zeit das Internet bedrohen (Worldwide Infrastructure Security Report 2007, Arbor Networks) 1 Anforderungen
MehrEinstieg in die Informatik mit Java
1 / 34 Einstieg in die Informatik mit Java Klassen mit Instanzmethoden Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 34 1 Definition von Klassen 2 Methoden 3 Methoden
MehrXML und Datenmodellierung
Rainer Eckstein Silke Eckstein XML und Datenmodellierung XML-Schema und RDF zur Modellierung von Daten und Metadaten einsetzen dpunkt.verlag VII Inhaltsverzeichnis Vorwort v 1 Einleitung 1 1.1 Aufbau 2
MehrVS7 Slide 1. Verteilte Systeme. Vorlesung 7 vom 27.05.2004 Dr. Sebastian Iwanowski FH Wedel
VS7 Slide 1 Verteilte Systeme Vorlesung 7 vom 27.05.2004 Dr. Sebastian Iwanowski FH Wedel Inhaltsverzeichnis für die Vorlesung Zur Motivation: 4 Beispiele aus der Praxis Allgemeine Anforderungen an Verteilte
MehrPredictive Modeling Markup Language. Thomas Morandell
Predictive Modeling Markup Language Thomas Morandell Index Einführung PMML als Standard für den Austausch von Data Mining Ergebnissen/Prozessen Allgemeine Struktur eines PMML Dokuments Beispiel von PMML
MehrVerkettete Datenstrukturen: Bäume
Verkettete Datenstrukturen: Bäume 1 Graphen Gerichteter Graph: Menge von Knoten (= Elementen) + Menge von Kanten. Kante: Verbindung zwischen zwei Knoten k 1 k 2 = Paar von Knoten (k 1, k 2 ). Menge aller
MehrAgenda. 1 Einleitung. 2 Binäre Bäume. 3 Binäre Suchbäume. 4 Rose Trees. 5 Zusammenfassung & Ausblick. Haskell Bäume. Einleitung.
Vortrag: Bäume in Haskell Bäume in Haskell Vortrag Christoph Forster Thomas Kresalek Fachhochschule Wedel University of Applied Sciences 27. November 2009 Christoph Forster, Thomas Kresalek 1/53 Vortrag
MehrBerechnungsschemata: Funktion als Parameter abstrahiert Operation im Schema, wird bei Aufruf des Schemas konkretisiert
6. Funktionen als Daten, Übersicht Orthogonales Typsystem: Funktionen sind beliebig mit anderen Typen kombinierbar Notation für Funktionswerte (Lambda-Ausdruck): fn (z,k) => z*k Datenstrukturen mit Funktionen
MehrThomas Behr. 17. November 2011
in in Fakultät für Mathematik und Informatik Datenbanksysteme für neue Anwendungen FernUniversität in Hagen 17. November 2011 c 2011 FernUniversität in Hagen Outline in 1 2 3 4 5 6 - Was ist das? in über
MehrUML 2 glasklar Praxiswissen für die UML-Modellierung
Chris Rupp, Stefan Queins, Barbara Zengler UML 2 glasklar Praxiswissen für die UML-Modellierung ISBN-10: 3-446-41118-6 ISBN-13: 978-3-446-41118-0 Inhaltsverzeichnis Weitere Informationen oder Bestellungen
MehrMigration Productstream Professional nach Autodesk Vault Mehr als eine reine Datenübernahme
Migration Productstream Professional nach Autodesk Vault Mehr als eine reine Datenübernahme Marco Ramolla / Jens Kieninger Senior Implementation Consultant (Autodesk) / Senior Software Engineer (coolorange)
MehrInhaltsverzeichnis. Teil 1 - XM L Einleitung Motivation...15
Inhaltsverzeichnis 1 Einleitung...11 2 Motivation...15 Teil 1 - XM L......17 3 Geschichte von X M L...17 3.1 Markupsprachen...17 3.1.1 Auszeichnungsarten...17 3.1.2 Markupsprachen...20 4 Zeichensatz...
Mehr! 1. Rekursive Algorithmen.! 2. Rekursive (dynamische) Datenstrukturen. II.3.2 Rekursive Datenstrukturen - 1 -
! 1. Rekursive Algorithmen! 2. Rekursive (dynamische) Datenstrukturen II.3.2 Rekursive Datenstrukturen - 1 - Ausdruck Ausdruck Grundwert ( Typ ) Präfix-Operator Name Methodenaufruf [ Ausdruck ] ( Ausdruck
MehrTesten von SOA-Anwendungen mit dem BPEL Testframework
Testen von SOA-Anwendungen mit dem BPEL Testframework Stefan Kühnlein IBM Deutschland Enterprise Application Solution GmbH Hollerithstr. 1 81829 München 0160/8848611 Stefan.Kuehnlein@de.ibm.com IBM Deutschland
MehrDie elektronische Anmeldung von Schutzrechten beim K. Kauffmann A. Rottmann 1 1. Papieranmeldung und elektronische Anmeldung im Vergleich 2. Ablauf der elektronischen Anmeldung 3. Signaturkarte 4. Systemanforderungen
Mehr