mongodb-project

1.0.4 • Public • Published

MongoDB-Project

MongoDB-Project è un progetto il cui scopo è studiare e trattare database noSQL tramite il DMSB non relazionale MongoDB. E' stato sviluppato (in Node.js) su steps progressivi:

  1. Script di creazione di databases con uno schema standard, studiato per aumentare l'efficienza del database. I principali aspetti di cui si è tenuto conto sono:
    • non ridondanza dei dati
    • velocità nel retrieve delle informazioni
  2. Script di testing dell'efficienza database, utile a confrontrontare database con poche collezioni e molti documenti e database con molte collezioni e pochi documenti. L'efficienza è viene valutata tramite il cronometraggio di query di find.
  3. Creazione di un'Api che fornisca gli endpoint per accedere al database per le operazioni di GET e PUSH.
  4. Script per la migrazione di un database in uno nuovo con il nuovo schema studiato e testato nei punti precedenti.
  5. Refactoring del progetto e publish del progetto sottoforma di npm package sotto il nome "mongodb-project".
In ./src/usageExample.js c'è un esempio che fa da linea guida di come può essere usato il "mongob-project" npm package.

mongodb-project npm package

Installazione:

npm i mongodb-project

Esempio d'uso:

const olyo = require('mongodb-project')

Gestione del database: olyo.manageDatabase.createDatabase(dbInfo) olyo.mangeDatabase.dropDatabase(dbInfo) olyo.manageDatabase.testDatabase(dbInfo) olyo.manageDatabase.migrateDatabase(dbInfo) Uso dell'Api: olyo.server.startServer(dbInfo, listeningPort);

GET
path: api/contactList
headers: sandoutId, pageId

path: api/count ? type = (sends |reads | clickBtn | clickLink ) ? best = (true | false)
headers: sandoutId, pageId


POST
path: api/
body: pageId, sandoutId, contactId, messageId, timestamp, type

dbInfo object

{
    name : String,         
    collectionsNumber : Number,
    collectionsSize : Number,
    stackOfItemsSizes: {
        sizeStackSends: Number,
        sizeStackClickBtn: Number,
        sizeStackClickLink: Number
    },
    sandoutSchema: {
        contactsSize: Number,
        sendsSize: Number,
        clickBtnSize: Number,
        clickLinksize: Number,
    },
    port: Number
} 

Readme

Keywords

none

Package Sidebar

Install

npm i mongodb-project

Weekly Downloads

0

Version

1.0.4

License

ISC

Unpacked Size

42.5 kB

Total Files

13

Last publish

Collaborators

  • damianobellucci