SlideShare a Scribd company logo
MongoDB Days Silicon Valley
Winning the Dreamforce
Hackathon with MongoDB
db.mongoDaysSV.insert(
{
“init”: “Welcome Message”,
“author”: “Greg Deeds”,
“twitter”: “@TEGBIZ”,
setInterval: 162000
}
);
RAPID PROTOTYPING
with MongoDB
You want to change
the game?
You have 24 hours...
Two True Tales Of
MongoDB
MongoDB & Force // GR
• API driven rapid prototyping
• HEROKU CONTAINERIZATION
• MASS IMPORT DATA SCIENCE
DRONEY EXPRESS // MongoDB your range
• Geospatial & Autonomous
MongoDB or RDBMS
Winning with MongoDB
• Developing Rapid Prototypes
• Winning Hackathons with MongoDB
• Drones / MongoDB {Range Management}
MongoDB
or
stay in the RDBMS Matrix
Give Up The Old And Win
• Traditional DevOps Practitioner moved to Micro-services
{Microsoft .NET & SQL Server}
{Oracle APEX-PL/SQL & Oracle Server}
{Any Linux... MySQL/POSTGRES}
• Teamwork to overworked evolutions
• My SQL Dreams never materialized - {WHATS NEXT!}
• AGILITY TRAIN YOUR MIND AS A LIFESTYLE
The Early Days
MY BACKGROUND
• Started in 1979 {Ti99/Tape Deck}
• Wrote first database on Commodore
• BBS Author/ISP {One of the young ones}
• Multimedia Producer // Software Engineer
• Worked for corporations to startups
{ Military / Federal / Education }
• The Writing is on the Wall - MongoDB Time!
My Computing History
TI-99/4A{circa 1982}
Monuments to Awesome-ness
Languages & Coding
{Berkeley Logo}
Languages & Coding
{Learning to Communicate}
Languages & Coding
{Standing on the Shoulders of Giants
to Communicate}
MongoDB Days Silicon Valley: Winning the Dreamforce Hackathon with MongoDB
MongoDB
Queries Support Projection!
PROBLEM: The data is available but in various formats,
not easy to use and is changing
• Accessing your government should not be data
science or outside of SalesForce.com
• PLATFORM HEROKU - {the app processing grid}
Our target user ranges from the socially conscious individual to Publicly Traded
Companies and Governments. Our comprehensive tool will allow…
• Grassroots Organizations, Associations
• Publicly Traded Companies
• Lobbyists, PACs and Governments
Manage information
• Up-to-Date Congressional Legislator Directories
• Congressional / State Legislation Tracking
• Easy Meetings Management
• Bill and Amendments Tracking
• Committees and more
We are most proud of the tool because it allows both individuals and
organizations to understand the landscape of our Government, politics,
and social activism.
MongoDB & Droney Express
ForceGR / SPEC
• FORCE.COM APP Generator
• APEX & PL/SQL Classes
• Restful NODEJS HEROKU
• Mongo for Import, Reduce and Production
MongoDB Days Silicon Valley: Winning the Dreamforce Hackathon with MongoDB
MongoDB Days Silicon Valley: Winning the Dreamforce Hackathon with MongoDB
A Global Competition
MongoDB Days Silicon Valley: Winning the Dreamforce Hackathon with MongoDB
Data Sets Matter
• Variety Of Formats
• YAML // XML // JSON // CSV // TAB
• Normalized only for XML / DTD files.
• Multiple websites crawled/parsed
{Using RSYNC || PHP To Bulk Load Objects}
• Aggregate Pipeline
• Build Words / Terms from triples
• Semantic to understand {What you say}
• Latent Semantic to understand {What you mean}
• MongoDB // Provides both when used in pipeline
with other word bag or terminology generators
• The results are we find correlation in unnormalized
data
Data Miner Mongo DB
MongoDB Days Silicon Valley: Winning the Dreamforce Hackathon with MongoDB
Over 500k Objects
MongoDB Days Silicon Valley: Winning the Dreamforce Hackathon with MongoDB
MongoDB Days Silicon Valley: Winning the Dreamforce Hackathon with MongoDB
• Monitor the query in MongoDB reactively
{Check to see how the indexes need to improve with a statistics
collection of performance and counters for the API}
• Compound indexes need to be built on geojson first
then other fields when used
• Consider using elastic search to boost the Hackathon
Team to victory if free text is slow
Use Conditional Indexes
{add Agility_new ways working with this data?}
• Find source files over APIs //
{ to maintain high speed with no throttles. Hackathon
bandwidth is varied sometimes when you need it. It gets
worse with time }
• Use Old School Shell Tools //
{ NodeJS is not ideal for all challenges }
• PHP
• PERL
• PyThon
• RSYNC
MISSION: Data Capture
• The focus of TEG’s FORCEGR tool is to
present information into SalesForce users
Desktop
• Then to make decisions about responses to
these decisions
• Further guiding the NodeJS learning engine
APEX CLASSES / INTERACTIONS
question =
(my_department, has, what)
knowledge = (
(I, own, my_apartment),
(my_department, has,
my_computer),
(my_department, has, my_vote),
(my_department, is_in,
Philadelphia)
)
‘$push’
‘$pop’
‘$unset’
‘$set’
bye bye SQL...
Sew the Dataset
The Team
• .NET/Oracle APEX/PLSQL is heavy Spiral DEVOPS
• The Browser Wars- We Won {HTML5/Javascript Rocks}
• SUBVERSION TO GIT DEVOPS TO NEW CHATOPS
{Your Dated If You Can’t GIT With It…}
• Shifts in web computer science
• Multitouch surface the GPU and JavaScript are the
next big shift
Recognizing Shift
• Practice writing specifications for NOSQL
• Use New tools to trap ideas
• CHECK YOUR ROADMAP?
{ are you on course & time? }
• Gain momentum by solving problems quicker
• GIT more done { Practice like you play the game }
• Organization to Reproduce Results
{use automated ‘Agents’ when possible & makes sense}
{containerize your app with docker or Heroku}
Next Generation DevOps
question = (my_department, has, what)
knowledge = (
(I, own, my_apartment),
(my_department, has, my_computer),
(my_department, has, my_vote),
(my_department, is_in, Philadelphia)
)
for each statement in knowledge {
if ((statement.subject == question.subject
or question.subject == what) {
and (statement.predicate == question.predicate
or question.predicate == what)
and (statement.object == question.object
or question.object == what))
call FoundAnswer(statement)
}
}
Output:
Answer: my_department has my_computer
Answer: my_department has my_vote
Pseudocode for Question-
Answering Logic in NodeJS
MongoDB Days Silicon Valley: Winning the Dreamforce Hackathon with MongoDB
• Ask yourself on each project freshly
{What else is aggregation good for?}
• HINT: You can use the $out pipeline
operator and it will create or replace the
collection it spits out, after the results
are ready....
Aggregation Tips
{ Use the Pipeline, Luke! }
if (! Links.find().count()) {
// init data
var nodeNames = [];
var data = ['Harry,Sally,1.2',
'Rubio,Mario,1.3',
'Obama,Barrack,0.2',
'Thompson,Fred,0.5',
'Peter,Johan,0.7'];
_.each(data, function (val) {
var comp = val.split(',');
Links.insert({ source: comp[0], target: comp[1], compute: comp[2] });
nodeNames.push(comp[0]);
nodeNames.push(comp[1]);
});
// remove duplicates
nodeNames = _.uniq(nodeNames);
_.each(nodeNames, function (name) { Things.insert({ _id: name }); });
}
Finesse by using new tools
VICTORY
It never lasts long enough....
MongoDB &
Droney Express
• HTML5 & WebGL ODM Tools
• MongoDB Powering Geoserver Raster
• Realtime 3-D Model Scenes In A Browser
Hibernate ORM is Dead
{long live MongoDB ODM}
Hibernate ORM VS MongoDB ODM
• Hibernate Maps Java Objects To RDBMS And Is
Proven Not Scalable
• RDBMS load times for a single object graph
(Hibernate/SQL Server) from 3 to 4 seconds
• Relational model is not suited for complex object
graphs.
• Even with massive parallel processing is not
economical
Hibernate Search
• Cannot Beat Elastic-search & MongoDB In
Response Speed
Business Opportunity
• ORM Hibernate JBOSS - Object/Relational Model
{storage has reached the end of life period…}
• MongoDB is the best object store on the market today
• Hibernate is complex when the world needs BSON
• MongoDB is Built For Replication
• Hibernate Replacement Is An Opportunity.
Market Need {MongoDB Sensor ODM}
Project Requirements
• Open Source/No Internet/Limited WiFI
• Runs on variety of low cost hardware
• Auto-deploys Via Docker On IoT Appliance
• Plugin To Existing GeoServer/ESRI/GRASS
• Replace Hibernate With MongoDB
Droney Express
{Range management System}
• Interchange GeoJSON set of Shapes & Waypoints
• RasberryPi Flight Computer running 2d Queries
• Objects Linked To External GIS Engine (GRASS/ESRI)
• AutoPilot Configuration In Flight/Over-The-Air
• MongoDB Monitors Situational Awareness Of
Missions
• GIS Query Results Stream As BSON Objects
What is a Mission?
Geographic Forensics
{sensor data store/search}
MongoDB Days Silicon Valley: Winning the Dreamforce Hackathon with MongoDB
The work of Droney Express
• Planned Geofence Scanning
• 2D/3D indexed sensor data
• GIS & MongoDB Is Powerful
• Integrated GIS Remote Monitoring
• Connect Using DDP To Sync Collections Adhoc
Sensor Range Management
Async Data Sync -> Use Oplog
For Synchronization
Serve GIS markup with pretty
maps using Geoserver...
MongoDB is perfect for
Sensors // sorry Oracle
Flight Plan For Best Routes
GIS Engines Accelerated By
MonogDB Can Handle
more ecological range management
sensors
faster coordinated ground and drone
assets
GEOJSON / MONGODB 2d
DRAINAGE MODELING
GIS ENGINE & PLUGIN
Droney Express Flight Planner
Least Cost Power & Route Calculator Export Tools For 3DR Ardupilot.
Replica Sets Are Ideal For
Network Segregation
HQ is Always Primary - Drones Always Secondary
Force Constant State of Disaster Recovery - Dedup
Drones Are Small Autonomous Collection Vehicles
Eventual Consistency In Loosely Coupled Networks
MongoDB Makes Life Easy
Secondaries DeDup Secondaries To Update HQ GIS
Backends For Mission Planning & Sensor Datasets
Droney Heartbeatmodeled from mongoDB University
Airborne MongoDB Prevent Election Of New Primary
Droney Flight Computer Always Have Priority Of 0
They Never Get Elected To Primary
[Priority, Optime, Connections]
Sync Using Oplog To HQ After Weeks In Field
Network Environment Spotty For MongoDB Servers
Statement Replication
...Getting The Data To HQ
Droney Acquires Forensic Sensor Data - ‘A Data Silo’
Facilitates Greater Independence
Replicate Based Oplog For Forensic Time-coding
Member Replica Sync Stored Records Using Oplog
Use Oplog To Journal AutoPilot For Flight Review
MongoDB Secondaries Apply Unique ID Vs Primary
Keeps Mobile Workers From Overwriting Datasets
Cheap IoT Devices MongoDB 32bit
Flight Computers & Range Sensors With Embedded MongoDB
In Flight Computers Are Low Power/LINUX Threaded
Sensors Streaming Data To/From MongoDB
Autopilot Flight Recorder Is MongoDB/NodeJS
IoT SD Cards - Ideal For Circular Buffers In Flight
Circular Buffers Makes Room For New Documents
Overwrite The Oldest Documents In A Collection
Final Thought..
NO CAMPING … KEEP CLIMBING!
CONSIDER THE FUTURE OF YOUR TIME
STUDY NEXT GENERATION DEVOPS
SAY “WHY CANT WE FIRST”
SHARPEN UP REGULARLY
TEST YOUR SKILLS OR TEACH A SKILL
Greg Deeds
Technology Exploration Group
SALES@TEGbiz.com
www.TEGbiz.com
@TEGbiz
@DRONEYEXPRESS
@3dVRviewers

More Related Content

PPTX
MongoDB Days Silicon Valley: Introducing MongoDB 3.2
PPTX
High Performance Applications with MongoDB
PDF
Webinar: Developing with the modern App Stack: MEAN and MERN (with Angular2 a...
PPTX
MongoDB Days Silicon Valley: Jumpstart: Ops/Admin 101
PPTX
Webinar: Best Practices for Getting Started with MongoDB
PPTX
Introduction to MongoDB
PPTX
Back to Basics: My First MongoDB Application
PPTX
Back to Basics Webinar 2: Your First MongoDB Application
MongoDB Days Silicon Valley: Introducing MongoDB 3.2
High Performance Applications with MongoDB
Webinar: Developing with the modern App Stack: MEAN and MERN (with Angular2 a...
MongoDB Days Silicon Valley: Jumpstart: Ops/Admin 101
Webinar: Best Practices for Getting Started with MongoDB
Introduction to MongoDB
Back to Basics: My First MongoDB Application
Back to Basics Webinar 2: Your First MongoDB Application

What's hot (20)

PPT
Migrating to MongoDB: Best Practices
PPTX
MongoDB Schema Design: Practical Applications and Implications
PPTX
Database Trends for Modern Applications: Why the Database You Choose Matters
PPT
5 Pitfalls to Avoid with MongoDB
PDF
Webinar: Building Your First App with MongoDB and Java
PPTX
MongoDB 101
PDF
Building your first app with MongoDB
PPTX
Intro To Mongo Db
PDF
Back to Basics 2017: Mí primera aplicación MongoDB
PPTX
Conceptos básicos. Seminario web 2: Su primera aplicación MongoDB
KEY
PDF
Introduction to MongoDB
PPTX
Back to Basics Webinar 1: Introduction to NoSQL
ODP
MongoDB : The Definitive Guide
PDF
Mongo DB
PDF
How To Connect Spark To Your Own Datasource
PPTX
Back to Basics Spanish 4 Introduction to sharding
KEY
Practical Ruby Projects With Mongo Db
PPTX
Conceptos básicos. seminario web 3 : Diseño de esquema pensado para documentos
PPTX
Conceptos básicos. Seminario web 4: Indexación avanzada, índices de texto y g...
Migrating to MongoDB: Best Practices
MongoDB Schema Design: Practical Applications and Implications
Database Trends for Modern Applications: Why the Database You Choose Matters
5 Pitfalls to Avoid with MongoDB
Webinar: Building Your First App with MongoDB and Java
MongoDB 101
Building your first app with MongoDB
Intro To Mongo Db
Back to Basics 2017: Mí primera aplicación MongoDB
Conceptos básicos. Seminario web 2: Su primera aplicación MongoDB
Introduction to MongoDB
Back to Basics Webinar 1: Introduction to NoSQL
MongoDB : The Definitive Guide
Mongo DB
How To Connect Spark To Your Own Datasource
Back to Basics Spanish 4 Introduction to sharding
Practical Ruby Projects With Mongo Db
Conceptos básicos. seminario web 3 : Diseño de esquema pensado para documentos
Conceptos básicos. Seminario web 4: Indexación avanzada, índices de texto y g...

Similar to MongoDB Days Silicon Valley: Winning the Dreamforce Hackathon with MongoDB (20)

PDF
Accra MongoDB User Group
PDF
MongoDB SoCal 2020: Migrate Anything* to MongoDB Atlas
PPTX
CDC to the Max!
PPTX
Big Data and NoSQL for Database and BI Pros
PDF
DSDT Meetup Nov 2017
PDF
Dsdt meetup 2017 11-21
PDF
Confluent & MongoDB APAC Lunch & Learn
PDF
SQL vs NoSQL, an experiment with MongoDB
PPT
MongoDB Tick Data Presentation
PPTX
Big Data Goes Airborne. Propelling Your Big Data Initiative with Ironcluster ...
PPTX
Full-stack Web Development with MongoDB, Node.js and AWS
PPTX
Paris Data Geek - Spark Streaming
PPTX
MongoDB Charts Meetup - 7-24-2018
PPTX
Augmenting Mongo DB with treasure data
PPTX
Augmenting Mongo DB with Treasure Data
PDF
Log everything! @DC13
PPTX
Intro to big data analytics using microsoft machine learning server with spark
PDF
Workshop on Google Cloud Data Platform
PDF
JavaScript for Enterprise Applications
Accra MongoDB User Group
MongoDB SoCal 2020: Migrate Anything* to MongoDB Atlas
CDC to the Max!
Big Data and NoSQL for Database and BI Pros
DSDT Meetup Nov 2017
Dsdt meetup 2017 11-21
Confluent & MongoDB APAC Lunch & Learn
SQL vs NoSQL, an experiment with MongoDB
MongoDB Tick Data Presentation
Big Data Goes Airborne. Propelling Your Big Data Initiative with Ironcluster ...
Full-stack Web Development with MongoDB, Node.js and AWS
Paris Data Geek - Spark Streaming
MongoDB Charts Meetup - 7-24-2018
Augmenting Mongo DB with treasure data
Augmenting Mongo DB with Treasure Data
Log everything! @DC13
Intro to big data analytics using microsoft machine learning server with spark
Workshop on Google Cloud Data Platform
JavaScript for Enterprise Applications

More from MongoDB (20)

PDF
MongoDB SoCal 2020: Go on a Data Safari with MongoDB Charts!
PDF
MongoDB SoCal 2020: Using MongoDB Services in Kubernetes: Any Platform, Devel...
PDF
MongoDB SoCal 2020: A Complete Methodology of Data Modeling for MongoDB
PDF
MongoDB SoCal 2020: From Pharmacist to Analyst: Leveraging MongoDB for Real-T...
PDF
MongoDB SoCal 2020: Best Practices for Working with IoT and Time-series Data
PDF
MongoDB SoCal 2020: MongoDB Atlas Jump Start
PDF
MongoDB .local San Francisco 2020: Powering the new age data demands [Infosys]
PDF
MongoDB .local San Francisco 2020: Using Client Side Encryption in MongoDB 4.2
PDF
MongoDB .local San Francisco 2020: Using MongoDB Services in Kubernetes: any ...
PDF
MongoDB .local San Francisco 2020: Go on a Data Safari with MongoDB Charts!
PDF
MongoDB .local San Francisco 2020: From SQL to NoSQL -- Changing Your Mindset
PDF
MongoDB .local San Francisco 2020: MongoDB Atlas Jumpstart
PDF
MongoDB .local San Francisco 2020: Tips and Tricks++ for Querying and Indexin...
PDF
MongoDB .local San Francisco 2020: Aggregation Pipeline Power++
PDF
MongoDB .local San Francisco 2020: A Complete Methodology of Data Modeling fo...
PDF
MongoDB .local San Francisco 2020: MongoDB Atlas Data Lake Technical Deep Dive
PDF
MongoDB .local San Francisco 2020: Developing Alexa Skills with MongoDB & Golang
PDF
MongoDB .local Paris 2020: Realm : l'ingrédient secret pour de meilleures app...
PDF
MongoDB .local Paris 2020: Upply @MongoDB : Upply : Quand le Machine Learning...
PDF
MongoDB .local Paris 2020: Les bonnes pratiques pour sécuriser MongoDB
MongoDB SoCal 2020: Go on a Data Safari with MongoDB Charts!
MongoDB SoCal 2020: Using MongoDB Services in Kubernetes: Any Platform, Devel...
MongoDB SoCal 2020: A Complete Methodology of Data Modeling for MongoDB
MongoDB SoCal 2020: From Pharmacist to Analyst: Leveraging MongoDB for Real-T...
MongoDB SoCal 2020: Best Practices for Working with IoT and Time-series Data
MongoDB SoCal 2020: MongoDB Atlas Jump Start
MongoDB .local San Francisco 2020: Powering the new age data demands [Infosys]
MongoDB .local San Francisco 2020: Using Client Side Encryption in MongoDB 4.2
MongoDB .local San Francisco 2020: Using MongoDB Services in Kubernetes: any ...
MongoDB .local San Francisco 2020: Go on a Data Safari with MongoDB Charts!
MongoDB .local San Francisco 2020: From SQL to NoSQL -- Changing Your Mindset
MongoDB .local San Francisco 2020: MongoDB Atlas Jumpstart
MongoDB .local San Francisco 2020: Tips and Tricks++ for Querying and Indexin...
MongoDB .local San Francisco 2020: Aggregation Pipeline Power++
MongoDB .local San Francisco 2020: A Complete Methodology of Data Modeling fo...
MongoDB .local San Francisco 2020: MongoDB Atlas Data Lake Technical Deep Dive
MongoDB .local San Francisco 2020: Developing Alexa Skills with MongoDB & Golang
MongoDB .local Paris 2020: Realm : l'ingrédient secret pour de meilleures app...
MongoDB .local Paris 2020: Upply @MongoDB : Upply : Quand le Machine Learning...
MongoDB .local Paris 2020: Les bonnes pratiques pour sécuriser MongoDB

Recently uploaded (20)

PDF
Getting Started with Data Integration: FME Form 101
PPTX
A Presentation on Artificial Intelligence
PPTX
OMC Textile Division Presentation 2021.pptx
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PDF
August Patch Tuesday
PDF
Encapsulation theory and applications.pdf
PPTX
Tartificialntelligence_presentation.pptx
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
NewMind AI Weekly Chronicles - August'25-Week II
PDF
Approach and Philosophy of On baking technology
PPTX
cloud_computing_Infrastucture_as_cloud_p
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Heart disease approach using modified random forest and particle swarm optimi...
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
A comparative study of natural language inference in Swahili using monolingua...
PPTX
TechTalks-8-2019-Service-Management-ITIL-Refresh-ITIL-4-Framework-Supports-Ou...
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
Univ-Connecticut-ChatGPT-Presentaion.pdf
Getting Started with Data Integration: FME Form 101
A Presentation on Artificial Intelligence
OMC Textile Division Presentation 2021.pptx
MIND Revenue Release Quarter 2 2025 Press Release
August Patch Tuesday
Encapsulation theory and applications.pdf
Tartificialntelligence_presentation.pptx
Per capita expenditure prediction using model stacking based on satellite ima...
NewMind AI Weekly Chronicles - August'25-Week II
Approach and Philosophy of On baking technology
cloud_computing_Infrastucture_as_cloud_p
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Heart disease approach using modified random forest and particle swarm optimi...
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
A comparative study of natural language inference in Swahili using monolingua...
TechTalks-8-2019-Service-Management-ITIL-Refresh-ITIL-4-Framework-Supports-Ou...
Network Security Unit 5.pdf for BCA BBA.
Encapsulation_ Review paper, used for researhc scholars
Univ-Connecticut-ChatGPT-Presentaion.pdf

MongoDB Days Silicon Valley: Winning the Dreamforce Hackathon with MongoDB

  • 1. MongoDB Days Silicon Valley Winning the Dreamforce Hackathon with MongoDB
  • 2. db.mongoDaysSV.insert( { “init”: “Welcome Message”, “author”: “Greg Deeds”, “twitter”: “@TEGBIZ”, setInterval: 162000 } );
  • 4. You want to change the game? You have 24 hours...
  • 5. Two True Tales Of MongoDB MongoDB & Force // GR • API driven rapid prototyping • HEROKU CONTAINERIZATION • MASS IMPORT DATA SCIENCE DRONEY EXPRESS // MongoDB your range • Geospatial & Autonomous
  • 7. Winning with MongoDB • Developing Rapid Prototypes • Winning Hackathons with MongoDB • Drones / MongoDB {Range Management}
  • 8. MongoDB or stay in the RDBMS Matrix
  • 9. Give Up The Old And Win • Traditional DevOps Practitioner moved to Micro-services {Microsoft .NET & SQL Server} {Oracle APEX-PL/SQL & Oracle Server} {Any Linux... MySQL/POSTGRES} • Teamwork to overworked evolutions • My SQL Dreams never materialized - {WHATS NEXT!} • AGILITY TRAIN YOUR MIND AS A LIFESTYLE
  • 11. MY BACKGROUND • Started in 1979 {Ti99/Tape Deck} • Wrote first database on Commodore • BBS Author/ISP {One of the young ones} • Multimedia Producer // Software Engineer • Worked for corporations to startups { Military / Federal / Education } • The Writing is on the Wall - MongoDB Time!
  • 16. Languages & Coding {Learning to Communicate}
  • 17. Languages & Coding {Standing on the Shoulders of Giants to Communicate}
  • 20. PROBLEM: The data is available but in various formats, not easy to use and is changing • Accessing your government should not be data science or outside of SalesForce.com • PLATFORM HEROKU - {the app processing grid}
  • 21. Our target user ranges from the socially conscious individual to Publicly Traded Companies and Governments. Our comprehensive tool will allow… • Grassroots Organizations, Associations • Publicly Traded Companies • Lobbyists, PACs and Governments Manage information • Up-to-Date Congressional Legislator Directories • Congressional / State Legislation Tracking • Easy Meetings Management • Bill and Amendments Tracking • Committees and more We are most proud of the tool because it allows both individuals and organizations to understand the landscape of our Government, politics, and social activism.
  • 22. MongoDB & Droney Express
  • 23. ForceGR / SPEC • FORCE.COM APP Generator • APEX & PL/SQL Classes • Restful NODEJS HEROKU • Mongo for Import, Reduce and Production
  • 28. Data Sets Matter • Variety Of Formats • YAML // XML // JSON // CSV // TAB • Normalized only for XML / DTD files. • Multiple websites crawled/parsed {Using RSYNC || PHP To Bulk Load Objects} • Aggregate Pipeline • Build Words / Terms from triples
  • 29. • Semantic to understand {What you say} • Latent Semantic to understand {What you mean} • MongoDB // Provides both when used in pipeline with other word bag or terminology generators • The results are we find correlation in unnormalized data Data Miner Mongo DB
  • 34. • Monitor the query in MongoDB reactively {Check to see how the indexes need to improve with a statistics collection of performance and counters for the API} • Compound indexes need to be built on geojson first then other fields when used • Consider using elastic search to boost the Hackathon Team to victory if free text is slow Use Conditional Indexes {add Agility_new ways working with this data?}
  • 35. • Find source files over APIs // { to maintain high speed with no throttles. Hackathon bandwidth is varied sometimes when you need it. It gets worse with time } • Use Old School Shell Tools // { NodeJS is not ideal for all challenges } • PHP • PERL • PyThon • RSYNC MISSION: Data Capture
  • 36. • The focus of TEG’s FORCEGR tool is to present information into SalesForce users Desktop • Then to make decisions about responses to these decisions • Further guiding the NodeJS learning engine APEX CLASSES / INTERACTIONS
  • 37. question = (my_department, has, what) knowledge = ( (I, own, my_apartment), (my_department, has, my_computer), (my_department, has, my_vote), (my_department, is_in, Philadelphia) )
  • 40. • .NET/Oracle APEX/PLSQL is heavy Spiral DEVOPS • The Browser Wars- We Won {HTML5/Javascript Rocks} • SUBVERSION TO GIT DEVOPS TO NEW CHATOPS {Your Dated If You Can’t GIT With It…} • Shifts in web computer science • Multitouch surface the GPU and JavaScript are the next big shift Recognizing Shift
  • 41. • Practice writing specifications for NOSQL • Use New tools to trap ideas • CHECK YOUR ROADMAP? { are you on course & time? } • Gain momentum by solving problems quicker • GIT more done { Practice like you play the game } • Organization to Reproduce Results {use automated ‘Agents’ when possible & makes sense} {containerize your app with docker or Heroku} Next Generation DevOps
  • 42. question = (my_department, has, what) knowledge = ( (I, own, my_apartment), (my_department, has, my_computer), (my_department, has, my_vote), (my_department, is_in, Philadelphia) ) for each statement in knowledge { if ((statement.subject == question.subject or question.subject == what) { and (statement.predicate == question.predicate or question.predicate == what) and (statement.object == question.object or question.object == what)) call FoundAnswer(statement) } } Output: Answer: my_department has my_computer Answer: my_department has my_vote Pseudocode for Question- Answering Logic in NodeJS
  • 44. • Ask yourself on each project freshly {What else is aggregation good for?} • HINT: You can use the $out pipeline operator and it will create or replace the collection it spits out, after the results are ready.... Aggregation Tips { Use the Pipeline, Luke! }
  • 45. if (! Links.find().count()) { // init data var nodeNames = []; var data = ['Harry,Sally,1.2', 'Rubio,Mario,1.3', 'Obama,Barrack,0.2', 'Thompson,Fred,0.5', 'Peter,Johan,0.7']; _.each(data, function (val) { var comp = val.split(','); Links.insert({ source: comp[0], target: comp[1], compute: comp[2] }); nodeNames.push(comp[0]); nodeNames.push(comp[1]); }); // remove duplicates nodeNames = _.uniq(nodeNames); _.each(nodeNames, function (name) { Things.insert({ _id: name }); }); } Finesse by using new tools
  • 46. VICTORY It never lasts long enough....
  • 48. • HTML5 & WebGL ODM Tools • MongoDB Powering Geoserver Raster • Realtime 3-D Model Scenes In A Browser Hibernate ORM is Dead {long live MongoDB ODM}
  • 49. Hibernate ORM VS MongoDB ODM • Hibernate Maps Java Objects To RDBMS And Is Proven Not Scalable • RDBMS load times for a single object graph (Hibernate/SQL Server) from 3 to 4 seconds • Relational model is not suited for complex object graphs. • Even with massive parallel processing is not economical Hibernate Search • Cannot Beat Elastic-search & MongoDB In Response Speed Business Opportunity
  • 50. • ORM Hibernate JBOSS - Object/Relational Model {storage has reached the end of life period…} • MongoDB is the best object store on the market today • Hibernate is complex when the world needs BSON • MongoDB is Built For Replication • Hibernate Replacement Is An Opportunity. Market Need {MongoDB Sensor ODM}
  • 51. Project Requirements • Open Source/No Internet/Limited WiFI • Runs on variety of low cost hardware • Auto-deploys Via Docker On IoT Appliance • Plugin To Existing GeoServer/ESRI/GRASS • Replace Hibernate With MongoDB Droney Express {Range management System}
  • 52. • Interchange GeoJSON set of Shapes & Waypoints • RasberryPi Flight Computer running 2d Queries • Objects Linked To External GIS Engine (GRASS/ESRI) • AutoPilot Configuration In Flight/Over-The-Air • MongoDB Monitors Situational Awareness Of Missions • GIS Query Results Stream As BSON Objects What is a Mission?
  • 55. The work of Droney Express • Planned Geofence Scanning • 2D/3D indexed sensor data • GIS & MongoDB Is Powerful • Integrated GIS Remote Monitoring • Connect Using DDP To Sync Collections Adhoc
  • 57. Async Data Sync -> Use Oplog For Synchronization Serve GIS markup with pretty maps using Geoserver... MongoDB is perfect for Sensors // sorry Oracle
  • 58. Flight Plan For Best Routes GIS Engines Accelerated By MonogDB Can Handle more ecological range management sensors faster coordinated ground and drone assets
  • 59. GEOJSON / MONGODB 2d DRAINAGE MODELING
  • 60. GIS ENGINE & PLUGIN Droney Express Flight Planner Least Cost Power & Route Calculator Export Tools For 3DR Ardupilot.
  • 61. Replica Sets Are Ideal For Network Segregation HQ is Always Primary - Drones Always Secondary Force Constant State of Disaster Recovery - Dedup Drones Are Small Autonomous Collection Vehicles Eventual Consistency In Loosely Coupled Networks MongoDB Makes Life Easy Secondaries DeDup Secondaries To Update HQ GIS Backends For Mission Planning & Sensor Datasets
  • 62. Droney Heartbeatmodeled from mongoDB University Airborne MongoDB Prevent Election Of New Primary Droney Flight Computer Always Have Priority Of 0 They Never Get Elected To Primary [Priority, Optime, Connections] Sync Using Oplog To HQ After Weeks In Field Network Environment Spotty For MongoDB Servers
  • 63. Statement Replication ...Getting The Data To HQ Droney Acquires Forensic Sensor Data - ‘A Data Silo’ Facilitates Greater Independence Replicate Based Oplog For Forensic Time-coding Member Replica Sync Stored Records Using Oplog Use Oplog To Journal AutoPilot For Flight Review MongoDB Secondaries Apply Unique ID Vs Primary Keeps Mobile Workers From Overwriting Datasets
  • 64. Cheap IoT Devices MongoDB 32bit Flight Computers & Range Sensors With Embedded MongoDB In Flight Computers Are Low Power/LINUX Threaded Sensors Streaming Data To/From MongoDB Autopilot Flight Recorder Is MongoDB/NodeJS IoT SD Cards - Ideal For Circular Buffers In Flight Circular Buffers Makes Room For New Documents Overwrite The Oldest Documents In A Collection
  • 65. Final Thought.. NO CAMPING … KEEP CLIMBING! CONSIDER THE FUTURE OF YOUR TIME STUDY NEXT GENERATION DEVOPS SAY “WHY CANT WE FIRST” SHARPEN UP REGULARLY TEST YOUR SKILLS OR TEACH A SKILL
  • 66. Greg Deeds Technology Exploration Group [email protected] www.TEGbiz.com @TEGbiz @DRONEYEXPRESS @3dVRviewers