Skip to content

Commit d93e7d1

Browse files
committed
add mongodb resources
1 parent 178d3e6 commit d93e7d1

File tree

4 files changed

+144
-51
lines changed

4 files changed

+144
-51
lines changed

all.html

Lines changed: 49 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -9262,44 +9262,81 @@ <h1>MongoDB</h1>
92629262
<p><a href="https://github.com/mongodb/mongo" style="border: none;"><img src="/source/static/img/logos/mongodb.jpg" width="100%" alt="MongoDB logo." class="technical-diagram" /></a></p>
92639263
<div class="well see-also">MongoDB is an implementation of the <a href="/no-sql-datastore.html">NoSQL database</a> concept. Learn more in the <a href="/data.html">data</a> chapter or view the <a href="/table-of-contents.html">table of contents</a> for all topics.</div>
92649264

9265-
<h3>Introduction to MongoDB tutorials</h3>
9266-
<p>MongoDB is straightforward to use in a Python application when a driver
9267-
such as PyMongo is installed. The following tutorials show how to install,
9268-
configure and start using MongoDB with Python.</p>
9265+
<h3>General MongoDB introductions</h3>
9266+
<p>It is worth taking some time to learn the ins and outs of MongoDB before
9267+
connecting it to your Python application. The following tutorials are
9268+
not specific to Python and will have you work directly with the MongoDB
9269+
command line and query language.</p>
92699270
<ul>
92709271
<li>
9271-
<p><a href="https://realpython.com/blog/python/introduction-to-mongodb-and-python/">Introduction to MongoDB and Python</a>
9272-
shows how to use Python to interface with MongoDB via PyMongo and MongoEngine.</p>
9272+
<p><a href="https://code.tutsplus.com/tutorials/getting-started-with-mongodb-part-1--net-22879">Getting Started with MongoDB - Part 1</a>
9273+
and
9274+
<a href="https://code.tutsplus.com/tutorials/getting-started-with-mongodb-part-2--net-23636">Part 2</a>
9275+
are programming language agnostic tutorials that show how to interact
9276+
via querying and various operators such as <code>$in</code>, <code>$lte</code> and <code>$gte</code>.</p>
9277+
</li>
9278+
<li>
9279+
<p><a href="https://scotch.io/tutorials/an-introduction-to-mongodb">An Introduction to MongoDB</a>
9280+
examines common commands frequently used to perform data operations.</p>
92739281
</li>
92749282
<li>
92759283
<p><a href="https://www.youtube.com/watch?list=PL1Z_7yg6Pa3AhqCOTQKm9X_Sl9xLdMKYo&amp;v=pWbMrx5rVBE">MongoDB In 30 Minutes</a>
92769284
goes over the basics for creating, querying, updating and deleting data
92779285
in MongoDB.</p>
92789286
</li>
92799287
<li>
9280-
<p>A <a href="http://altons.github.io/python/2013/01/21/gentle-introduction-to-mongodb-using-pymongo/">Gentle Introduction to MongoDB using Pymongo</a>
9281-
reviews a connection configuration file, the basics for data insertion,
9282-
aggregation and updating records.</p>
9288+
<p><a href="https://blog.meteor.com/mongodb-queries-dont-always-return-all-matching-documents-654b6594a827">MongoDB queries do not always return all matching documents!</a>
9289+
walks through discovering that potential pitfalls on how MongoDB queries
9290+
operate that were non-intuitive to developers who are new to using this
9291+
database.</p>
92839292
</li>
92849293
</ul>
92859294
<h3>MongoDB security</h3>
9295+
<p>NoSQL databases can be a weak spot in a production deployment environment,
9296+
especially when default settings are built for ease of development instead
9297+
of proper access control. MongoDB is no exception with its loose default
9298+
security controls so make sure to lock down your instances.</p>
92869299
<ul>
92879300
<li>
9288-
<p><a href="https://medium.com/@shahinism/for-gods-sake-secure-your-mongo-redis-etc-4f310cf1bed2">For Gods sake, secure your Mongo/Redis/etc!</a>
9301+
<p><a href="https://medium.com/@shahinism/for-gods-sake-secure-your-mongo-redis-etc-4f310cf1bed2">For God's sake, secure your Mongo/Redis/etc!</a>
92899302
explains the weak default security settings provided by many NoSQL
92909303
databases, including MongoDB. Make sure to automate locking down your
92919304
NoSQL databases just as you would any other component in your stack.</p>
92929305
</li>
92939306
<li>
9307+
<p>Before deploying a MongoDB instance to production, be sure to go through
9308+
each of the items on the
9309+
<a href="https://docs.mongodb.com/manual/administration/security-checklist/">official MongoDB security checklist</a>.</p>
9310+
</li>
9311+
<li>
9312+
<p><a href="https://scalegrid.io/blog/10-tips-to-improve-your-mongodb-security/">10 tips to improve your MongoDB security</a>
9313+
provides concrete steps to take such as disabling the REST interface
9314+
and other default bits that can be exploited if you are not intentionally
9315+
using them.</p>
9316+
</li>
9317+
<li>
92949318
<p><a href="https://www.mongodb.com/blog/post/mongodb-security-basics-for-your-deployments-in">MongoDB Security Basics For Your Deployments in AWS</a>
92959319
is primarily a guide on AWS security from the perspective of using
92969320
installing and using MongoDB on your own instance. The post covers
92979321
authentication, SSL and firewalls.</p>
92989322
</li>
92999323
</ul>
9300-
<h3>Specific MongoDB resources</h3>
9324+
<h3>Python with MongoDB resources</h3>
9325+
<p>MongoDB is straightforward to use in a Python application when a driver
9326+
such as PyMongo is installed. The following tutorials show how to install,
9327+
configure and start using MongoDB with Python.</p>
93019328
<ul>
93029329
<li>
9330+
<p><a href="https://realpython.com/blog/python/introduction-to-mongodb-and-python/">Introduction to MongoDB and Python</a>
9331+
shows how to use Python to interface with MongoDB via PyMongo and
9332+
MongoEngine.</p>
9333+
</li>
9334+
<li>
9335+
<p>A <a href="http://altons.github.io/python/2013/01/21/gentle-introduction-to-mongodb-using-pymongo/">Gentle Introduction to MongoDB using Pymongo</a>
9336+
reviews a connection configuration file, the basics for data insertion,
9337+
aggregation and updating records.</p>
9338+
</li>
9339+
<li>
93039340
<p>The <a href="https://api.mongodb.com/python/current/">PyMongo project</a> creators
93049341
wrote a retrospective focusing on four decisions they would have done
93059342
differently with the benefit of hindsight:</p>
@@ -9311,14 +9348,9 @@ <h3>Specific MongoDB resources</h3>
93119348
</ol>
93129349
</li>
93139350
<li>
9314-
<p><a href="https://blog.meteor.com/mongodb-queries-dont-always-return-all-matching-documents-654b6594a827">MongoDB queries do not always return all matching documents!</a>
9315-
walks through discovering that potential pitfalls on how MongoDB queries
9316-
operate that were non-intuitive to some developers.</p>
9317-
</li>
9318-
<li>
93199351
<p><a href="https://talkpython.fm/episodes/show/2/python-and-mongodb">Python and MongoDB</a>
93209352
on the Talk Python to Me podcast has a great interview with the
9321-
MongoDB Python driver maintainer</p>
9353+
MongoDB Python driver maintainer.</p>
93229354
</li>
93239355
</ul>
93249356
<h1>Apache Cassandra</h1>

mongodb.html

Lines changed: 49 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -43,44 +43,81 @@ <h1>MongoDB</h1>
4343
<p><a href="https://github.com/mongodb/mongo" style="border: none;"><img src="/source/static/img/logos/mongodb.jpg" width="100%" alt="MongoDB logo." class="technical-diagram" /></a></p>
4444
<div class="well see-also">MongoDB is an implementation of the <a href="/no-sql-datastore.html">NoSQL database</a> concept. Learn more in the <a href="/data.html">data</a> chapter or view the <a href="/table-of-contents.html">table of contents</a> for all topics.</div>
4545

46-
<h3>Introduction to MongoDB tutorials</h3>
47-
<p>MongoDB is straightforward to use in a Python application when a driver
48-
such as PyMongo is installed. The following tutorials show how to install,
49-
configure and start using MongoDB with Python.</p>
46+
<h3>General MongoDB introductions</h3>
47+
<p>It is worth taking some time to learn the ins and outs of MongoDB before
48+
connecting it to your Python application. The following tutorials are
49+
not specific to Python and will have you work directly with the MongoDB
50+
command line and query language.</p>
5051
<ul>
5152
<li>
52-
<p><a href="https://realpython.com/blog/python/introduction-to-mongodb-and-python/">Introduction to MongoDB and Python</a>
53-
shows how to use Python to interface with MongoDB via PyMongo and MongoEngine.</p>
53+
<p><a href="https://code.tutsplus.com/tutorials/getting-started-with-mongodb-part-1--net-22879">Getting Started with MongoDB - Part 1</a>
54+
and
55+
<a href="https://code.tutsplus.com/tutorials/getting-started-with-mongodb-part-2--net-23636">Part 2</a>
56+
are programming language agnostic tutorials that show how to interact
57+
via querying and various operators such as <code>$in</code>, <code>$lte</code> and <code>$gte</code>.</p>
58+
</li>
59+
<li>
60+
<p><a href="https://scotch.io/tutorials/an-introduction-to-mongodb">An Introduction to MongoDB</a>
61+
examines common commands frequently used to perform data operations.</p>
5462
</li>
5563
<li>
5664
<p><a href="https://www.youtube.com/watch?list=PL1Z_7yg6Pa3AhqCOTQKm9X_Sl9xLdMKYo&amp;v=pWbMrx5rVBE">MongoDB In 30 Minutes</a>
5765
goes over the basics for creating, querying, updating and deleting data
5866
in MongoDB.</p>
5967
</li>
6068
<li>
61-
<p>A <a href="http://altons.github.io/python/2013/01/21/gentle-introduction-to-mongodb-using-pymongo/">Gentle Introduction to MongoDB using Pymongo</a>
62-
reviews a connection configuration file, the basics for data insertion,
63-
aggregation and updating records.</p>
69+
<p><a href="https://blog.meteor.com/mongodb-queries-dont-always-return-all-matching-documents-654b6594a827">MongoDB queries do not always return all matching documents!</a>
70+
walks through discovering that potential pitfalls on how MongoDB queries
71+
operate that were non-intuitive to developers who are new to using this
72+
database.</p>
6473
</li>
6574
</ul>
6675
<h3>MongoDB security</h3>
76+
<p>NoSQL databases can be a weak spot in a production deployment environment,
77+
especially when default settings are built for ease of development instead
78+
of proper access control. MongoDB is no exception with its loose default
79+
security controls so make sure to lock down your instances.</p>
6780
<ul>
6881
<li>
69-
<p><a href="https://medium.com/@shahinism/for-gods-sake-secure-your-mongo-redis-etc-4f310cf1bed2">For Gods sake, secure your Mongo/Redis/etc!</a>
82+
<p><a href="https://medium.com/@shahinism/for-gods-sake-secure-your-mongo-redis-etc-4f310cf1bed2">For God's sake, secure your Mongo/Redis/etc!</a>
7083
explains the weak default security settings provided by many NoSQL
7184
databases, including MongoDB. Make sure to automate locking down your
7285
NoSQL databases just as you would any other component in your stack.</p>
7386
</li>
7487
<li>
88+
<p>Before deploying a MongoDB instance to production, be sure to go through
89+
each of the items on the
90+
<a href="https://docs.mongodb.com/manual/administration/security-checklist/">official MongoDB security checklist</a>.</p>
91+
</li>
92+
<li>
93+
<p><a href="https://scalegrid.io/blog/10-tips-to-improve-your-mongodb-security/">10 tips to improve your MongoDB security</a>
94+
provides concrete steps to take such as disabling the REST interface
95+
and other default bits that can be exploited if you are not intentionally
96+
using them.</p>
97+
</li>
98+
<li>
7599
<p><a href="https://www.mongodb.com/blog/post/mongodb-security-basics-for-your-deployments-in">MongoDB Security Basics For Your Deployments in AWS</a>
76100
is primarily a guide on AWS security from the perspective of using
77101
installing and using MongoDB on your own instance. The post covers
78102
authentication, SSL and firewalls.</p>
79103
</li>
80104
</ul>
81-
<h3>Specific MongoDB resources</h3>
105+
<h3>Python with MongoDB resources</h3>
106+
<p>MongoDB is straightforward to use in a Python application when a driver
107+
such as PyMongo is installed. The following tutorials show how to install,
108+
configure and start using MongoDB with Python.</p>
82109
<ul>
83110
<li>
111+
<p><a href="https://realpython.com/blog/python/introduction-to-mongodb-and-python/">Introduction to MongoDB and Python</a>
112+
shows how to use Python to interface with MongoDB via PyMongo and
113+
MongoEngine.</p>
114+
</li>
115+
<li>
116+
<p>A <a href="http://altons.github.io/python/2013/01/21/gentle-introduction-to-mongodb-using-pymongo/">Gentle Introduction to MongoDB using Pymongo</a>
117+
reviews a connection configuration file, the basics for data insertion,
118+
aggregation and updating records.</p>
119+
</li>
120+
<li>
84121
<p>The <a href="https://api.mongodb.com/python/current/">PyMongo project</a> creators
85122
wrote a retrospective focusing on four decisions they would have done
86123
differently with the benefit of hindsight:</p>
@@ -92,14 +129,9 @@ <h3>Specific MongoDB resources</h3>
92129
</ol>
93130
</li>
94131
<li>
95-
<p><a href="https://blog.meteor.com/mongodb-queries-dont-always-return-all-matching-documents-654b6594a827">MongoDB queries do not always return all matching documents!</a>
96-
walks through discovering that potential pitfalls on how MongoDB queries
97-
operate that were non-intuitive to some developers.</p>
98-
</li>
99-
<li>
100132
<p><a href="https://talkpython.fm/episodes/show/2/python-and-mongodb">Python and MongoDB</a>
101133
on the Talk Python to Me podcast has a great interview with the
102-
MongoDB Python driver maintainer</p>
134+
MongoDB Python driver maintainer.</p>
103135
</li>
104136
</ul>
105137
<h3>What topic do you want to learn next?</h3>

source/content/pages/09-data/14-mongodb.markdown

Lines changed: 46 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -17,36 +17,70 @@ storing, querying and analyzing persistence data in Python applications.
1717
<div class="well see-also">MongoDB is an implementation of the <a href="/no-sql-datastore.html">NoSQL database</a> concept. Learn more in the <a href="/data.html">data</a> chapter or view the <a href="/table-of-contents.html">table of contents</a> for all topics.</div>
1818

1919

20-
### Introduction to MongoDB tutorials
21-
MongoDB is straightforward to use in a Python application when a driver
22-
such as PyMongo is installed. The following tutorials show how to install,
23-
configure and start using MongoDB with Python.
20+
### General MongoDB introductions
21+
It is worth taking some time to learn the ins and outs of MongoDB before
22+
connecting it to your Python application. The following tutorials are
23+
not specific to Python and will have you work directly with the MongoDB
24+
command line and query language.
2425

25-
* [Introduction to MongoDB and Python](https://realpython.com/blog/python/introduction-to-mongodb-and-python/)
26-
shows how to use Python to interface with MongoDB via PyMongo and MongoEngine.
26+
* [Getting Started with MongoDB - Part 1](https://code.tutsplus.com/tutorials/getting-started-with-mongodb-part-1--net-22879)
27+
and
28+
[Part 2](https://code.tutsplus.com/tutorials/getting-started-with-mongodb-part-2--net-23636)
29+
are programming language agnostic tutorials that show how to interact
30+
via querying and various operators such as `$in`, `$lte` and `$gte`.
31+
32+
* [An Introduction to MongoDB](https://scotch.io/tutorials/an-introduction-to-mongodb)
33+
examines common commands frequently used to perform data operations.
2734

2835
* [MongoDB In 30 Minutes](https://www.youtube.com/watch?list=PL1Z_7yg6Pa3AhqCOTQKm9X_Sl9xLdMKYo&v=pWbMrx5rVBE)
2936
goes over the basics for creating, querying, updating and deleting data
3037
in MongoDB.
3138

32-
* A [Gentle Introduction to MongoDB using Pymongo](http://altons.github.io/python/2013/01/21/gentle-introduction-to-mongodb-using-pymongo/)
33-
reviews a connection configuration file, the basics for data insertion,
34-
aggregation and updating records.
39+
* [MongoDB queries do not always return all matching documents!](https://blog.meteor.com/mongodb-queries-dont-always-return-all-matching-documents-654b6594a827)
40+
walks through discovering that potential pitfalls on how MongoDB queries
41+
operate that were non-intuitive to developers who are new to using this
42+
database.
3543

3644

3745
### MongoDB security
38-
* [For God’s sake, secure your Mongo/Redis/etc!](https://medium.com/@shahinism/for-gods-sake-secure-your-mongo-redis-etc-4f310cf1bed2)
46+
NoSQL databases can be a weak spot in a production deployment environment,
47+
especially when default settings are built for ease of development instead
48+
of proper access control. MongoDB is no exception with its loose default
49+
security controls so make sure to lock down your instances.
50+
51+
* [For God's sake, secure your Mongo/Redis/etc!](https://medium.com/@shahinism/for-gods-sake-secure-your-mongo-redis-etc-4f310cf1bed2)
3952
explains the weak default security settings provided by many NoSQL
4053
databases, including MongoDB. Make sure to automate locking down your
4154
NoSQL databases just as you would any other component in your stack.
4255

56+
* Before deploying a MongoDB instance to production, be sure to go through
57+
each of the items on the
58+
[official MongoDB security checklist](https://docs.mongodb.com/manual/administration/security-checklist/).
59+
60+
* [10 tips to improve your MongoDB security](https://scalegrid.io/blog/10-tips-to-improve-your-mongodb-security/)
61+
provides concrete steps to take such as disabling the REST interface
62+
and other default bits that can be exploited if you are not intentionally
63+
using them.
64+
4365
* [MongoDB Security Basics For Your Deployments in AWS](https://www.mongodb.com/blog/post/mongodb-security-basics-for-your-deployments-in)
4466
is primarily a guide on AWS security from the perspective of using
4567
installing and using MongoDB on your own instance. The post covers
4668
authentication, SSL and firewalls.
4769

4870

49-
### Specific MongoDB resources
71+
### Python with MongoDB resources
72+
MongoDB is straightforward to use in a Python application when a driver
73+
such as PyMongo is installed. The following tutorials show how to install,
74+
configure and start using MongoDB with Python.
75+
76+
* [Introduction to MongoDB and Python](https://realpython.com/blog/python/introduction-to-mongodb-and-python/)
77+
shows how to use Python to interface with MongoDB via PyMongo and
78+
MongoEngine.
79+
80+
* A [Gentle Introduction to MongoDB using Pymongo](http://altons.github.io/python/2013/01/21/gentle-introduction-to-mongodb-using-pymongo/)
81+
reviews a connection configuration file, the basics for data insertion,
82+
aggregation and updating records.
83+
5084
* The [PyMongo project](https://api.mongodb.com/python/current/) creators
5185
wrote a retrospective focusing on four decisions they would have done
5286
differently with the benefit of hindsight:
@@ -56,11 +90,6 @@ configure and start using MongoDB with Python.
5690
1. [copy\_database](http://emptysqua.re/blog/good-idea-at-the-time-pymongo-copy-database/)
5791
1. [MongoReplicaSetClient](http://emptysqua.re/blog/good-idea-at-the-time-pymongo-mongoreplicasetclient/)
5892

59-
* [MongoDB queries do not always return all matching documents!](https://blog.meteor.com/mongodb-queries-dont-always-return-all-matching-documents-654b6594a827)
60-
walks through discovering that potential pitfalls on how MongoDB queries
61-
operate that were non-intuitive to some developers.
62-
6393
* [Python and MongoDB](https://talkpython.fm/episodes/show/2/python-and-mongodb)
6494
on the Talk Python to Me podcast has a great interview with the
65-
MongoDB Python driver maintainer
66-
95+
MongoDB Python driver maintainer.

source/static/img/logos/neo4j.png

37 KB
Loading

0 commit comments

Comments
 (0)