Ir al contenido principal

MongoDB I

NoSQL DB

Categories

  • Document DB (MongoDB)
  • Key-value DB (Redis, *Speed)
  • Column-family DB (Cassandra)
  • Graph DB (Neo4J)

Document DB

Contains information in any format as JSON

  • Document - {"name":"user", "desc": "employee"}
  • Collection - Set of documents

Benefits

  • Availability
  • Consistency
  • Partion tolerance
  • Ease of deployment
    • No object-relation mapping required

Format

MongoDB store the information in BSON (Binary JSON format)
  • Contains about the type of a field value
  • Primitive types are supported as date time, raw binary, ObjectId

ObjectId 

By default MongoDB assign an id if you don't declare one


{
    "_id" : ObjectId("234234234"),
    "name" : "pizza" ,
     "desc" : "pepperoni"
}

  • 4- digits : timestamp
  • 3 - machine 
  • 2 - proc Id
  • 3 - increment

  • id.getTimestamp()  -  returns the timest in ISO formatpe: 

Commands 

  • Start DB
    • Type: mongo
  • DB
    • Show the current DB
  • use
    • Change the DB that has to be used
  • db.help();
    • Shows all the available commands
  • db.<colletion_name>.insert
    • Create a collection
  • db.<colletion_name>.find()
    • Show all the collections
  • db.<colletion_name>.find().pretty()
    • Show  all the collections in a better format
  • getTimestamp()
    • Show the date when the object was inserted

Installation

  • Download and install mongoDB
    • Create a folder named:
      • data
      • log
    • Create a config mongo.config
      • Type: dbpath=C:\Program Files\MongoDB\data
      • logpath=C:\Program Files\MongoDB\log
      • diaglog=3
  • By standart
    • Create a folder named mongodb 
    • Create a subfolder named data
  • From the console move to data and start Mongo
      • Type:  mongod --dbpath = data
  • Start
    • Type in another console:  mongo
    • Select DB
      • Type: use <DB Name>

Comentarios

Entradas populares de este blog

C# Using tabs

To use tabs in C# use the TabContainer element from AjaxControlToolkit Include AjaxControlToolkit  Include in the Web.config file, inside the tag <system.web> the following code  <pages>       <controls>         <add tagPrefix="ajaxCTK" namespace="AjaxControlToolkit" assembly="AjaxControlToolkit"/>       </controls>     </pages>   Include TabContainer element First  include TabContainer element that is the section where all the tabs will be displayed. <ajaxCTK:TabContainer ID="TabContainerUpdate" runat="server"                 Height="800"                 CssClass="ajax__tab_style"> </ajaxCTK:TabContainer> Second per each tab include the following code corresponding to each ...

Rails - Basic Steps III

pValidations Validations are a type of ActiveRecord Validations are defined in our models Implement Validations Go to   root_app/app/models Open files  *.rb for each model Mandatory field validates_presence_of   :field Ex:   validates_presence_of    :title Classes The basic syntax is class MyClass        @global_variable                def my_method              @method_variable        end end Create an instance myInstance = MyClass.new Invoke a mehod mc.my_method class() method returns the type of the object In Ruby, last character of method define the behavior If ends with a question -> return a boolean value If ends with an exclamation -> change the state of the object Getter / Setter method def global_variable       return @global_variable end ...

Python create package

Create a root folder Create a sub-folder "example_pkg" that contains the funtionallity packaging_tutorial/ example_pkg/ __init__.py In the root folder create the following structure  packaging_tutorial/ example_pkg/ __init__.py tests/ setup.py LICENSE README.md in the setup.py contains the configuration of the packages your package is found by find_packages() import setuptools with open ( "README.md" , "r" ) as fh : long_description = fh . read () setuptools . setup ( name = "example-pkg-YOUR-USERNAME-HERE" , # Replace with your own username version = "0.0.1" , author = "Example Author" , author_email = "author@example.com" , description = "A small example package" , long_description = long_description , long_description_content_type = "text/markdown" , url = "https://github.com/pypa/sam...