Fuzzy-Suche in Application Express

Ähnliche Dokumente
Mehr als einfache Texte Alleskönner ORACLE TEXT

<Insert Picture Here> Einblick in die Oracle Datenbank

Roland Tilgner. Solution Architects & Team Coaching DEVELOPMENT. ORACLE TEXT AUS PL/SQL-SICHT Features und Möglichkeiten

Neues in Oracle Text

Application Express (APEX) Carsten Czarski Business Unit Database. ORACLE Deutschland B.V. & Co KG

Ulrike Schwinn Dipl.-Math. Oracle Deutschland GmbH. Kultur und Informatik - Datenverwaltung 04.Juli 2007

Mehr Ergebnisse: Linguistische Funktionen und Ähnlichkeitssuche mit SQL. Carsten Czarski ORACLE Deutschland B.V. & Co KG München

Carsten Czarski, Nina Neuwirth Oracle Deutschland. Volltextsuche in XML-Dokumenten mit Oracle

<Insert Picture Here> Security-Basics. Privilegien, Rollen, SQL und PL/SQL - inkl. 12c-Update. Carsten Czarski, ORACLE Deutschland B.V. Co.

SODA. Die Datenbank als Document Store. Rainer Willems. Master Principal Sales Consultant Oracle Deutschland B.V. & Co. KG

Funktionen. Überblick über Stored Functions. Syntax zum Schreiben einer Funktion. Schreiben einer Funktion

Seminar XML und Datenbanken Andreas Krug. XML -Unterstützung durch IBM DB2

Entwicklung und Integration mobiler Anwendungen. <Speaker> Oracle Deutschland B.V. & Co. KG

Und was wird aus meinem Berichtswesen? <Speaker> Oracle Deutschland B.V. & Co. KG

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

Komplexe Excel-Berichte mit APEX und jxls erstellen

Oracle APEX 3.2. Peter Raganitsch. Einführung und neue Features

XML-Datenaustausch in der Praxis Projekt TOMIS bei der ThyssenKrupp Stahl AG

XML-Dokumente und die Oracle-Datenbank

NoSQL mit Postgres 15. Juni 2015

XML in der Oracle Datenbank

Text Datenbanken Oracle8i intermedia Text

<Insert Picture Here> APEX? Aber sicher! Tipps und Tricks für eine sichere APEX-Umgebung. Carsten Czarski, ORACLE Deutschland B.V. Co.

MCSA: SQL 2016 Database Development

Ausgabe in Excel leicht gemacht mit dem JDD Spreadsheet Publisher. Dietmar Aust JDD- So;ware UG so;ware.com

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

Partitioning mit Oracle Text 9i

APEX: from past to present

Ausgabe in Excel leicht gemacht mit dem JDD Spreadsheet Publisher. Dietmar Aust JDD-Software UG

<Insert Picture Here> Geodaten und XML: XML in der Oracle-Datenbank

SQL (Structured Query Language) Schemata Datentypen

SQL. strukturierte Datenbankabfragesprache eine Datenbanksprache zur. Structured Query Language:

PL/SQL. Deklaration von Variablen. Inhalt. PL/SQL Block Struktur. PL/SQL Block Struktur

WS 2010/11 Datenbanksysteme Fr 15:15 16:45 R Vorlesung #6. SQL (Teil 4)

Powerful PL/SQL: Collections indizieren mit VARCHAR2- Indizes ein Praxisbeispiel

APEX URLs Suchmaschienen- und Benutzerfreundlich

Inhalt. Ein Einführung in die Nutzung von SQL-Datenbanken am Beispiel Oracle. Daten und Tabellen - ein Beispiel. Daten und Tabellen - Normalisierung

Five Finger Death Punch. Oliver Lemm Competence Center Leiter APEX

Einteilung von Datenbanken

Die APEX APIs Schatzkiste. November 2015 DOAG 2015 Ulrike Brenner

XML in der Oracle Datenbank "relational and beyond"

Matrix Reports mit Apex

Kapitel 33. Der xml-datentyp. In diesem Kapitel: Der xml-datentyp 996 Abfragen aus xml-datentypen 1001 XML-Indizierung 1017 Zusammenfassung 1023

Intelligente Textanalyse. Oracle 9i

Vorlesung Datenbankmanagementsysteme

<Insert Picture Here> Schnelle Anwendungen mit Oracle Application Express

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

7. XML-Datenbanksysteme und SQL/XML

CITRA-Forum. Nutzen Sie das Potential all Ihrer Daten: Geodata Warehouse mit der Oracle Plattform. CITRA-Forum im Schloß 2009

Oracle Developer Monthly Datenbank-Update für Anwendungsentwickler Februar 2016

Fakultät für Informatik & Wirtschaftsinformatik DB & IS II - SS noch einmal. XQuery... Andreas Schmidt Oracle XQuery 1/12

In diesem Abschnitt wollen wir uns mit dem Thema XML Datenbank beschäftigen. Das Ziel ist, herauszufinden, was XML Datenbank überhaupt sind und was

SP2013 Search Driven Publishing Model

Oracle PL/SQL für Experten - Performance Analyse und Laufzeitoptimierung

ISU 1. Ue_08/02_Datenbanken/SQL. 08 Datenbanken. Übung. SQL Einführung. Eckbert Jankowski.

Gut zu wissen... Lorenz Keller Server Technologies Competence Center Nord

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

Wolkig bis heiter. Andreas Wismann WHEN OTHERS. APEX als Drehkreuz für Web Service-Anwendungen

SQL Developer Unit Tests

SharePoint Provider for Oracle

7. Datenbank-Zugriff. Vorlesung und Übung Dr. Peter Pfahler Institut für Informatik Universität Paderborn. Zum Beispiel aus PHP-Skripten: Client 7-2

Hibernate Search. Unterstützung laufender Java Projekte. Perfect Match Rent-a-team Coaching on the project Inhouse Outsourcing

7. Datenbank-Zugriff. Vorlesung und Übung Dr. Peter Pfahler Institut für Informatik Universität Paderborn. Zum Beispiel aus PHP-Skripten: Client 7-2

Oracle12c für Entwickler

ORACLE und IBM DB2 Datentypen

SQL. SQL: Structured Query Language. Früherer Name: SEQUEL. Standardisierte Anfragesprache für relationale DBMS: SQL-89, SQL-92, SQL-99

IV. Datenbankmanagement

Customizing Datensicht erstellen. Erweiterung der Baumstruktur um eigene Sichten

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

Search-Driven Applications. Florian Hopf, freiberuflicher Softwareentwickler Tobias Kraft, exensio GmbH

<Insert Picture Here> Oracle Spatial Die Plattform für Geo-Business-Intelligence. Carsten Czarski ORACLE Deutschland B.V. & Co KG

XML - Extensible Markup Language. Agenda - Oracle XML DB

Fortgeschrittene SQL-Techniken für APEX-Formulare und Reports

Computerlinguistik im Service Management eine neue Suche für TOPdesk

Oracle TEXT Internals, Tipps & Tricks

Es geht also im die SQL Data Manipulation Language.

Bibliografische Informationen digitalisiert durch

PL/SQL Unit Tests mit SQL Developer

MySQL Queries on "Nmap Results"

Relationales Datenbanksystem Oracle

Fakultät für Informatik & Wirtschaftsinformatik DB & IS II - SS XMLType. Christian Senger/Andreas Schmidt XMLType 1/32

Oracle Forms und APEX

Fortgeschrittene SQL-Techniken für APEX-Formulare und -Reports

Maßgeschneiderte Suchmaschinen

+++ Bitte nutzen Sie die integrierte Audio-Funktion von WebEx (Menü Audio -> Integrated Voice Conference -> Start auswählen), um uns zu hören!!!.

Sie haben Ihr Ziel erreicht

Oracle Text. Katerina Mpalaska Senior Sales Consultant Server Technologies Competence Center Stuttgart. Oracle Deutschland GmbH

Geschäftslogik in die Datenbank Umstellung eines Kernbanksystems

EXASOL Anwendertreffen 2012

Apex & iphone - Entwicklung mobiler Webanwendungen und Apps

Carsten Czarski Oracle Deutschland B.V. & Co KG. Keine Angst vor SQL Injection oder Wie man Datenbankzugriffe sicher implementiert

Oracle BI Publisher Webservice API in Action

Strukturierte Objekttypen

Transkript:

Fuzzy-Suche in Application Express So geht s! Carsten Czarski Consulting Member of technical staff - Oracle Application Express September 2017 Copyright 2016 Oracle and/or its affiliates. All rights reserved.

Carsten Czarski Oracle in Muncher seit 2001 APEX Entwicklerteam seit 2016 Social Media: Blogs, Twitter und mehr Twitter: @cczarski Blog: sql-plsql-de.blogspot.com German How Tos: blogs.oracle.com/apexcommunity_deutsch English How Tos: blogs.oracle.com/apex Copyright 2016 Oracle and/or its affiliates. All rights reserved.

Fuzzy-Suche in Application Express Oracle TEXT Copyright 2016 Oracle and/or its affiliates. All rights reserved.

Oracle TEXT Index Index für Volltext, linguistische und Fuzzy-Suche Teil aller Datenbankeditionen - standardmäßig installiert Unterstützung aller gängigen Datentypen XMLTYPE, VARCHAR2, CLOB, BLOB, Database Filesystem, SecureFile "Filter" bei Binärdaten möglich create index idx_textindex on dokument_tab ( document ) indextype is CTXSYS.CONTEXT Index created.

Oracle TEXT - Funktionen Abfrage mit SQL CONTAINS-Funktion Linguistische Features und Fuzzy-Suche Kombinierbar mit relationalen Abfragen Relevanz-Ranking anhand Wort-Häufigkeiten SCORE-Funktion Ergebnis-Aufbereitung Highlighting "Keyword-in-Context" select score(1), dokument from dokument_tab where CONTAINS( dokument, 'Software AND Oracle', 1 )>0

Abfragemöglichkeiten Logische Kombinationen... where contains(text, 'Hund AND Katze') >0 Wildcard-Suche... where contains(text, 'Hu%d AND Kat_e') >0 Namenssuche... where contains(text, 'NDATA(name, Hunt)') >0 Fuzzy matching... where contains(text, '?Hunt') >0 Multilinguale Stammsuche... where contains(text, '$läuft') >0

Abfragemöglichkeiten NEAR-Operator... where contains(text, 'near(hund, Katze), 4') >0 Suche in Sektionen, Sätzen und Paragraphen (XML)... where contains(text, 'Hund WITHIN TITEL') >0 ISO 2788 konformer Thesaurus... where contains(text, 'SYN(Hund,[thes]' >0)

Special: Oracle Text Name Search Ähnlichkeitssuche, optimiert für Namen Findet mehr Treffer als die "normale" Oracle TEXT Fuzzy-Suche Auf das Finden möglichst großer Treffermengen optimiert Spezielle Einstellungen beim Indexaufbau Tendenziell große Textindizes select * from names where contains(name, 'NDATA(name,Tsaarski)') > 0 ID NAME ---------- ---------------------------------------- 4 Carsten Czarski

Trefferliste aufbereiten Teil der SQL-Query: Funktion CTX_DOC.SNIPPET Hervorhebung ist konfigurierbar (Default ist <b></b>) Fuzzy-Suche, linguistische Suche oder Thesauri werden berücksichtigt

Ein wenig Technik: Indizierungsprozess Filter Sectioner Lexer AUTO_FILTER Basic Whitespace Plain Text HTML XML News/E-Mail Themen Engine Decompounding alternate spelling

Fuzzy-Suche in Application Express Oracle TEXT für "normale" Tabellen Copyright 2016 Oracle and/or its affiliates. All rights reserved.

Oracle TEXT Index auf "normalen" Daten

Vorgehensweise: USER_DATA_STORE USER_DATASTORE: Eine PL/SQL Prozedur liefert die zu indizierenden Daten Tabelle(n) PL/SQL-Prozedur Index-Engine Volltextindex http://oracle-text-de.blogspot.co.uk/2012/03/nochmal-userdatastore-ein-umfassendes.html

"Virtuelle XML-Dokumente" mit PL/SQL http://oracle-text-de.blogspot.co.uk/2012/03/nochmal-userdatastore-ein-umfassendes.html

PL/SQL-Prozedur für den Index Mehrere Signaturen verfügbar! Rückgabe als VARCHAR2 Rückgabe als CLOB Rückgabe als BLOB! Filter! Prozedur wird für jede ROWID aufgerufen daher... Wenn alle "Dokumente" < 32K: Rückgabe als VARCHAR2 Temporäre LOBs einmal initiaisieren und im Package halten Bindevariablen nutzen; auf effizientes SQL achten XML per Stringverkettung erstellen! Ist schneller!

PL/SQL Prozedur registrieren und Index erzeugen http://oracle-text-de.blogspot.co.uk/2012/03/nochmal-userdatastore-ein-umfassendes.html

Fuzzy-Suche in Application Express Volltextsuche in APEX-Anwendungen Copyright 2016 Oracle and/or its affiliates. All rights reserved.

Sample Interactive Grids Application 19

Application Express 5.1: Interactive Grid Interactive Grid unterstützt Oracle TEXT aus dem Stand Mit Oracle TEXT indizierte Spalte deklarativ festlegen

Integration aus dem Stand Interactive Grid führt Volltextsuche automatisch aus 21

Query Syntax für den Endanwender Oracle TEXT Query Syntax ist sehr mächtig und komplex Es wird eine einfache Syntax gebraucht - á la Google PL/SQL Funktion zum Übersetzen erstellen und in APEX hinterlegen 22

Query Syntax Translation Function: Beispiele 23

Fuzzy-Suche in Application Express Oracle TEXT in einem klassischen Bericht Copyright 2016 Oracle and/or its affiliates. All rights reserved.

1. Schritt: Ein APEX Bericht

Schon ganz gut, aber

Wie wäre es mit dem "Search Results" Template?

Wie wäre es mit dem "Search Results" Template?

Query-Spalten müssen zum Template passen

Suchmaschinen-Look & Feel - mit APEX!

Fuzzy-Suche in APEX - mit Oracle TEXT Vielfältige Suchmöglichkeiten - im Standardumfang der Datenbank Linguistische Suche, Fuzzy Suche Vielfältige Suchoperatoren Kann auch auf "normale" Tabellen angewendet werden Umwandeln in "virtuelle Dokumente" mit PL/SQL Einfachste Integration in die APEX-Anwendung: SQL und PL/SQL Out-of-the-box Integration mit dem Interactive Grid Vorgefertigte Templates für Classic Reports Andere Komponenten mit SQL und PL/SQL Copyright 2016 Oracle and/or its affiliates. All rights reserved.

Ja, wir machen das auch selbst so! Copyright 2016 Oracle and/or its affiliates. All rights reserved.

Copyright 2016 Oracle and/or its affiliates. All rights reserved.

Copyright 2016 Oracle and/or its affiliates. All rights reserved.