SlideShare a Scribd company logo
Tikal Fuse Day Access layer implementation (C#) based on MongoDB Session leaders: Michael Lvov & Igor  Zelmanovich
Agenda Session ambition   Session prerequisites Motivation MongoDB  - document-oriented database MongoDB Dot.Net driver C# examples: Create DB and Insert data C# examples: Queries BlogEngine.NET
Session ambition   Implement Data Access layer based on  MongoDB and integrate it into BlogEngine.NET project
Session prerequisites  Visual Studio 2008 MongoDB server (http://www.mongodb.org/display/DOCS/Downloads) MongoDB C# driver (http://github.com/samus/mongodb-csharp/downloads) BlogEngine.NET (v 1.6) source code and binaries from CodePlex (http://blogengine.codeplex.com/releases/view/39387) Github account for getting write access to repository
Motivation  Modern projects need to manipulate with huge data amount, as result the necessity of high scalability and  high performance is very actual and always grows RDBMS databases cannot supply ultimate solution and alternative concepts like in NoSQL systems look very interesting Key-value stores like Google Big Table or Cassandra that provide fast and extremely large-scale solution but you can forget the comfort work with SQL queries like in RDBMS databases.    
  MongoDB  - document-oriented database Document-oriented databases combine between advantages of  DBMS databases and key-values stores MongoDB is a scalable, high-performance, schema-free document-oriented DB, supports dynamic queries in JSON-style format, indexes, replication, sharding, MapReduce. Development by commercial company as open-source project written in C++. There are a lot of documentation, tutorials and samples on project site.  Interface based on native drivers that exist for most environments: C, C++,Java,Python,Ruby...
MongoDB Dot.Net driver Mongodb-csharp  Open-source project Written in C# Support Mono  LINQ support
C# examples: Create DB and Insert data Mongo mongo = new Mongo(); mongo.Connect(); IMongoCollection postsTbl = mongo.getDB("BlogDB").GetCollection("Posts"); Document post = new Document(); post["Tittle"] = "Tittle1"; post["Timestamp"] = DateTime.Now; postsTbl.Insert(post);
C# examples: Queries Document spec = new Document(); spec["Tittle"] = "Tittle1"; Document myPost = postsTbl.FindOne(spec); or with LINQ IMongoQuery query = postsTbl.AsQueryable(); var docs = query.Where(doc => doc["Tittle"] == "Tittle 1");
BlogEngine.NET Open source .NET blogging project Very easy to setup and customize  Layers separation DataAccess customization – only implement well-defined data provider interface
Q & A

More Related Content

ODP
MongoDB + Pylons FTW: Scalable Web apps with Python & NoSQL
PDF
The Next Generation Software Stack: Meteor
PDF
MongoDB for Oracle Experts - OUGF Harmony 2014
PPTX
Domain specific languages in eclipse with Xtext (Zeus, UGent)
PDF
PPTX
.NET Fest 2018. Martin Ullrich. MSBuild: Understand and Customize Your .NET B...
PDF
RESTful with Drupal - in-s and out-s
MongoDB + Pylons FTW: Scalable Web apps with Python & NoSQL
The Next Generation Software Stack: Meteor
MongoDB for Oracle Experts - OUGF Harmony 2014
Domain specific languages in eclipse with Xtext (Zeus, UGent)
.NET Fest 2018. Martin Ullrich. MSBuild: Understand and Customize Your .NET B...
RESTful with Drupal - in-s and out-s

What's hot (16)

PPTX
Part One: Building Web Apps with the MERN Stack
PPTX
Level 101 for Presto: What is PrestoDB?
PPT
Orion - IDE on the cloud
PDF
JSON API Specificiation
PDF
What's new in Silverstripe 4? (StripeCon APAC 2016)
PPTX
【EDD Workshop@140718】eztable architecture hao kang den
PDF
NoSQLEU: Different NoSQL tools in Production
PPTX
#3 Hanoi Magento Meetup - Part 3: Magento Website Optimization
PDF
Collaborative environment with data science notebook
PDF
Let’s template
PDF
Mining a Large Web Corpus
PDF
Midgard2: Content repository for desktop and the web
PPTX
Intoduction of FIrebase Realtime Database
PDF
Full stack
PDF
Tech stack
PDF
Creating Data Driven HTML5 Applications
Part One: Building Web Apps with the MERN Stack
Level 101 for Presto: What is PrestoDB?
Orion - IDE on the cloud
JSON API Specificiation
What's new in Silverstripe 4? (StripeCon APAC 2016)
【EDD Workshop@140718】eztable architecture hao kang den
NoSQLEU: Different NoSQL tools in Production
#3 Hanoi Magento Meetup - Part 3: Magento Website Optimization
Collaborative environment with data science notebook
Let’s template
Mining a Large Web Corpus
Midgard2: Content repository for desktop and the web
Intoduction of FIrebase Realtime Database
Full stack
Tech stack
Creating Data Driven HTML5 Applications
Ad

Similar to Tikal Fuse Day Access Layer Implementation (C#) Based On Mongo Db (20)

PDF
Introduction to MongoDB
PPTX
NoSQL, which way to go?
PPTX
No SQL : Which way to go? Presented at DDDMelbourne 2015
PPTX
Getting Started with MongoDB Using the Microsoft Stack
PDF
MongoDB at FrozenRails
PPT
9. Document Oriented Databases
KEY
MongoDB - Ruby document store that doesn't rhyme with ouch
PDF
Q con london2011-matthewwall-whyichosemongodbforguardiancouk
KEY
MongoDB and hadoop
PPTX
Intro To Mongo Db
KEY
MongoDB at CodeMash 2.0.1.0
PPT
Document Databases & RavenDB
PDF
Chris Lea - What does NoSQL Mean for You
KEY
MongoDB Strange Loop 2009
PPTX
Dev Jumpstart: Build Your First App with MongoDB
PPTX
Why Organizations are Looking at Alternative Database Technologies – Introduc...
PPTX
Freeing Yourself from an RDBMS Architecture
KEY
2012 phoenix mug
KEY
MongoDB London PHP
PDF
Mongo db first steps with csharp
Introduction to MongoDB
NoSQL, which way to go?
No SQL : Which way to go? Presented at DDDMelbourne 2015
Getting Started with MongoDB Using the Microsoft Stack
MongoDB at FrozenRails
9. Document Oriented Databases
MongoDB - Ruby document store that doesn't rhyme with ouch
Q con london2011-matthewwall-whyichosemongodbforguardiancouk
MongoDB and hadoop
Intro To Mongo Db
MongoDB at CodeMash 2.0.1.0
Document Databases & RavenDB
Chris Lea - What does NoSQL Mean for You
MongoDB Strange Loop 2009
Dev Jumpstart: Build Your First App with MongoDB
Why Organizations are Looking at Alternative Database Technologies – Introduc...
Freeing Yourself from an RDBMS Architecture
2012 phoenix mug
MongoDB London PHP
Mongo db first steps with csharp
Ad

More from Tikal Knowledge (20)

PDF
Clojure - LISP on the JVM
ODP
Clojure presentation
PDF
Tabtale story: Building a publishing and monitoring mobile games architecture...
PDF
Kafka short
PDF
PDF
Processing Big Data in Realtime
PDF
Docking your services_with_docker
PDF
Who moved my_box
PDF
Writing a Fullstack Application with Javascript - Remote media player
PDF
.Net OSS Ci & CD with Jenkins - JUC ISRAEL 2013
PDF
Tikal's Backbone_js introduction workshop
PPTX
TCE Automation
PPTX
Tce automation-d4
ODP
Cloud computing - an insight into "how does it really work ?"
PDF
Introduction to Cloud Computing
PDF
Ship early ship often with Django
ODP
Google App Engine
PDF
AWS Case Study
PDF
Introduction To Cloud Computing
PPT
Building Components In Flex3
Clojure - LISP on the JVM
Clojure presentation
Tabtale story: Building a publishing and monitoring mobile games architecture...
Kafka short
Processing Big Data in Realtime
Docking your services_with_docker
Who moved my_box
Writing a Fullstack Application with Javascript - Remote media player
.Net OSS Ci & CD with Jenkins - JUC ISRAEL 2013
Tikal's Backbone_js introduction workshop
TCE Automation
Tce automation-d4
Cloud computing - an insight into "how does it really work ?"
Introduction to Cloud Computing
Ship early ship often with Django
Google App Engine
AWS Case Study
Introduction To Cloud Computing
Building Components In Flex3

Recently uploaded (20)

PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PPT
Teaching material agriculture food technology
PDF
KodekX | Application Modernization Development
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PPTX
Cloud computing and distributed systems.
PPTX
Big Data Technologies - Introduction.pptx
DOCX
The AUB Centre for AI in Media Proposal.docx
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PDF
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PDF
CIFDAQ's Market Insight: SEC Turns Pro Crypto
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
Advanced IT Governance
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PDF
GDG Cloud Iasi [PUBLIC] Florian Blaga - Unveiling the Evolution of Cybersecur...
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
20250228 LYD VKU AI Blended-Learning.pptx
Mobile App Security Testing_ A Comprehensive Guide.pdf
Teaching material agriculture food technology
KodekX | Application Modernization Development
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Cloud computing and distributed systems.
Big Data Technologies - Introduction.pptx
The AUB Centre for AI in Media Proposal.docx
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Chapter 3 Spatial Domain Image Processing.pdf
CIFDAQ's Market Insight: SEC Turns Pro Crypto
Per capita expenditure prediction using model stacking based on satellite ima...
Advanced IT Governance
Diabetes mellitus diagnosis method based random forest with bat algorithm
GDG Cloud Iasi [PUBLIC] Florian Blaga - Unveiling the Evolution of Cybersecur...

Tikal Fuse Day Access Layer Implementation (C#) Based On Mongo Db

  • 1. Tikal Fuse Day Access layer implementation (C#) based on MongoDB Session leaders: Michael Lvov & Igor Zelmanovich
  • 2. Agenda Session ambition   Session prerequisites Motivation MongoDB - document-oriented database MongoDB Dot.Net driver C# examples: Create DB and Insert data C# examples: Queries BlogEngine.NET
  • 3. Session ambition   Implement Data Access layer based on MongoDB and integrate it into BlogEngine.NET project
  • 4. Session prerequisites  Visual Studio 2008 MongoDB server (http://www.mongodb.org/display/DOCS/Downloads) MongoDB C# driver (http://github.com/samus/mongodb-csharp/downloads) BlogEngine.NET (v 1.6) source code and binaries from CodePlex (http://blogengine.codeplex.com/releases/view/39387) Github account for getting write access to repository
  • 5. Motivation  Modern projects need to manipulate with huge data amount, as result the necessity of high scalability and  high performance is very actual and always grows RDBMS databases cannot supply ultimate solution and alternative concepts like in NoSQL systems look very interesting Key-value stores like Google Big Table or Cassandra that provide fast and extremely large-scale solution but you can forget the comfort work with SQL queries like in RDBMS databases.    
  • 6. MongoDB - document-oriented database Document-oriented databases combine between advantages of DBMS databases and key-values stores MongoDB is a scalable, high-performance, schema-free document-oriented DB, supports dynamic queries in JSON-style format, indexes, replication, sharding, MapReduce. Development by commercial company as open-source project written in C++. There are a lot of documentation, tutorials and samples on project site.  Interface based on native drivers that exist for most environments: C, C++,Java,Python,Ruby...
  • 7. MongoDB Dot.Net driver Mongodb-csharp Open-source project Written in C# Support Mono LINQ support
  • 8. C# examples: Create DB and Insert data Mongo mongo = new Mongo(); mongo.Connect(); IMongoCollection postsTbl = mongo.getDB("BlogDB").GetCollection("Posts"); Document post = new Document(); post["Tittle"] = "Tittle1"; post["Timestamp"] = DateTime.Now; postsTbl.Insert(post);
  • 9. C# examples: Queries Document spec = new Document(); spec["Tittle"] = "Tittle1"; Document myPost = postsTbl.FindOne(spec); or with LINQ IMongoQuery query = postsTbl.AsQueryable(); var docs = query.Where(doc => doc["Tittle"] == "Tittle 1");
  • 10. BlogEngine.NET Open source .NET blogging project Very easy to setup and customize Layers separation DataAccess customization – only implement well-defined data provider interface
  • 11. Q & A