SlideShare a Scribd company logo
ADVANCED DATABASES
      REVISION 1
REVISION TACTICS

• Watch the videos from emails and moodle
  • Take notes
• Follow these slides
  • Visit the web resources
  • Learn the keywords and concepts
• Learn SQL
• Use Cmap tools to link concepts /t erms
• Revisit your patchwork
THE BUILDING BLOCKS
       TERMS AND CONCEPTS YOU SHOULD KNOW BY NOW…


•   XML                        • NoSQL
•   Graph                      • ODBC
•   Relational Database        • MySQL
•   SQL
•   Linked Data
•   RDF
•   Trigger
•   Database Index
REVISION TOOL: CMAP TOOLS

• http://cmap.ihmc.us/download/
• Tool for creating concept maps
TOPICS

• Relational Databases (MySQL)
 • SQL
 • Triggers
 • Transactions


• Webservices
 • XML


• NoSQL / Alternative Database systems
RELATIONAL DATABASES
        MYSQL
RELATIONAL DATABASES
    ‘FORMALLY DESCRIBED TABLES’
• This module focused on MySQL: an Open source
  implementation of a relational database
 • Oracle, PostgreSQL, SQLite


• Most patchworks should be done in MySQL
  (Triggers, indexs)

• ODBC Component

• Looked at alternatives: NoSQL (Not Only
  SQL), Graph Database, triplestore
RELATIONAL DATABASES: SQL
                     (STRUCTURED QUERY LANGUAGE)



• Language to manage data in relational
  management systems
• Should be examples in your patchwork

CREATE TABLE example_autoincrement (
    id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, data VARCHAR(100)
);
RELATIONAL DATABASES
      TRANSACTIONS
TRANSACTIONS
    ‘UNIT OF WORK PERFORMED WITHIN A DATABASE
               MANAGEMENT SYSTEM’

• A transaction is a unit of work
• Treated independently of each other
TRANSACTIONS
       ‘UNIT OF WORK PERFORMED WITHIN A DATABASE MANAGEMENT SYSTEM’



• In a relational database each transaction must have
  ACID properties
• Proposed in 1970s
• Key idea in relational databases

•   Atomicity
•   Consistency
•   Isolation
•   Durability

• A transaction need to reach these 4 goals to be reliable
TRANSACTIONS
‘UNIT OF WORK PERFORMED WITHIN A DATABASE MANAGEMENT SYSTEM’



• Atomicity
  • All or Nothing
  • both pay for and reserve a seat; OR neither pay for nor
    reserve a seat.
• Consistency
  • Only ever writes valid data
• Isolation
  • Transactions will not interfere with each other
• Durability
  • Once a transaction is complete it will always remain. Even
    in the event of a powerloss
TRANSACTIONS
    ‘UNIT OF WORK PERFORMED WITHIN A DATABASE MANAGEMENT SYSTEM’




• Sometimes we can’t use ACID
• CAP THEORY
• A theory by Eric Brewer in 2000

It is only possible to have 2 of the following in a
distributed computer system

• Consistency
• Availability
• Partition Tolerance
TRANSACTIONS
‘UNIT OF WORK PERFORMED WITHIN A DATABASE
           MANAGEMENT SYSTEM’

• Consistency
All the nodes in the distributed system have the same
system
• Availability
A guarantee that every requests get a response
(even if it fails)
• Partition tolerance
If a node fails then the whole system will continue to
operate
TRANSACTIONS
 ‘UNIT OF WORK PERFORMED WITHIN A DATABASE MANAGEMENT
                         SYSTEM’

 • So what do large companies/distributed computer
   systems do?
 • Use alternatives to ACID
 • Most popular alternative to ACID is BASE

 • Basic Availability
 • Soft State
 • Eventual Consistency

 For when it’s OK to use stale data, and it’s OK to give
 approximate answers.
http://www.cs.berkeley.edu/~brewer/cs262b-2004/PODC-keynote.pdf
TRANSACTIONS
‘UNIT OF WORK PERFORMED WITHIN A DATABASE
           MANAGEMENT SYSTEM’

• Basically Available
  • Availability is achieved through multiple data stores rather
    than one fault tolerant system
• Soft state
  • Consistency is abandoned, or at least is the problem of the
    application and not the database
• Eventual Consistency
  • At some point in the future data will converge so that data
    on nodes is in a consistent state
RELATIONAL
DATABASES: ODBC
OPEN DATABASE CONNECTIVITY
RELATIONAL DATABASES: ODBC
             OPEN DATABASE CONNECTIVITY
    • Standard database access method
    • SQL Access group
    • Independent of database system




http://shivasoft.in/blog/microsoft/csharp/what-is-odbc-and-oledb-interview-
question/
RELATIONAL DATABASES:
                TRIGGERS
• SQL statement or SET of statements fired when an event
  occurs. (for example INSERT, UPDATE and DELETE)

CREATE
  TRIGGER `event_name` BEFORE/AFTER
INSERT/UPDATE/DELETE
  ON `database`.`table`
  FOR EACH ROW BEGIN
           -- trigger body
           -- this code is applied to every
           -- inserted/updated/deleted row
  END;

http://www.sitepoint.com/how-to-create-mysql-triggers/
DATABASE INDEX

     •   improves the speed of data retrieval operations
     •   Stops searching through each row one by one
     •   Created on columns
     •   Most Common
         • B-tree (MySQL default?)
         • Hash




Really good -> http://20bits.com/article/interview-questions-database-indexes

         http://dev.mysql.com/doc/refman/5.5/en/index-btree-hash.html
B TREE INDEXING

• B-Tree
• Stores data in logical way
• We want people younger than 13.. Look left
INDEXS

 • Hash Tables
 • Speeds up = or <=>
 • Not > or <




B-tree vs Hash Tables
http://dev.mysql.com/doc/refman/5.5/en/index-btree-hash.html
WEBSERVICE
WEBSERVICE

• A way to communicate between systems (machine
  to machine interaction)
• Service Provider
• Service Requester
WEB SERVICES

•   3 types of nodes
•   Registries (Service Broker)
•   Providers
•   Requesters
XML

   • XML:
   • EXtensible Markup Language
   • Designed to store and transport data
      • (whereas html was designed to display data)




http://www.w3schools.com/xml/xml_whatis.asp
WEB SERVICES
                  ADVANTAGES
• Advantages
 • Work outside of private networks
 • Interoperability
 • Could be the content processing/logic module in Three-tier
   architecture?
WEB SERVICES
               DISADVANTAGES
• Availability?
• Based in a stateless (unreliable?) protocol :http
• Security?
NOSQL
NOSQL

• Not Only SQL
• Databases that are not like relational database
  management systems
• Not built around the idea of tables
• Not likely to use SQL
• Usually built around BASE style principles (not ACID)
• Examples : Graph Databases
GRAPH DATABASE

• Every Element has a pointer to another element
TRIPLE STORE

• Similar to Graph Data
• Built to store and retrieve triples (David eats
  chocolate bars, Mars is a chocolate bar, etc etc)
• Data is stored in a standardized way (such as
  RDF/XML)
• Has a querying service (sparql)
LINKED DATA

• Method of publishing structured data
• Different datasets can be interlinked
• Built on the following technologies
  • URI’s
  • HTTP
  • Structured formats RDF/XML

• Sometimes this data is stored in triplestores
• Served by website (content negotiation)
  • Like prod.cetis.ac.uk
  • Could have a relational database behind it

• Example: dbpedia
LINKED DATA

•   Linked Data is made up of triples!
•   Subject, predicate object
•   David -> eats -> cake
•   David (Subject) Eats (Predicate) Cake
DATA JOURNALISM

• Explosion of visual analytic tools
  • Gephi
  • Visualise a network/graph
• Visually Identify complex patterns / markets

More Related Content

PPTX
SQL vs. NoSQL. It's always a hard choice.
PDF
DMann-SQLDeveloper4Reporting
PPTX
Schema less table & dynamic schema
PPTX
Sql vs NoSQL
PPTX
Geek Sync | Data Integrity Demystified - Deborah Melkin | IDERA
PPTX
Implementing Engineering Standards through Autodesk Vault
PPTX
Search and analyze your data with elasticsearch
PPTX
Survey of the Microsoft Azure Data Landscape
SQL vs. NoSQL. It's always a hard choice.
DMann-SQLDeveloper4Reporting
Schema less table & dynamic schema
Sql vs NoSQL
Geek Sync | Data Integrity Demystified - Deborah Melkin | IDERA
Implementing Engineering Standards through Autodesk Vault
Search and analyze your data with elasticsearch
Survey of the Microsoft Azure Data Landscape

What's hot (20)

PPT
No sql or Not only SQL
PPTX
SSIS Monitoring Deep Dive
PDF
Mongo db groundup-0-nosql-intro-syedawasekhirni
PPTX
Inventor Content Center: Adding Information
PPTX
Drop acid
PPTX
No sql databases
PDF
Hpts 2011 flexible_oltp
PPTX
SQL Server & SQL Azure Temporal Tables - V2
PDF
Mongo db model relationships with documents
PPTX
Efficient working with Databases in LabVIEW - Sam Sharp (MediaMongrels Ltd) -...
PDF
Building better SQL Server Databases
PPT
Sql implementations
PPTX
A lap around microsofts business intelligence platform
PPTX
SilverStripe From a Developer's Perspective
PPTX
In Memory Cahce Structure
PPTX
SPA vs. MPA
PPTX
Cloud architectural patterns and Microsoft Azure tools
PDF
NOSQL Meets Relational - The MySQL Ecosystem Gains More Flexibility
PPTX
Introduction to Azure DocumentDB
PPTX
Data Stream Processing for Beginners with Kafka and CDC
No sql or Not only SQL
SSIS Monitoring Deep Dive
Mongo db groundup-0-nosql-intro-syedawasekhirni
Inventor Content Center: Adding Information
Drop acid
No sql databases
Hpts 2011 flexible_oltp
SQL Server & SQL Azure Temporal Tables - V2
Mongo db model relationships with documents
Efficient working with Databases in LabVIEW - Sam Sharp (MediaMongrels Ltd) -...
Building better SQL Server Databases
Sql implementations
A lap around microsofts business intelligence platform
SilverStripe From a Developer's Perspective
In Memory Cahce Structure
SPA vs. MPA
Cloud architectural patterns and Microsoft Azure tools
NOSQL Meets Relational - The MySQL Ecosystem Gains More Flexibility
Introduction to Azure DocumentDB
Data Stream Processing for Beginners with Kafka and CDC
Ad

Similar to Revision (20)

PDF
Database Revolution - Exploratory Webcast
PDF
Database revolution opening webcast 01 18-12
PPTX
The Rise of NoSQL and Polyglot Persistence
PDF
Scaling the Web: Databases & NoSQL
PDF
Database management-system
PDF
Database Systems - A Historical Perspective
PPTX
dbms introduction.pptx
PPTX
Relational databases store data in tables
PPTX
Big Data (NJ SQL Server User Group)
PPTX
History and Introduction to NoSQL over Traditional Rdbms
PPT
Notes on Understanding RDBMS2 for StudentsS.ppt
KEY
Non-Relational Databases at ACCU2011
PDF
PDF
Database Technologies
PPT
Database Management System Processing.ppt
PDF
NoSQL – Back to the Future or Yet Another DB Feature?
PDF
Finding your Way in the Midst of the NoSQL Haze - Abdelmonaim Remani
PDF
SQL? NoSQL? NewSQL?!? What’s a Java developer to do? - JDC2012 Cairo, Egypt
PPTX
RDBMS to NoSQL. An overview.
PPT
SQL, NoSQL, BigData in Data Architecture
Database Revolution - Exploratory Webcast
Database revolution opening webcast 01 18-12
The Rise of NoSQL and Polyglot Persistence
Scaling the Web: Databases & NoSQL
Database management-system
Database Systems - A Historical Perspective
dbms introduction.pptx
Relational databases store data in tables
Big Data (NJ SQL Server User Group)
History and Introduction to NoSQL over Traditional Rdbms
Notes on Understanding RDBMS2 for StudentsS.ppt
Non-Relational Databases at ACCU2011
Database Technologies
Database Management System Processing.ppt
NoSQL – Back to the Future or Yet Another DB Feature?
Finding your Way in the Midst of the NoSQL Haze - Abdelmonaim Remani
SQL? NoSQL? NewSQL?!? What’s a Java developer to do? - JDC2012 Cairo, Egypt
RDBMS to NoSQL. An overview.
SQL, NoSQL, BigData in Data Architecture
Ad

More from David Sherlock (6)

PPTX
PhD Help Day
PPTX
Agent Based Models
PPTX
Exploring linked data in r
PPTX
Flashtalk david
PPTX
PPTX
Week3 adb
PhD Help Day
Agent Based Models
Exploring linked data in r
Flashtalk david
Week3 adb

Recently uploaded (20)

PPTX
human mycosis Human fungal infections are called human mycosis..pptx
PDF
Complications of Minimal Access Surgery at WLH
PDF
Module 4: Burden of Disease Tutorial Slides S2 2025
PDF
Anesthesia in Laparoscopic Surgery in India
PDF
Insiders guide to clinical Medicine.pdf
PPTX
Cell Types and Its function , kingdom of life
PDF
Mark Klimek Lecture Notes_240423 revision books _173037.pdf
PDF
Pre independence Education in Inndia.pdf
PPTX
PPH.pptx obstetrics and gynecology in nursing
PDF
The Lost Whites of Pakistan by Jahanzaib Mughal.pdf
PPTX
Pharmacology of Heart Failure /Pharmacotherapy of CHF
PDF
102 student loan defaulters named and shamed – Is someone you know on the list?
PDF
STATICS OF THE RIGID BODIES Hibbelers.pdf
PDF
O7-L3 Supply Chain Operations - ICLT Program
PPTX
Institutional Correction lecture only . . .
PDF
TR - Agricultural Crops Production NC III.pdf
PDF
Basic Mud Logging Guide for educational purpose
PDF
BÀI TẬP BỔ TRỢ 4 KỸ NĂNG TIẾNG ANH 9 GLOBAL SUCCESS - CẢ NĂM - BÁM SÁT FORM Đ...
PPTX
The Healthy Child – Unit II | Child Health Nursing I | B.Sc Nursing 5th Semester
PDF
FourierSeries-QuestionsWithAnswers(Part-A).pdf
human mycosis Human fungal infections are called human mycosis..pptx
Complications of Minimal Access Surgery at WLH
Module 4: Burden of Disease Tutorial Slides S2 2025
Anesthesia in Laparoscopic Surgery in India
Insiders guide to clinical Medicine.pdf
Cell Types and Its function , kingdom of life
Mark Klimek Lecture Notes_240423 revision books _173037.pdf
Pre independence Education in Inndia.pdf
PPH.pptx obstetrics and gynecology in nursing
The Lost Whites of Pakistan by Jahanzaib Mughal.pdf
Pharmacology of Heart Failure /Pharmacotherapy of CHF
102 student loan defaulters named and shamed – Is someone you know on the list?
STATICS OF THE RIGID BODIES Hibbelers.pdf
O7-L3 Supply Chain Operations - ICLT Program
Institutional Correction lecture only . . .
TR - Agricultural Crops Production NC III.pdf
Basic Mud Logging Guide for educational purpose
BÀI TẬP BỔ TRỢ 4 KỸ NĂNG TIẾNG ANH 9 GLOBAL SUCCESS - CẢ NĂM - BÁM SÁT FORM Đ...
The Healthy Child – Unit II | Child Health Nursing I | B.Sc Nursing 5th Semester
FourierSeries-QuestionsWithAnswers(Part-A).pdf

Revision

  • 1. ADVANCED DATABASES REVISION 1
  • 2. REVISION TACTICS • Watch the videos from emails and moodle • Take notes • Follow these slides • Visit the web resources • Learn the keywords and concepts • Learn SQL • Use Cmap tools to link concepts /t erms • Revisit your patchwork
  • 3. THE BUILDING BLOCKS TERMS AND CONCEPTS YOU SHOULD KNOW BY NOW… • XML • NoSQL • Graph • ODBC • Relational Database • MySQL • SQL • Linked Data • RDF • Trigger • Database Index
  • 4. REVISION TOOL: CMAP TOOLS • http://cmap.ihmc.us/download/ • Tool for creating concept maps
  • 5. TOPICS • Relational Databases (MySQL) • SQL • Triggers • Transactions • Webservices • XML • NoSQL / Alternative Database systems
  • 7. RELATIONAL DATABASES ‘FORMALLY DESCRIBED TABLES’ • This module focused on MySQL: an Open source implementation of a relational database • Oracle, PostgreSQL, SQLite • Most patchworks should be done in MySQL (Triggers, indexs) • ODBC Component • Looked at alternatives: NoSQL (Not Only SQL), Graph Database, triplestore
  • 8. RELATIONAL DATABASES: SQL (STRUCTURED QUERY LANGUAGE) • Language to manage data in relational management systems • Should be examples in your patchwork CREATE TABLE example_autoincrement ( id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, data VARCHAR(100) );
  • 9. RELATIONAL DATABASES TRANSACTIONS
  • 10. TRANSACTIONS ‘UNIT OF WORK PERFORMED WITHIN A DATABASE MANAGEMENT SYSTEM’ • A transaction is a unit of work • Treated independently of each other
  • 11. TRANSACTIONS ‘UNIT OF WORK PERFORMED WITHIN A DATABASE MANAGEMENT SYSTEM’ • In a relational database each transaction must have ACID properties • Proposed in 1970s • Key idea in relational databases • Atomicity • Consistency • Isolation • Durability • A transaction need to reach these 4 goals to be reliable
  • 12. TRANSACTIONS ‘UNIT OF WORK PERFORMED WITHIN A DATABASE MANAGEMENT SYSTEM’ • Atomicity • All or Nothing • both pay for and reserve a seat; OR neither pay for nor reserve a seat. • Consistency • Only ever writes valid data • Isolation • Transactions will not interfere with each other • Durability • Once a transaction is complete it will always remain. Even in the event of a powerloss
  • 13. TRANSACTIONS ‘UNIT OF WORK PERFORMED WITHIN A DATABASE MANAGEMENT SYSTEM’ • Sometimes we can’t use ACID • CAP THEORY • A theory by Eric Brewer in 2000 It is only possible to have 2 of the following in a distributed computer system • Consistency • Availability • Partition Tolerance
  • 14. TRANSACTIONS ‘UNIT OF WORK PERFORMED WITHIN A DATABASE MANAGEMENT SYSTEM’ • Consistency All the nodes in the distributed system have the same system • Availability A guarantee that every requests get a response (even if it fails) • Partition tolerance If a node fails then the whole system will continue to operate
  • 15. TRANSACTIONS ‘UNIT OF WORK PERFORMED WITHIN A DATABASE MANAGEMENT SYSTEM’ • So what do large companies/distributed computer systems do? • Use alternatives to ACID • Most popular alternative to ACID is BASE • Basic Availability • Soft State • Eventual Consistency For when it’s OK to use stale data, and it’s OK to give approximate answers. http://www.cs.berkeley.edu/~brewer/cs262b-2004/PODC-keynote.pdf
  • 16. TRANSACTIONS ‘UNIT OF WORK PERFORMED WITHIN A DATABASE MANAGEMENT SYSTEM’ • Basically Available • Availability is achieved through multiple data stores rather than one fault tolerant system • Soft state • Consistency is abandoned, or at least is the problem of the application and not the database • Eventual Consistency • At some point in the future data will converge so that data on nodes is in a consistent state
  • 18. RELATIONAL DATABASES: ODBC OPEN DATABASE CONNECTIVITY • Standard database access method • SQL Access group • Independent of database system http://shivasoft.in/blog/microsoft/csharp/what-is-odbc-and-oledb-interview- question/
  • 19. RELATIONAL DATABASES: TRIGGERS • SQL statement or SET of statements fired when an event occurs. (for example INSERT, UPDATE and DELETE) CREATE TRIGGER `event_name` BEFORE/AFTER INSERT/UPDATE/DELETE ON `database`.`table` FOR EACH ROW BEGIN -- trigger body -- this code is applied to every -- inserted/updated/deleted row END; http://www.sitepoint.com/how-to-create-mysql-triggers/
  • 20. DATABASE INDEX • improves the speed of data retrieval operations • Stops searching through each row one by one • Created on columns • Most Common • B-tree (MySQL default?) • Hash Really good -> http://20bits.com/article/interview-questions-database-indexes http://dev.mysql.com/doc/refman/5.5/en/index-btree-hash.html
  • 21. B TREE INDEXING • B-Tree • Stores data in logical way • We want people younger than 13.. Look left
  • 22. INDEXS • Hash Tables • Speeds up = or <=> • Not > or < B-tree vs Hash Tables http://dev.mysql.com/doc/refman/5.5/en/index-btree-hash.html
  • 24. WEBSERVICE • A way to communicate between systems (machine to machine interaction) • Service Provider • Service Requester
  • 25. WEB SERVICES • 3 types of nodes • Registries (Service Broker) • Providers • Requesters
  • 26. XML • XML: • EXtensible Markup Language • Designed to store and transport data • (whereas html was designed to display data) http://www.w3schools.com/xml/xml_whatis.asp
  • 27. WEB SERVICES ADVANTAGES • Advantages • Work outside of private networks • Interoperability • Could be the content processing/logic module in Three-tier architecture?
  • 28. WEB SERVICES DISADVANTAGES • Availability? • Based in a stateless (unreliable?) protocol :http • Security?
  • 29. NOSQL
  • 30. NOSQL • Not Only SQL • Databases that are not like relational database management systems • Not built around the idea of tables • Not likely to use SQL • Usually built around BASE style principles (not ACID) • Examples : Graph Databases
  • 31. GRAPH DATABASE • Every Element has a pointer to another element
  • 32. TRIPLE STORE • Similar to Graph Data • Built to store and retrieve triples (David eats chocolate bars, Mars is a chocolate bar, etc etc) • Data is stored in a standardized way (such as RDF/XML) • Has a querying service (sparql)
  • 33. LINKED DATA • Method of publishing structured data • Different datasets can be interlinked • Built on the following technologies • URI’s • HTTP • Structured formats RDF/XML • Sometimes this data is stored in triplestores • Served by website (content negotiation) • Like prod.cetis.ac.uk • Could have a relational database behind it • Example: dbpedia
  • 34. LINKED DATA • Linked Data is made up of triples! • Subject, predicate object • David -> eats -> cake • David (Subject) Eats (Predicate) Cake
  • 35. DATA JOURNALISM • Explosion of visual analytic tools • Gephi • Visualise a network/graph • Visually Identify complex patterns / markets