* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download Oracle REST Data Services
Entity–attribute–value model wikipedia , lookup
Microsoft Jet Database Engine wikipedia , lookup
Microsoft SQL Server wikipedia , lookup
Navitaire Inc v Easyjet Airline Co. and BulletProof Technologies, Inc. wikipedia , lookup
Relational model wikipedia , lookup
Database model wikipedia , lookup
Open Database Connectivity wikipedia , lookup
Oracle 12c as Document Store Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | Simple Oracle Document Access (SODA) • Family of API's to built schemaless applications • Developer working with JSON-Documents, managed by the Oracle Database – No SQL needed Oracle DB as Document Store Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 2 Schema-less Development Concepts • Store application data as documents rather than in tables and columns – Typically XML or JSON • Primary access metaphor is Key/Value • Database agnostic to the structure of the document – Application data model not as database schema – Developers can change data model „on-the-fly“ – (Most) Application changes possible without DBA Support or DB-Outages Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 3 JSON Document Stores • Schema-less developers gravitate towards JSON document stores • JSON Document Store Characteris – Simple, easy to use, document centric API’s – Indexing and querying of JSON – Natural fit for popular RESTFul development techniques • A number of NoSQL databases provide this functionality – MongoDB & CouchDB Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 4 But ... • Difficult to perform effective Analytic and Reporting – No standard query language other than limited Query By Example (QBE) capabilities – No interface with popular Business Intelligence, Analytics and Reporting tools – Limited indexing – Limited support for joins between documents or with other types of data • Limited support for RDBMS Table stakes – Concurrency Control – Transactions – Read Consistency – High Availability and Disaster Recovery Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 5 Enabling ‘No-SQL' development on Oracle Database • Allow “next generation” application development to leverage Oracle Database • Allow Oracle Database to store and manage JSON documents • Provide the “NoSQL” application development experience – Simple document centric API’s for storing and accessing JSON – QBE Query capability – No need to learn SQL • “NoSQL” means NOT Only SQL – Can still leverage the power of SQL for Reporting and Analytics on JSON documents NoSQL needed No SQL needed But possible and very useful Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 6 Simple Oracle Document Access (SODA) • SODA for Java – Collection of Java-Classes with Methods zu create & manage collections with JSON-Documents • SODA for REST – ORDS 3.0 – REST based Interface (Java Servlet) – HTTP (PUT, POST, GET & DELETE ) – Could run inside the database • SQLcl Access JSON-Documents with SQL Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 7 Schemaless REST-Services via SODA Collection API Oracle REST Data Services URI JSON Transform JSON Collection API Auto Generated SQL Pass Back {JSON} JSON Oracle Database HTTP(S) client CRUD Operations as HTTP Methods Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | List of all Collections GET /ords/schema/soda/version Create Collection PUT /ords/schema/soda/version/collection Add Document POST /ords/schema/soda/version/collection Add Documents POST /ords/schema/soda/version/collection?action=insert Query Collection GET /ords/schema/soda/version/collection Call Document GET /ords/schema/soda/version/collection/id Change Document PUT /ords/schema/soda/version/collection/id Remove Document DELETE /ords/schema/soda/version/collection/id Remove Documents POST /ords/schema/soda/version/collection?action=delete Remove all Documents POST /ords/schema/soda/version/collection?action=truncate Query by Example POST /ords/schema/soda/version/collection?action=query Create/Drop Index POST /ords/schema/soda/version/collection?action=unindex Remove Collection DELETE /ords/schema/soda/version/collection Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | Path /ords/schema/soda/version/collection Virtuell Folder of ORDS Servlets Identifier in ORDS, linking to the used DB Schema Indicator to involve SODA Component for Request in ORDS Version of SODA for REST (latest uses most current version) Name of Collection Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 10 JSON and SQL Duality >30 Years of Development & Experience with the query language SQL are available for JSON-Documents Oracle Database 12c JSON Data Access via REST or Native API SQL JSON in the Database Analysis / Queries with SQL Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | Oracle REST Data Services: Architecture Oracle REST Data Services URI JSON Collection API Auto Generated SQL Pass Back {JSON} Map & Bind SQL Transform to JSON SQL Result Set {JSON} HTTP(S) client NoSQL API Key Value Lookup PassBack {JSON} JSON Document Store Relational Tables NoSQL-Data Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 12 ORDS_METADATA – SODA Security ROLES MyRole PRIVILEGE_ROLES MyRole-MyPrivileg MyPrivileg MyPrivileg PRIVILEGES Pattern 1 Pattern 2 ..... PRIVILEGE_MAPPINGS Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 13 Requirements for SODA • Oracle Database Release 12.1.0.2 with Patch 20885778 • Possible Java-Container for SODA for REST – Oracle WebLogic Server (>=11gR1 (10.3.6)) – GlassFish Server (>=Release 3.1.2) – Apache Tomcat (>=7.0.56) Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 14 Sources • SODA for REST Developer‘s Guide – https://docs.oracle.com/cd/E56351_01/doc.30/e58123/toc.htm • SODA for JAVA @ github – https://github.com/oracle/SODA-FOR-JAVA • Whitepaper – Developing schemaless applications using the Simple Oracle Document Access API’s – http://www.oracle.com/technetwork/database/appdev-with-soda-2606220.pdf – Schemaless Application Development with Oracle Database 12c – http://www.oracle.com/technetwork/database/soda-wp-2531583.pdf Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 15 Sources - German • Blog – JSON, REST und mehr – mit der Oracle Datenbank – http://json-rest-oracledb.blogspot.co.uk/ • Oracle Dojo – Arbeiten mit JSON und Oracle12c – http://www.oracle.com/webfolder/technetwork/de/community/dojo/index.html • Video – Oracle12c als Document Store – https://youtu.be/WRXAIAz-0cY Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 16