SlideShare ist ein Scribd-Unternehmen logo
1 von 57
Improving Database Performance by Removing the Database Simon Munro
This is not  about NoSQL It is about why  NoSQL won’t die For NoSQL, watch the video  from SQLBits Goes West
Data Growth Everything Else Isn’t it a great time to be a data dude?
Information is power Information is on the increase We administer the information We have the power! Viva DBA, Viva!
So why are we so stressed?
We need to handle increasing demands Data Volumes Transactional Volumes User Volumes Time to Market Responsiveness
With better levels of service Availability Reliability Security Functionality Performance (Yeah right… and with the same fake smiles)
Rising Costs SpecialisedHardware Licensing Costs Vendor Lock-in Operational Costs
It all takes more effort Design Effort Operational Effort Collaboration Effort Procurement Setup Migration Decommissioning
But we have to lower costs Recession Impact Focus on Efficiency Staff cuts Marginal business cases Infrequent Upgrades
What can change? Networking Topologies? Hardware Infrastructure? Storage? Database Platforms? Application Architectures? Demands? Requirements?
Do we want it to change? It seems to work It is familiar We have the skills Risk is low We have the infrastructure Does it really work?
Designed for Purpose
Misused Designs
SQL as a Good Design De-facto data storage mechanism (Fairly) well understood patterns Database structures Querying Close to classic relational model Optimised embedded languages
SQL as Misused Design API is far to open ‘Post relational’ datatypes Suboptimal for some  domains
Works for me Why? SQL is simply fantastic! That is what is was designed to do It’s always been that way Have you looked at alternatives? Have you checked your assumptions?
SQL Patterns have become data management patterns Backup Query Security ACID Data models Application development THIS is how we work with data!
Scalability It is hard and expensive and unfamiliar and those are just the  people problems!
Scalability and NoSQL Lack of SQL scalability out is the popular NoSQL argument Actually, most NoSQL databases do not scale out either jamesgolick.com CouchDB Redis Tokyo cabinet MemcacheDB Berkeley DB Cassandra Riak Voldemort
Scalability is more than an engineering problem Operational processes Maintenance Skills Partnerships Legal
The core flaw in SQL oriented design MSDN http://technet.microsoft.com/en-us/library/cc966500.aspx “The log records associated with the transaction (and all previous log records) must be written to stable storage. The transaction is not considered committed until the log records are correctly flushed to stable media. (Log is hardened.)”
Stack of Turtles Processor Memory Disk Controller Disk
More turtles! Processor Memory San Controller Network System Management Switch Firewall SAN Controller Backup SAN Encryption Fibre Network RAID Controller Virtualisation Disk Is our performance bottleneck based on this? Monitoring
Storage Gets Better Tape is dead Disk is tape Flash is disk SSDs to the rescue! Memory is cheap What if we kept everything in memory?
Database Ivory Towers That Piss Me Off
All data should be in the database The Culture Q: How long do you need to keep this data? A: 5 years Original atomic records need to be stored for future analysis Keeping it in SQL is best so that it can be queried
All data should be in the database The Reality The business value of data is misunderstood The cost of data retention is hidden Users cannot query data A lot of data is not in the database anyway
Single Version of the Truth(One fact, one place, once) The Culture Master Data Management Normalisation Only editable in this database Removal of duplicates Integration is tedious
Single Version of the Truth(One fact, one place, once) The Reality A complete myth Data always lands up everywhere System integration duplicates data MDM effort is high There are a lot of spreadsheets Data is inherently temporal
All processing should be done in the batch run The Culture Single database SQL Database as a source for all data Aggregation load is to high  for transactional systems It is optimal and fair for  all departments
All processing should be done in the batch run The Reality Batches always tend toward using up all available time Batch code is the worst Batch failures are a source of Panic, risk and stress Operational costs for batch runs are high
Queryability The Culture All fields are queryable User demand... apparently This is what the relational  database is for
Queryability The Reality Performance issues limit searches to key fields Other structures are created to make querying easier Rows, columns and tables are  an abstraction anyway
Required by Auditors The Culture “We need an audit trail” “Audit requires that we…”
Required by Auditors The Reality Real life auditors are seldom  making requests What are auditors doing specifying  IT architectures anyway? Auditors are change averse
Required by Regulations The Culture “We can’t do that because of regulations” “We do it like this for regulatory reasons”
Required by Regulations The Reality Regulations are difficult to understand Regulations are full of legalese  and contradictions Most regulatory requirements are  based on myths
Consistency The Culture Every database operation needs to be within a transactional context We have to ensure that in the event of a failure that data is correct Data has to be in a consistent state  before it can be used All clients executing a simultaneous  query should get the same result
Consistency The Reality Consistency is impossible in a Distributed environment The Internet is a distributed environment Given the choice, business  would probably spend their money elsewhere Even the most consistent data may not reflect reality
In memory data Hosted Service Service Interface Message Bus Clients Can we just store data in memory?
What are the patterns? We already have them Mainframes, Swift, Reuters, Trading Knowledge is hidden or rusty Diverted to SOA for a while Being revived by the cloud Already being used without DBA knowing
The Influence of the Cloud Someone else can deal with  the stack of turtles Cannot make assumptions about availability of a  specific process No control over underlying  hardware  Applications are failure aware
SQL Removal Techniques Change your approach to  dealing with data Change your application architectures Change how business treats data Work with other disciplines  (e.g. developers and compliance)
Changing Approach to Data Cache Read-only data stores Specialised Data Stores Main Memory Databases Pre-emptive archiving
Changing Approach to Application Architectures Message Orientation Eventual Consistency Store and process data as  Close to source as possible Design for service  degradation Apology based computing
An Example : Changing Batch Jobs The Scenario: Users require access to  Summaries of a large  transactional database The transactional database is under load so summaries are run in the overnight batch job
The Result Reporting Database Transaction Database Occasional Refresh Workflow Engine Reliable  Messaging Message Bus Transaction Source
Resistance to Change Incumbent Investment Risk of Failure Fear of Failure Jobs Protection Egos
Vendor Interests Q3 2010 New softwarelicencesUS$1.7B Updates and product support US$3.2B 2009 Annual Report Revenue US$ 58B Client (Windows) US$ 14.7B Server and Tools US$ 14.1B
It’s Not Easy High Engineering Cost Lack of Design Patterns Lack of Experience Risk of Poor Implementation Sponsor Support No Big Vendor
Change This Focus here Keep this Who Cares?
The Data API is changing Data demands are exploding We are wasting effort, money and sanity SQL doesn’t do everything Alternatives can make a big difference to solutions Get involved in the debate Close the gap to ‘them’ Advance the state of the art Be less restrictive Embrace change Understand the business needs Its time for database professionals to take back the database and stop people pissing all over our domain
What kind of trusted advisor are you?
Fill in feedback Visit the sponsors please Look for the video uploads Slides (and trump cards) on  simonmunro.com and SQLBits soon

Weitere ähnliche Inhalte

Was ist angesagt?

GigaOm-sector-roadmap-cloud-analytic-databases-2017
GigaOm-sector-roadmap-cloud-analytic-databases-2017GigaOm-sector-roadmap-cloud-analytic-databases-2017
GigaOm-sector-roadmap-cloud-analytic-databases-2017
Jeremy Maranitch
 
BizDataX White paper Test Data Management
BizDataX White paper Test Data ManagementBizDataX White paper Test Data Management
BizDataX White paper Test Data Management
Dragan Kinkela
 
How To Tell if Your Business Needs NoSQL
How To Tell if Your Business Needs NoSQLHow To Tell if Your Business Needs NoSQL
How To Tell if Your Business Needs NoSQL
DataStax
 

Was ist angesagt? (20)

GigaOm-sector-roadmap-cloud-analytic-databases-2017
GigaOm-sector-roadmap-cloud-analytic-databases-2017GigaOm-sector-roadmap-cloud-analytic-databases-2017
GigaOm-sector-roadmap-cloud-analytic-databases-2017
 
Microsoft Data Warehousing
Microsoft Data Warehousing Microsoft Data Warehousing
Microsoft Data Warehousing
 
BizDataX White paper Test Data Management
BizDataX White paper Test Data ManagementBizDataX White paper Test Data Management
BizDataX White paper Test Data Management
 
How To Tell if Your Business Needs NoSQL
How To Tell if Your Business Needs NoSQLHow To Tell if Your Business Needs NoSQL
How To Tell if Your Business Needs NoSQL
 
Data Quality Everywhere
Data Quality EverywhereData Quality Everywhere
Data Quality Everywhere
 
Introduction To Data Vault - DAMA Oregon 2012
Introduction To Data Vault - DAMA Oregon 2012Introduction To Data Vault - DAMA Oregon 2012
Introduction To Data Vault - DAMA Oregon 2012
 
Performance Considerations in Logical Data Warehouse
Performance Considerations in Logical Data WarehousePerformance Considerations in Logical Data Warehouse
Performance Considerations in Logical Data Warehouse
 
Webinar: Don't Leave Your Data in the Dark
Webinar: Don't Leave Your Data in the DarkWebinar: Don't Leave Your Data in the Dark
Webinar: Don't Leave Your Data in the Dark
 
Govern and Protect Your End User Information
Govern and Protect Your End User InformationGovern and Protect Your End User Information
Govern and Protect Your End User Information
 
Risk aware query replacement approach for secure databases performance manage...
Risk aware query replacement approach for secure databases performance manage...Risk aware query replacement approach for secure databases performance manage...
Risk aware query replacement approach for secure databases performance manage...
 
WhereScape + HVR Webcast – How Progressive Leasing Accelerated Data Warehousi...
WhereScape + HVR Webcast – How Progressive Leasing Accelerated Data Warehousi...WhereScape + HVR Webcast – How Progressive Leasing Accelerated Data Warehousi...
WhereScape + HVR Webcast – How Progressive Leasing Accelerated Data Warehousi...
 
Testing the Data Warehouse—Big Data, Big Problems
Testing the Data Warehouse—Big Data, Big ProblemsTesting the Data Warehouse—Big Data, Big Problems
Testing the Data Warehouse—Big Data, Big Problems
 
Webinar - Delivering Enhanced Message Processing at Scale With an Always-on D...
Webinar - Delivering Enhanced Message Processing at Scale With an Always-on D...Webinar - Delivering Enhanced Message Processing at Scale With an Always-on D...
Webinar - Delivering Enhanced Message Processing at Scale With an Always-on D...
 
Onomi Launch Presentation
Onomi Launch PresentationOnomi Launch Presentation
Onomi Launch Presentation
 
Automation First as Strategy for Data Warehouse Modernization
Automation First as Strategy for Data Warehouse Modernization Automation First as Strategy for Data Warehouse Modernization
Automation First as Strategy for Data Warehouse Modernization
 
Best Laid Plans: Saving Time, Money and Trouble with Optimal Forecasting
Best Laid Plans: Saving Time, Money and Trouble with Optimal ForecastingBest Laid Plans: Saving Time, Money and Trouble with Optimal Forecasting
Best Laid Plans: Saving Time, Money and Trouble with Optimal Forecasting
 
Webinar: Customer Experience in Banking - a CTO's Perspective
Webinar: Customer Experience in Banking - a CTO's PerspectiveWebinar: Customer Experience in Banking - a CTO's Perspective
Webinar: Customer Experience in Banking - a CTO's Perspective
 
How can a quality engineering and assurance consultancy keep you ahead of others
How can a quality engineering and assurance consultancy keep you ahead of othersHow can a quality engineering and assurance consultancy keep you ahead of others
How can a quality engineering and assurance consultancy keep you ahead of others
 
Introduction to Couchbase: Onomi
Introduction to Couchbase: OnomiIntroduction to Couchbase: Onomi
Introduction to Couchbase: Onomi
 
Balance agility and governance with #TrueDataOps and The Data Cloud
Balance agility and governance with #TrueDataOps and The Data CloudBalance agility and governance with #TrueDataOps and The Data Cloud
Balance agility and governance with #TrueDataOps and The Data Cloud
 

Ähnlich wie SQLBits VI - Improving database performance by removing the database

Building The Agile Database
Building The Agile DatabaseBuilding The Agile Database
Building The Agile Database
elliando dias
 
클라우드에서의 데이터 웨어하우징 & 비즈니스 인텔리전스
클라우드에서의 데이터 웨어하우징 & 비즈니스 인텔리전스클라우드에서의 데이터 웨어하우징 & 비즈니스 인텔리전스
클라우드에서의 데이터 웨어하우징 & 비즈니스 인텔리전스
Amazon Web Services Korea
 
Next Generation Datacenter Oracle - Alan Hartwell
Next Generation Datacenter Oracle - Alan HartwellNext Generation Datacenter Oracle - Alan Hartwell
Next Generation Datacenter Oracle - Alan Hartwell
HPDutchWorld
 
Oracle - Next Generation Datacenter - Alan Hartwell
Oracle - Next Generation Datacenter - Alan HartwellOracle - Next Generation Datacenter - Alan Hartwell
Oracle - Next Generation Datacenter - Alan Hartwell
HPDutchWorld
 
How to Get Cloud Architecture and Design Right the First Time
How to Get Cloud Architecture and Design Right the First TimeHow to Get Cloud Architecture and Design Right the First Time
How to Get Cloud Architecture and Design Right the First Time
David Linthicum
 

Ähnlich wie SQLBits VI - Improving database performance by removing the database (20)

New Database and Application Development Technology
New Database and Application Development TechnologyNew Database and Application Development Technology
New Database and Application Development Technology
 
MongoDB and In-Memory Computing
MongoDB and In-Memory ComputingMongoDB and In-Memory Computing
MongoDB and In-Memory Computing
 
Building The Agile Database
Building The Agile DatabaseBuilding The Agile Database
Building The Agile Database
 
Take Action: The New Reality of Data-Driven Business
Take Action: The New Reality of Data-Driven BusinessTake Action: The New Reality of Data-Driven Business
Take Action: The New Reality of Data-Driven Business
 
Best practices and trends in people soft
Best practices and trends in people softBest practices and trends in people soft
Best practices and trends in people soft
 
Expert summit SQL Server 2016
Expert summit   SQL Server 2016Expert summit   SQL Server 2016
Expert summit SQL Server 2016
 
Horses for Courses: Database Roundtable
Horses for Courses: Database RoundtableHorses for Courses: Database Roundtable
Horses for Courses: Database Roundtable
 
Oracle Coherence: in-memory datagrid
Oracle Coherence: in-memory datagridOracle Coherence: in-memory datagrid
Oracle Coherence: in-memory datagrid
 
¿Cómo modernizar una arquitectura de TI con la virtualización de datos?
¿Cómo modernizar una arquitectura de TI con la virtualización de datos?¿Cómo modernizar una arquitectura de TI con la virtualización de datos?
¿Cómo modernizar una arquitectura de TI con la virtualización de datos?
 
클라우드에서의 데이터 웨어하우징 & 비즈니스 인텔리전스
클라우드에서의 데이터 웨어하우징 & 비즈니스 인텔리전스클라우드에서의 데이터 웨어하우징 & 비즈니스 인텔리전스
클라우드에서의 데이터 웨어하우징 & 비즈니스 인텔리전스
 
Click to Disk Troubleshooting with AppDynamics and OpsDataStore - AppSphere16
Click to Disk Troubleshooting with AppDynamics and OpsDataStore - AppSphere16Click to Disk Troubleshooting with AppDynamics and OpsDataStore - AppSphere16
Click to Disk Troubleshooting with AppDynamics and OpsDataStore - AppSphere16
 
What is Solution Architecture?
What is Solution Architecture?What is Solution Architecture?
What is Solution Architecture?
 
Next Generation Datacenter Oracle - Alan Hartwell
Next Generation Datacenter Oracle - Alan HartwellNext Generation Datacenter Oracle - Alan Hartwell
Next Generation Datacenter Oracle - Alan Hartwell
 
Oracle - Next Generation Datacenter - Alan Hartwell
Oracle - Next Generation Datacenter - Alan HartwellOracle - Next Generation Datacenter - Alan Hartwell
Oracle - Next Generation Datacenter - Alan Hartwell
 
Data Mesh using Microsoft Fabric
Data Mesh using Microsoft FabricData Mesh using Microsoft Fabric
Data Mesh using Microsoft Fabric
 
Smarter Data Protection And Storage Management Solutions
Smarter Data Protection And Storage Management SolutionsSmarter Data Protection And Storage Management Solutions
Smarter Data Protection And Storage Management Solutions
 
Cloud Data Integration Best Practices
Cloud Data Integration Best PracticesCloud Data Integration Best Practices
Cloud Data Integration Best Practices
 
Introduction to Data Warehousing
Introduction to Data WarehousingIntroduction to Data Warehousing
Introduction to Data Warehousing
 
Scaling Systems: Architectures that grow
Scaling Systems: Architectures that growScaling Systems: Architectures that grow
Scaling Systems: Architectures that grow
 
How to Get Cloud Architecture and Design Right the First Time
How to Get Cloud Architecture and Design Right the First TimeHow to Get Cloud Architecture and Design Right the First Time
How to Get Cloud Architecture and Design Right the First Time
 

Kürzlich hochgeladen

EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Earley Information Science
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
giselly40
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
 

Kürzlich hochgeladen (20)

The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 

SQLBits VI - Improving database performance by removing the database

  • 1. Improving Database Performance by Removing the Database Simon Munro
  • 2. This is not about NoSQL It is about why NoSQL won’t die For NoSQL, watch the video from SQLBits Goes West
  • 3. Data Growth Everything Else Isn’t it a great time to be a data dude?
  • 4. Information is power Information is on the increase We administer the information We have the power! Viva DBA, Viva!
  • 5. So why are we so stressed?
  • 6. We need to handle increasing demands Data Volumes Transactional Volumes User Volumes Time to Market Responsiveness
  • 7. With better levels of service Availability Reliability Security Functionality Performance (Yeah right… and with the same fake smiles)
  • 8. Rising Costs SpecialisedHardware Licensing Costs Vendor Lock-in Operational Costs
  • 9. It all takes more effort Design Effort Operational Effort Collaboration Effort Procurement Setup Migration Decommissioning
  • 10. But we have to lower costs Recession Impact Focus on Efficiency Staff cuts Marginal business cases Infrequent Upgrades
  • 11. What can change? Networking Topologies? Hardware Infrastructure? Storage? Database Platforms? Application Architectures? Demands? Requirements?
  • 12. Do we want it to change? It seems to work It is familiar We have the skills Risk is low We have the infrastructure Does it really work?
  • 15. SQL as a Good Design De-facto data storage mechanism (Fairly) well understood patterns Database structures Querying Close to classic relational model Optimised embedded languages
  • 16. SQL as Misused Design API is far to open ‘Post relational’ datatypes Suboptimal for some domains
  • 17. Works for me Why? SQL is simply fantastic! That is what is was designed to do It’s always been that way Have you looked at alternatives? Have you checked your assumptions?
  • 18. SQL Patterns have become data management patterns Backup Query Security ACID Data models Application development THIS is how we work with data!
  • 19. Scalability It is hard and expensive and unfamiliar and those are just the people problems!
  • 20. Scalability and NoSQL Lack of SQL scalability out is the popular NoSQL argument Actually, most NoSQL databases do not scale out either jamesgolick.com CouchDB Redis Tokyo cabinet MemcacheDB Berkeley DB Cassandra Riak Voldemort
  • 21. Scalability is more than an engineering problem Operational processes Maintenance Skills Partnerships Legal
  • 22.
  • 23. The core flaw in SQL oriented design MSDN http://technet.microsoft.com/en-us/library/cc966500.aspx “The log records associated with the transaction (and all previous log records) must be written to stable storage. The transaction is not considered committed until the log records are correctly flushed to stable media. (Log is hardened.)”
  • 24. Stack of Turtles Processor Memory Disk Controller Disk
  • 25. More turtles! Processor Memory San Controller Network System Management Switch Firewall SAN Controller Backup SAN Encryption Fibre Network RAID Controller Virtualisation Disk Is our performance bottleneck based on this? Monitoring
  • 26. Storage Gets Better Tape is dead Disk is tape Flash is disk SSDs to the rescue! Memory is cheap What if we kept everything in memory?
  • 27. Database Ivory Towers That Piss Me Off
  • 28. All data should be in the database The Culture Q: How long do you need to keep this data? A: 5 years Original atomic records need to be stored for future analysis Keeping it in SQL is best so that it can be queried
  • 29. All data should be in the database The Reality The business value of data is misunderstood The cost of data retention is hidden Users cannot query data A lot of data is not in the database anyway
  • 30. Single Version of the Truth(One fact, one place, once) The Culture Master Data Management Normalisation Only editable in this database Removal of duplicates Integration is tedious
  • 31. Single Version of the Truth(One fact, one place, once) The Reality A complete myth Data always lands up everywhere System integration duplicates data MDM effort is high There are a lot of spreadsheets Data is inherently temporal
  • 32. All processing should be done in the batch run The Culture Single database SQL Database as a source for all data Aggregation load is to high for transactional systems It is optimal and fair for all departments
  • 33. All processing should be done in the batch run The Reality Batches always tend toward using up all available time Batch code is the worst Batch failures are a source of Panic, risk and stress Operational costs for batch runs are high
  • 34. Queryability The Culture All fields are queryable User demand... apparently This is what the relational database is for
  • 35. Queryability The Reality Performance issues limit searches to key fields Other structures are created to make querying easier Rows, columns and tables are an abstraction anyway
  • 36. Required by Auditors The Culture “We need an audit trail” “Audit requires that we…”
  • 37. Required by Auditors The Reality Real life auditors are seldom making requests What are auditors doing specifying IT architectures anyway? Auditors are change averse
  • 38. Required by Regulations The Culture “We can’t do that because of regulations” “We do it like this for regulatory reasons”
  • 39. Required by Regulations The Reality Regulations are difficult to understand Regulations are full of legalese and contradictions Most regulatory requirements are based on myths
  • 40. Consistency The Culture Every database operation needs to be within a transactional context We have to ensure that in the event of a failure that data is correct Data has to be in a consistent state before it can be used All clients executing a simultaneous query should get the same result
  • 41. Consistency The Reality Consistency is impossible in a Distributed environment The Internet is a distributed environment Given the choice, business would probably spend their money elsewhere Even the most consistent data may not reflect reality
  • 42.
  • 43. In memory data Hosted Service Service Interface Message Bus Clients Can we just store data in memory?
  • 44. What are the patterns? We already have them Mainframes, Swift, Reuters, Trading Knowledge is hidden or rusty Diverted to SOA for a while Being revived by the cloud Already being used without DBA knowing
  • 45. The Influence of the Cloud Someone else can deal with the stack of turtles Cannot make assumptions about availability of a specific process No control over underlying hardware Applications are failure aware
  • 46. SQL Removal Techniques Change your approach to dealing with data Change your application architectures Change how business treats data Work with other disciplines (e.g. developers and compliance)
  • 47. Changing Approach to Data Cache Read-only data stores Specialised Data Stores Main Memory Databases Pre-emptive archiving
  • 48. Changing Approach to Application Architectures Message Orientation Eventual Consistency Store and process data as Close to source as possible Design for service degradation Apology based computing
  • 49. An Example : Changing Batch Jobs The Scenario: Users require access to Summaries of a large transactional database The transactional database is under load so summaries are run in the overnight batch job
  • 50. The Result Reporting Database Transaction Database Occasional Refresh Workflow Engine Reliable Messaging Message Bus Transaction Source
  • 51. Resistance to Change Incumbent Investment Risk of Failure Fear of Failure Jobs Protection Egos
  • 52. Vendor Interests Q3 2010 New softwarelicencesUS$1.7B Updates and product support US$3.2B 2009 Annual Report Revenue US$ 58B Client (Windows) US$ 14.7B Server and Tools US$ 14.1B
  • 53. It’s Not Easy High Engineering Cost Lack of Design Patterns Lack of Experience Risk of Poor Implementation Sponsor Support No Big Vendor
  • 54. Change This Focus here Keep this Who Cares?
  • 55. The Data API is changing Data demands are exploding We are wasting effort, money and sanity SQL doesn’t do everything Alternatives can make a big difference to solutions Get involved in the debate Close the gap to ‘them’ Advance the state of the art Be less restrictive Embrace change Understand the business needs Its time for database professionals to take back the database and stop people pissing all over our domain
  • 56. What kind of trusted advisor are you?
  • 57. Fill in feedback Visit the sponsors please Look for the video uploads Slides (and trump cards) on simonmunro.com and SQLBits soon