Introducing: MongoDB. David J. C. Beach
|
|
- Polly Jenkins
- 6 years ago
- Views:
Transcription
1 Introducing: MongoDB David J. C. Beach
2 David Beach Software Consultant (past 6 years) Python since v1.4 (late 90 s) Design, Algorithms, Data Structures Sometimes Database stuff not a frameworks guy Organizer: Front Range Pythoneers
3 Outline Part I: Trends in Databases Part II: Mongo Basic Usage Part III: Advanced Features
4 Part I: Trends in Databases
5 Database Trends Past: Relational (RDBMS) WARNING: extreme oversimplification Data stored in Tables, Rows, Columns Relationships designated by Primary, Foreign keys Data is controlled & queried via SQL
6 Trends: Criticisms of RDBMS Rigid data model Hard to scale / distribute Slow (transactions, disk seeks) Lots of disagreement over this There are points & counterpoints from both sides The debate is not over Not here to deliver a verdict POINT: This is why we see an explosion of new databases. SQL not well standardized Awkward for modern/dynamic languages
7 As with so many things in technology, we re seeing... FRAGMENTATION! Trends: Fragmentation some examples of DB categories Relational with ORM (Hibernate, SQLAlchemy) ODBMS / ORDBMS (push OO-concepts into database) Key-Value Stores (MemcacheDB, Redis, Cassandra) Graph (neo4j) Document Oriented (Mongo, Couch, etc...) categories are incomplete some don t fit neatly into categories
8 Where Mongo Fits Mongo s Tagline (taken from website) The Best Features of Document Databases, Key-Value Stores, and RDBMSes.
9 What is Mongo Document-Oriented Database Produced by 10gen / Implemented in C++ Source Code Available Runs on Linux, Mac, Windows, Solaris Database: GNU AGPL v3.0 License Drivers: Apache License v2.0
10 Mongo many of these taken straight from home page Advantages json-style documents (dynamic schemas) flexible indexing (B-Tree) replication and highavailability (HA) automatic sharding support (v1.6)* fast queries (auto-tuning planner) fast insert & deletes (sometimes trade-offs) sharding support available as of v1.6 (late July 2010) easy-to-use API
11 Mongo Language Bindings C, C++, Java Python, Ruby, Perl PHP, JavaScript (many more community supported ones)
12 Mongo Disadvantages No Relational Model / SQL No Explicit Transactions / ACID Limited Query API Can mimic with foreign IDs, but referential integrity not enforced. Operations can only be atomic within single collection. (Generally) You can do a lot more with MapReduce and JavaScript!
13 When to use Mongo My personal take on this... Rich semistructured records (Documents) Transaction isolation not essential Humongous amounts of data Need for extreme speed You hate schema migrations Caveat: I ve never used Mongo in Production!
14 Part II: Mongo Basic Usage BRIEFLY cover: - Download, Install, Configure - connection, creating DB, creating Collection - CRUD operations (Insert, Query, Update, Delete)
15 Installing Mongo Use a 64-bit OS (Linux, Mac, Windows) Get Binaries: Run mongod process 32-bit available; not for production PyMongo uses memory-mapped files. 32-bits limits database to 2 GB!
16 Installing PyMongo Download: Build with setuptools (includes C extension for speed) # python setup.py install # python setup.py --no-ext install (to compile without extension)
17 Mongo Anatomy Mongo Server Database Collection Document
18 Getting a Connection Connection required for using Mongo >>> import pymongo >>> connection = pymongo.connection( localhost )
19 Finding a Database Databases = logically separate stores Navigation using properties Will create DB if not found >>> db = connection.mydatabase
20 Using a Collection Collection is analogous to Table Contains documents Will create collection if not found >>> blog = db.blog
21 Inserting collection.insert(document) => document_id >>> entry1 = { title : Mongo Tutorial, body : Here s a document to insert. } >>> blog.insert(entry1) ObjectId('4c3a12eb1d41c ') document
22 Inserting (contd.) Documents must have _id field Automatically generated unless assigned 12-byte unique binary value You can also assign your own _id, can be any unique value. >>> entry1 {'_id': ObjectId('4c3a12eb1d41c '), 'body': "Here's a document to insert.", 'title': 'Mongo Tutorial'} Mongo s IDs are designed to be unique... ID generated by driver. No waiting on DB....even if hundreds of thousands of documents are generated per second, on numerous clustered machines.
23 Inserting (contd.) Documents may have different properties Properties may be atomic, lists, dictionaries >>> entry2 = {"title": "Another Post", "body": "Mongo is powerful", "author": "David", "tags": ["Mongo", "Power"]} >>> blog.insert(entry2) ObjectId('4c3a1a501d41c ') another document
24 Indexing May create index on any field If field is list => index associates all values index by single value >>> blog.ensure_index( author ) >>> blog.ensure_index( tags ) by multiple values
25 Bulk Insert Let s produce 100,000 fake posts bulk_entries = [ ] for i in range(100000): entry = { "title": "Bulk Entry #%i" % (i+1), "body": "What Content!", "author": random.choice(["david", "Robot"]), "tags": ["bulk", random.choice(["red", "Blue", "Green"])] } bulk_entries.append(entry)
26 Bulk Insert (contd.) collection.insert(list_of_documents) Inserts 100,000 entries into blog Returns in 2.11 seconds >>> blog.insert(bulk_entries) [ObjectId(...), ObjectId(...),...]
27 Bulk Insert (contd.) returns in 7.90 seconds (vs seconds) driver returns early; DB is still working...unless you specify safe=true >>> blog.remove() # clear everything >>> blog.insert(bulk_entries, safe=true)
28 Querying collection.find_one(spec) => document spec = document of query parameters >>> blog.find_one({ title : Bulk Entry #12253 }) {u'_id': ObjectId('4c3a1e411d41c a89'), u'author': u'robot', u'body': u'what Content!', u'tags': [u'bulk', u'green'], u'title': u'bulk Entry #99999'} returned in 0.04s - extremely fast No index created for title! presumably, need more entries to effectively test index performance...
29 Querying (Specs) Multiple conditions on document => AND Value for tags is an ANY match >>> blog.find_one({ title : Bulk Entry #12253, tags : Green }) {u'_id': ObjectId('4c3a1e411d41c a89'), u'author': u'robot', u'body': u'what Content!', u'tags': [u'bulk', u'green'], u'title': u'bulk Entry #99999'} presumably, need more entries to effectively test index performance...
30 Querying (Multiple) collection.find(spec) => cursor new items are fetched in bulk (behind the scenes) >>> green_items = [ ] >>> for item in blog.find({ tags : Green }): green_items.append(item) - or - >>> green_items = list(blog.find({ tags : Green }))
31 Querying (Counting) Use the find() method + count() Returns number of matches found >>> blog.find({"tags": "Green"}).count() presumably, need more entries to effectively test index performance...
32 Updating collection.update(spec, document) updates single document matching spec multi=true => updates all matching docs >>> item = blog.find_one({ title : Bulk Entry #12253 }) >>> item.tags.append( New ) >>> blog.update({ _id : item[ _id ]}, item)
33 Deleting use remove(...) it works like find(...) >>> blog.remove({"author":"robot"}, safe=true) Example removed approximately 50% of records. Took 2.48 seconds
34 Part III: Advanced Features
35 Advanced Querying Regular Expressions { tag : re.compile(r ^Green Blue$ )} Nested Values { foo.bar.x : 3} $where Clause (JavaScript)
36 Advanced Querying $lt, $gt, $lte, $gte, $ne $in, $nin, $mod, $all, $size, $exists, $type $or, $not $elemmatch >>> blog.find({ $or : [{ tags : Green }, { tags : Blue }]})
37 Advanced Querying collection.find(...) sort( name ) - sorting limit(...) & skip(...) [like LIMIT & OFFSET] distinct(...) [like SQL s DISTINCT] collection.group(...) - like SQL s GROUP BY won t be showing detailed examples of all these... there are good tutorials online for all of this >>> blog.find().limit(50) # find 50 articles >>> blog.find().sort( title ).limit(30) # 30 titles >>> blog.find().distinct( author ) # unique author more interesting names let s move on to something even
38 Map/Reduce Most powerful querying mechanism collection.map_reduce(mapper, reducer) ultimate in querying power distribute across multiple nodes
39 Map/Reduce Visualized Figure 2-1. MapReduce logical data flow also see: Map/Reduce : A Visual Explanation Diagram Credit: Hadoop: The Definitive Guide by Tom White; O Reilly Books Chapter 2, page 20
40 19OPQ A*2=*LR SELECT Dim1, Dim2, SUM(Measure1) AS MSum, COUNT(*) AS RecordCount, AVG(Measure2) AS MAvg, MIN(Measure1) AS MMin MAX(CASE WHEN Measure2 < 100 THEN Measure2 END) AS MMax FROM DenormAggTable WHERE (Filter1 IN ( A, B )) AND (Filter2 = C ) AND (Filter3 > 123) GROUP BY Dim1, Dim2 HAVING (MMin > 0) ORDER BY RecordCount DESC LIMIT 4, 8! " # $ % ' & ()*+,-./ *2/4*5+123/6)-/,+55-./ *+7/63/8-93/02/7:-/16,/;+2470*2</ )-.+402=/7:-/30>-/*;/7:-/?*)802=/3-7@ A-63+)-3/1+37/B-/ /6==)-=67-.@ C==)-=67-3/.-,-2.02=/*2/)-4*)./4*+273/ 1+37/?607/+2705/;02650>670*2@ A-63+)-3/462/+3-/,)*4-.+)65/5*=04@ D057-)3/:6E-/62/FGAHC470E-G-4*).I 5**802=/3795-@ C==)-=67-/;057-)02=/1+37/B-/6,,50-./7*/ 7:-/)-3+57/3-7</2*7/02/7:-/16,H)-.+4-@ C =J/!K/L =J/I!! " # $ %! & ' db.runcommand({ mapreduce: "DenormAggCollection", query: { filter1: { '$in': [ 'A', 'B' ] }, filter2: 'C', filter3: { '$gt': 123 } }, map: function() { emit( { d1: this.dim1, d2: this.dim2 }, { msum: this.measure1, recs: 1, mmin: this.measure1, mmax: this.measure2 < 100? this.measure2 : 0 } );}, reduce: function(key, vals) { var ret = { msum: 0, recs: 0, mmin: 0, mmax: 0 }; for(var i = 0; i < vals.length; i++) { ret.msum += vals[i].msum; ret.recs += vals[i].recs; if(vals[i].mmin < ret.mmin) ret.mmin = vals[i].mmin; if((vals[i].mmax < 100) && (vals[i].mmax > ret.mmax)) ret.mmax = vals[i].mmax; } return ret; }, finalize: function(key, val) { val.mavg = val.msum / val.recs; return val; }, out: 'result1', verbose: true }); db.result1. find({ mmin: { '$gt': 0 } }). sort({ recs: -1 }). skip(4). limit(8); G-E030*2/$</M)-67-./"N!NIN#IN' G048/F3B*)2-</)048*3B*)2-@*)=
41 Map/Reduce Examples This is me, playing with Map/Reduce
42 Health Clinic Example Person registers with the Clinic Weighs in on the scale 1 year => comes in 100 times
43 Health Clinic Example person = { name : Bob,! weighings : [!! { date : date(2009, 1, 15), weight : 165.0},!! { date : date(2009, 2, 12), weight : 163.2},!!... ] }
44 Map/Reduce Insert Script for i in range(n): person = { 'name': 'person%04i' % i } weighings = person['weighings'] = [ ] std_weight = random.uniform(100, 200) for w in range(100): date = (datetime.datetime(2009, 1, 1) + datetime.timedelta( days=random.randint(0, 365)) weight = random.normalvariate(std_weight, 5.0) weighings.append({ 'date': date, 'weight': weight }) weighings.sort(key=lambda x: x['date']) all_people.append(person)
45 Insert Data LOG-LOG scale Linear scaling Performance Insert s s s 1k 10k 100k
46 Map/Reduce Total Weight by Day map_fn = Code("""function () { this.weighings.foreach(function(z) { emit(z.date, z.weight); }); }""") reduce_fn = Code("""function (key, values) { var total = 0; for (var i = 0; i < values.length; i++) { total += values[i]; } return total; }""") result = people.map_reduce(map_fn, reduce_fn)
47 Map/Reduce Total Weight by Day >>> for doc in result.find(): print doc {u'_id': datetime.datetime(2009, 1, 1, 0, 0), u'value': } {u'_id': datetime.datetime(2009, 1, 2, 0, 0), u'value': } {u'_id': datetime.datetime(2009, 1, 3, 0, 0), u'value': }... lots more...
48 Total Weight by Day Performance MapReduce s s s 1 1k 10k 100k
49 Map/Reduce Weight on Day map_fn = Code("""function () { var target_date = new Date(2009, 9, 5); var pos = bsearch(this.weighings, "date", target_date); var recent = this.weighings[pos]; emit(this._id, { name: this.name, date: recent.date, weight: recent.weight }); };""") reduce_fn = Code("""function (key, values) { return values[0]; };""") result = people.map_reduce(map_fn, reduce_fn, scope={"bsearch": bsearch})
50 Map/Reduce bsearch() function bsearch = Code("""function(array, prop, value) { var min, max, mid, midval; for(min = 0, max = array.length - 1; min <= max; ) { mid = min + Math.floor((max - min) / 2); midval = array[mid][prop]; if(value === midval) { break; } else if(value > midval) { min = mid + 1; } else { max = mid - 1; } } return (midval > value)? mid - 1 : mid; };""")
51 Weight on Day Performance 1000 MapReduce s 10 10s s 1k 10k 100k
52 Weight on Day (Python Version) target_date = datetime.datetime(2009, 10, 5) for person in people.find(): dates = [ w['date'] for w in person['weighings'] ] pos = bisect.bisect_right(dates, target_date) val = person['weighings'][pos]
53 Map/Reduce Performance 1000 MapReduce Python s 108s 26s s 2.2s s 1k 10k 100k
54 Summary
55 Resources PyMongo api.mongodb.org/python MongoDB The Definitive Guide O Reilly
56 END OF SLIDES
57 Chalkboard is not Comic Sans This is Chalkboard, not Comic Sans. This isn t Chalkboard, it s Comic Sans. does it matter, anyway?
Document Object Storage with MongoDB
Document Object Storage with MongoDB Lecture BigData Analytics Julian M. Kunkel julian.kunkel@googlemail.com University of Hamburg / German Climate Computing Center (DKRZ) 2017-12-15 Disclaimer: Big Data
More informationMongoDB. Kristina Chodorow September 8 th, 2009
MongoDB Kristina Chodorow September 8 th, 2009 Who am I? Software Engineer at 10gen Java, Perl, PHP, drivers Technique #1: literally scale Technique #1: literally scale (Courtesy of Ask Bjorn Hansen)
More informationNOSQL EGCO321 DATABASE SYSTEMS KANAT POOLSAWASD DEPARTMENT OF COMPUTER ENGINEERING MAHIDOL UNIVERSITY
NOSQL EGCO321 DATABASE SYSTEMS KANAT POOLSAWASD DEPARTMENT OF COMPUTER ENGINEERING MAHIDOL UNIVERSITY WHAT IS NOSQL? Stands for No-SQL or Not Only SQL. Class of non-relational data storage systems E.g.
More informationDocument Databases: MongoDB
NDBI040: Big Data Management and NoSQL Databases hp://www.ksi.mff.cuni.cz/~svoboda/courses/171-ndbi040/ Lecture 9 Document Databases: MongoDB Marn Svoboda svoboda@ksi.mff.cuni.cz 28. 11. 2017 Charles University
More informationCIB Session 12th NoSQL Databases Structures
CIB Session 12th NoSQL Databases Structures By: Shahab Safaee & Morteza Zahedi Software Engineering PhD Email: safaee.shx@gmail.com, morteza.zahedi.a@gmail.com cibtrc.ir cibtrc cibtrc 2 Agenda What is
More informationMongoDB. History. mongodb = Humongous DB. Open-source Document-based High performance, high availability Automatic scaling C-P on CAP.
#mongodb MongoDB Modified from slides provided by S. Parikh, A. Im, G. Cai, H. Tunc, J. Stevens, Y. Barve, S. Hei History mongodb = Humongous DB Open-source Document-based High performance, high availability
More informationMongoDB An Overview. 21-Oct Socrates
MongoDB An Overview 21-Oct-2016 Socrates Agenda What is NoSQL DB? Types of NoSQL DBs DBMS and MongoDB Comparison Why MongoDB? MongoDB Architecture Storage Engines Data Model Query Language Security Data
More informationMongoDB Tutorial for Beginners
MongoDB Tutorial for Beginners Mongodb is a document-oriented NoSQL database used for high volume data storage. In this tutorial you will learn how Mongodb can be accessed and some of its important features
More informationOpen source, high performance database. July 2012
Open source, high performance database July 2012 1 Quick introduction to mongodb Data modeling in mongodb, queries, geospatial, updates and map reduce. Using a location-based app as an example Example
More informationNoSQL DBs and MongoDB DATA SCIENCE BOOTCAMP
NoSQL DBs and MongoDB DATA SCIENCE BOOTCAMP Terminology DBMS: Database management system So;ware which controls the storage, retrieval, dele:on, security, and integrity of data within the database Examples:
More informationHigh Performance NoSQL with MongoDB
High Performance NoSQL with MongoDB History of NoSQL June 11th, 2009, San Francisco, USA Johan Oskarsson (from http://last.fm/) organized a meetup to discuss advances in data storage which were all using
More informationAdvanced Database Project: Document Stores and MongoDB
Advanced Database Project: Document Stores and MongoDB Sivaporn Homvanish (0472422) Tzu-Man Wu (0475596) Table of contents Background 3 Introduction of Database Management System 3 SQL vs NoSQL 3 Document
More informationCourse Content MongoDB
Course Content MongoDB 1. Course introduction and mongodb Essentials (basics) 2. Introduction to NoSQL databases What is NoSQL? Why NoSQL? Difference Between RDBMS and NoSQL Databases Benefits of NoSQL
More informationOPEN SOURCE DB SYSTEMS TYPES OF DBMS
OPEN SOURCE DB SYSTEMS Anna Topol 1 TYPES OF DBMS Relational Key-Value Document-oriented Graph 2 DBMS SELECTION Multi-platform or platform-agnostic Offers persistent storage Fairly well known Actively
More informationCassandra, MongoDB, and HBase. Cassandra, MongoDB, and HBase. I have chosen these three due to their recent
Tanton Jeppson CS 401R Lab 3 Cassandra, MongoDB, and HBase Introduction For my report I have chosen to take a deeper look at 3 NoSQL database systems: Cassandra, MongoDB, and HBase. I have chosen these
More informationThe course modules of MongoDB developer and administrator online certification training:
The course modules of MongoDB developer and administrator online certification training: 1 An Overview of the Course Introduction to the course Table of Contents Course Objectives Course Overview Value
More informationCSE 530A. Non-Relational Databases. Washington University Fall 2013
CSE 530A Non-Relational Databases Washington University Fall 2013 NoSQL "NoSQL" was originally the name of a specific RDBMS project that did not use a SQL interface Was co-opted years later to refer to
More informationMongoDB Schema Design for. David Murphy MongoDB Practice Manager - Percona
MongoDB Schema Design for the Click "Dynamic to edit Master Schema" title World style David Murphy MongoDB Practice Manager - Percona Who is this Person and What Does He Know? Former MongoDB Master Former
More informationdinner in the sky with
dinner in the sky with @marcboeker boarding MongoDB MongoDB freebie Document-orientated Storage Document-orientated Storage JSON-Style Documents Document-orientated Storage JSON-Style Documents Scales
More informationRethinkDB. Niharika Vithala, Deepan Sekar, Aidan Pace, and Chang Xu
RethinkDB Niharika Vithala, Deepan Sekar, Aidan Pace, and Chang Xu Content Introduction System Features Data Model ReQL Applications Introduction Niharika Vithala What is a NoSQL Database Databases that
More informationIndex everything One query type Low latency High concurrency. Index nothing Queries as programs High latency Low concurrency
SCHEMA ON READ Index everything One query type Low latency High concurrency Index nothing Queries as programs High latency Low concurrency Index everything One query type Low latency High concurrency Index
More informationDatabase Solution in Cloud Computing
Database Solution in Cloud Computing CERC liji@cnic.cn Outline Cloud Computing Database Solution Our Experiences in Database Cloud Computing SaaS Software as a Service PaaS Platform as a Service IaaS Infrastructure
More informationMongoDB. copyright 2011 Trainologic LTD
MongoDB MongoDB MongoDB is a document-based open-source DB. Developed and supported by 10gen. MongoDB is written in C++. The name originated from the word: humongous. Is used in production at: Disney,
More informationMongoDB w/ Some Node.JS Sprinkles
MongoDB w/ Some Node.JS Sprinkles Niall O'Higgins Author MongoDB and Python O'Reilly @niallohiggins on Twitter niallo@beyondfog.com MongoDB Overview Non-relational (NoSQL) document-oriented database Rich
More informationIntroduction to Big Data. NoSQL Databases. Instituto Politécnico de Tomar. Ricardo Campos
Instituto Politécnico de Tomar Introduction to Big Data NoSQL Databases Ricardo Campos Mestrado EI-IC Análise e Processamento de Grandes Volumes de Dados Tomar, Portugal, 2016 Part of the slides used in
More informationCOMP9321 Web Application Engineering
COMP9321 Web Application Engineering Semester 2, 2015 Dr. Amin Beheshti Service Oriented Computing Group, CSE, UNSW Australia Week 6 http://webapps.cse.unsw.edu.au/webcms2/course/index.php?cid=2411 1 We
More informationMongoDB. An introduction and performance analysis. by Rico Suter
MongoDB An introduction and performance analysis by Rico Suter Contents What is MongoDB Features Queries Performance Conclusion What is MongoDB Databases Collections Documents JSON structured MongoDB Database
More informationMongoDB Step By Step. By B.A.Khivsara Assistant Professor Department of Computer Engineering SNJB s COE,Chandwad
MongoDB Step By Step By B.A.Khivsara Assistant Professor Department of Computer Engineering SNJB s COE,Chandwad Outline Introduction to MongoDB Installation in Ubuntu Starting MongoDB in Ubuntu Basic Operations
More informationYandex.Classifieds. Vadim Tsesko
YoctoDB @ Yandex.Classifieds Vadim Tsesko incubos@ About Backend infrastructure team Services Libraries Frameworks @ Yandex.Classifieds auto.ru auto.yandex.ru rabota.yandex.ru realty.yandex.ru travel.yandex.ru
More informationMongoDB. Nicolas Travers Conservatoire National des Arts et Métiers. MongoDB
Nicolas Travers Conservatoire National des Arts et Métiers 1 Introduction Humongous (monstrous / enormous) NoSQL: Documents Oriented JSon Serialized format: BSon objects Implemented in C++ Keys indexing
More informationGetting to know. by Michelle Darling August 2013
Getting to know by Michelle Darling mdarlingcmt@gmail.com August 2013 Agenda: What is Cassandra? Installation, CQL3 Data Modelling Summary Only 15 min to cover these, so please hold questions til the end,
More informationAdvanced Programming Techniques. Database Systems. Christopher Moretti
Advanced Programming Techniques Database Systems Christopher Moretti History Pre-digital libraries Organized by medium, size, shape, content, metadata Record managers (1800s-1950s) manually- indexed punched
More informationDatabase Architectures
Database Architectures CPS352: Database Systems Simon Miner Gordon College Last Revised: 4/15/15 Agenda Check-in Parallelism and Distributed Databases Technology Research Project Introduction to NoSQL
More informationMongoDB. CSC309 TA: Sukwon Oh
MongoDB CSC309 TA: Sukwon Oh Review SQL declarative language for querying data tells what to find and not how to find Review RDBMS Characteristics Easy to use Complicated to use it right Fixed schema Difficult
More informationUsing the MySQL Document Store
Using the MySQL Document Store Alfredo Kojima, Sr. Software Dev. Manager, MySQL Mike Zinner, Sr. Software Dev. Director, MySQL Safe Harbor Statement The following is intended to outline our general product
More informationTopics. History. Architecture. MongoDB, Mongoose - RDBMS - SQL. - NoSQL
Databases Topics History - RDBMS - SQL Architecture - SQL - NoSQL MongoDB, Mongoose Persistent Data Storage What features do we want in a persistent data storage system? We have been using text files to
More informationIntroduction to NoSQL Databases
Introduction to NoSQL Databases Roman Kern KTI, TU Graz 2017-10-16 Roman Kern (KTI, TU Graz) Dbase2 2017-10-16 1 / 31 Introduction Intro Why NoSQL? Roman Kern (KTI, TU Graz) Dbase2 2017-10-16 2 / 31 Introduction
More informationDATABASE SYSTEMS. Database programming in a web environment. Database System Course, 2016
DATABASE SYSTEMS Database programming in a web environment Database System Course, 2016 AGENDA FOR TODAY Advanced Mysql More than just SELECT Creating tables MySQL optimizations: Storage engines, indexing.
More informationMONGODB INTERVIEW QUESTIONS
MONGODB INTERVIEW QUESTIONS http://www.tutorialspoint.com/mongodb/mongodb_interview_questions.htm Copyright tutorialspoint.com Dear readers, these MongoDB Interview Questions have been designed specially
More informationCISC 7610 Lecture 4 Approaches to multimedia databases. Topics: Document databases Graph databases Metadata Column databases
CISC 7610 Lecture 4 Approaches to multimedia databases Topics: Document databases Graph databases Metadata Column databases NoSQL architectures: different tradeoffs for different workloads Already seen:
More informationCIS 612 Advanced Topics in Database Big Data Project Lawrence Ni, Priya Patil, James Tench
CIS 612 Advanced Topics in Database Big Data Project Lawrence Ni, Priya Patil, James Tench Abstract Implementing a Hadoop-based system for processing big data and doing analytics is a topic which has been
More informationCSE 344 Final Review. August 16 th
CSE 344 Final Review August 16 th Final In class on Friday One sheet of notes, front and back cost formulas also provided Practice exam on web site Good luck! Primary Topics Parallel DBs parallel join
More informationOral Questions and Answers (DBMS LAB) Questions & Answers- DBMS
Questions & Answers- DBMS https://career.guru99.com/top-50-database-interview-questions/ 1) Define Database. A prearranged collection of figures known as data is called database. 2) What is DBMS? Database
More informationMongoTor Documentation
MongoTor Documentation Release 0.1.0 Marcel Nicolat June 11, 2014 Contents 1 Features 3 2 Contents: 5 2.1 Installation................................................ 5 2.2 Tutorial..................................................
More informationIntro to MongoDB. Alex Sharp.
Intro to MongoDB Alex Sharp twitter: @ajsharp email: ajsharp@frothlogic.com So what is MongoDB? First and foremost... IT S THE NEW HOTNESS!!! omgomgomg SHINY OBJECTS omgomgomg MongoDB (from "humongous")
More informationMongoDB - a No SQL Database What you need to know as an Oracle DBA
MongoDB - a No SQL Database What you need to know as an Oracle DBA David Burnham Aims of this Presentation To introduce NoSQL database technology specifically using MongoDB as an example To enable the
More informationPROFESSIONAL. NoSQL. Shashank Tiwari WILEY. John Wiley & Sons, Inc.
PROFESSIONAL NoSQL Shashank Tiwari WILEY John Wiley & Sons, Inc. Examining CONTENTS INTRODUCTION xvil CHAPTER 1: NOSQL: WHAT IT IS AND WHY YOU NEED IT 3 Definition and Introduction 4 Context and a Bit
More informationHigh-Performance Distributed DBMS for Analytics
1 High-Performance Distributed DBMS for Analytics 2 About me Developer, hardware engineering background Head of Analytic Products Department in Yandex jkee@yandex-team.ru 3 About Yandex One of the largest
More informationModule - 17 Lecture - 23 SQL and NoSQL systems. (Refer Slide Time: 00:04)
Introduction to Morden Application Development Dr. Gaurav Raina Prof. Tanmai Gopal Department of Computer Science and Engineering Indian Institute of Technology, Madras Module - 17 Lecture - 23 SQL and
More informationBy Prof. Bhavana A.Khivsara
By Prof. Bhavana A.Khivsara Introduction to MongoDB Installation in Windows Starting MongoDB in Windows Basic Operations CRUD Operations Indexing Aggregation XAMPP Installation PHP-Mongo setting in XAMPP
More informationMongoDB Security Checklist
MongoDB Security Checklist Tim Vaillancourt Sr Technical Operations Architect, Percona Speaker Name `whoami` { name: tim, lastname: vaillancourt, employer: percona, techs: [ mongodb, mysql, cassandra,
More informationKim Greene - Introduction
Kim Greene kim@kimgreene.com 507-216-5632 Skype/Twitter: iseriesdomino Copyright Kim Greene Consulting, Inc. All rights reserved worldwide. 1 Kim Greene - Introduction Owner of an IT consulting company
More informationMEAN Stack. 1. Introduction. 2. Foundation a. The Node.js framework b. Installing Node.js c. Using Node.js to execute scripts
MEAN Stack 1. Introduction 2. Foundation a. The Node.js framework b. Installing Node.js c. Using Node.js to execute scripts 3. Node Projects a. The Node Package Manager b. Creating a project c. The package.json
More informationVoldemort. Smruti R. Sarangi. Department of Computer Science Indian Institute of Technology New Delhi, India. Overview Design Evaluation
Voldemort Smruti R. Sarangi Department of Computer Science Indian Institute of Technology New Delhi, India Smruti R. Sarangi Leader Election 1/29 Outline 1 2 3 Smruti R. Sarangi Leader Election 2/29 Data
More informationNoSQL systems. Lecture 21 (optional) Instructor: Sudeepa Roy. CompSci 516 Data Intensive Computing Systems
CompSci 516 Data Intensive Computing Systems Lecture 21 (optional) NoSQL systems Instructor: Sudeepa Roy Duke CS, Spring 2016 CompSci 516: Data Intensive Computing Systems 1 Key- Value Stores Duke CS,
More informationHustle Documentation. Release 0.1. Tim Spurway
Hustle Documentation Release 0.1 Tim Spurway February 26, 2014 Contents 1 Features 3 2 Getting started 5 2.1 Installing Hustle............................................. 5 2.2 Hustle Tutorial..............................................
More informationDownload Studio 3T from
Download Studio 3T from https://studio3t.com/download/ Request a student license from the company. Expect email with a license key from the company. Start up Studio 3T. In Studio 3T go to Help > License
More informationBrad Dayley. Sams Teach Yourself. NoSQL with MongoDB. SAMS 800 East 96th Street, Indianapolis, Indiana, USA
Brad Dayley Sams Teach Yourself NoSQL with MongoDB SAMS 800 East 96th Street, Indianapolis, Indiana, 46240 USA Table of Contents Introduction 1 How This Book Is Organized 1 Code Examples 2 Special Elements
More informationGroup13: Siddhant Deshmukh, Sudeep Rege, Sharmila Prakash, Dhanusha Varik
Group13: Siddhant Deshmukh, Sudeep Rege, Sharmila Prakash, Dhanusha Varik mongodb (humongous) Introduction What is MongoDB? Why MongoDB? MongoDB Terminology Why Not MongoDB? What is MongoDB? DOCUMENT STORE
More informationDATABASES SQL INFOTEK SOLUTIONS TEAM
DATABASES SQL INFOTEK SOLUTIONS TEAM TRAINING@INFOTEK-SOLUTIONS.COM Databases 1. Introduction in databases 2. Relational databases (SQL databases) 3. Database management system (DBMS) 4. Database design
More informationICALEPS 2013 Exploring No-SQL Alternatives for ALMA Monitoring System ADC
ICALEPS 2013 Exploring No-SQL Alternatives for ALMA Monitoring System Overview The current paradigm (CCL and Relational DataBase) Propose of a new monitor data system using NoSQL Monitoring Storage Requirements
More informationDistributed Databases: SQL vs NoSQL
Distributed Databases: SQL vs NoSQL Seda Unal, Yuchen Zheng April 23, 2017 1 Introduction Distributed databases have become increasingly popular in the era of big data because of their advantages over
More informationMongoDB 2.2 and Big Data
MongoDB 2.2 and Big Data Christian Kvalheim Team Lead Engineering, EMEA christkv@10gen.com @christkv christiankvalheim.com From here... http://bit.ly/ot71m4 ...to here... http://bit.ly/oxcsis ...without
More informationMongoDB Schema Design
MongoDB Schema Design Demystifying document structures in MongoDB Jon Tobin @jontobs MongoDB Overview NoSQL Document Oriented DB Dynamic Schema HA/Sharding Built In Simple async replication setup Automated
More informationScaling for Humongous amounts of data with MongoDB
Scaling for Humongous amounts of data with MongoDB Alvin Richards Technical Director, EMEA alvin@10gen.com @jonnyeight alvinonmongodb.com From here... http://bit.ly/ot71m4 ...to here... http://bit.ly/oxcsis
More informationOutline for today. Introduction to NoSQL. MongoDB. Architecture. NoSQL Assumptions and the CAP Theorem Strengths and weaknesses of NoSQL
Outline for today Introduction to NoSQL Architecture Sharding Replica sets NoSQL Assumptions and the CAP Theorem Strengths and weaknesses of NoSQL MongoDB Functionality Examples 2 Taxonomy of NoSQL Key-value
More informationMySQL Document Store. How to replace a NoSQL database by MySQL without effort but with a lot of gains?
1 / 71 2 / 71 3 / 71 MySQL Document Store How to replace a NoSQL database by MySQL without effort but with a lot of gains? Percona University, Ghent, Belgium June 2017 Frédéric Descamps - MySQL Community
More informationOnline Multimedia Winter semester 2015/16
Multimedia im Netz Online Multimedia Winter semester 2015/16 Tutorial 09 Major Subject Ludwig-Maximilians-Universität München Online Multimedia WS 2015/16 - Tutorial 09-1 Today s Agenda Discussion: Intellectual
More informationModule - P7 Lecture - 15 Practical: Interacting with a DBMS
Introduction to Modern Application Development Prof. Tanmai Gopal Department of Computer Science and Engineering Indian Institute of Technology, Madras Module - P7 Lecture - 15 Practical: Interacting with
More informationDATABASE SYSTEMS. Database programming in a web environment. Database System Course,
DATABASE SYSTEMS Database programming in a web environment Database System Course, 2016-2017 AGENDA FOR TODAY The final project Advanced Mysql Database programming Recap: DB servers in the web Web programming
More informationMotivation Overview of NoSQL space Comparing technologies used Getting hands dirty tutorial section
NOSQL 1 GOAL Motivation Overview of NoSQL space Comparing technologies used Getting hands dirty tutorial section 2 MOTIVATION Assume we have a product that becomes popular 3. 1 TYPICAL WEBSERVER ARCHITECTURE
More informationMongoDB Web Architecture
MongoDB Web Architecture MongoDB MongoDB is an open-source, NoSQL database that uses a JSON-like (BSON) document-oriented model. Data is stored in collections (rather than tables). - Uses dynamic schemas
More informationFinal Exam Review 2. Kathleen Durant CS 3200 Northeastern University Lecture 23
Final Exam Review 2 Kathleen Durant CS 3200 Northeastern University Lecture 23 QUERY EVALUATION PLAN Representation of a SQL Command SELECT {DISTINCT} FROM {WHERE
More informationWhat do you mean, Backwards Compatibility?
#gotober What do you mean, Backwards Compatibility? Trisha Gee, Java Driver Developer @trisha_gee Friday, 18 October 13 What s the problem? The Domain MongoDB is an open-source document database, featuring:
More informationCSE 344 JULY 9 TH NOSQL
CSE 344 JULY 9 TH NOSQL ADMINISTRATIVE MINUTIAE HW3 due Wednesday tests released actual_time should have 0s not NULLs upload new data file or use UPDATE to change 0 ~> NULL Extra OOs on Mondays 5-7pm in
More informationPercona Live Updated Sharding Guidelines in MongoDB 3.x with Storage Engine Considerations. Kimberly Wilkins
Percona Live 2016 Updated Sharding Guidelines in MongoDB 3.x with Storage Engine Considerations Kimberly Wilkins Principal Engineer - Databases, Rackspace/ ObjectRocket www.linkedin.com/in/wilkinskimberly,
More informationCGS 3066: Spring 2017 SQL Reference
CGS 3066: Spring 2017 SQL Reference Can also be used as a study guide. Only covers topics discussed in class. This is by no means a complete guide to SQL. Database accounts are being set up for all students
More informationScala, Your Next Programming Language
Scala, Your Next Programming Language (or if it is good enough for Twitter, it is good enough for me) WORLDCOMP 2011 By Dr. Mark C. Lewis Trinity University Disclaimer I am writing a Scala textbook that
More information3 / 120. MySQL 8.0. Frédéric Descamps - MySQL Community Manager - Oracle
1 / 120 2 / 120 3 / 120 MySQL 8.0 a Document Store with all the benefits of a transactional RDBMS Frédéric Descamps - MySQL Community Manager - Oracle 4 / 120 Save the date! 5 / 120 Safe Harbor Statement
More informationSaturday, 5 September Good Morning.
Good Morning. Good Morning! ank you for inviting me. Saturday, 5 September 2009 Who? Jan Lehnardt Hacker Entrepreneur capitalizing words say we mean it I come from The Web Open Source makes me happy again!
More informationMaking MongoDB Accessible to All. Brody Messmer Product Owner DataDirect On-Premise Drivers Progress Software
Making MongoDB Accessible to All Brody Messmer Product Owner DataDirect On-Premise Drivers Progress Software Agenda Intro to MongoDB What is MongoDB? Benefits Challenges and Common Criticisms Schema Design
More informationDatabases and Big Data Today. CS634 Class 22
Databases and Big Data Today CS634 Class 22 Current types of Databases SQL using relational tables: still very important! NoSQL, i.e., not using relational tables: term NoSQL popular since about 2007.
More informationThe NoSQL movement. CouchDB as an example
The NoSQL movement CouchDB as an example About me sleepnova - I'm a freelancer Interests: emerging technology, digital art web, embedded system, javascript, programming language Some of my works: Chrome
More informationBIG DATA TECHNOLOGIES: WHAT EVERY MANAGER NEEDS TO KNOW ANALYTICS AND FINANCIAL INNOVATION CONFERENCE JUNE 26-29,
BIG DATA TECHNOLOGIES: WHAT EVERY MANAGER NEEDS TO KNOW ANALYTICS AND FINANCIAL INNOVATION CONFERENCE JUNE 26-29, 2016 1 OBJECTIVES ANALYTICS AND FINANCIAL INNOVATION CONFERENCE JUNE 26-29, 2016 2 WHAT
More information5/2/16. Announcements. NoSQL Motivation. The New Hipster: NoSQL. Serverless. What is the Problem? Database Systems CSE 414
Announcements Database Systems CSE 414 Lecture 16: NoSQL and JSon Current assignments: Homework 4 due tonight Web Quiz 6 due next Wednesday [There is no Web Quiz 5 Today s lecture: JSon The book covers
More informationMySQL Performance Improvements
Taking Advantage of MySQL Performance Improvements Baron Schwartz, Percona Inc. Introduction About Me (Baron Schwartz) Author of High Performance MySQL 2 nd Edition Creator of Maatkit, innotop, and so
More informationNoSQL Databases. Amir H. Payberah. Swedish Institute of Computer Science. April 10, 2014
NoSQL Databases Amir H. Payberah Swedish Institute of Computer Science amir@sics.se April 10, 2014 Amir H. Payberah (SICS) NoSQL Databases April 10, 2014 1 / 67 Database and Database Management System
More informationDatabase Systems CSE 414
Database Systems CSE 414 Lecture 16: NoSQL and JSon CSE 414 - Spring 2016 1 Announcements Current assignments: Homework 4 due tonight Web Quiz 6 due next Wednesday [There is no Web Quiz 5] Today s lecture:
More informationNoSQL Databases MongoDB vs Cassandra. Kenny Huynh, Andre Chik, Kevin Vu
NoSQL Databases MongoDB vs Cassandra Kenny Huynh, Andre Chik, Kevin Vu Introduction - Relational database model - Concept developed in 1970 - Inefficient - NoSQL - Concept introduced in 1980 - Related
More informationNatural Born Killers, performance issues to avoid
Natural Born Killers, performance issues to avoid Richard Douglas http://sql.richarddouglas.co.uk @SQLRich Natural Born Killer http://www.flickr.com/photos/merille/4747615138/sizes/z/in/photostream/ 2
More informationrelational Key-value Graph Object Document
NoSQL Databases Earlier We have spent most of our time with the relational DB model so far. There are other models: Key-value: a hash table Graph: stores graph-like structures efficiently Object: good
More informationHBase vs Neo4j. Technical overview. Name: Vladan Jovičić CR09 Advanced Scalable Data (Fall, 2017) Ecolé Normale Superiuere de Lyon
HBase vs Neo4j Technical overview Name: Vladan Jovičić CR09 Advanced Scalable Data (Fall, 2017) Ecolé Normale Superiuere de Lyon 12th October 2017 1 Contents 1 Introduction 3 2 Overview of HBase and Neo4j
More informationDATABASE DESIGN II - 1DL400
DATABASE DESIGN II - 1DL400 Fall 2016 A second course in database systems http://www.it.uu.se/research/group/udbl/kurser/dbii_ht16 Kjell Orsborn Uppsala Database Laboratory Department of Information Technology,
More informationTHE ATLAS DISTRIBUTED DATA MANAGEMENT SYSTEM & DATABASES
1 THE ATLAS DISTRIBUTED DATA MANAGEMENT SYSTEM & DATABASES Vincent Garonne, Mario Lassnig, Martin Barisits, Thomas Beermann, Ralph Vigne, Cedric Serfon Vincent.Garonne@cern.ch ph-adp-ddm-lab@cern.ch XLDB
More informationRuby on Rails. SITC Workshop Series American University of Nigeria FALL 2017
Ruby on Rails SITC Workshop Series American University of Nigeria FALL 2017 1 Evolution of Web Web 1.x Web 1.0: user interaction == server roundtrip Other than filling out form fields Every user interaction
More informationמרכז התמחות DBA. NoSQL and MongoDB תאריך: 3 דצמבר 2015 מציג: רז הורוביץ, ארכיטקט מרכז ההתמחות
מרכז התמחות DBA NoSQL and MongoDB תאריך: 3 דצמבר 2015 מציג: רז הורוביץ, ארכיטקט מרכז ההתמחות Raziel.Horovitz@tangram-soft.co.il Matrix IT work Copyright 2013. Do not remove source or Attribution from any
More informationEvaluation Guide for ASP.NET Web CMS and Experience Platforms
Evaluation Guide for ASP.NET Web CMS and Experience Platforms CONTENTS Introduction....................... 1 4 Key Differences...2 Architecture:...2 Development Model...3 Content:...4 Database:...4 Bonus:
More informationNoSQL systems: introduction and data models. Riccardo Torlone Università Roma Tre
NoSQL systems: introduction and data models Riccardo Torlone Università Roma Tre Leveraging the NoSQL boom 2 Why NoSQL? In the last fourty years relational databases have been the default choice for serious
More informationNoSQL Injection SEC642. Advanced Web App Penetration Testing, Ethical Hacking, and Exploitation Techniques S
SEC642 Advanced Web App Penetration Testing, Ethical Hacking, and Exploitation Techniques S NoSQL Injection Copyright 2012-2018 Justin Searle and Adrien de Beaupré All Rights Reserved Version D01_01 About
More informationOverview. * Some History. * What is NoSQL? * Why NoSQL? * RDBMS vs NoSQL. * NoSQL Taxonomy. *TowardsNewSQL
* Some History * What is NoSQL? * Why NoSQL? * RDBMS vs NoSQL * NoSQL Taxonomy * Towards NewSQL Overview * Some History * What is NoSQL? * Why NoSQL? * RDBMS vs NoSQL * NoSQL Taxonomy *TowardsNewSQL NoSQL
More information