Skip to main content

Review old stuff: mongoDB

blockquote


Recently, I revisited old skills, extending to MongoDB. After reinstalling MongoDB, I felt that the website architecture had significantly changed compared to what I saw the last time I created a sample. My old sample project was a record of main characters from the Japanese anime "Demon Slayer." In just four years, from March 2020 to now, there has been a significant change in the website structure, indicating considerable improvements in MongoDB's functionality.


Resource

Some content has been spread out, but I find this arrangement clearer. Below are the resources I briefly looked up:

community version: https://www.mongodb.com/try/download/community-edition

MongoDB shell: https://www.mongodb.com/try/download/shell

Database tools: https://www.mongodb.com/try/download/bi-connector  ( dump, restore, import, export) 

NodeJS reference (developer): https://www.mongodb.com/docs/drivers/node/current/quick-reference/

mongosh manual: https://www.mongodb.com/docs/manual/reference/method/


mongoimport

mongoimport -d dest-db --jsonArray datafile.json

mongosh

Interesting topics covered during the review include:  
Count record:
db.collection.count()
Select some fields and remove _id:
db.collection.find({}, { field_name1: 1,  field_name2: 1,  _id:0 } ) 
Select and/or: (operator)
db.collection.find({field_name1:value1, { $or: [ { field_name2: { $lt: 20 } }, { field_name2: value2 } ] })
Use cursor:
var cursor1 = db.collection.find()
cursor1.next()
cursor1.close()

ExpressJS (NodeJs/JavaScript) 

Doc: 
mozilla: https://developer.mozilla.org/en-US/docs/Learn/Server-side/Express_Nodejs
npm install express
npm install express-generator -g
express project_name --view=jade
cd peoject_name
npm install
SET DEBUG=express-locallibrary-tutorial:* & npm start

# --view=dust|ejs|hbs|hjs|jade|pug|twig|vash 
# npm WARN deprecated mkdirp@0.5.1: ... https://stackoverflow.com/questions/62859986/error-when-install-express-generator-using-npm

mongoose

Docs: 
mongoose: https://mongoosejs.com/docs/index.html
npm: https://www.npmjs.com/package/mongoose

Install:

npm install mongoose --save 

In VS code, the following will be created: 

package.json 
package_lock.json
node_modules


Comments

Popular posts from this blog

Bookmark service (MongoDB & Spring REST) -2/2

    I accidentally deleted my development VM. I got lucky having the habit of taking notes. This blog is useful. Development VM is doom to be lost. Rebuild it waste time, but having a clean slate is refreshing~. What concerns me more is my AWS free quota this month is reaching 85%. The second VM I launched but never being used might be the one to blame. (Of course, my mistake.) I terminated the wrong VM. Now I got Linux 2 built. Great, just threw away everything happened on AMI.  1st layer: Page Page class   Originally, I need to prepare getter/setter for all class properties for Spring. By using lombok, I only need to create constructors. lombok will deal with getter/setter and toString(). But there are chances to call getter/setter, but how? .......Naming convention.... Capitalize the 1st character with the prefix get/set.  Annotation @Data was used on this class.  Repository class Spring Docs: Repository https://docs.spring.io/spring-data/mongodb/docs/3....

Guide to Preserving HuggingFace Models in Google Colab Environments

Conclusion:  Step 1:  find the model path: ls ~/.cache  Step 2:  Copy the entire folder to Google Drive:  Step 3:  Set model path to the subfolder under snapshot: My Story: I initially began exploring Generative AI (GAI) and Google Colab through Stable Diffusion. In the past, as I mainly wrote server services and console applications, I was less familiar with data science modes like R and Jupyter that can maintain a paused state. I didn't quite understand the heavy burden on Colab of creating a temporary Stable Diffusion WebUI with .ipynb, as suggested by popular guides. I just found it troublesome that connections often took a long time and then dropped, requiring a restart. Recently, while testing new versions of the Stable Diffusion model, and facing challenges due to Colab's policies making various versions of WebUI difficult to run successfully, I started researching how to write my own test programs in Colab. Eventually, I understood that Colab is ess...

Setup Maven and two basic projects

    The interesting implementation of Java I proceed to is Spring. And, only getting Java running is not enough. I also need to set up Maven. This name is new to me, and I found many Spring tutorials just skip this part. At least I need Maven to generate templates for me. I should learn it more. ( I knew there is a great tool -- Eclipse -- can make tedious things disappear. I’m taking a strategy to install all experiments I want to try and throw away when it's full. And that's an external VM, not my PC. I, not yet, want to do research about installing Eclipse on AMI. )    Upgrade to Java 8     First is to upgrade Java on AMI to Java8. AWS provides advanced tools for Linux 2. And DIY for Linux2. At least there are solutions for my choice.  Amazon Corretto 8 Installation Instructions for Amazon Linux 2 https://docs.aws.amazon.com/corretto/latest/corretto-8-ug/amazon-linux-install.html Here are commands I used: >wget */amazon-corretto-8-x64-linux-jdk.d...