Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Oracle Database wikipedia , lookup
Entity–attribute–value model wikipedia , lookup
Extensible Storage Engine wikipedia , lookup
Serializability wikipedia , lookup
Microsoft Jet Database Engine wikipedia , lookup
Functional Database Model wikipedia , lookup
Relational model wikipedia , lookup
Concurrency control wikipedia , lookup
Database model wikipedia , lookup
Clusterpoint wikipedia , lookup
WHAT THE MARKET-LEADING DBMS VENDORS DON’T WANT YOU TO KNOW Disruption is gathering steam Curt Monash Analyst since 1981 Covered DBMS since the pre-relational days Also analytics, search, etc. Own firm since 1987 Publicly available research Feed at www.monash.com/signup.html Blogs, including www.dbms2.com White papers and more at www.monash.com Database diversity Mike Stonebraker, PhD Curt Monash, PhD “One size doesn’t fit all” “Horses for courses” “Database diversity” Mike and Curt The world needs 9 to 11 different kinds of data management software Large enterprise DBMS portfolio Principal OLTP/multipurpose DBMS Principal OLAP DBMS Midrange OLTP/multipurpose DBMS Search Legacy DBMS Other specialty data management Midrange OTLP/multipurpose DBMS “Standard editions” VAR-centric Oracle, DB2, SQL*Server, Informix SE Deliberately crippled Progress OpenEdge, Intersystems Cache’ Accidentally crippled “Open-source” MySQL, EnterpriseDB OLTP DBMS worries Besides the greatest horror – data corruption – concerns include: License/maintenance cost Performance/scalability Ease of administration Ease of programming Reliability/uptime Security Three major kinds of transactions Traditional business transactions Simple events = sensors, logs, etc. Orders Employment changes Compliance/risk monitoring Web site clicks Network events Device monitoring Vehicle monitoring RFID Content serving Traditional business transactions are Complex Consistent in the face of complexity Stringently industrial-strength Real business need Customer expectations Compliance Issues to consider for applications that record complex transactions Schema complexity (integrity) Schema variability Peak performance Uptime Security Issues to consider for applications that record simple events Performance Uptime What happens to the data next? Issues to consider for applications that serve content Which datatypes? Scale The alphanumeric parts Application metrics Peak concurrent update throughput Query complexity and volume Transaction (and constraint!) complexity Overall database size (and change!) Uptime requirements Security/compliance requirements Datatype needs And how will those evolve? Business model changes Functional changes Environmental considerations Hardware (SMP, blade, toy collection) Middle tier DBMS expertise (and where it sits in the organization) Database administration tools Development tools Fixed-point applications (and how good is their generic JDBC/ODBC support?) And how will THOSE evolve? Consolidation -- but what does that mean in your shop? Modularity Example 1: Compliance/risk monitoring Many feeder systems One schema per feeder system Accept both relational ETL and XML Output via BI Key requirements 1 Rigorous security Easy administration Eventual XML support Unknown scalability Example 2: Contractually-defined products Complex financial instruments Vacations Warranties Key requirements 2 Strong native XML Complex constraints Availability Security Volume? Example 3: Content sharing and selling Web-facing – video, music, photo, etc. Internal content management Key requirements 3 Performant media datatype support Performant order entry Performant user tracking and personalization Spike scalability 24/7 availability Major areas of OLTP DBMS differentiation Performance and scaling Administration and 24/7 operation Constraints and referential integrity Triggers and stored procedures Datatype support Performance and scaling Baseline, peak, future For which features? How sub-linear? Administration and uptime Ongoing functions – backup, security, etc. Indexes and mandatory maintenance?? Replication, fail-over, etc. Database constraints What can be done in theory? Does it perform? Triggers and stored procedures Performance Languages Automatic generation Development, debugging, maintenance Datatype support What do you need? Performance Datatype extensibility (Where relevant) Quality of search Today’s main topics You can and should use multiple DBMS In particular, midrange OLTP DBMS are appealing Not all midrange OLTP DBMS are created equal Both application and environmental considerations are important More info at www.monash.com and www.dbms2.com