NoSQL in Fedora Infra
Yohan Graterol
@yograterol
Who am I?
- A free and open source software enthusiast young.
- Back-end Developer at Mejorando.la
- Ambassador, Packager and sporadic developer at Fedora.
Today's Topics
- Current Fedora Infra status.
- NoSQL vs SQL in develop for our infrastructure.
- Fedora and NoSQL engines.
- The step to new age.
- Summary
Current Fedora Infra status
GitHub
- Fedora has 62 public repositories.
-
32 people in the team.
- Major contributors: @ralphbean and @pypingou.
- Top projects: pkgdb2, bodhi, fedmsg and fas.
-
https://github.com/fedora-infra.
pkgdb2
- PackageDB2 is a rewrite of packagedb using Flask.
- PackageDB is the package database for Fedora.
- Technology:
- Flask
- SQLAlchemy
- WTForm
- Memcached <-- :)
bodhi
- Web app to manage updates for a Fedora-based software.
- Technology:
- Pyramid
- SQLAlchemy
- Babel
- fedmsg
fedmsg
- Utilities used around Fedora to send/receive messages.
- Technology:
NoSQL vs SQL in develop for our infrastructure.
NoSQL
- NoSQL or Not Only SQL.
- Uses:
- Actual SQL scenario
- Big Data
- Real Time application.
-
Feature:
- Simplicity of design
- Horizontal Scaling
- Easy administration and develop
- Multiples options
NoSQL types
- Document store.
Graph.
Key-Value Storage
Object database
Tabular
Performance
- Architecture is important.
- An engine with more development.
- Memory before disk.
- A language friendly with NoSQL, example:
Administration and Development
- For Sysadmin is easy.
- KISS, KISS and KISS.
- The language is friendly with human queries.
- The cloud helps us.
- Tools for development as MongoEngine or Mongous.
SQL
- Is the old man.
- SQL standards.
- PostgreSQL and MySQL.
- ORM.
- Hard administration.
Fedora and NoSQL engines.
NoSQL by SQL?
- Current projects can be changed.
- Begin with cache.
- For API is great.
- New development with NoSQL for default.
- Migrate data from RDBMS to NoSQL engine.
- New collaborators for this new task.
Infrastructure
- We need clusters?
- MongoDB or CouchDB are easy to scale.
- Key-store engine as Redis or Memcached for information exchange.
- Write concern if we want to confirm write operations.
Made with Slides.com