Drupal and MongoDB or the road to APIs.

Slides:



Advertisements
Similar presentations
A brief overview of Drupal 7 By Robin Isard, Systems Librarian Algoma University.
Advertisements

OSU Profile A Drupal Module to provide every site an easy way to manage a directory of their people, and provide a way to include whatever data they want.
Databases MMG508. DB Properties  Definition of a database: “A database is a collection of interrelated data items that are managed as a single unit”
DataGrid is a project funded by the European Commission under contract IST WP2 – R2.1 Overview of WP2 middleware as present in EDG 2.1 release.
Juozas Kaziukėnas /
12 CHAPTER DATABASES Databases are the key to accessing information throughout our lives. Used in hospitals, grocery stores, schools, department stores,
Colectica Demonstration Design. Collect. Share.. Copyright © 2010 Algenta Technologies Colectica Platform IASSIST Colectica Designer 2. Colectica.
U of R eXtensible Catalog Team MetaCat. Problem Domain.
James Gollan d.o: gollyg twitter: gollyg. Overview Files in Drupal 7 The media suite of modules Site recipe: Adding media to your site.
Jeremy Boyd Director – Mindscape MSDN Regional Director
Databases & Data Warehouses Chapter 3 Database Processing.
Justin Klein Keane Drupal Training Session 1 Introduction to Drupal.
Drupal 7 as an enterprise web application framework Why as a developer you should use Drupal to build web applications? Klaus Harris DrupalCon Munich 2012.
Hook, Drush, and Alters Oh Mai! Bryan Ollendyke.
Installing CiviCRM onto Wordpress. How does it work?
January, 23, 2006 Ilkay Altintas
Drupal Training Syllabus Chaitanya Lakshmi
Database Concepts & Introduction to MS Access 1. Outline Database Overview  Database Management System Concepts  Database Structures Database, tables,
Sandia National Laboratories is a multi-program laboratory managed and operated by Sandia Corporation, a wholly owned subsidiary of Lockheed Martin Corporation,
Database Technical Session By: Prof. Adarsh Patel.
GMOD Chado: to a Model-View-Controller (MVC) architecture? Valentin GUIGNON ID, DAP, BIOS CIRAD Montpellier.
Entities in Drupal 7 & the Entity API #sudrupalcamp April 6, 2013 JD Leonard ModernBizConsulting.com ModernBizConsulting.com ModernBizConsulting.com.
Hive : A Petabyte Scale Data Warehouse Using Hadoop
CIS 103 — Applied Computer Technology Last Edited: September 17, 2010 by C.Herbert Using Database Management Systems.
Hive Facebook 2009.
NoSQL Databases Oracle - Berkeley DB. Content A brief intro to NoSQL About Berkeley Db About our application.
Drupal Commerce Better than Uber Andrew Root: druroot.
Relational Databases Database Driven Applications Retrieving Data Changing Data Analysing Data What is a DBMS An application that holds the data manages.
MIS 327 Database Management system 1 MIS 327: DBMS Dr. Monther Tarawneh Dr. Monther Tarawneh Week 2: Basic Concepts.
Mainframe (Host) - Communications - User Interface - Business Logic - DBMS - Operating System - Storage (DB Files) Terminal (Display/Keyboard) Terminal.
Andrew S. Budarevsky Adaptive Application Data Management Overview.
Introduction to Module Development John Fiala and Ezra Barnett Gildesgame.
Entities in Drupal 7 & the Entity API #sfdug March 11, 2013 JD Leonard ModernBizConsulting.com.
(1) Introduction to Models using the Play Framework Philip Johnson Collaborative Software Development Laboratory Information and Computer Sciences University.
Plug-In Architecture Pattern. Problem The functionality of a system needs to be extended after the software is shipped The set of possible post-shipment.
DAY 14: MICROSOFT ACCESS – CHAPTER 1 Madhuri Siddula October 1, 2015.
 2009 Calpont Corporation 1 Calpont Open Source Columnar Storage Engine for Scalable MySQL Data Warehousing April 22, 2009 MySQL User Conference Santa.
MongoDB is a database management system designed for web applications and internet infrastructure. The data model and persistence strategies are built.
Faceted browsing for ACL Anthology Praveen Bysani.
CS5604: Final Presentation ProjOpenDSA: Log Support Victoria Suwardiman Anand Swaminathan Shiyi Wei Department of Computer Science, Virginia Tech December.
DrupalCon 2011: Feedback ENTICE meeting 8 April 2011 Silvia Tomanin DG-CO.
ESG-CET Meeting, Boulder, CO, April 2008 Gateway Implementation 4/30/2008.
Introduction to MongoDB. Database compared.
The Storage Resource Broker and.
Data and Information Systems Laboratory University of Illinois Urbana-Champaign Data Mining Meeting Mar, From SQL to NoSQL Xiao Yu Mar 2012.
3.1 CSC 102 Introduction to Information Systems Databases.
Plug-In Architecture Pattern. Problem The functionality of a system needs to be extended after the software is shipped The set of possible post-shipment.
Introduction to Core Database Concepts Getting started with Databases and Structure Query Language (SQL)
Thinking of Drupal 8? Get started with the resources.
MESA A Simple Microarray Data Management Server. General MESA is a prototype web-based database solution for the massive amounts of initial data generated.
Learn What’s New in WordPress4.0 Presented by: SunTecOSS.
Make most descriptions more compelling.
Introduction to DBMS Purpose of Database Systems View of Data
CONTENT MANAGEMENT SYSTEM CSIR-NISCAIR, New Delhi
Chapter 11: File System Implementation
MongoDB Er. Shiva K. Shrestha ME Computer, NCIT
Next Generation of Post Mortem Event Storage and Analysis
NOSQL.
Dineesha Suraweera.
Twitter & NoSQL Integration with MVC4 Web API
Database Management  .
Russ Thomas Director, Information Services, TSYS
1 Demand of your DB is changing Presented By: Ashwani Kumar
Searchlight Lei Zhang Search service for OpenStack
Importance of logs in custom development
Introduction to DBMS Purpose of Database Systems View of Data
DATABASES WHAT IS A DATABASE?
TN19-TCI: Integration and API management using TIBCO Cloud™ Integration
ITI 257 Data Analysis with Power BI
Reports Report builder meets the challenge by making it easy to design, publish, and distribute professional, production-quality reports in a variety of.
Presentation transcript:

Drupal and MongoDB or the road to APIs

Drupal 7

What went well? Entity-field storage: node, comment, user... Session (frequent writes) Watchdog (capped collection) Cache

What worked out so-so? Blocks. Unmaintainable solution.

Where were things stored? List of modules: system table Date formats: date_format_type date_formats date_format_locale tables Text formats: filter filter_format tables Arbitrary contrib arbitrary table

How were things handled? Field widgets, formatters: Some info hook settings stored in an arbitrary table handled by arbitrary callbacks Cache, query: variable_get defines include file variable_get defines settings

Consequences Even with a SQL abstraction driver, full MongoDB is practically impossible. Pluggability is totally arbitrary

Drupal 8 There can be only one

Where are things stored? List of modules: CMI Date formats: CMI Text formats: CMI Arbitrary contrib: CMI or bust

How are things handled? Defined in a dependency injection container: easy and uniform to change Annotated classes: every kind of plugin has the same metadata definition Again, settings in CMI

So how will MongoDB fit? Inject via the DIC Sweep up the remaining little via a DB driver, but this is limited.

MongoDB distribution Necessary to be able to install without MySQL Ability to change things early and keep them changed

Existing drivers? Session: might become Symfony, then needs new driver Watchdog: this might change to Monolog or PSR-3. Entity storage: hopefully base entity storage also (I will work on this)

New drivers File usage Flood

CMI "driver" CMI canonical is YAML file Plus caching We have a cache driver For speed on queries, do not serialize on cache_config (other bins might have objects/arrays so serialize needed)