Database Requirements For Modern Development

3y ago
23 Views
2 Downloads
372.85 KB
7 Pages
Last View : 29d ago
Last Download : 3m ago
Upload by : Ronan Garica
Transcription

DatabaseRequirements forModern DevelopmentBy Gerald Venzl, OracleAugust 2017

IntroductionIn the application development community, the functionmuch more than just simple SQL statements that can readof database technology is well understood. Simply put,and write data to disk. In fact, modern database technologydatabases (also known as data stores) are used to storemust provide three core capabilities to be truly useful toand retrieve data needed for application processing. Even ifdevelopers:there isn’t a data store in your initial architectural diagram,data flowing through your application will likely touch one or Widespread programming language supportmore databases, sooner or later. The ability to manage multiple data structuresDatabase software has been widely deployed overa long period of time. First introduced in the 1970s,modern database systems differ greatly from original Transparent data analysis capabilities across all datastructures using SQLimplementations that evolved from data banks to databasesystems. Today, the evolution of database technologyIn selecting a database, it’s important to consider howcontinues. While every developer knows that databasesthese capabilities can impact application development, andare useful for managing data, modern day developmentthe quality, simplicity, and productivity that they can bring totechniques and technologies require that databases provideyour development projects.Widespread Programming Language SupportDevelopers can choose from an ever-increasing number ofweb application development. Although REST was firstavailable programming languages and frameworks. To beintroduced in 2000, today’s architectural designs—suchuseful to developers, given their programming languageas microservices or stateless cross-web communicationof choice, modern databases must integrate with asin general—make REST a vital component in the toolbox ofmany languages and frameworks as possible. To simplifyvirtually all modern-day developers.integration efforts, languages frequently feature standardAPIs that can interact directly with databases—such anProviding direct access from within the application codeAPI implementation is commonly referred to as a databasevia APIs is one way to achieve database integration.driver. Well-known examples are the Java DatabaseHowever, some modern databases support hiding databaseConnectivity (JDBC) API for Java, the ADO.NET frameworkinteraction entirely behind a REST call, abstracting thefor Microsoft .NET applications, and the PEP 249—Pythontask of data access altogether, which helps to improveDatabase API specification for the Python scriptingdeveloper productivity. This concept is nothing new. Manylanguage, to name a few.programming languages have so-called Object-RelationalMapping (ORM) frameworks that translate betweenAlmost every programming language has either its ownthe object-oriented data structures in programs and theinterface specification or can interact with a canonicalrelational model of databases. Such frameworks usuallyAPI that allows the language to talk to a database onrepresent themselves as libraries to the developer thatthe other end. Common canonical APIs are the Openare used to abstract data interaction from the applicationDatabase Connectivity API (ODBC) and Representationallogic. While abstracting the data access layer in this wayState Transfer (REST) API. The use of REST APIs hascan boost developer productivity, the task of managingmushroomed in the last couple of years, especially forthe abstraction is still the developer’s responsibility.Oracle Database Requirements for Modern Development2

Oracle Supported Programming LanguagesJ ava / CPL /SQLObjective-CFigure 1: Popular programming languages interface easily with different database technologies from Oracle.REST-based access, on the other hand, also moves themanagement task out of the developer’s remit, enablingeven greater productivity gains.Oracle Database(Relational)Oracle supports a large and varied development community(both internally and externally), so the company recognizesthe advantages of broad language support. Today, morethan 30 programming languages, including the popularlanguages shown in Figure 1, can access the variousRESTJSONdatabase technologies that Oracle provides. In addition,Oracle actively participates in industry-wide efforts to refinestandards for database interfaces, including JDBC, PythonPEP 249, and PHP, among others.Oracle RESTData ServicesOracle Database(Document Store)Oracle anticipated the popularity of REST and the emergingtrend of data access abstraction via REST. In 2014, OracleNoSQLintroduced a database component that allows RESTfulaccess to data stored in a relational database, documentstore, or key-value format, making Oracle a pioneer inproviding standardized REST interfaces for the data accesslayer. The component is known as Oracle REST DataServices (ORDS). You can find out more about Oracle RESTData Services here.Oracle Database Requirements for Modern DevelopmentFigure 2: Oracle REST Data Services isincluded with both Oracle Database andOracle SQL Developer installations. It issupported in Weblogic, Tomcat, Glassfish,and as a standalone application runningJetty in embedded mode.Oracle NoSQLDatabase3

Multi-Model PersistenceBeyond support for a wide range of programming languages,with schema-on-write, you must predefine the data modelit’s critical that a database technology provides easy-to-usebefore loading data into the relational structure. Thus, acapabilities for general-purpose access and data management.schema-on-read approach can help to enhance developerSuch capabilities are a fundamental strength for databasesproductivity since there’s no need to construct the datathat organize data using a relational model.model first.Around 1970, the relational model was conceived toHowever, when it comes to exchanging informationprotect database users from having to know how databetween separate systems, schema-on-read provides ais explicitly organized within a database. It is this principaldegree of autonomy with respect to how data is consumed,that has allowed the relational model to be the most widelyand one system can use a different data interpretation thanused general-purpose data structure for more than 40 years.another. While this provides some degree of flexibility, it canGiven its long history, the relational model is very wellalso result in added complexity for data analysis, pointing tounderstood, and it is still widely selected for developmenta potential downside of using the document model. Givenprojects today. Most of the time, the relational model is athat the schema is contained within the data structure itself,good fit for modern-day applications, but there are somedifferent interpretations of the same data can occur. Foruse cases in which the relational model may not be theexample, one document can refer to an email address withoptimal fit. For these use cases, other data models—suchthe attribute “emailAddress”, while another document mayas data stores based on documents, graphs, or key-valuerefer to it as “email address”. Both attributes contain thepairs—are often better suited. This has led to a new designsame information but do not guarantee that the informationpattern known as polyglot persistence, which is the conceptis interpreted in that way.of applying different data models to address different datastorage requirements, even within the same application.As a result, some document databases now add support forDocument-oriented databases, or document stores, areschema validation, helping to make sure that attributes areespecially popular among developers today. A documentpresented correctly. If a document database does not offerdatabase is one that typically stores JSON-based datathis capability, then it is the developer’s responsibility tostructures. (Again, the concept is not new. XML databases,guarantee that the data is interpreted correctly and preventa subclass of document databases, were introduced in thethe return of an inconsistent answer to the user.early 2000s.) A document data structure is self-describing,meaning that the data is structured by attributes andModern-day databases are often multi-model—that is,values that can be hierarchically structured within the samethey give developers the choice of the desired data modeldocument. Because both the schema and data reside withinwithout having to worry about which database to use anda document, they offer an advantage in that the documenthow to connect to it (databases that support only astructure can be changed at any given point in time—asingle data model are known as single-model databases).schema change within the document has no impactMulti-model databases provide developers with a singleanywhere outside of the document. This characteristic isconnection method and a common API for storing andreferred to as schema-on-read, while a relational model isretrieving data, regardless of the data format. Data storageknown as schema-on-write.and retrieval is usually performed via standard SQLoperations that provide the desired transparency. By usingWith the schema-on-read approach, you are not requiredstandard SQL operations, a developer can immediatelyto design the data model before storing the data; youleverage a multi-model database without having to refactorsimply write the information to the data store. In contrast,code or interact with a different set of APIs.Oracle Database Requirements for Modern Development4

Single-model databases are optimally suited for use casesOracle provides both single-model and multi-modelthat are well-understood from the beginning, where theredatabase technologies. Single-model databases from Oracleis little probability of changing requirements that wouldinclude (although not exclusively) Berkeley DB, Berkeleyalter the data format. In addition, single-model databasesDB XML Data Store, Oracle NoSQL Database, and Oracletypically provide special optimizations for the data formatEssbase. Other databases from Oracle can manage multiplebeing managed, which is why it can be more difficult fordata models (Figure 4). Oracle Database 12c, for example,a multi-model database to support different data formatssupports multi-model database capabilities, enablingas efficiently.scalable, high performance data management and analysis(for more information, see “Multimodel Database withOracle Database 12c Release 2”)JSONRelationalJSONDocumentsOracle SupportedData eXML DocumentsSpatialObjectsFigure 3: Oracle offers database technologies that can manage multiple data models.Data Access and Analysis via SQLThe true power of databases is not how fast they can storeThe advent of NoSQL databases seemingly calls intoa piece of data onto a disk or in which model the data isquestion the usefulness of SQL. However, everystored. Instead, the true power of databases lies within themainstream NoSQL database vendor has either adoptedretrieval and analysis of the data. One of the most importantSQL or an SQL-like engine to interact with its database,success factors of a database (if not the most importantvalidating the requirement for SQL language support.success factor) is the support of a simple-to-understand,universal query language that can be applied over all data.Developer surveys reinforce the necessity of offering SQLToday, the de facto industry standard is SQL (Structuredsupport, showing year over year that SQL is one of theQuery Language). SQL allows developers to interact withmost popular languages in daily use by developers. Mostdatabases while providing the same capability to businessdevelopers throughout the world are familiar with SQL, andusers, allowing them to extract value from the data withoutthose who are not can typically pick up the basics quicklywriting lines and lines of code.because the syntax is English language-based.Oracle Database Requirements for Modern Development5

While SQL’s basic functions concern data storage andand efficiently, so proficiency with SQL is a desirableretrieval, the language is much more powerful than that.programming skill.SQL provides a rich set of analytical capabilities to users,whether that user is a developer, data scientist, or businessOracle sees SQL as an important component ofanalyst. SQL supports running complex computationsmodern-day data management, and actively participatesagainst data, and runs them as close as possible to thein the ISO SQL standard committee. The SQL languagedata. Databases that do not provide SQL (or that onlycontinues to evolve since its original release more thanprovide marginal SQL support) force developers to deal30 years ago, with the latest SQL:2016 standard revisionwith complex business data analysis requirements directlyreleased in December 2016. Because other databases onlyin application code, decreasing developer productivity.provide support for the standard’s SQL-92 or SQL:1999Indeed, using SQL allows developers to respond torevisions, they may not include important analyticalanalytical changes in business requirements more quicklycapabilities that have been added over time.SQL alueXML DocumentsObjectsFigure 4: Oracle SQL is integrated across the different data models and accessible from all programming languages.Oracle Database Requirements for Modern Development6

ConclusionBroad ProgrammingLanguage SupportAs highlighted in this paper, it is paramount for moderndatabases to provide wide spread programming languagesupport and the ability to manage multiple data structuresand transparent data analysis capabilities across all thosedata structures. With all of those combined, a databaseis best fit for managing modern day requirements thatgo beyond the original tasks of a relational databaseand will provide a rock solid data management solutionas compared to just a mere data storage solution.Multi-ModelData StructureSupportSupport forTransparentData AnalysisUsing SQLFigure 5: Modern development requirements for databases.Try Oracle Cloud for FreeGet Oracle Cloud nowVisit developer.oracle.comCopyright 2017, Oracle and/or its affiliates. All rights reserved. This document is provided for information purposes only, and the contents hereof aresubject to change without notice. This document is not warranted to be error-free, nor subject to any other warranties or conditions, whether expressed orallyor implied in law, including implied warranties and conditions of merchantability or fitness for a particular purpose. We specifically disclaim any liability withrespect to this document, and no contractual obligations are formed either directly or indirectly by this document. This document may not be reproducedor transmitted in any form or by any means, electronic or mechanical, for any purpose, without our prior written permission. Oracle and Java are registeredtrademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners.Oracle Database Requirements for Modern Development7

modern database systems differ greatly from original implementations that evolved from data banks to database systems. Today, the evolution of database technology continues. While every developer knows that databases are useful for managing data, modern day development techniques and technologies require that databases provide

Related Documents:

Bruksanvisning för bilstereo . Bruksanvisning for bilstereo . Instrukcja obsługi samochodowego odtwarzacza stereo . Operating Instructions for Car Stereo . 610-104 . SV . Bruksanvisning i original

10 tips och tricks för att lyckas med ert sap-projekt 20 SAPSANYTT 2/2015 De flesta projektledare känner säkert till Cobb’s paradox. Martin Cobb verkade som CIO för sekretariatet för Treasury Board of Canada 1995 då han ställde frågan

service i Norge och Finland drivs inom ramen för ett enskilt företag (NRK. 1 och Yleisradio), fin ns det i Sverige tre: Ett för tv (Sveriges Television , SVT ), ett för radio (Sveriges Radio , SR ) och ett för utbildnings program (Sveriges Utbildningsradio, UR, vilket till följd av sin begränsade storlek inte återfinns bland de 25 största

Hotell För hotell anges de tre klasserna A/B, C och D. Det betyder att den "normala" standarden C är acceptabel men att motiven för en högre standard är starka. Ljudklass C motsvarar de tidigare normkraven för hotell, ljudklass A/B motsvarar kraven för moderna hotell med hög standard och ljudklass D kan användas vid

LÄS NOGGRANT FÖLJANDE VILLKOR FÖR APPLE DEVELOPER PROGRAM LICENCE . Apple Developer Program License Agreement Syfte Du vill använda Apple-mjukvara (enligt definitionen nedan) för att utveckla en eller flera Applikationer (enligt definitionen nedan) för Apple-märkta produkter. . Applikationer som utvecklas för iOS-produkter, Apple .

Database Applications and SQL 12 The DBMS 15 The Database 16 Personal Versus Enterprise-Class Database Systems 18 What Is Microsoft Access? 18 What Is an Enterprise-Class Database System? 19 Database Design 21 Database Design from Existing Data 21 Database Design for New Systems Development 23 Database Redesign 23

Physical Database Design and Performance Modern Database Management 6th Edition Jeffrey A. Hoffer, Mary B. Prescott, Fred R. McFadden Robert C. Nickerson ISYS 464 – Spring 2003 Topic 23 Database Development Process Database planning Database requirements analysis Conceptual database design

och krav. Maskinerna skriver ut upp till fyra tum breda etiketter med direkt termoteknik och termotransferteknik och är lämpliga för en lång rad användningsområden på vertikala marknader. TD-seriens professionella etikettskrivare för . skrivbordet. Brothers nya avancerade 4-tums etikettskrivare för skrivbordet är effektiva och enkla att