Simpler database development experience
Developers like simplicity in building applications using choice of programming languages, frameworks, tools and databases. Document databases have become a popular choice for storing and processing application data in a language independent Java Script Object Notation (JSON) documents as a collection.
Document databases offer simple APIs for CRUD operations (Create, Read, Update, Delete) and frameworks that make it easy to persist application objects. This allows developers to focus on the application logic in microservices / API driven architecture without having to learn SQL (Structured Query Language).
Easily adapt to application changes
Unlike relational database models where application objects are mapped to database tables with predefined set of columns a.k.a schema, JSON documents are schema-flexible and allows values in each document to vary throughout a collection, making them ideal for Agile development methodology.
Further, JSON supports nested structures that can be used to selectively add redundant data, so it can be read and written as a single unit to avoid joins and multiple DML (Data Manipulative Language) statements when reading or writing an application object.
Finally, document database architecture provides internet scale applications required performance and scalability with scale-out storage and compute capacity with minimum response time from database. Document databases typically provide single-digit millisecond latencies for small reads and writes, while serving 1000s of concurrent users.
Document Databases are great, but...
MongoDB has popularized document databases for developers with their free to use community edition. MongoDB offers simple document database APIs; however, it has limitations supporting multi-document ACID transactions critical to enterprise applications. For developers, implementing basic SQL engine functionality requires writing, testing and maintaining hundreds of lines of application code, resulting in security vulnerabilities, increased development time and maintenance.
As the use cases for the applications change, supporting additional data types, workload types require external integration with other single-purpose databases such as Graph, Spatial etc, potentially using different APIs and need to move the data to those databases, resulting in data fragmentation, data inconsistency and security risks.
Keeping it together with converged database
Oracle's converged database has built-in support for all modern data types and the latest development paradigms. Converged databases support spatial data for location awareness, JSON for document stores, IoT for device integration, in-memory technologies for real-time analytics, and of course, traditional relational data. By providing support for various data types, a converged database can run all sorts of workloads from IoT to Blockchain to Analytics and Machine Learning. It can also handle various development paradigms, including Microservices, Events, REST, SaaS, and CI/CD eliminating data replication or duplication, reducing the cost and increasing developer productivity.
Overview of Oracle Autonomous Databases
Oracle Autonomous Database combines the flexibility of cloud with the power of machine learning to deliver data management as a service that enables businesses to run mission-critical workloads in a most secure and highly available environment, while reducing the administration and runtime costs up to 90%.
Oracle Autonomous Database is family of cloud services deployed on Oracle Exadata, a high performance engineered platform for converged database, optimized for specific workload typ
◉
Oracle Autonomous Data Warehouse(ADW): ADW uses adaptive machine learning to deliver unprecedented simplicity, performance, and highly elastic data management that enables data warehouse deployment in seconds.
◉
Oracle Autonomous Transaction Processing(ATP): ATP provides simpler application development, real-time analytics, personalization, and fraud detection for complex mix of high-performance transactions, batch reporting, and Internet of Things (IoT) applications.
◉
APEX Service: Oracle APEX Application Development (APEX Service) is a fully managed, low-code application development platform for building and deploying modern, data-driven applications in Oracle Cloud
Introducing Oracle Database API for MongoDB with Oracle Autonomous JSON Database
Oracle Database API for MongoDB is the latest initiative to help developers connect applications, drivers and tools built for MongoDB to Oracle Autonomous Databases*.
With the Oracle Database API for MongoDB developers can continue to use their skills but also leverage converged database and Autonomous Database capabilities over their MongoDB collections, opening an entirely new set of use cases for their applications.
Getting Started with Oracle Database API for MongoDB
Currently Oracle Database API for MongoDB is in Limited Availability (LA), this means it Is not enabled for every cloud database by default.
◉ If you haven’t already signed up for ‘Always Free’ services in
Oracle Cloud Free Tier, please do so now, you are entitled to two (2) instances of Autonomous JSON databases and follow the steps outlined in the
blog to create and manage instance.
◉ Oracle Database API for MongoDB requires an Access Control List (ACL) secured network access. ‘
Secure access from everywhere’ and ‘
Private endpoint access only’ options are
not supported currently. In the ‘
Access Control List’ setup under ‘
Network’ section of the instance, as specified in
Configure ACL for an existing Autonomous Database Instance.
Connecting MongoDB Clients
Use
MongoDB Shell, a command-line utility to connect and query data in Autonomous JSON Database. We recommend v3.6 or later. For applications built using popular languages such as Java, Node, .NET and Python, we recommend Java driver 3.6 or later, Node.js 3.0 or later, .NET 2.5 or later, Python 3.6 or later with load_balanced, parameter set as ‘true’.
◉ Once your instance is authorized to use MongoDB APIs, retrieve connection string from the ‘Service Console’
◉ Create database user(s) from ‘
Database Actions’ and grant ‘SODA_APP’ role for the user, e.g. TESTUSER
◉ Test connectivity from MongoDB Shell for TESTUSER
◉ Create collection(s) and insert documents as you would normally do using MongoDB Shell
◉ Verify the collection from Autonomous Database SQL Web Client
Source: oracle.com
0 comments:
Post a Comment