SlideShare ist ein Scribd-Unternehmen logo
1 von 48
Downloaden Sie, um offline zu lesen
Copyright © 2017, Oracle and/or its affiliates. All rights reserved !
JSON und NoSQL:
Ein starkes Team
Karin Patenge | Oracle Deutschland B.V. & Co. KG
Email: karin.patenge@oracle.com | Twitter: @kpatenge
Business Development Manager Technology (Europe North)
DOAG 2017 Konferenz
Nürnberg | 21. November 2017
Copyright © 2017, Oracle and/or its affiliates. All rights reserved !
Safe Harbor Statement
The following is intended to outline our general product direction. It is intended for
information purposes only, and may not be incorporated into any contract. It is not a
commitment to deliver any material, code, or functionality, and should not be relied upon
in making purchasing decisions. The development, release, and timing of any features or
functionality described for Oracle’s products remains at the sole discretion of Oracle.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved !
Agenda
JSON – Eine kurze Einführung
NoSQL Datenbanken im Allgemeinen
Die Oracle NoSQL DB im Speziellen
Demo: JSON mit Oracle NoSQL DB im Team
Zusammenfassung und Weiterführende Informationen
1
2
3
4
5
4
Copyright © 2017, Oracle and/or its affiliates. All rights reserved !
JSON – Eine kurze Einführung
Copyright © 2017 Oracle and/or its affiliates. All rights reserved. |
• Sehr einfaches Austauschformat für
Daten
• Maschinen-lesbar
• Einfachere Konzepte als XML
• Basiert auf (Subset von) JavaScript
• Breite Unterstützung durch Web-
APIs und Programmiersprachen
– Google, Twitter, LinkedIn, XING,
Facebook & u.v.m.
• Weit verbreitet auch für Open Data
oder IoT („Message payload“)
• http://json.org
JSON – JavaScript Object Notation
Copyright © 2017 Oracle and/or its affiliates. All rights reserved. |
Warum JSON?
• Agilität und "Continuous Delivery"
– Flexible Datenmodelle
– “Schema-on-read” anstatt “Schema-on-write”
– Änderungen an Datenstrukturen immer häufiger
– Lange Zyklen für Schema-Änderungen werden immer weniger akzeptiert
• Komplett unabhängig von Programmiersprachen, aber eine universelle
Datenstruktur, die von vielen Programmiersprachen unterstützt wird
Copyright © 2017 Oracle and/or its affiliates. All rights reserved. |
1. Menge von Key-Value-Paaren
2. (Sortierte) Listen
• " " umschließen Strings
• {} umschließen JSON Objekte
• [] umschließen JSON Arrays
• Key und Value werden durch
Doppelpunkt getrennt
• Werte in Arrays bzw. Key-Value-
Paare in Objekten sind jeweils
durch Komma getrennt
• Schlüssel (Key) in JSON
– String
• Werte (Value) in JSON
– String
– Number
– Object
– Array
– Boolean
– Null
JSON Grundstrukturen und Syntax
Copyright © 2017 Oracle and/or its affiliates. All rights reserved. |
"type":"object"
• Bsp.:
{
"fullname":"Karin Patenge",
"cat":5,
"demo":true,
"age":null }
}
• Beliebig viele Key-Value-Paare
• Values vom Typ:
string, number, object, array,
boolean, null
"type":"array"
–Bsp.:
["NoSQL", "JSON",
"JavaScript"]
–Listenelemente vom Typ:
string, number, object, array,
boolean, null
–Beliebig viele Werte
–Arrays in JSON Objekten
–Verschachtelte Arrays
Nicht-skalare Datentypen
Copyright © 2017 Oracle and/or its affiliates. All rights reserved. |
Copyright © 2017, Oracle and/or its affiliates. All rights reserved !
NoSQL Datenbanken im Allgemeinen
Copyright © 2017 Oracle and/or its affiliates. All rights reserved. |
Wofür steht NoSQL?
• NoSQL - Not Only SQL
– 1998 erstmals verwendet für eine (Open-Source) Datenbank, die auf SQL als Anfragesprache für
die Daten verzichtet
• NoSQL – Eine Bewegung
– Alternatives Modell zur relationalen Datenhaltung
• NoSQL – Begriff für eine Gruppe von nicht-relationalen Datenbanken
– Weitgehender Verzicht auf Datenmodellierung („Schema-less“, „Schema on read“)
– Nicht zwingenderweise konsistente Daten („Eventually Consistent“). Typischerweise Verzicht auf
ACID-Eigenschaften.
– Daten werden horizontal verteilt abgelegt („Shared nothing“). Massiv parallelisierbar. Einfach
skalierbar durch Hinzufügen von Speicherknoten.
– „Eingebaute“ Replikation für Ausfallsicherheit. Ein „Datensatz“ wird immer n-fach gespeichert.
– (Sehr) Große und heterogene Datenmengen schnell, kostengünstig speichern und einfach abrufen
Copyright © 2017 Oracle and/or its affiliates. All rights reserved. |
Ist NoSQL gleich NoSQL? Nein!
Key-Value
Stores
Bsp.:
Oracle NoSQL DB
Redis
Document
Stores
Bsp.:
MongoDB
MarkLogic
Column Stores / BigTable
Bsp.:
HBase
Cassandra
Graph
Datenbanken
Bsp.:
Neo4J
Oracle NoSQL + Big Data Spatial and Graph
Abbildungen: http://www.thoughtworks.com/insights/blog/nosql-databases-overview
http://nosql-database.org/
http://db-engines.com/
Copyright © 2017 Oracle and/or its affiliates. All rights reserved. |
Anwendungsfälle für NoSQL Datenbanken
Copyright © 2017 Oracle and/or its affiliates. All rights reserved. |
Konzeptionelle Sicht auf das Management von Daten
Copyright © 2017 Oracle and/or its affiliates. All rights reserved. |
Komplementäre Datenmanagement-Plattformen
Die bestmögliche Plattform für den jeweiligen Zweck.
Prozessieren
▪ Transaktionales Geschäft
▪ Fortgeschritte Analysen
▪ Standardisierter Zugriff auf
unterschiedlichste Daten
RelationalHadoop
Verändern
▪ Data Reservoirs aufbauen
▪ Vielfältigste Analysen auf
großen Datenmengen
ausführen
▪ Batch-Verarbeitung
NoSQL
Skalieren
▪ Beliebige Daten schnell
ablegen
▪ Kostengünstig skalieren
▪ Einfache Zugriffe u. Abfragen
Copyright © 2017 Oracle and/or its affiliates. All rights reserved. |
Datenmanagement-Plattformen: Vergleich nach Kriterien
Performanz
Sicherheit
Kosten
Concurrency
Complex Query Response Times
Single Record Read/Write
Performance
Bulk Write Performance
Privileged User Security
General User Security
Governance Tools
System per TB Cost
Backup per TB Cost
Skills Acquisition Cost
RDBMS
NoSQL DB
Hadoop
Copyright © 2017, Oracle and/or its affiliates. All rights reserved !
Die Oracle NoSQL DB im Speziellen
Copyright © 2017 Oracle and/or its affiliates. All rights reserved. |
Grundlegendes
• Key-Value Datenhaltung als Basis (KV Store)
– Primär- und Sekundärindizes
– JSON, AVRO Support, SQL-like Zugriffe
• Basiert auf Oracle Berkeley DB Java Edition High Availability
• Datenhaltung – ready for web scale
– Parallele Schreibvorgänge auf Masterknoten
– Hochverfügbarkeit per Replikation (Verteilung von
Datenkopien auf Replikaknoten)
– Paralleles Lesen von Master- und Replikaknoten
– Konsistenz und Persistenz konfigurierbar (ACID <-> BASE)
– Transparentes Loadbalancing
KVStore
Copyright © 2017 Oracle and/or its affiliates. All rights reserved. |
Oracle NoSQL DB als Verteiltes System: CAP Theorem
• Nur 2 Eigenschaften sind
gleichzeitig erfüllbar:
• Konsistenz (C): Nach Abschluß einer
Transaktion müssen auch alle Replikate
aktualisiert werden.
• Verfügbarkeit (A): Alle Anfragen müssen
beantwortet werden.
• Partitionstoleranz (P): Auch bei Verlust
einzelner Knoten kann weitergearbeitet
werden.
• Oracle NoSQL DB entweder
– C/P (synchrone Replikation)
– A/P (asynchrone Replikation)
Copyright © 2017 Oracle and/or its affiliates. All rights reserved. |
Oracle NoSQL DB Cluster
Topologie
Agents
A
A
A
Machine1
Machine2
Machine3
Replica Group1
Replica Group2
Replica Group4Replica Group3
R1
R2
R2
R1 R4
R4
R3
R3
M4
M1
M2
M3DD
D
D
Application
NoSQL Driver
D
D
Copyright © 2017 Oracle and/or its affiliates. All rights reserved. |
Deployment Optionen
„Do-it-yourself“ NoSQL DB Cluster
• Was muss beachtet werden
– Hardware, Netzwerk, Sizing
– Installation, Konfiguration, Deployment
– Patchen
– Load Balancing
• Bare Metal CS (IaaS)
– https://github.com/oracle-nosql/ons-bmc-byol
• NoSQL Database Cloud Service
– https://cloud.oracle.com/en_US/nosql
Engineered Systems Ansatz
• Oracle Big Data Appliance
– Schnell einsetzbar, günstige TCO, skalierbar
– Vorintegrierte Full Rack Konfiguration
• Oracle's Sun x86 Servers
• InfiniBand und Ethernet Konnektivität
– Vorinstallierte SW-Komponenten
• U.a. NoSQL DB, Oracle R,
Cloudera Enterprise Technology
Software inkl. Cloudera CDH,
Cloudera Manager, and
Cloudera RTQ (Impala)
– Perfekt ausbalanciert
– Erweiterbar
Copyright © 2017 Oracle and/or its affiliates. All rights reserved. |
Die Basis: Was ist ein "Key-Value-Store"?
• Ansammlung von Key-Value-Paaren in einem Store, verteilt auf Partitionen
– Key – String, Major & Minor Key
– Value – Byte Array
• Identifikation über Key (oder Teile davon), Auslesen des Value
• Einfache Zugriffe: GET, PUT, DELETE
• Keine Standard-Abfragesprache wie SQL für RDBMS
Key Value
010101010 0198287981A98721891209A0909109039810983A0919032093091A
010101011 Das ist ein Text, der als Value abgelegt ist
… 000101010010111111010010101000111
Datenstrukturen sind nicht selbstbeschreibend
Zeilen
Key-Value Store CUSTOMERSKey = Index
Copyright © 2017 Oracle and/or its affiliates. All rights reserved. |
Key-Value ist nicht alles
• Tabellen-Abstraktion SQL Schnittstelle
• Zeilen und Spalten
• Secondary Indexes
Ebene 2:
Table API
• Datenstrukturen
• Schema-Support
• JSON-Daten
Ebene 1:
JSON/AVRO
• Einfache Operationen
• Beliebige Binärdaten
Ebene 0:
Key-Value
Copyright © 2017 Oracle and/or its affiliates. All rights reserved. |
Treiber für Oracle NoSQL DB
Copyright © 2017 Oracle and/or its affiliates. All rights reserved. |
Datenmodellierung
Copyright © 2017, Oracle and/or its affiliates. All rights reserved !
Demo: JSON mit Oracle NoSQL DB im Team
Copyright © 2017 Oracle and/or its affiliates. All rights reserved. |
Demoumgebung
• Ravello Cloud Service
https://cloud.ravellosystems.com/
– Virtuelle Maschine mit
• Ubuntu
• Oracle NoSQL DB (aktuelle Version: 4.5.12)
als KVLITE
– 1 Storage Node
– Single Shard
– Keine Replikation
– Konfiguration, Start und Stop über CLI
– Alle Code-Beispiele mit SQL auf Table
API
Copyright © 2017 Oracle and/or its affiliates. All rights reserved. |
Beispieldaten JSON (Ausschnitte aus 2 Dateien)
Copyright © 2017 Oracle and/or its affiliates. All rights reserved. |
Deployment KVLITE und erste Schritte
# BDL 4.9 mit Oracle NoSQL DB 12.2.4.5 (KVLITE)
# Clean up
sudo rm -rf /u01/nosql/kvroot
mkdir /u01/nosql/kvroot
# Set variables
export KVHOME=~/nosql/kv-ee
export KVROOT=~/nosql/kvroot
export KVDATA=~/nosql/kvdata
# Makebootconfig
java -jar $KVHOME/lib/kvstore.jar makebootconfig 
-root $KVROOT 
-port 5000 
-host bigdatalite 
-harange 5010,5025 
-capacity 1 
-store-security none 
-storagedir $KVDATA 
-storagedirsize 100_mb
# Start SNA
nohup java -Xmx256m -Xms256m –jar 
$KVHOME/lib/kvstore.jar kvlite -root $KVROOT 
-host localhost -secure-config disable 
> /tmp/kvlite.out 2>&1 &
# Check environment
java -Xmx256m -Xms256m -jar
$KVHOME/lib/kvstore.jar ping -host localhost -port
5000
java -Xmx256m -Xms256m -jar
$KVHOME/lib/kvstore.jar version
# Run admin shell
java -Xmx256m -Xms256m -jar
$KVHOME/lib/kvstore.jar runadmin -port 5000 -host
localhost
kv> show topology
kv> verify configuration
kv> show events
# Create snapshot
kv> snapshot create -name InitialSnapshot
kv> quit
Copyright © 2017 Oracle and/or its affiliates. All rights reserved. |
Copyright © 2017 Oracle and/or its affiliates. All rights reserved. | 37
Copyright © 2017 Oracle and/or its affiliates. All rights reserved. | 38
Copyright © 2017 Oracle and/or its affiliates. All rights reserved. | 39
Copyright © 2017 Oracle and/or its affiliates. All rights reserved. | 40
Copyright © 2017 Oracle and/or its affiliates. All rights reserved. | 41
Copyright © 2017 Oracle and/or its affiliates. All rights reserved. | 42
Copyright © 2017 Oracle and/or its affiliates. All rights reserved. | 43
Copyright © 2017, Oracle and/or its affiliates. All rights reserved !
Zusammenfassung und Weiterführende
Informationen
Copyright © 2017 Oracle and/or its affiliates. All rights reserved. |
Die NoSQL DB (auch) als JSON Store
• Super schnell flexibel modellierte Daten
speichern und abfragen
• SQL-ähnliche Syntax für Table API
erleichtert den Einstieg für alle, die aus
SQL / RDBMS kommen
• Komplementär zu Apache Hadoop und
RDBMS
• 3 verschiedene Editionen
– Enterprise Edition
– Basic Edition
– Community Edition
• Integration mit RDBMS und Appache
Hadoop über Big Data SQL
• Schnell: Oracle Bare Metal CS mit höchster
Performanz (> 800,000 Ops/Sek. auf 3
Knoten-Cluster)
• Flexibel: Verschiedene Datenmodelle, inkl.
native Unterstützung für JSON
• Integriert: Integration mit anderen Oracle
Produkten für Big Data Lösungen
• Einfach zu managen: Einfach aufzusetzen, zu
erweitern, zu managen
• Zuverlässig: Transaktionssemantik
indivuduell anpassbar. Eingebaute Replikation
für Hochverfügbarkeit und Business
Continuity
• Skalierbar: Cluster beliebig mit Commodity-
HW erweiterbar. Zero down-time.
Copyright © 2017 Oracle and/or its affiliates. All rights reserved. |
Performance comparison
Oracle NoSQL DB, Cassandra, Mongo DB
Benchmark details
• Yahoo! Cloud Serving
Benchmark (YCSB)
[13 byte key; 1100 byte value]
• 100 Million records in
database (~100 GB of data)
• 3 Node cluster – commodity
h/w
(X4-2; 2*12 Cores; 250 GB
RAM; 400GB SSD)
Copyright © 2017 Oracle and/or its affiliates. All rights reserved. |
Github / Developer Community & Videos
• Github
– Oracle NoSQL DB exampes https://github.com/oracle/nosql-examples
– Docker Images for Oracle NoSQL DB https://github.com/oracle/docker-
images/tree/master/NoSQL (Quickstart running Oracle NoSQL DB on Docker)
• Youtube
– Videoreihe zur Oracle NoSQL DB (Channel: DTCCpotsdam)
• Teil 1: Einführung zur Oracle NoSQL DB
https://www.youtube.com/watch?v=LZ4GGfu8Dk4
• Teil 2: Installation und Betrieb der Oracle NoSQL DB
https://www.youtube.com/watch?v=vJA-sd0LKvw
• Teil 3: Anwendungsentwicklung mit der Oracle NoSQL DB
https://www.youtube.com/watch?v=v5zk9VHKSJY
Copyright © 2017 Oracle and/or its affiliates. All rights reserved. |
Mehr Links (1)
• NoSQL DB Use Cases, White Papers, Data Sheets,
Benchmarks
– http://www.oracle.com/technetwork/products/nosqldb
/overview/index.html
• NoSQL DB Documentation
– http://www.oracle.com/technetwork/products/nosqldb
/documentation/index.html
• NoSQL DB Downloads
– http://www.oracle.com/technetwork/products/nosqldb
/downloads/index.html
• NoSQL DB OTN Forum
– http://forums.oracle.com/forums/forum.jspa?forumID
=1388
• Oracle University Training Classes
– http://bit.ly/V5qbmY
• Forrester Wave Report
http://www.oracle.com/us/corporate/analystreports/forrest
er-wave-nosql-2348063.pdf#7
• Oracle NoSQL DB Architecture White Paper
http://www.oracle.com/technetwork/products/nosqldb/lear
nmore/nosql-wp-1436762.pdf
• Oracle NoSQL DB vs. RBDMS
http://www.oracle.com/technetwork/database/database-
technologies/nosqldb/overview/nosqlandsqltoo-
2041272.pdf
• Bücher
– “Oracle Big Data Handbook”
– “Oracle NoSQL Database: Real-Time Big Data
Management for the Enterprise”
Copyright © 2017 Oracle and/or its affiliates. All rights reserved. |
Mehr Links (2)
• JavaDoc der Java API http://docs.oracle.com/cd/NOSQL/html/javadoc/index.html
• Wieviel Storage Nodes werden benötigt – Ressourcen planen für die Oracle NoSQL DB:
http://docs.oracle.com/cd/NOSQL/html/AdminGuide/Oracle-NoSQLDB-Admin.pdf#page=16
• Oracle Big Data Lite VM
http://www.oracle.com/technetwork/community/developer-vm/index.html#bdl
• Oracle Dojo #2 zu „Big Data: Eine Einführung in Oracle NoSQL DB, Hadoop MapReduce,
Oracle Big Data Connectors“
http://www.oracle.com/webfolder/technetwork/de/community/dojo/index.html
• Blog von Charles Lambs https://blogs.oracle.com/charlesLamb/
• Vortrag metafinanz Informationssysteme GmbH auf DOAG Konferenz 2013
http://www.metafinanz.de/sites/default/files/DOAG_2013_Oracle NoSQL Database.pdf
• External Blogs: https://technology.amis.nl
Copyright © 2017 Oracle and/or its affiliates. All rights reserved. |
Oracle NoSQL DB: Begriffe und Definitionen in Kürze
Begriff Definition
Storage Nodes (Physikalischer) Rechner mit lokalen Platten
Storage Node
Agent
Kontroll Prozess auf jedem Storage Node
KVStore Speicherarray mit untereinander
kommunizierenden den Storage Nodes
Storage Node
Master
Je Storage Node gibt es einen Master für
schreibende und lesende Zugriffe. Repliziert
Daten auf Replikaknoten.
Storage Node
Replika
Kopie der Daten von einen Storage Node
Master für die Ausfallsicherheit. Für lesende
Zugriffe.
Replication Group Ein Master und mindestens ein Replika-
Node
Replication Factor 1 Master und n Replikas auf einem Storage
Node (Bsp.: RF = 3 => 1 Master + 2 Replikas)
https://www.pipperr.de/dokuwiki/doku.php?id=nosql:install_oracle_nosql_db_11gr2
Copyright © 2017 Oracle and/or its affiliates. All rights reserved. |
Oracle Cloud Workshops auf der DOAG Konferenz 2017
• Dienstag 21.11.2017
– 10.00 – 13.00 Uhr – Oracle Datenbank und GoldenGate in der Oracle Cloud
– 13.00 – 16.00 Uhr – IT Systems Management mit der Oracle Management Cloud
• Mittwoch 22.11.2017
– 10.00 – 13.00 Uhr – Agile Entwicklung von Microservices in der Oracle Cloud
– 13.00 – 16.00 Uhr – Oracle Datenbank und GoldenGate in der Oracle Cloud
• Donnerstag 23.11.2017
– 10.00 – 13.00 Uhr – IT Systems Management mit der Oracle Management Cloud
– 13.00 – 16.00 Uhr – Agile Entwicklung von Microservices in der Oracle Cloud
51
Im Foyer Shanghai-Seoul – Einstieg in die jeweilige Session jederzeit möglich!
Copyright © 2017 Oracle and/or its affiliates. All rights reserved. |
20171121_DOAGKonferenz_JSON_OracleNoSQL_KPatenge

Weitere ähnliche Inhalte

Was ist angesagt?

SimpleDB - Chancen einer Cloud Datenbank
SimpleDB - Chancen einer Cloud DatenbankSimpleDB - Chancen einer Cloud Datenbank
SimpleDB - Chancen einer Cloud DatenbankONE Schweiz
 
Oracle Database Appliance X4-2
Oracle Database Appliance X4-2Oracle Database Appliance X4-2
Oracle Database Appliance X4-2Ileana Somesan
 
Oracle Database In-Memory Advisor (Deutsch)
Oracle Database In-Memory Advisor (Deutsch)Oracle Database In-Memory Advisor (Deutsch)
Oracle Database In-Memory Advisor (Deutsch)Ileana Somesan
 
Die Oracle Datenbank als Service in der Oracle Cloud, November 2012
Die Oracle Datenbank als Service in der Oracle Cloud, November 2012Die Oracle Datenbank als Service in der Oracle Cloud, November 2012
Die Oracle Datenbank als Service in der Oracle Cloud, November 2012Ileana Somesan
 
Oracle Database Appliance, Partnerwebcast, November 2011
Oracle Database Appliance, Partnerwebcast, November 2011Oracle Database Appliance, Partnerwebcast, November 2011
Oracle Database Appliance, Partnerwebcast, November 2011Ileana Somesan
 
Wer gewinnt das SQL-Rennen auf der Hadoop-Strecke?
Wer gewinnt das SQL-Rennen auf der Hadoop-Strecke?Wer gewinnt das SQL-Rennen auf der Hadoop-Strecke?
Wer gewinnt das SQL-Rennen auf der Hadoop-Strecke?inovex GmbH
 
20181210_ITTage2018_OracleNoSQLDB_KPatenge
20181210_ITTage2018_OracleNoSQLDB_KPatenge20181210_ITTage2018_OracleNoSQLDB_KPatenge
20181210_ITTage2018_OracleNoSQLDB_KPatengeKarin Patenge
 
Oracle und Hochverfügbarkeit – Verschiedene Ansätze im Vergleich
Oracle und Hochverfügbarkeit – Verschiedene Ansätze im VergleichOracle und Hochverfügbarkeit – Verschiedene Ansätze im Vergleich
Oracle und Hochverfügbarkeit – Verschiedene Ansätze im VergleichDierk Lenz
 
Oracle Database Appliance, DOAG Regio Berlin Brandenburg, Juni 2012
Oracle Database Appliance, DOAG Regio Berlin Brandenburg, Juni 2012Oracle Database Appliance, DOAG Regio Berlin Brandenburg, Juni 2012
Oracle Database Appliance, DOAG Regio Berlin Brandenburg, Juni 2012Ileana Somesan
 

Was ist angesagt? (9)

SimpleDB - Chancen einer Cloud Datenbank
SimpleDB - Chancen einer Cloud DatenbankSimpleDB - Chancen einer Cloud Datenbank
SimpleDB - Chancen einer Cloud Datenbank
 
Oracle Database Appliance X4-2
Oracle Database Appliance X4-2Oracle Database Appliance X4-2
Oracle Database Appliance X4-2
 
Oracle Database In-Memory Advisor (Deutsch)
Oracle Database In-Memory Advisor (Deutsch)Oracle Database In-Memory Advisor (Deutsch)
Oracle Database In-Memory Advisor (Deutsch)
 
Die Oracle Datenbank als Service in der Oracle Cloud, November 2012
Die Oracle Datenbank als Service in der Oracle Cloud, November 2012Die Oracle Datenbank als Service in der Oracle Cloud, November 2012
Die Oracle Datenbank als Service in der Oracle Cloud, November 2012
 
Oracle Database Appliance, Partnerwebcast, November 2011
Oracle Database Appliance, Partnerwebcast, November 2011Oracle Database Appliance, Partnerwebcast, November 2011
Oracle Database Appliance, Partnerwebcast, November 2011
 
Wer gewinnt das SQL-Rennen auf der Hadoop-Strecke?
Wer gewinnt das SQL-Rennen auf der Hadoop-Strecke?Wer gewinnt das SQL-Rennen auf der Hadoop-Strecke?
Wer gewinnt das SQL-Rennen auf der Hadoop-Strecke?
 
20181210_ITTage2018_OracleNoSQLDB_KPatenge
20181210_ITTage2018_OracleNoSQLDB_KPatenge20181210_ITTage2018_OracleNoSQLDB_KPatenge
20181210_ITTage2018_OracleNoSQLDB_KPatenge
 
Oracle und Hochverfügbarkeit – Verschiedene Ansätze im Vergleich
Oracle und Hochverfügbarkeit – Verschiedene Ansätze im VergleichOracle und Hochverfügbarkeit – Verschiedene Ansätze im Vergleich
Oracle und Hochverfügbarkeit – Verschiedene Ansätze im Vergleich
 
Oracle Database Appliance, DOAG Regio Berlin Brandenburg, Juni 2012
Oracle Database Appliance, DOAG Regio Berlin Brandenburg, Juni 2012Oracle Database Appliance, DOAG Regio Berlin Brandenburg, Juni 2012
Oracle Database Appliance, DOAG Regio Berlin Brandenburg, Juni 2012
 

Ähnlich wie 20171121_DOAGKonferenz_JSON_OracleNoSQL_KPatenge

OOP 2014 SQL oder NoSQL - die Auswahl der richtigen Datenbankplattform für di...
OOP 2014 SQL oder NoSQL - die Auswahl der richtigen Datenbankplattform für di...OOP 2014 SQL oder NoSQL - die Auswahl der richtigen Datenbankplattform für di...
OOP 2014 SQL oder NoSQL - die Auswahl der richtigen Datenbankplattform für di...AWS Germany
 
Heterogene Daten(-strukturen) in der Oracle Datenbank
Heterogene Daten(-strukturen) in der Oracle DatenbankHeterogene Daten(-strukturen) in der Oracle Datenbank
Heterogene Daten(-strukturen) in der Oracle DatenbankUlrike Schwinn
 
Spezialitäten der Oracle Lizenzierung - DOAG Konferenz 2010 - OPITZ CONSULTI...
Spezialitäten der Oracle Lizenzierung -  DOAG Konferenz 2010 - OPITZ CONSULTI...Spezialitäten der Oracle Lizenzierung -  DOAG Konferenz 2010 - OPITZ CONSULTI...
Spezialitäten der Oracle Lizenzierung - DOAG Konferenz 2010 - OPITZ CONSULTI...OPITZ CONSULTING Deutschland
 
Oracle Database 12c Release 2
Oracle Database 12c Release 2 Oracle Database 12c Release 2
Oracle Database 12c Release 2 oraclebudb
 
Oracle Technology Monthly Oktober 2017
Oracle Technology Monthly Oktober 2017Oracle Technology Monthly Oktober 2017
Oracle Technology Monthly Oktober 2017oraclebudb
 
SQL oder NoSQL - Die Auswahl der richtigen Datenbankplattform für die Cloud
SQL oder NoSQL - Die Auswahl der richtigen Datenbankplattform für die CloudSQL oder NoSQL - Die Auswahl der richtigen Datenbankplattform für die Cloud
SQL oder NoSQL - Die Auswahl der richtigen Datenbankplattform für die CloudAWS Germany
 
Nosql Hintergründe und Anwendungen
Nosql Hintergründe und AnwendungenNosql Hintergründe und Anwendungen
Nosql Hintergründe und AnwendungenAndy Whole
 
Big Data Community Webinar vom 16. Mai 2019: Oracle NoSQL DB im Überblick
Big Data Community Webinar vom 16. Mai 2019: Oracle NoSQL DB im ÜberblickBig Data Community Webinar vom 16. Mai 2019: Oracle NoSQL DB im Überblick
Big Data Community Webinar vom 16. Mai 2019: Oracle NoSQL DB im ÜberblickKarin Patenge
 
Oracle GoldenGate: Synchronisation zwischen Oracle und MySQL Datenbanken, Nov...
Oracle GoldenGate: Synchronisation zwischen Oracle und MySQL Datenbanken, Nov...Oracle GoldenGate: Synchronisation zwischen Oracle und MySQL Datenbanken, Nov...
Oracle GoldenGate: Synchronisation zwischen Oracle und MySQL Datenbanken, Nov...Ileana Somesan
 
20190604_DOAGDatabase2019_OracleNoSQLDB_for_DBAs
20190604_DOAGDatabase2019_OracleNoSQLDB_for_DBAs20190604_DOAGDatabase2019_OracleNoSQLDB_for_DBAs
20190604_DOAGDatabase2019_OracleNoSQLDB_for_DBAsKarin Patenge
 
RDBMS oder NoSQL – warum nicht beides?
RDBMS oder NoSQL – warum nicht beides?RDBMS oder NoSQL – warum nicht beides?
RDBMS oder NoSQL – warum nicht beides?Capgemini
 
Agile Oracle database modeling and development - APEX Connect 2020
Agile Oracle database modeling and development - APEX Connect 2020Agile Oracle database modeling and development - APEX Connect 2020
Agile Oracle database modeling and development - APEX Connect 2020Torsten Kleiber
 
Ruby on Rails in a metro session
Ruby on Rails in a metro sessionRuby on Rails in a metro session
Ruby on Rails in a metro sessionVirttoo org
 
Apex on the Rocks - Hochverfügbarkeit
Apex on the Rocks - HochverfügbarkeitApex on the Rocks - Hochverfügbarkeit
Apex on the Rocks - HochverfügbarkeitStefan Witwicki
 
Analytics meets Big Data – R/Python auf der Hadoop/Spark-Plattform
Analytics meets Big Data – R/Python auf der Hadoop/Spark-PlattformAnalytics meets Big Data – R/Python auf der Hadoop/Spark-Plattform
Analytics meets Big Data – R/Python auf der Hadoop/Spark-PlattformRising Media Ltd.
 
Big Data Konnektivität
Big Data KonnektivitätBig Data Konnektivität
Big Data KonnektivitätTrivadis
 
Private Cloud mit Open Source
Private Cloud mit Open SourcePrivate Cloud mit Open Source
Private Cloud mit Open SourceDaniel Schneller
 
Oracle no sql-doag-datenbank_konferenz_juni_2014
Oracle no sql-doag-datenbank_konferenz_juni_2014Oracle no sql-doag-datenbank_konferenz_juni_2014
Oracle no sql-doag-datenbank_konferenz_juni_2014Gunther Pippèrr
 
A NoSQL Summer - The Year After
A NoSQL Summer - The Year AfterA NoSQL Summer - The Year After
A NoSQL Summer - The Year AfterMeMo News AG
 

Ähnlich wie 20171121_DOAGKonferenz_JSON_OracleNoSQL_KPatenge (20)

OOP 2014 SQL oder NoSQL - die Auswahl der richtigen Datenbankplattform für di...
OOP 2014 SQL oder NoSQL - die Auswahl der richtigen Datenbankplattform für di...OOP 2014 SQL oder NoSQL - die Auswahl der richtigen Datenbankplattform für di...
OOP 2014 SQL oder NoSQL - die Auswahl der richtigen Datenbankplattform für di...
 
Heterogene Daten(-strukturen) in der Oracle Datenbank
Heterogene Daten(-strukturen) in der Oracle DatenbankHeterogene Daten(-strukturen) in der Oracle Datenbank
Heterogene Daten(-strukturen) in der Oracle Datenbank
 
Spezialitäten der Oracle Lizenzierung - DOAG Konferenz 2010 - OPITZ CONSULTI...
Spezialitäten der Oracle Lizenzierung -  DOAG Konferenz 2010 - OPITZ CONSULTI...Spezialitäten der Oracle Lizenzierung -  DOAG Konferenz 2010 - OPITZ CONSULTI...
Spezialitäten der Oracle Lizenzierung - DOAG Konferenz 2010 - OPITZ CONSULTI...
 
Oracle Database 12c Release 2
Oracle Database 12c Release 2 Oracle Database 12c Release 2
Oracle Database 12c Release 2
 
Oracle Technology Monthly Oktober 2017
Oracle Technology Monthly Oktober 2017Oracle Technology Monthly Oktober 2017
Oracle Technology Monthly Oktober 2017
 
SQL oder NoSQL - Die Auswahl der richtigen Datenbankplattform für die Cloud
SQL oder NoSQL - Die Auswahl der richtigen Datenbankplattform für die CloudSQL oder NoSQL - Die Auswahl der richtigen Datenbankplattform für die Cloud
SQL oder NoSQL - Die Auswahl der richtigen Datenbankplattform für die Cloud
 
Nosql Hintergründe und Anwendungen
Nosql Hintergründe und AnwendungenNosql Hintergründe und Anwendungen
Nosql Hintergründe und Anwendungen
 
Amazon Redshift
Amazon RedshiftAmazon Redshift
Amazon Redshift
 
Big Data Community Webinar vom 16. Mai 2019: Oracle NoSQL DB im Überblick
Big Data Community Webinar vom 16. Mai 2019: Oracle NoSQL DB im ÜberblickBig Data Community Webinar vom 16. Mai 2019: Oracle NoSQL DB im Überblick
Big Data Community Webinar vom 16. Mai 2019: Oracle NoSQL DB im Überblick
 
Oracle GoldenGate: Synchronisation zwischen Oracle und MySQL Datenbanken, Nov...
Oracle GoldenGate: Synchronisation zwischen Oracle und MySQL Datenbanken, Nov...Oracle GoldenGate: Synchronisation zwischen Oracle und MySQL Datenbanken, Nov...
Oracle GoldenGate: Synchronisation zwischen Oracle und MySQL Datenbanken, Nov...
 
20190604_DOAGDatabase2019_OracleNoSQLDB_for_DBAs
20190604_DOAGDatabase2019_OracleNoSQLDB_for_DBAs20190604_DOAGDatabase2019_OracleNoSQLDB_for_DBAs
20190604_DOAGDatabase2019_OracleNoSQLDB_for_DBAs
 
RDBMS oder NoSQL – warum nicht beides?
RDBMS oder NoSQL – warum nicht beides?RDBMS oder NoSQL – warum nicht beides?
RDBMS oder NoSQL – warum nicht beides?
 
Agile Oracle database modeling and development - APEX Connect 2020
Agile Oracle database modeling and development - APEX Connect 2020Agile Oracle database modeling and development - APEX Connect 2020
Agile Oracle database modeling and development - APEX Connect 2020
 
Ruby on Rails in a metro session
Ruby on Rails in a metro sessionRuby on Rails in a metro session
Ruby on Rails in a metro session
 
Apex on the Rocks - Hochverfügbarkeit
Apex on the Rocks - HochverfügbarkeitApex on the Rocks - Hochverfügbarkeit
Apex on the Rocks - Hochverfügbarkeit
 
Analytics meets Big Data – R/Python auf der Hadoop/Spark-Plattform
Analytics meets Big Data – R/Python auf der Hadoop/Spark-PlattformAnalytics meets Big Data – R/Python auf der Hadoop/Spark-Plattform
Analytics meets Big Data – R/Python auf der Hadoop/Spark-Plattform
 
Big Data Konnektivität
Big Data KonnektivitätBig Data Konnektivität
Big Data Konnektivität
 
Private Cloud mit Open Source
Private Cloud mit Open SourcePrivate Cloud mit Open Source
Private Cloud mit Open Source
 
Oracle no sql-doag-datenbank_konferenz_juni_2014
Oracle no sql-doag-datenbank_konferenz_juni_2014Oracle no sql-doag-datenbank_konferenz_juni_2014
Oracle no sql-doag-datenbank_konferenz_juni_2014
 
A NoSQL Summer - The Year After
A NoSQL Summer - The Year AfterA NoSQL Summer - The Year After
A NoSQL Summer - The Year After
 

Mehr von Karin Patenge

20190704_AGIT_Georaster_ImageryData_KPatenge
20190704_AGIT_Georaster_ImageryData_KPatenge20190704_AGIT_Georaster_ImageryData_KPatenge
20190704_AGIT_Georaster_ImageryData_KPatengeKarin Patenge
 
20190703_AGIT_GeoRasterWorkshop_GriddedData_KPatenge
20190703_AGIT_GeoRasterWorkshop_GriddedData_KPatenge20190703_AGIT_GeoRasterWorkshop_GriddedData_KPatenge
20190703_AGIT_GeoRasterWorkshop_GriddedData_KPatengeKarin Patenge
 
20181120_DOAG_OracleNoSQLDB_KPatenge
20181120_DOAG_OracleNoSQLDB_KPatenge20181120_DOAG_OracleNoSQLDB_KPatenge
20181120_DOAG_OracleNoSQLDB_KPatengeKarin Patenge
 
20181123 dn2018 graph_analytics_k_patenge
20181123 dn2018 graph_analytics_k_patenge20181123 dn2018 graph_analytics_k_patenge
20181123 dn2018 graph_analytics_k_patengeKarin Patenge
 
20180921_DOAG_BigDataDays_OracleSpatialandPython_kpatenge
20180921_DOAG_BigDataDays_OracleSpatialandPython_kpatenge20180921_DOAG_BigDataDays_OracleSpatialandPython_kpatenge
20180921_DOAG_BigDataDays_OracleSpatialandPython_kpatengeKarin Patenge
 
20181019 code.talks graph_analytics_k_patenge
20181019 code.talks graph_analytics_k_patenge20181019 code.talks graph_analytics_k_patenge
20181019 code.talks graph_analytics_k_patengeKarin Patenge
 
OracleCode_Berlin_Jun2018_AnalyzeBitcoinTransactionDataUsingAsGraph
OracleCode_Berlin_Jun2018_AnalyzeBitcoinTransactionDataUsingAsGraphOracleCode_Berlin_Jun2018_AnalyzeBitcoinTransactionDataUsingAsGraph
OracleCode_Berlin_Jun2018_AnalyzeBitcoinTransactionDataUsingAsGraphKarin Patenge
 
Graph Analytics on Data from Meetup.com
Graph Analytics on Data from Meetup.comGraph Analytics on Data from Meetup.com
Graph Analytics on Data from Meetup.comKarin Patenge
 
5 Gründe für Oracle Spatial Technologies
5 Gründe für Oracle Spatial Technologies5 Gründe für Oracle Spatial Technologies
5 Gründe für Oracle Spatial TechnologiesKarin Patenge
 
IT-Tage 2017: Visuelle Analyse komplexer Datenbestände am Beispiel der Panama...
IT-Tage 2017: Visuelle Analyse komplexer Datenbestände am Beispiel der Panama...IT-Tage 2017: Visuelle Analyse komplexer Datenbestände am Beispiel der Panama...
IT-Tage 2017: Visuelle Analyse komplexer Datenbestände am Beispiel der Panama...Karin Patenge
 
20171106_OracleWebcast_ITTrends_EFavuzzi_KPatenge
20171106_OracleWebcast_ITTrends_EFavuzzi_KPatenge20171106_OracleWebcast_ITTrends_EFavuzzi_KPatenge
20171106_OracleWebcast_ITTrends_EFavuzzi_KPatengeKarin Patenge
 
Oracle NoSQL Database: Integration in den Oracle Enterprise Manager 12
Oracle NoSQL Database: Integration in den Oracle Enterprise Manager 12Oracle NoSQL Database: Integration in den Oracle Enterprise Manager 12
Oracle NoSQL Database: Integration in den Oracle Enterprise Manager 12Karin Patenge
 
20160229_ModernApplicationDevelopment_Python_KPatenge
20160229_ModernApplicationDevelopment_Python_KPatenge20160229_ModernApplicationDevelopment_Python_KPatenge
20160229_ModernApplicationDevelopment_Python_KPatengeKarin Patenge
 
Datenbank-gestützte Validierung und Geokodierung von Adressdatenbeständen
Datenbank-gestützte Validierung und Geokodierung von AdressdatenbeständenDatenbank-gestützte Validierung und Geokodierung von Adressdatenbeständen
Datenbank-gestützte Validierung und Geokodierung von AdressdatenbeständenKarin Patenge
 
Raster Algebra mit Oracle Spatial und uDig
Raster Algebra mit Oracle Spatial und uDigRaster Algebra mit Oracle Spatial und uDig
Raster Algebra mit Oracle Spatial und uDigKarin Patenge
 
Geodatenmanagement und -Visualisierung mit Oracle Spatial Technologies
Geodatenmanagement und -Visualisierung mit Oracle Spatial TechnologiesGeodatenmanagement und -Visualisierung mit Oracle Spatial Technologies
Geodatenmanagement und -Visualisierung mit Oracle Spatial TechnologiesKarin Patenge
 

Mehr von Karin Patenge (16)

20190704_AGIT_Georaster_ImageryData_KPatenge
20190704_AGIT_Georaster_ImageryData_KPatenge20190704_AGIT_Georaster_ImageryData_KPatenge
20190704_AGIT_Georaster_ImageryData_KPatenge
 
20190703_AGIT_GeoRasterWorkshop_GriddedData_KPatenge
20190703_AGIT_GeoRasterWorkshop_GriddedData_KPatenge20190703_AGIT_GeoRasterWorkshop_GriddedData_KPatenge
20190703_AGIT_GeoRasterWorkshop_GriddedData_KPatenge
 
20181120_DOAG_OracleNoSQLDB_KPatenge
20181120_DOAG_OracleNoSQLDB_KPatenge20181120_DOAG_OracleNoSQLDB_KPatenge
20181120_DOAG_OracleNoSQLDB_KPatenge
 
20181123 dn2018 graph_analytics_k_patenge
20181123 dn2018 graph_analytics_k_patenge20181123 dn2018 graph_analytics_k_patenge
20181123 dn2018 graph_analytics_k_patenge
 
20180921_DOAG_BigDataDays_OracleSpatialandPython_kpatenge
20180921_DOAG_BigDataDays_OracleSpatialandPython_kpatenge20180921_DOAG_BigDataDays_OracleSpatialandPython_kpatenge
20180921_DOAG_BigDataDays_OracleSpatialandPython_kpatenge
 
20181019 code.talks graph_analytics_k_patenge
20181019 code.talks graph_analytics_k_patenge20181019 code.talks graph_analytics_k_patenge
20181019 code.talks graph_analytics_k_patenge
 
OracleCode_Berlin_Jun2018_AnalyzeBitcoinTransactionDataUsingAsGraph
OracleCode_Berlin_Jun2018_AnalyzeBitcoinTransactionDataUsingAsGraphOracleCode_Berlin_Jun2018_AnalyzeBitcoinTransactionDataUsingAsGraph
OracleCode_Berlin_Jun2018_AnalyzeBitcoinTransactionDataUsingAsGraph
 
Graph Analytics on Data from Meetup.com
Graph Analytics on Data from Meetup.comGraph Analytics on Data from Meetup.com
Graph Analytics on Data from Meetup.com
 
5 Gründe für Oracle Spatial Technologies
5 Gründe für Oracle Spatial Technologies5 Gründe für Oracle Spatial Technologies
5 Gründe für Oracle Spatial Technologies
 
IT-Tage 2017: Visuelle Analyse komplexer Datenbestände am Beispiel der Panama...
IT-Tage 2017: Visuelle Analyse komplexer Datenbestände am Beispiel der Panama...IT-Tage 2017: Visuelle Analyse komplexer Datenbestände am Beispiel der Panama...
IT-Tage 2017: Visuelle Analyse komplexer Datenbestände am Beispiel der Panama...
 
20171106_OracleWebcast_ITTrends_EFavuzzi_KPatenge
20171106_OracleWebcast_ITTrends_EFavuzzi_KPatenge20171106_OracleWebcast_ITTrends_EFavuzzi_KPatenge
20171106_OracleWebcast_ITTrends_EFavuzzi_KPatenge
 
Oracle NoSQL Database: Integration in den Oracle Enterprise Manager 12
Oracle NoSQL Database: Integration in den Oracle Enterprise Manager 12Oracle NoSQL Database: Integration in den Oracle Enterprise Manager 12
Oracle NoSQL Database: Integration in den Oracle Enterprise Manager 12
 
20160229_ModernApplicationDevelopment_Python_KPatenge
20160229_ModernApplicationDevelopment_Python_KPatenge20160229_ModernApplicationDevelopment_Python_KPatenge
20160229_ModernApplicationDevelopment_Python_KPatenge
 
Datenbank-gestützte Validierung und Geokodierung von Adressdatenbeständen
Datenbank-gestützte Validierung und Geokodierung von AdressdatenbeständenDatenbank-gestützte Validierung und Geokodierung von Adressdatenbeständen
Datenbank-gestützte Validierung und Geokodierung von Adressdatenbeständen
 
Raster Algebra mit Oracle Spatial und uDig
Raster Algebra mit Oracle Spatial und uDigRaster Algebra mit Oracle Spatial und uDig
Raster Algebra mit Oracle Spatial und uDig
 
Geodatenmanagement und -Visualisierung mit Oracle Spatial Technologies
Geodatenmanagement und -Visualisierung mit Oracle Spatial TechnologiesGeodatenmanagement und -Visualisierung mit Oracle Spatial Technologies
Geodatenmanagement und -Visualisierung mit Oracle Spatial Technologies
 

20171121_DOAGKonferenz_JSON_OracleNoSQL_KPatenge

  • 1.
  • 2. Copyright © 2017, Oracle and/or its affiliates. All rights reserved ! JSON und NoSQL: Ein starkes Team Karin Patenge | Oracle Deutschland B.V. & Co. KG Email: karin.patenge@oracle.com | Twitter: @kpatenge Business Development Manager Technology (Europe North) DOAG 2017 Konferenz Nürnberg | 21. November 2017
  • 3. Copyright © 2017, Oracle and/or its affiliates. All rights reserved ! Safe Harbor Statement The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle.
  • 4. Copyright © 2017, Oracle and/or its affiliates. All rights reserved ! Agenda JSON – Eine kurze Einführung NoSQL Datenbanken im Allgemeinen Die Oracle NoSQL DB im Speziellen Demo: JSON mit Oracle NoSQL DB im Team Zusammenfassung und Weiterführende Informationen 1 2 3 4 5 4
  • 5. Copyright © 2017, Oracle and/or its affiliates. All rights reserved ! JSON – Eine kurze Einführung
  • 6. Copyright © 2017 Oracle and/or its affiliates. All rights reserved. | • Sehr einfaches Austauschformat für Daten • Maschinen-lesbar • Einfachere Konzepte als XML • Basiert auf (Subset von) JavaScript • Breite Unterstützung durch Web- APIs und Programmiersprachen – Google, Twitter, LinkedIn, XING, Facebook & u.v.m. • Weit verbreitet auch für Open Data oder IoT („Message payload“) • http://json.org JSON – JavaScript Object Notation
  • 7. Copyright © 2017 Oracle and/or its affiliates. All rights reserved. | Warum JSON? • Agilität und "Continuous Delivery" – Flexible Datenmodelle – “Schema-on-read” anstatt “Schema-on-write” – Änderungen an Datenstrukturen immer häufiger – Lange Zyklen für Schema-Änderungen werden immer weniger akzeptiert • Komplett unabhängig von Programmiersprachen, aber eine universelle Datenstruktur, die von vielen Programmiersprachen unterstützt wird
  • 8. Copyright © 2017 Oracle and/or its affiliates. All rights reserved. | 1. Menge von Key-Value-Paaren 2. (Sortierte) Listen • " " umschließen Strings • {} umschließen JSON Objekte • [] umschließen JSON Arrays • Key und Value werden durch Doppelpunkt getrennt • Werte in Arrays bzw. Key-Value- Paare in Objekten sind jeweils durch Komma getrennt • Schlüssel (Key) in JSON – String • Werte (Value) in JSON – String – Number – Object – Array – Boolean – Null JSON Grundstrukturen und Syntax
  • 9. Copyright © 2017 Oracle and/or its affiliates. All rights reserved. | "type":"object" • Bsp.: { "fullname":"Karin Patenge", "cat":5, "demo":true, "age":null } } • Beliebig viele Key-Value-Paare • Values vom Typ: string, number, object, array, boolean, null "type":"array" –Bsp.: ["NoSQL", "JSON", "JavaScript"] –Listenelemente vom Typ: string, number, object, array, boolean, null –Beliebig viele Werte –Arrays in JSON Objekten –Verschachtelte Arrays Nicht-skalare Datentypen
  • 10. Copyright © 2017 Oracle and/or its affiliates. All rights reserved. |
  • 11. Copyright © 2017, Oracle and/or its affiliates. All rights reserved ! NoSQL Datenbanken im Allgemeinen
  • 12. Copyright © 2017 Oracle and/or its affiliates. All rights reserved. | Wofür steht NoSQL? • NoSQL - Not Only SQL – 1998 erstmals verwendet für eine (Open-Source) Datenbank, die auf SQL als Anfragesprache für die Daten verzichtet • NoSQL – Eine Bewegung – Alternatives Modell zur relationalen Datenhaltung • NoSQL – Begriff für eine Gruppe von nicht-relationalen Datenbanken – Weitgehender Verzicht auf Datenmodellierung („Schema-less“, „Schema on read“) – Nicht zwingenderweise konsistente Daten („Eventually Consistent“). Typischerweise Verzicht auf ACID-Eigenschaften. – Daten werden horizontal verteilt abgelegt („Shared nothing“). Massiv parallelisierbar. Einfach skalierbar durch Hinzufügen von Speicherknoten. – „Eingebaute“ Replikation für Ausfallsicherheit. Ein „Datensatz“ wird immer n-fach gespeichert. – (Sehr) Große und heterogene Datenmengen schnell, kostengünstig speichern und einfach abrufen
  • 13. Copyright © 2017 Oracle and/or its affiliates. All rights reserved. | Ist NoSQL gleich NoSQL? Nein! Key-Value Stores Bsp.: Oracle NoSQL DB Redis Document Stores Bsp.: MongoDB MarkLogic Column Stores / BigTable Bsp.: HBase Cassandra Graph Datenbanken Bsp.: Neo4J Oracle NoSQL + Big Data Spatial and Graph Abbildungen: http://www.thoughtworks.com/insights/blog/nosql-databases-overview http://nosql-database.org/ http://db-engines.com/
  • 14. Copyright © 2017 Oracle and/or its affiliates. All rights reserved. | Anwendungsfälle für NoSQL Datenbanken
  • 15. Copyright © 2017 Oracle and/or its affiliates. All rights reserved. | Konzeptionelle Sicht auf das Management von Daten
  • 16. Copyright © 2017 Oracle and/or its affiliates. All rights reserved. | Komplementäre Datenmanagement-Plattformen Die bestmögliche Plattform für den jeweiligen Zweck. Prozessieren ▪ Transaktionales Geschäft ▪ Fortgeschritte Analysen ▪ Standardisierter Zugriff auf unterschiedlichste Daten RelationalHadoop Verändern ▪ Data Reservoirs aufbauen ▪ Vielfältigste Analysen auf großen Datenmengen ausführen ▪ Batch-Verarbeitung NoSQL Skalieren ▪ Beliebige Daten schnell ablegen ▪ Kostengünstig skalieren ▪ Einfache Zugriffe u. Abfragen
  • 17. Copyright © 2017 Oracle and/or its affiliates. All rights reserved. | Datenmanagement-Plattformen: Vergleich nach Kriterien Performanz Sicherheit Kosten Concurrency Complex Query Response Times Single Record Read/Write Performance Bulk Write Performance Privileged User Security General User Security Governance Tools System per TB Cost Backup per TB Cost Skills Acquisition Cost RDBMS NoSQL DB Hadoop
  • 18. Copyright © 2017, Oracle and/or its affiliates. All rights reserved ! Die Oracle NoSQL DB im Speziellen
  • 19. Copyright © 2017 Oracle and/or its affiliates. All rights reserved. | Grundlegendes • Key-Value Datenhaltung als Basis (KV Store) – Primär- und Sekundärindizes – JSON, AVRO Support, SQL-like Zugriffe • Basiert auf Oracle Berkeley DB Java Edition High Availability • Datenhaltung – ready for web scale – Parallele Schreibvorgänge auf Masterknoten – Hochverfügbarkeit per Replikation (Verteilung von Datenkopien auf Replikaknoten) – Paralleles Lesen von Master- und Replikaknoten – Konsistenz und Persistenz konfigurierbar (ACID <-> BASE) – Transparentes Loadbalancing KVStore
  • 20. Copyright © 2017 Oracle and/or its affiliates. All rights reserved. | Oracle NoSQL DB als Verteiltes System: CAP Theorem • Nur 2 Eigenschaften sind gleichzeitig erfüllbar: • Konsistenz (C): Nach Abschluß einer Transaktion müssen auch alle Replikate aktualisiert werden. • Verfügbarkeit (A): Alle Anfragen müssen beantwortet werden. • Partitionstoleranz (P): Auch bei Verlust einzelner Knoten kann weitergearbeitet werden. • Oracle NoSQL DB entweder – C/P (synchrone Replikation) – A/P (asynchrone Replikation)
  • 21. Copyright © 2017 Oracle and/or its affiliates. All rights reserved. | Oracle NoSQL DB Cluster Topologie Agents A A A Machine1 Machine2 Machine3 Replica Group1 Replica Group2 Replica Group4Replica Group3 R1 R2 R2 R1 R4 R4 R3 R3 M4 M1 M2 M3DD D D Application NoSQL Driver D D
  • 22. Copyright © 2017 Oracle and/or its affiliates. All rights reserved. | Deployment Optionen „Do-it-yourself“ NoSQL DB Cluster • Was muss beachtet werden – Hardware, Netzwerk, Sizing – Installation, Konfiguration, Deployment – Patchen – Load Balancing • Bare Metal CS (IaaS) – https://github.com/oracle-nosql/ons-bmc-byol • NoSQL Database Cloud Service – https://cloud.oracle.com/en_US/nosql Engineered Systems Ansatz • Oracle Big Data Appliance – Schnell einsetzbar, günstige TCO, skalierbar – Vorintegrierte Full Rack Konfiguration • Oracle's Sun x86 Servers • InfiniBand und Ethernet Konnektivität – Vorinstallierte SW-Komponenten • U.a. NoSQL DB, Oracle R, Cloudera Enterprise Technology Software inkl. Cloudera CDH, Cloudera Manager, and Cloudera RTQ (Impala) – Perfekt ausbalanciert – Erweiterbar
  • 23. Copyright © 2017 Oracle and/or its affiliates. All rights reserved. | Die Basis: Was ist ein "Key-Value-Store"? • Ansammlung von Key-Value-Paaren in einem Store, verteilt auf Partitionen – Key – String, Major & Minor Key – Value – Byte Array • Identifikation über Key (oder Teile davon), Auslesen des Value • Einfache Zugriffe: GET, PUT, DELETE • Keine Standard-Abfragesprache wie SQL für RDBMS Key Value 010101010 0198287981A98721891209A0909109039810983A0919032093091A 010101011 Das ist ein Text, der als Value abgelegt ist … 000101010010111111010010101000111 Datenstrukturen sind nicht selbstbeschreibend Zeilen Key-Value Store CUSTOMERSKey = Index
  • 24. Copyright © 2017 Oracle and/or its affiliates. All rights reserved. | Key-Value ist nicht alles • Tabellen-Abstraktion SQL Schnittstelle • Zeilen und Spalten • Secondary Indexes Ebene 2: Table API • Datenstrukturen • Schema-Support • JSON-Daten Ebene 1: JSON/AVRO • Einfache Operationen • Beliebige Binärdaten Ebene 0: Key-Value
  • 25. Copyright © 2017 Oracle and/or its affiliates. All rights reserved. | Treiber für Oracle NoSQL DB
  • 26. Copyright © 2017 Oracle and/or its affiliates. All rights reserved. | Datenmodellierung
  • 27. Copyright © 2017, Oracle and/or its affiliates. All rights reserved ! Demo: JSON mit Oracle NoSQL DB im Team
  • 28. Copyright © 2017 Oracle and/or its affiliates. All rights reserved. | Demoumgebung • Ravello Cloud Service https://cloud.ravellosystems.com/ – Virtuelle Maschine mit • Ubuntu • Oracle NoSQL DB (aktuelle Version: 4.5.12) als KVLITE – 1 Storage Node – Single Shard – Keine Replikation – Konfiguration, Start und Stop über CLI – Alle Code-Beispiele mit SQL auf Table API
  • 29. Copyright © 2017 Oracle and/or its affiliates. All rights reserved. | Beispieldaten JSON (Ausschnitte aus 2 Dateien)
  • 30. Copyright © 2017 Oracle and/or its affiliates. All rights reserved. | Deployment KVLITE und erste Schritte # BDL 4.9 mit Oracle NoSQL DB 12.2.4.5 (KVLITE) # Clean up sudo rm -rf /u01/nosql/kvroot mkdir /u01/nosql/kvroot # Set variables export KVHOME=~/nosql/kv-ee export KVROOT=~/nosql/kvroot export KVDATA=~/nosql/kvdata # Makebootconfig java -jar $KVHOME/lib/kvstore.jar makebootconfig -root $KVROOT -port 5000 -host bigdatalite -harange 5010,5025 -capacity 1 -store-security none -storagedir $KVDATA -storagedirsize 100_mb # Start SNA nohup java -Xmx256m -Xms256m –jar $KVHOME/lib/kvstore.jar kvlite -root $KVROOT -host localhost -secure-config disable > /tmp/kvlite.out 2>&1 & # Check environment java -Xmx256m -Xms256m -jar $KVHOME/lib/kvstore.jar ping -host localhost -port 5000 java -Xmx256m -Xms256m -jar $KVHOME/lib/kvstore.jar version # Run admin shell java -Xmx256m -Xms256m -jar $KVHOME/lib/kvstore.jar runadmin -port 5000 -host localhost kv> show topology kv> verify configuration kv> show events # Create snapshot kv> snapshot create -name InitialSnapshot kv> quit
  • 31. Copyright © 2017 Oracle and/or its affiliates. All rights reserved. |
  • 32. Copyright © 2017 Oracle and/or its affiliates. All rights reserved. | 37
  • 33. Copyright © 2017 Oracle and/or its affiliates. All rights reserved. | 38
  • 34. Copyright © 2017 Oracle and/or its affiliates. All rights reserved. | 39
  • 35. Copyright © 2017 Oracle and/or its affiliates. All rights reserved. | 40
  • 36. Copyright © 2017 Oracle and/or its affiliates. All rights reserved. | 41
  • 37. Copyright © 2017 Oracle and/or its affiliates. All rights reserved. | 42
  • 38. Copyright © 2017 Oracle and/or its affiliates. All rights reserved. | 43
  • 39. Copyright © 2017, Oracle and/or its affiliates. All rights reserved ! Zusammenfassung und Weiterführende Informationen
  • 40. Copyright © 2017 Oracle and/or its affiliates. All rights reserved. | Die NoSQL DB (auch) als JSON Store • Super schnell flexibel modellierte Daten speichern und abfragen • SQL-ähnliche Syntax für Table API erleichtert den Einstieg für alle, die aus SQL / RDBMS kommen • Komplementär zu Apache Hadoop und RDBMS • 3 verschiedene Editionen – Enterprise Edition – Basic Edition – Community Edition • Integration mit RDBMS und Appache Hadoop über Big Data SQL • Schnell: Oracle Bare Metal CS mit höchster Performanz (> 800,000 Ops/Sek. auf 3 Knoten-Cluster) • Flexibel: Verschiedene Datenmodelle, inkl. native Unterstützung für JSON • Integriert: Integration mit anderen Oracle Produkten für Big Data Lösungen • Einfach zu managen: Einfach aufzusetzen, zu erweitern, zu managen • Zuverlässig: Transaktionssemantik indivuduell anpassbar. Eingebaute Replikation für Hochverfügbarkeit und Business Continuity • Skalierbar: Cluster beliebig mit Commodity- HW erweiterbar. Zero down-time.
  • 41. Copyright © 2017 Oracle and/or its affiliates. All rights reserved. | Performance comparison Oracle NoSQL DB, Cassandra, Mongo DB Benchmark details • Yahoo! Cloud Serving Benchmark (YCSB) [13 byte key; 1100 byte value] • 100 Million records in database (~100 GB of data) • 3 Node cluster – commodity h/w (X4-2; 2*12 Cores; 250 GB RAM; 400GB SSD)
  • 42. Copyright © 2017 Oracle and/or its affiliates. All rights reserved. | Github / Developer Community & Videos • Github – Oracle NoSQL DB exampes https://github.com/oracle/nosql-examples – Docker Images for Oracle NoSQL DB https://github.com/oracle/docker- images/tree/master/NoSQL (Quickstart running Oracle NoSQL DB on Docker) • Youtube – Videoreihe zur Oracle NoSQL DB (Channel: DTCCpotsdam) • Teil 1: Einführung zur Oracle NoSQL DB https://www.youtube.com/watch?v=LZ4GGfu8Dk4 • Teil 2: Installation und Betrieb der Oracle NoSQL DB https://www.youtube.com/watch?v=vJA-sd0LKvw • Teil 3: Anwendungsentwicklung mit der Oracle NoSQL DB https://www.youtube.com/watch?v=v5zk9VHKSJY
  • 43. Copyright © 2017 Oracle and/or its affiliates. All rights reserved. | Mehr Links (1) • NoSQL DB Use Cases, White Papers, Data Sheets, Benchmarks – http://www.oracle.com/technetwork/products/nosqldb /overview/index.html • NoSQL DB Documentation – http://www.oracle.com/technetwork/products/nosqldb /documentation/index.html • NoSQL DB Downloads – http://www.oracle.com/technetwork/products/nosqldb /downloads/index.html • NoSQL DB OTN Forum – http://forums.oracle.com/forums/forum.jspa?forumID =1388 • Oracle University Training Classes – http://bit.ly/V5qbmY • Forrester Wave Report http://www.oracle.com/us/corporate/analystreports/forrest er-wave-nosql-2348063.pdf#7 • Oracle NoSQL DB Architecture White Paper http://www.oracle.com/technetwork/products/nosqldb/lear nmore/nosql-wp-1436762.pdf • Oracle NoSQL DB vs. RBDMS http://www.oracle.com/technetwork/database/database- technologies/nosqldb/overview/nosqlandsqltoo- 2041272.pdf • Bücher – “Oracle Big Data Handbook” – “Oracle NoSQL Database: Real-Time Big Data Management for the Enterprise”
  • 44. Copyright © 2017 Oracle and/or its affiliates. All rights reserved. | Mehr Links (2) • JavaDoc der Java API http://docs.oracle.com/cd/NOSQL/html/javadoc/index.html • Wieviel Storage Nodes werden benötigt – Ressourcen planen für die Oracle NoSQL DB: http://docs.oracle.com/cd/NOSQL/html/AdminGuide/Oracle-NoSQLDB-Admin.pdf#page=16 • Oracle Big Data Lite VM http://www.oracle.com/technetwork/community/developer-vm/index.html#bdl • Oracle Dojo #2 zu „Big Data: Eine Einführung in Oracle NoSQL DB, Hadoop MapReduce, Oracle Big Data Connectors“ http://www.oracle.com/webfolder/technetwork/de/community/dojo/index.html • Blog von Charles Lambs https://blogs.oracle.com/charlesLamb/ • Vortrag metafinanz Informationssysteme GmbH auf DOAG Konferenz 2013 http://www.metafinanz.de/sites/default/files/DOAG_2013_Oracle NoSQL Database.pdf • External Blogs: https://technology.amis.nl
  • 45. Copyright © 2017 Oracle and/or its affiliates. All rights reserved. | Oracle NoSQL DB: Begriffe und Definitionen in Kürze Begriff Definition Storage Nodes (Physikalischer) Rechner mit lokalen Platten Storage Node Agent Kontroll Prozess auf jedem Storage Node KVStore Speicherarray mit untereinander kommunizierenden den Storage Nodes Storage Node Master Je Storage Node gibt es einen Master für schreibende und lesende Zugriffe. Repliziert Daten auf Replikaknoten. Storage Node Replika Kopie der Daten von einen Storage Node Master für die Ausfallsicherheit. Für lesende Zugriffe. Replication Group Ein Master und mindestens ein Replika- Node Replication Factor 1 Master und n Replikas auf einem Storage Node (Bsp.: RF = 3 => 1 Master + 2 Replikas) https://www.pipperr.de/dokuwiki/doku.php?id=nosql:install_oracle_nosql_db_11gr2
  • 46. Copyright © 2017 Oracle and/or its affiliates. All rights reserved. | Oracle Cloud Workshops auf der DOAG Konferenz 2017 • Dienstag 21.11.2017 – 10.00 – 13.00 Uhr – Oracle Datenbank und GoldenGate in der Oracle Cloud – 13.00 – 16.00 Uhr – IT Systems Management mit der Oracle Management Cloud • Mittwoch 22.11.2017 – 10.00 – 13.00 Uhr – Agile Entwicklung von Microservices in der Oracle Cloud – 13.00 – 16.00 Uhr – Oracle Datenbank und GoldenGate in der Oracle Cloud • Donnerstag 23.11.2017 – 10.00 – 13.00 Uhr – IT Systems Management mit der Oracle Management Cloud – 13.00 – 16.00 Uhr – Agile Entwicklung von Microservices in der Oracle Cloud 51 Im Foyer Shanghai-Seoul – Einstieg in die jeweilige Session jederzeit möglich!
  • 47. Copyright © 2017 Oracle and/or its affiliates. All rights reserved. |