CMPE 226 Database Systems May 3 Class Meeting Department of Computer Engineering San Jose State University Spring 2016 Instructor: Ron Mak www.cs.sjsu.edu/~mak.

Slides:



Advertisements
Similar presentations
A Ridiculously Easy & Seriously Powerful SQL Cloud Database Itamar Haber AVP Ops & Solutions.
Advertisements

Data Management in the Cloud Paul Szerlip. The rise of data Think about this o For the past two decades, the largest generator of data was humans -- now.
Adding scalability to legacy PHP web applications Overview Mario A. Valdez-Ramirez.
Relational Database Alternatives NoSQL. Choosing A Data Model Relational database underpin legacy applications and meet business needs However, companies.
NoSQL Databases: MongoDB vs Cassandra
Presentation by Krishna
NoSQL and NewSQL Justin DeBrabant CIS Advanced Systems - Fall 2013.
CMU SCS Carnegie Mellon Univ. Dept. of Computer Science /615 - DB Applications C. Faloutsos – A. Pavlo How to Scale a Database System.
A Social blog using MongoDB ITEC-810 Final Presentation Lucero Soria Supervisor: Dr. Jian Yang.
NoSQL W2013 CSCI 2141.
Massively Parallel Cloud Data Storage Systems S. Sudarshan IIT Bombay.
1 Yasin N. Silva Arizona State University This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
How WebMD Maintains Operational Flexibility with NoSQL Rajeev Borborah, Sr. Director, Engineering Matt Wilson – Director, Production Engineering – Consumer.
Distributed Data Stores – Facebook Presented by Ben Gooding University of Arkansas – April 21, 2015.
Databases with Scalable capabilities Presented by Mike Trischetta.
CS525: Special Topics in DBs Large-Scale Data Management Hadoop/MapReduce Computing Paradigm Spring 2013 WPI, Mohamed Eltabakh 1.
Getting Biologists off ACID Ryan Verdon 3/13/12. Outline Thesis Idea Specific database Effects of losing ACID What is a NoSQL database Types of NoSQL.
WTT Workshop de Tendências Tecnológicas 2014
Goodbye rows and tables, hello documents and collections.
Distributed Indexing of Web Scale Datasets for the Cloud {ikons, eangelou, Computing Systems Laboratory School of Electrical.
Introduction to Hadoop and HDFS
Modern Databases NoSQL and NewSQL Willem Visser RW334.
1 Moshe Shadmon ScaleDB Scaling MySQL in the Cloud.
NoSQL Databases NoSQL Concepts SoftUni Team Technical Trainers Software University
NoSQL Databases Oracle - Berkeley DB Rasanjalee DM Smriti J CSC 8711 Instructor: Dr. Raj Sunderraman.
NoSQL Databases Oracle - Berkeley DB. Content A brief intro to NoSQL About Berkeley Db About our application.
Methodological Foundations of Biomedical Informatics (BMSC-GA 4449) Himanshu Grover.
© Copyright 2013 STI INNSBRUCK
MongoDB is a database management system designed for web applications and internet infrastructure. The data model and persistence strategies are built.
Introduction to MongoDB
CMPE 226 Database Systems October 21 Class Meeting Department of Computer Engineering San Jose State University Fall 2015 Instructor: Ron Mak
Lecture 8: Databases and Data Infrastructure CS 6071 Big Data Engineering, Architecture, and Security Fall 2015, Dr. Rozier.
NOSQL Implementation and examples Maciej Matuszewski.
CS525: Big Data Analytics MapReduce Computing Paradigm & Apache Hadoop Open Source Fall 2013 Elke A. Rundensteiner 1.
Dynamo: Amazon’s Highly Available Key-value Store DAAS – Database as a service.
NoSQL Or Peles. What is NoSQL A collection of various technologies meant to work around RDBMS limitations (mostly performance) Not much of a definition...
NOSQL DATABASE Not Only SQL DATABASE
Grid Technology CERN IT Department CH-1211 Geneva 23 Switzerland t DBCF GT IT Monitoring WG Technology for Storage/Analysis 28 November 2011.
NoSQL: Graph Databases. Databases Why NoSQL Databases?
Data and Information Systems Laboratory University of Illinois Urbana-Champaign Data Mining Meeting Mar, From SQL to NoSQL Xiao Yu Mar 2012.
NoSQL databases A brief introduction NoSQL databases1.
Introduction to Core Database Concepts Getting started with Databases and Structure Query Language (SQL)
Context Aware RBAC Model For Wearable Devices And NoSQL Databases Amit Bansal Siddharth Pathak Vijendra Rana Vishal Shah Guided By: Dr. Csilla Farkas Associate.
Department of Computer Science, Johns Hopkins University EN Instructor: Randal Burns 24 September 2013 NoSQL Data Models and Systems.
Group members: Phạm Hoàng Long Nguyễn Huy Hùng Lê Minh Hiếu Phan Thị Thanh Thảo Nguyễn Đức Trí 1 BIG DATA & NoSQL Topic 1:
Abstract MarkLogic Database – Only Enterprise NoSQL DB Aashi Rastogi, Sanket V. Patel Department of Computer Science University of Bridgeport, Bridgeport,
Fault – Tolerant Distributed Multimedia Streaming Web Application By Nirvan Sagar – Srishti Ganjoo – Syed Shahbaaz Safir
Why NO-SQL ?  Three interrelated megatrends  Big Data  Big Users  Cloud Computing are driving the adoption of NoSQL technology.
Oracle Database Native Sharding: a customer perspective ©2016 PayPal Inc. Confidential and proprietary. John Kanagaraj, Sr. Member of Technical Staff,
CMPE Database Systems Workshop June 14 Class Meeting
2 Phase Commit Protocol In transaction processing, databases, and computer networking, the two-phase commit protocol (2PC) is a type of atomic commitment.
NO SQL for SQL DBA Dilip Nayak & Dan Hess.
and Big Data Storage Systems
CSE 775 – Distributed Objects Bekir Turkkan & Habib Kaya
Introduction In the computing system (web and business applications), there are enormous data that comes out every day from the web. A large section of.
MongoDB Er. Shiva K. Shrestha ME Computer, NCIT
Modern Databases NoSQL and NewSQL
NOSQL.
CMPE 280 Web UI Design and Development October 17 Class Meeting
NOSQL databases and Big Data Storage Systems
Storage Systems for Managing Voluminous Data
Massively Parallel Cloud Data Storage Systems
1 Demand of your DB is changing Presented By: Ashwani Kumar
NoSQL Databases Antonino Virgillito.
CMPE 280 Web UI Design and Development October 18 Class Meeting
April 13th – Semi-structured data
relational thoughts on NoSql
CMPE 280 Web UI Design and Development March 14 Class Meeting
NoSQL databases An introduction and comparison between Mongodb and Mysql document store.
Presentation transcript:

CMPE 226 Database Systems May 3 Class Meeting Department of Computer Engineering San Jose State University Spring 2016 Instructor: Ron Mak

Computer Engineering Dept. Spring 2016: May 3 CMPE 226: Database Systems © R. Mak Final Two Weeks  May 3 Lecture on NoSQL databases. Project team presentations:  Team Goat  Varchars  Byteme!  Code Blooded  Data Crunchers  Data Minions  May 10 Guest lecture by Dr. Patricia Selinger. Project team presentations:  Floating Points  Mavericks  MongoBoys  Pavona  Query Breakerz 2

Computer Engineering Dept. Spring 2016: May 3 CMPE 226: Database Systems © R. Mak Dilbert Cartoon 3

Computer Engineering Dept. Spring 2016: May 3 CMPE 226: Database Systems © R. Mak NoSQL  “Not only SQL”  A mechanism to store and retrieve data that using a model other than the tabular relations used in relational databases. 4

Computer Engineering Dept. Spring 2016: May 3 CMPE 226: Database Systems © R. Mak NoSQL Benefits  Simpler design. Object-oriented programming that is easier to use and more flexible.  More scalable and better performance than relational databases for certain applications. Large volumes of rapidly changing structured, semi-structured, and unstructured data.  More suitable for agile development. Agile sprints, quick schema iteration, and frequent code pushes. 5

Computer Engineering Dept. Spring 2016: May 3 CMPE 226: Database Systems © R. Mak NoSQL Benefits, cont’d  Finer control over data availability.  Geographically distributed scale-out architecture instead of an expensive, monolithic architecture. scale-out: add more nodes to a distributed system 6

Computer Engineering Dept. Spring 2016: May 3 CMPE 226: Database Systems © R. Mak Types of NoSQL Databases 7

Computer Engineering Dept. Spring 2016: May 3 CMPE 226: Database Systems © R. Mak Types of NoSQL Databases, cont’d  Key-value stores The simplest NoSQL databases. Every single item in the database is stored as an attribute name (or “key”), together with its value. Some key-value stores allow each value to have a type, such as integer, which adds functionality. Store session information, user profiles, shopping cart data, etc. Examples: Riak, Berkeley DB and Redis. 8

Computer Engineering Dept. Spring 2016: May 3 CMPE 226: Database Systems © R. Mak Types of NoSQL Databases, cont’d 9 Key-value store

Computer Engineering Dept. Spring 2016: May 3 CMPE 226: Database Systems © R. Mak Types of NoSQL Databases, cont’d  Graph stores Store information about connected data, such as social networks, spatial data, routing information for goods and money, recommendation engines, etc. Examples: Neo4J and Giraph 10

Computer Engineering Dept. Spring 2016: May 3 CMPE 226: Database Systems © R. Mak Types of NoSQL Databases, cont’d 11 Graph store

Computer Engineering Dept. Spring 2016: May 3 CMPE 226: Database Systems © R. Mak Types of NoSQL Databases, cont’d  Wide-column stores Optimized for queries over large datasets. Store columns of data together, instead of rows. The number of columns and the format of the data in a column can vary from row to row. Useful for content management systems, blogging platforms, etc. Examples: Apache Cassandra and Apache HBase 12

Computer Engineering Dept. Spring 2016: May 3 CMPE 226: Database Systems © R. Mak Types of NoSQL Databases, cont’d 13 Wide-column store

Computer Engineering Dept. Spring 2016: May 3 CMPE 226: Database Systems © R. Mak Types of NoSQL Databases, cont’d  Document databases Pair each key with a complex data structure called a document. Documents can contain many different key-value pairs, or key-array pairs, or even nested documents. Useful for content management systems, blogging platforms, web analytics, real-time analytics, ecommerce-applications, etc. Example: MongoDB 14

Computer Engineering Dept. Spring 2016: May 3 CMPE 226: Database Systems © R. Mak Types of NoSQL Databases, cont’d 15 Document database

Computer Engineering Dept. Spring 2016: May 3 CMPE 226: Database Systems © R. Mak Types of NoSQL Databases, cont’d 16

Computer Engineering Dept. Spring 2016: May 3 CMPE 226: Database Systems © R. Mak NoSQL Agile Development  Unlike relational databases, NoSQL does not require schemas to be defined in advance. No database downtime to update a schema.  NoSQL can effectively address data that’s completely unstructured or unknown in advance. Insert data without a predefined schema.  Apply validation rules within the database. Enforce governance across data. Maintain the agility benefits of a dynamic schema. 17

Computer Engineering Dept. Spring 2016: May 3 CMPE 226: Database Systems © R. Mak Scalability  Scale-up Relational databases scale vertically. Increase the database server’s capabilities in order to increase performance.  Scale-out Scale horizontally to support rapidly growing applications by adding more servers. NoSQL databases support auto-sharding. 18

Computer Engineering Dept. Spring 2016: May 3 CMPE 226: Database Systems © R. Mak Auto-Sharding  NoSQL databases natively and automatically spread data across an arbitrary number of servers.  Applications do not need to be aware of the composition of the server pool.  Data and query load are automatically balanced across servers.  When a server goes down, it can be quickly and transparently replaced with no application disruption. 19

Computer Engineering Dept. Spring 2016: May 3 CMPE 226: Database Systems © R. Mak Cloud Computing  Auto-sharding works well with cloud computing.  Example: Amazon Web Services Provides virtually unlimited capacity on demand. Takes care of all the necessary infrastructure administration tasks. Developers no longer need to construct complex, expensive platforms to support their applications. 20

Computer Engineering Dept. Spring 2016: May 3 CMPE 226: Database Systems © R. Mak NoSQL Data Replication  Automatic database replication maintains availability in the event of outages or planned maintenance events. Automated failover and recovery.  Distribute the database across multiple geographic regions to withstand regional failures and enable data localization. No requirement for separate applications or expensive add-ons to implement replication. 21

Computer Engineering Dept. Spring 2016: May 3 CMPE 226: Database Systems © R. Mak NoSQL Data Caching  Integrated caching capabilities. Keep frequently-used data in system memory as much as possible. No need for a separate caching layer.  Available fully managed, integrated in-memory database management layer. Support workloads that demand the highest throughput and lowest latency. 22

Computer Engineering Dept. Spring 2016: May 3 CMPE 226: Database Systems © R. Mak CAP Theorem  Consistency All nodes of a distributed system see the same data at the same time.  Availability A guarantee that every request gets a response whether the request succeeded or failed.  Partition tolerance The system continues to operate despite arbitrary network partitioning (splitting) due to device failures. 23

Computer Engineering Dept. Spring 2016: May 3 CMPE 226: Database Systems © R. Mak CAP Theorem, cont’d  Consistency, availability, partition tolerance: You can only choose two out of three. Different NoSQL databases emphasize different pairs. 24

Computer Engineering Dept. Spring 2016: May 3 CMPE 226: Database Systems © R. Mak SQL vs. NoSQL 25 SQLNoSQL TypesSQL databaseKey-value, graph, wide-column, document Development historyEarly 1970sLate 2000s Data modelRelationalVarious SchemasFixedDynamic ScalingVerticalHorizontal Development modelMix of closed- and open-source Open-source Transaction supportYesAt certain levels (e.g., document vs. database) depending on the application Data manipulationVia SQL languageVia object-oriented API ConsistencyCan be strongDepends on the database product

Computer Engineering Dept. Spring 2016: May 3 CMPE 226: Database Systems © R. Mak MongoDB  Scalable  High performance  Open-source  Document-oriented  Schema-free 26

Computer Engineering Dept. Spring 2016: May 3 CMPE 226: Database Systems © R. Mak MongoDB Features  Horizontal scaling  Indexing  Replication/failover support  Documents are stored in BSON (binary JSON) Binary serialization of JSON-like object Import or query any valid JSON object.  Query syntax based on JavaScript. 27

Computer Engineering Dept. Spring 2016: May 3 CMPE 226: Database Systems © R. Mak MongoDB Documents and Collections  Documents are analogous to records of a relational database. JSON objects stored in a binary format.  Collections are analogous to relational tables.  A MongoDB query returns a cursor instead of records. 28

Computer Engineering Dept. Spring 2016: May 3 CMPE 226: Database Systems © R. Mak MongoDB Cursor  A query returns a cursor. Use to iterate through a result set.  Better performance. More efficient than loading all the objects into memory. 29