What do you mean, Backwards Compatibility?
|
|
- Roland Taylor
- 6 years ago
- Views:
Transcription
1 #gotober What do you mean, Backwards Compatibility? Trisha Gee, Java Driver Friday, 18 October 13
2 What s the problem?
3 The Domain
4 MongoDB is an open-source document database, featuring: Document-Oriented Storage Full Index Support Replication & High Availability Auto-Sharding Querying Fast In-Place Updates Map/Reduce GridFS
5 The Driver
6
7
8
9 Why is this my problem? Friday, 18 October 13
10 What do we want to do?
11 Design Goals Friday, 18 October 13 Intuitive API Consistency Understandable exceptions Cleaner design Test friendly Backwards compatible
12 Happy Users
13 Three Types Of Users
14 Three Types Of Users 1. Java Developers Friday, 18 October 13
15 Three Types Of Users 1. Java Developers 2. ODMs / other drivers / third parties Friday, 18 October 13
16 Three Types Of Users 1. Java Developers 2. ODMs / other drivers / third parties 3. Contributors Friday, 18 October 13
17 What s stopping us?
18 Lots of unknowns
19 Lots of APIs
20 Backward Compatibility
21 What did we do?
22 Architecture
23 How Hard Can It Be?
24 Domain
25 MongoDB is an open-source document database, featuring: Document-Oriented Storage Full Index Support Replication & High Availability Auto-Sharding Querying Fast In-Place Updates Map/Reduce GridFS
26 Bit more complex...
27 MongoDB is an open-source document database, featuring: Document-Oriented Storage Full Index Support Replication & High Availability Auto-Sharding Querying Fast In-Place Updates Map/Reduce GridFS
28 Instead of this...
29 Model the Domain
30 Scala Driver
31 Backwards Compatible!
32 MongoDB is an open-source document database, featuring: Document-Oriented Storage Full Index Support Replication & High Availability Auto-Sharding Querying Fast In-Place Updates Map/Reduce GridFS
33 Multi Server
34 Replica Set
35 Replica Set
36
37 Replica Sharding Set Friday, 18 October 13
38
39 Finding Servers the Old Way Friday, 18 October 13
40
41
42
43
44
45
46
47
48
49
50 But now...
51
52
53
54
55 MongoDB is an open-source document database, featuring: Document-Oriented Storage Full Index Support Replication & High Availability Auto-Sharding Querying Fast In-Place Updates Map/Reduce GridFS
56 MongoDB is an open-source document database, featuring: Document-Oriented Storage Full Index Support Replication & High Availability Auto-Sharding Querying Fast In-Place Updates Map/Reduce GridFS
57 The New API
58 Caveats It won t look like this Haven t decided consistent names yet Need something that suits all drivers Friday, 18 October 13
59 MongoDB is an open-source document database, featuring: Document-Oriented Storage Full Index Support Replication & High Availability Auto-Sharding Querying Fast In-Place Updates Map/Reduce GridFS
60 patron = { _id: "joe", name: "Joe Bookreader", address: { street: "123 Fake St", city: "Faketon", state: "MA", zip: } books: [ 27464, ,...] }
61 List books = new BasicDBList(); books.add(27464, ); new BasicDBObject("_id", "joe").append("name", "Joe Bookreader").append("address", new BasicDBObject("street", "123 Fake St").append("city", "Faketon").append("state", "MA").append("zip", 12345)).append("books", books); collection.insert(books); Building a Document Friday, 18 October 13
62 DBCollection collection = database.getcollection("coll"); ArrayList<Patron> resultstoreturn = new ArrayList<Patron>(); DBObject query = new BasicDBObject("name", thenametofind); DBCursor results = collection.find(query); for (DBObject dbobject : results) { Patron patron = new Patron((String) dbobject.get("name"), new Address((String)dbObject.get("street"), (String)dbObject.get("city"), (String)dbObject.get("state"), (Integer)dbObject.get("zip")), (BasicDBList)dbObject.get("books")); resultstoreturn.add(patron); } return resultstoreturn; Getting it back Friday, 18 October 13
63 DBCollection collection = database.getcollection("coll"); ArrayList<Patron> resultstoreturn = new ArrayList<Patron>(); DBObject query = new BasicDBObject("name", thenametofind); DBCursor results = collection.find(query); for (DBObject dbobject : results) { Patron patron = new Patron((String) dbobject.get("name"), new Address((String)dbObject.get("street"), (String)dbObject.get("city"), (String)dbObject.get("state"), (Integer)dbObject.get("zip")), (BasicDBList)dbObject.get("books")); resultstoreturn.add(patron); } return resultstoreturn; Casting is fun Friday, 18 October 13
64 MongoCollection<Patron> collection = database.getcollection("coll", new PatronCodec()); Document query = new Document("name", thenametofind); return collection.find(query).into(new ArrayList<Patron>()); New API Friday, 18 October 13
65 MongoCollection<Patron> collection = database.getcollection("coll", new PatronCodec()); Document query = new Document("name", thenametofind); return collection.find(query).into(new ArrayList<Patron>()); Separation of concerns Friday, 18 October 13
66 MongoDB is an open-source document database, featuring: Document-Oriented Storage Full Index Support Replication & High Availability Auto-Sharding Querying Fast In-Place Updates Map/Reduce GridFS
67 MongoDB is an open-source document database, featuring: Document-Oriented Storage Full Index Support Replication & High Availability Auto-Sharding Querying Fast In-Place Updates Map/Reduce GridFS
68 Find
69 collection.find(query).skip(1000).limit(100); Find Friday, 18 October 13
70 collection.find(query).skip(1000).limit(100); collection.find(query).skip(1000).limit(100); Find Friday, 18 October 13
71 collection.find(query).skip(1000).limit(100); collection.find(query).skip(1000).limit(100); collection.find(query, fields); Find Friday, 18 October 13
72 Which One?
73 Find
74 collection.find(query).skip(1000).limit(100); collection.find(query).skip(1000).limit(100); collection.find(query, fields); Find Friday, 18 October 13
75 collection.find(query).skip(1000).limit(100); collection.find(query).skip(1000).limit(100); collection.find(query, fields); collection.find(query).project(fields); Find Friday, 18 October 13
76 Fewer Decisions
77 Ctrl + space friendly
78 Remove
79 collection.remove(query); Remove Friday, 18 October 13
80 collection.remove(query); collection.find(query).remove(); Remove Friday, 18 October 13
81 Update
82 collection.update(query, newvalues) Update Friday, 18 October 13
83 collection.update(query, newvalues) collection.find(query).updateone(newvalues); Update Friday, 18 October 13
84 Overloaded Methods
85 Update
86 collection.update(query, newvalues); collection.find(query).updateone(newvalues); collection.update(query, newvalues, false, false, JOURNALED); Update Friday, 18 October 13
87 collection.update(query, newvalues); collection.find(query).updateone(newvalues); collection.update(query, newvalues, false, false, JOURNALED); collection.find(query).withwriteconcern(journaled).updateone(newvalues); Update Friday, 18 October 13
88 Update
89 collection.update(query, newvalues); collection.find(query).updateone(newvalues); collection.update(query, newvalues, false, false, JOURNALED); collection.find(query).withwriteconcern(journaled).updateone(newvalues); collection.update(query, newvalues, true, false, JOURNALED); Update Friday, 18 October 13
90 collection.update(query, newvalues); collection.find(query).updateone(newvalues); collection.update(query, newvalues, false, false, JOURNALED); collection.find(query).withwriteconcern(journaled).updateone(newvalues); collection.update(query, newvalues, true, false, JOURNALED); collection.find(query).withwriteconcern(journaled).upsert().updateone(newvalues); Update Friday, 18 October 13
91 Update
92 collection.update(query, newvalues); collection.find(query).updateone(newvalues); collection.update(query, newvalues, false, false, JOURNALED); collection.find(query).withwriteconcern(journaled).updateone(newvalues); collection.update(query, newvalues, true, true, JOURNALED); collection.find(query).withwriteconcern(journaled).upsert().update(newvalues); Update Friday, 18 October 13
93 MongoDB is an open-source document database, featuring: Document-Oriented Storage Full Index Support Replication & High Availability Auto-Sharding Querying Fast In-Place Updates Map/Reduce GridFS
94 MongoDB is an open-source document database, featuring: Document-Oriented Storage Full Index Support Replication & High Availability Auto-Sharding Querying Fast In-Place Updates Map/Reduce GridFS
95 Atomic Operations
96 Find and Modify
97 collection.findandmodify(query, newvalues); Find and Modify Friday, 18 October 13
98 collection.findandmodify(query, newvalues); collection.find(query).getoneandupdate(newvalues); Find and Modify Friday, 18 October 13
99 They hate me!
100 Find and Modify
101 collection.findandmodify(query, update); collection.find(query).getoneandupdate(update); collection.findandmodify(query, fields, criteria, false, newvalues, false, false); Find and Modify Friday, 18 October 13
102 collection.findandmodify(query, update); collection.find(query).getoneandupdate(update); collection.findandmodify(query, fields, criteria, false, newvalues, false, false); collection.find(query).project(fields).sort(criteria).getoneandupdate(newvalues); Find and Modify Friday, 18 October 13
103 collection.findandmodify(query, update); collection.find(query).getoneandupdate(update); collection.findandmodify(query, fields, criteria, false, newvalues, true, false); collection.find(query).project(fields).sort(criteria).updateoneandget(newvalues); Find and Modify Friday, 18 October 13
104 Consistency
105 collection.find(query).count(); collection.find(query).remove(); collection.find(query).update(newvalues); collection.find(query).updateoneandget(newvalues); collection.find(query).getoneandupdate(newvalues); collection.find(query).sort(sortcriteria).skip(9).limit(10).get(); collection.find(query).sort(sortcriteria).skip(9).limit(10).getone(); collection.find(query).sort(ascending("name")).getone(); Consistency at last Friday, 18 October 13
106 How do we know we did it?
107 Tests Pass...
108 ...and more tests pass... Friday, 18 October 13
109 ...even more tests pass... Friday, 18 October 13
110 It s being used in anger Friday, 18 October 13
111 Conclusion
112 Conclusion
113 Conclusion Model your domain Friday, 18 October 13
114 Conclusion Model your domain Know your users Friday, 18 October 13
115 Conclusion Model your domain Know your users API design is hard Friday, 18 October 13
116 Questions Friday, 18 October 13
117 MongoFuture<Document> future = collection.find(query).sort(criteria).skip(9).limit(10).asyncone(); MongoFuture<Long> count = collection.find(query).asynccount(); MongoFuture<WriteResult> replaceresult = collection.find(query).asyncreplace(replacement); What about async? Friday, 18 October 13
118 Understandable Exceptions Client Exceptions Server Exceptions No more parsing error Strings Friday, 18 October 13
119 Documentation Self documenting code JavaDoc Unit, Functional and Acceptance Tests Blogs Tutorials Friday, 18 October 13
120 My Questions
121 1. Are you using the Java driver? Friday, 18 October 13
122 2. What do you like about it? Friday, 18 October 13
123 3. What are your pain points? Friday, 18 October 13
Course 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 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 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 informationMongoDB for C# Developers
MongoDB for C# Developers Simon Elliston Ball @sireb http://www.mongodb.org/ Document Database Document Database id full_name address 1 John 3a Test Street 2 Jane Smith Doe 1b Fake Street 3...... Document
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 informationData Model Design for MongoDB
Data Model Design for MongoDB Release 3.2.3 MongoDB, Inc. February 17, 2016 2 MongoDB, Inc. 2008-2016 This work is licensed under a Creative Commons Attribution-NonCommercial- ShareAlike 3.0 United States
More informationITG Software Engineering
Introduction to MongoDB Course ID: Page 1 Last Updated 12/15/2014 MongoDB for Developers Course Overview: In this 3 day class students will start by learning how to install and configure MongoDB on a Mac
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 informationCouchbase Architecture Couchbase Inc. 1
Couchbase Architecture 2015 Couchbase Inc. 1 $whoami Laurent Doguin Couchbase Developer Advocate @ldoguin laurent.doguin@couchbase.com 2015 Couchbase Inc. 2 2 Big Data = Operational + Analytic (NoSQL +
More informationYour First MongoDB Environment: What You Should Know Before Choosing MongoDB as Your Database
Your First MongoDB Environment: What You Should Know Before Choosing MongoDB as Your Database Me - @adamotonete Adamo Tonete Senior Technical Engineer Brazil Agenda What is MongoDB? The good side of MongoDB
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 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 informationBig Data Architect.
Big Data Architect www.austech.edu.au WHAT IS BIG DATA ARCHITECT? A big data architecture is designed to handle the ingestion, processing, and analysis of data that is too large or complex for traditional
More informationElasticSearch in Production
ElasticSearch in Production lessons learned Anne Veling, ApacheCon EU, November 6, 2012 agenda! Introduction! ElasticSearch! Udini! Upcoming Tool! Lessons Learned introduction! Anne Veling, @anneveling!
More informationEvent-sourced architectures with Luminis Technologies
Event-sourced architectures with Akka @Sander_Mak Luminis Technologies Today's journey Event-sourcing Actors Akka Persistence Design for ES Event-sourcing Is all about getting the facts straight Typical
More informationScaling MongoDB. Percona Webinar - Wed October 18th 11:00 AM PDT Adamo Tonete MongoDB Senior Service Technical Service Engineer.
caling MongoDB Percona Webinar - Wed October 18th 11:00 AM PDT Adamo Tonete MongoDB enior ervice Technical ervice Engineer 1 Me and the expected audience @adamotonete Intermediate - At least 6+ months
More informationBig Data Exercises. Fall 2018 Week 11 ETH Zurich
Big Data Exercises Fall 2018 Week 11 ETH Zurich Introduction This exercise will cover document stores. As a representative of document stores, MongoDB was chosen for the practical exercises. Instructions
More informationBig Data Exercises. Fall 2017 Week 11 ETH Zurich
Big Data Exercises Fall 2017 Week 11 ETH Zurich Introduction This exercise will cover document stores. As a representative of document stores, MongoDB was chosen for the practical exercises. You can install
More informationAccelerate MySQL for Demanding OLAP and OLTP Use Cases with Apache Ignite. Peter Zaitsev, Denis Magda Santa Clara, California April 25th, 2017
Accelerate MySQL for Demanding OLAP and OLTP Use Cases with Apache Ignite Peter Zaitsev, Denis Magda Santa Clara, California April 25th, 2017 About the Presentation Problems Existing Solutions Denis Magda
More informationMongoDB. David Murphy MongoDB Practice Manager, Percona
MongoDB Click Replication to edit Master and Sharding title style David Murphy MongoDB Practice Manager, Percona Who is this Person and What Does He Know? Former MongoDB Master Former Lead DBA for ObjectRocket,
More informationrun your own search engine. today: Cablecar
run your own search engine. today: Cablecar Robert Kowalski @robinson_k http://github.com/robertkowalski Search nobody uses that, right? Services on the Market Google Bing Yahoo ask Wolfram Alpha Baidu
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 informationEvent-sourced architectures with Luminis Technologies
Event-sourced architectures with Akka @Sander_Mak Luminis Technologies Today's journey Event-sourcing Actors Akka Persistence Design for ES Event-sourcing Is all about getting the facts straight Typical
More informationA DarkBasic DataBase By:
A DarkBasic DataBase By: Phaelax(Phaelax@hotmail.com) So you want to create a database program in DarkBasic. It s easier than you may think. Nothing more to say in this introduction, so let s get started.
More informationIBM Db2 Event Store Simplifying and Accelerating Storage and Analysis of Fast Data. IBM Db2 Event Store
IBM Db2 Event Store Simplifying and Accelerating Storage and Analysis of Fast Data IBM Db2 Event Store Disclaimer The information contained in this presentation is provided for informational purposes only.
More informationHow to upgrade MongoDB without downtime
How to upgrade MongoDB without downtime me - @adamotonete Adamo Tonete, Senior Technical Engineer Brazil Agenda Versioning Upgrades Operations that always require downtime Upgrading a replica-set Upgrading
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 information10/18/2017. Announcements. NoSQL Motivation. NoSQL. Serverless Architecture. What is the Problem? Database Systems CSE 414
Announcements Database Systems CSE 414 Lecture 11: NoSQL & JSON (mostly not in textbook only Ch 11.1) HW5 will be posted on Friday and due on Nov. 14, 11pm [No Web Quiz 5] Today s lecture: NoSQL & JSON
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 informationThere And Back Again
There And Back Again Databases At Uber Evan Klitzke October 4, 2016 Outline Background MySQL To Postgres Connection Scalability Write Amplification/Replication Miscellaneous Other Things Databases at Uber
More informationElasticsearch: Past, Present, & Future. Adrien Grand Software Engineer - Elasticsearch
Elasticsearch: Past, Present, & Future Adrien Grand Software Engineer - Elasticsearch Elasticsearch 5.0 26 October 2016 Elasticsearch 5.0 Better at Numbers 3 Safe Simple Things Should Be Simple Elasticsearch
More informationourwiki Documentation
ourwiki Documentation Release 0.0.1 devops and team January 06, 2014 Contents 1 About 3 2 All 5 3 Welcome to Read The Docs 7 4 The MongoDB 0.0.1 Manual 9 4.1 Community................................................
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 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 informationScaling. Marty Weiner Grayskull, Eternia. Yashh Nelapati Gotham City
Scaling Marty Weiner Grayskull, Eternia Yashh Nelapati Gotham City Pinterest is... An online pinboard to organize and share what inspires you. Relationships Marty Weiner Grayskull, Eternia Yashh Nelapati
More informationRealtime visitor analysis with Couchbase and Elasticsearch
Realtime visitor analysis with Couchbase and Elasticsearch Jeroen Reijn @jreijn #nosql13 About me Jeroen Reijn Software engineer Hippo @jreijn http://blog.jeroenreijn.com About Hippo Visitor Analysis OneHippo
More informationScaling. Yashh Nelapati Gotham City. Marty Weiner Krypton. Friday, July 27, 12
Scaling Marty Weiner Krypton Yashh Nelapati Gotham City Pinterest is... An online pinboard to organize and share what inspires you. Relationships Marty Weiner Grayskull, Eternia Relationships Marty
More informationCS193X: Web Programming Fundamentals
CS193X: Web Programming Fundamentals Spring 2017 Victoria Kirst (vrk@stanford.edu) CS193X schedule Today - MongoDB - Servers and MongoDB Friday - Web application architecture - Authentication MongoDB installation
More informationApp Engine: Datastore Introduction
App Engine: Datastore Introduction Part 1 Another very useful course: https://www.udacity.com/course/developing-scalableapps-in-java--ud859 1 Topics cover in this lesson What is Datastore? Datastore and
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 informationBasic Keywords Practice Session
Basic Keywords Practice Session Introduction In this article from my free Java 8 course, we will apply what we learned in my Java 8 Course Introduction to our first real Java program. If you haven t yet,
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 informationTips from the experts: How to waste a lot of time on this assignment
Com S 227 Spring 2018 Assignment 1 80 points Due Date: Friday, February 2, 11:59 pm (midnight) Late deadline (25% penalty): Monday, February 5, 11:59 pm General information This assignment is to be done
More information1 Big Data Hadoop. 1. Introduction About this Course About Big Data Course Logistics Introductions
Big Data Hadoop Architect Online Training (Big Data Hadoop + Apache Spark & Scala+ MongoDB Developer And Administrator + Apache Cassandra + Impala Training + Apache Kafka + Apache Storm) 1 Big Data Hadoop
More informationMySQL as a Document Store. Ted Wennmark
MySQL as a Document Store Ted Wennmark ted.wennmark@oracle.com Safe Harbor Statement The following is intended to outline our general product direction. It is intended for information purposes only, and
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 informationTransactions in a Distributed Key-Value Store
Transactions in a Distributed Key-Value Store 6.824 Final Project James Thomas, Deepak Narayanan, Arjun Srinivasan May 11, 2014 Introduction Over the last several years, NoSQL databases such as Redis,
More informationManually Run The Synchronization Replication Sql Server 2005 Delete
Manually Run The Synchronization Replication Sql Server 2005 Delete I've set up a SQL transaction replication between two servers. And now I If an article is dropped after one or more subscriptions is
More informationMongoDB Distributed Write and Read
VICTORIA UNIVERSITY OF WELLINGTON Te Whare Wananga o te Upoko o te Ika a Maui MongoDB Distributed Write and Read Lecturer : Dr. Pavle Mogin SWEN 432 Advanced Database Design and Implementation Advanced
More informationSpanner: Google s Globally-Distributed Database. Wilson Hsieh representing a host of authors OSDI 2012
Spanner: Google s Globally-Distributed Database Wilson Hsieh representing a host of authors OSDI 2012 What is Spanner? Distributed multiversion database General-purpose transactions (ACID) SQL query language
More informationDO EVEN MORE WITH TABLEAU. At BlueGranite, our unique approach and extensive expertise helps you get the most from your Tableau products.
DO EVEN MORE WITH TABLEAU At BlueGranite, our unique approach and extensive expertise helps you get the most from your Tableau products. WHAT WE DO WE PLAN, DESIGN AND BUILD SOLUTIONS WITH TABLEAU TECHNOLOGY.
More informationRun your own Open source. (MMS) to avoid vendor lock-in. David Murphy MongoDB Practice Manager, Percona
Run your own Open source Click alternative to edit to Master Ops-Manager title style (MMS) to avoid vendor lock-in David Murphy MongoDB Practice Manager, Percona Who is this Person and What Does He Know?
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 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 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 informationTips from the experts: How to waste a lot of time on this assignment
Com S 227 Spring 2018 Assignment 1 100 points Due Date: Friday, September 14, 11:59 pm (midnight) Late deadline (25% penalty): Monday, September 17, 11:59 pm General information This assignment is to be
More informationAccelerate MySQL for Demanding OLAP and OLTP Use Case with Apache Ignite December 7, 2016
Accelerate MySQL for Demanding OLAP and OLTP Use Case with Apache Ignite December 7, 2016 Nikita Ivanov CTO and Co-Founder GridGain Systems Peter Zaitsev CEO and Co-Founder Percona About the Presentation
More informationThe Seman)c Web Landscape
The Seman)c Web Landscape Dean Allemang Working Ontologist, LLC Copyright 2012 Working Ontologist LLC Seman)c Web what it is and isn t Lot s of cool technologies that could be seen as Semantic : Copyright
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 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 informationRevising CS-M41. Oliver Kullmann Computer Science Department Swansea University. Robert Recorde room Swansea, December 13, 2013.
Computer Science Department Swansea University Robert Recorde room Swansea, December 13, 2013 How to use the revision lecture The purpose of this lecture (and the slides) is to emphasise the main topics
More informationHow do we build TiDB. a Distributed, Consistent, Scalable, SQL Database
How do we build TiDB a Distributed, Consistent, Scalable, SQL Database About me LiuQi ( 刘奇 ) JD / WandouLabs / PingCAP Co-founder / CEO of PingCAP Open-source hacker / Infrastructure software engineer
More informationSOLUTION TRACK Finding the Needle in a Big Data Innovator & Problem Solver Cloudera
SOLUTION TRACK Finding the Needle in a Big Data Haystack @EvaAndreasson, Innovator & Problem Solver Cloudera Agenda Problem (Solving) Apache Solr + Apache Hadoop et al Real-world examples Q&A Problem Solving
More informationRelational databases
COSC 6397 Big Data Analytics NoSQL databases Edgar Gabriel Spring 2017 Relational databases Long lasting industry standard to store data persistently Key points concurrency control, transactions, standard
More informationChapter 24 NOSQL Databases and Big Data Storage Systems
Chapter 24 NOSQL Databases and Big Data Storage Systems - Large amounts of data such as social media, Web links, user profiles, marketing and sales, posts and tweets, road maps, spatial data, email - NOSQL
More informationKotlin for Android Developers
Kotlin for Android Developers Learn Kotlin the easy way while developing an Android App Antonio Leiva This book is for sale at http://leanpub.com/kotlin-for-android-developers This version was published
More informationTransactions and ACID
Transactions and ACID Kevin Swingler Contents Recap of ACID transactions in RDBMSs Transactions and ACID in MongoDB 1 Concurrency Databases are almost always accessed by multiple users concurrently A user
More informationSimplified and fast Fraud Detection with just SQL. developer.oracle.com/c ode
Simplified and fast Fraud Detection with just SQL developer.oracle.com/c ode About me developer.oracle.com/c ode Klaus Thielen Consulting Member of Technical Staff RAC Development Agenda 1 2 3 4 5 Finding
More informationSQL SERVER INTERVIEW QUESTIONS AND ANSWERS FOR ALL DATABASE DEVELOPERS AND DEVELOPERS ADMINISTRATORS
SQL SERVER INTERVIEW QUESTIONS AND ANSWERS FOR ALL DATABASE DEVELOPERS AND DEVELOPERS ADMINISTRATORS page 1 / 5 page 2 / 5 sql server interview questions pdf SQL Server - 204 SQL Server interview questions
More information5/1/17. Announcements. NoSQL Motivation. NoSQL. Serverless Architecture. What is the Problem? Database Systems CSE 414
Announcements Database Systems CSE 414 Lecture 15: NoSQL & JSON (mostly not in textbook only Ch 11.1) 1 Homework 4 due tomorrow night [No Web Quiz 5] Midterm grading hopefully finished tonight post online
More informationBig Data and Scripting mongodb map reduce
Big Data and Scripting mongodb map reduce 1, 2, last lecture replication distribution full distributed storage network today use storage network for distributed computations introduce map/reduce framework
More informationTutorial 5 Advanced Queries and Enhancing Table Design
Tutorial 5 Advanced Queries and Enhancing Table Design (Sessions 1 and 3 only) The Clinic Database Clinic.accdb file for Tutorials 5-8 object names include tags no spaces in field names to promote upsizing
More informationBig Data Exercises. Fall 2016 Week 11 ETH Zurich
Big Data Exercises Fall 2016 Week 11 ETH Zurich Introduction This exercise will cover document stores. As a representative of document stores, MongoDB was chosen for the practical exercises. You can install
More informationMIS2502: Data Analytics Relational Data Modeling. Jing Gong
MIS2502: Data Analytics Relational Data Modeling Jing Gong gong@temple.edu http://community.mis.temple.edu/gong Where we are Now we re here Data entry Transactional Database Data extraction Analytical
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 informationJargons, Concepts, Scope and Systems. Key Value Stores, Document Stores, Extensible Record Stores. Overview of different scalable relational systems
Jargons, Concepts, Scope and Systems Key Value Stores, Document Stores, Extensible Record Stores Overview of different scalable relational systems Examples of different Data stores Predictions, Comparisons
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 informationInstalling Data8 PredictiveAddress for Microsoft Dynamics 365/CRM
Installing Data8 PredictiveAddress for Microsoft Dynamics 365/CRM Contents Obtaining an Ajax API Key... 2 Installing the solution... 3 Configuring the postcode lookup system... 6 Adding postcode lookup
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 informationFACULTY AND STAFF COMPUTER FOOTHILL-DE ANZA. FileMaker Pro. Relational Databases
FACULTY AND STAFF COMPUTER TRAINING @ FOOTHILL-DE ANZA FileMaker Pro Relational Databases 1 Relational Databases Explanation Most smaller data documents are called flat files. That means that all the information
More informationEclipse Scout. Release Notes. Scout Team. Version 7.0
Eclipse Scout Release Notes Scout Team Version 7.0 Table of Contents About This Release.......................................................................... 1 Service Releases..........................................................................
More informationRavenDB & document stores
université libre de bruxelles INFO-H415 - Advanced Databases RavenDB & document stores Authors: Yasin Arslan Jacky Trinh Professor: Esteban Zimányi Contents 1 Introduction 3 1.1 Présentation...................................
More informationIsomorphic Kotlin. Troy
Isomorphic Kotlin Troy Miles @therockncoder Troy Miles @therockncoder Troy Miles, aka the Rockncoder, began writing computer games in assembly language for early computers like the Apple II, Commodore
More informationAccessing other data fdw, dblink, pglogical, plproxy,...
Accessing other data fdw, dblink, pglogical, plproxy,... Hannu Krosing, Quito 2017.12.01 1 Arctic Circle 2 Who am I Coming from Estonia PostgreSQL user since about 1990 (when it was just Postgres 4.2)
More informationMongoDB at Visibiz. Why and how we re using MongoDB in our application. Mike Brocious Tech Lead Visibiz, Inc.
MongoDB at Visibiz Why and how we re using MongoDB in our application Mike Brocious Tech Lead Visibiz, Inc. Why We re Here Discuss why we chose MongoDB at Visibiz Show how we re using it Made mistakes
More informationMongoDB schema design
Welcome! MongoDB schema design PHP NorthWest - Manchester, UK - Apr 3rd, 2012 Derick Rethans - derick@10gen.com - twitter: @derickr e-mail me About Me Derick Rethans Dutchman living in London PHP mongodb
More informationAn Introduction to Apache Spark Big Data Madison: 29 July William Red Hat, Inc.
An Introduction to Apache Spark Big Data Madison: 29 July 2014 William Benton @willb Red Hat, Inc. About me At Red Hat for almost 6 years, working on distributed computing Currently contributing to Spark,
More informationJava Mongo Connectivity
Java Mongo Connectivity By Prof. B.A.Khivsara Note: The material to prepare this presentation has been taken from internet and are generated only for students reference and not for commercial use. Write
More informationBeyond Relational Databases: MongoDB, Redis & ClickHouse. Marcos Albe - Principal Support Percona
Beyond Relational Databases: MongoDB, Redis & ClickHouse Marcos Albe - Principal Support Engineer @ Percona Introduction MySQL everyone? Introduction Redis? OLAP -vs- OLTP Image credits: 451 Research (https://451research.com/state-of-the-database-landscape)
More information11 HashMap: Overriding equals ; JUnit; Vistors
11 HashMap: Overriding equals ; JUnit; Vistors Goals In this lab we will first learn how to define the equals method, as well as how to use the HashMap data structure defined in the Java Collections Frameworks.
More informationNN. The last part! 1/9. How to build a bean for Servoy A step by step tutorial brought to you by Servoy Stuff PART 8
How to build a bean for Servoy A step by step tutorial brought to you by Servoy Stuff PART 8 NN. The last part! In the previous parts of this tutorial we build a Servoy Aware bean based on a Swing JSlider
More informationHow To. Create a Free Autoresponder Using
How To Create a Free Autoresponder Using by michael@myaimbot.com Legal Notice: This ebook is copyright protected. This is only for personal use. You cannot amend, distribute, sell, use, quote or paraphrase
More informationCSE 544 Principles of Database Management Systems. Magdalena Balazinska Winter 2009 Lecture 12 Google Bigtable
CSE 544 Principles of Database Management Systems Magdalena Balazinska Winter 2009 Lecture 12 Google Bigtable References Bigtable: A Distributed Storage System for Structured Data. Fay Chang et. al. OSDI
More informationAnnouncements. 1. Forms to return today after class:
Announcements Handouts (3) to pick up 1. Forms to return today after class: Pretest (take during class later) Laptop information form (fill out during class later) Academic honesty form (must sign) 2.
More informationHow we build TiDB. Max Liu PingCAP Amsterdam, Netherlands October 5, 2016
How we build TiDB Max Liu PingCAP Amsterdam, Netherlands October 5, 2016 About me Infrastructure engineer / CEO of PingCAP Working on open source projects: TiDB: https://github.com/pingcap/tidb TiKV: https://github.com/pingcap/tikv
More informationRevising CS-M41. Oliver Kullmann Computer Science Department Swansea University. Linux Lab Swansea, December 13, 2011.
Computer Science Department Swansea University Linux Lab Swansea, December 13, 2011 How to use the revision lecture The purpose of this lecture (and the slides) is to emphasise the main topics of this
More informationEmployee Portal. Click on Vendor Search.
Employee Portal Click on Vendor Search. Vendor Search Page Disclaimer Please note that you may get unexpected results by using the address options. This tool includes a powerful query that searches the
More informationNetBeans Platform. Geertjan Wielenga Sun Microsystems Source Talk Tage, 27 September, 2006
NetBeans Platform What is it? How do I use it? And why should I want to? Geertjan Wielenga http://blogs.sun.com/geertjan Sun Microsystems Source Talk Tage, 27 September, 2006 Agenda Introduction 1. Why?
More informationMIS2502: Data Analytics Relational Data Modeling - 1. JaeHwuen Jung
MIS2502: Data Analytics Relational Data Modeling - 1 JaeHwuen Jung jaejung@temple.edu http://community.mis.temple.edu/jaejung Where we are Now we re here Data entry Transactional Database Data extraction
More informationMIS2502: Data Analytics Relational Data Modeling. Jing Gong
MIS2502: Data Analytics Relational Data Modeling Jing Gong gong@temple.edu http://community.mis.temple.edu/gong Where we are Now we re here Data entry Transactional Database Data extraction Analytical
More information