Hướng dẫn dùng why mongodb python
Bạn có thể bắt đầu với MongoDB và ngôn ngữ lập trình yêu thích của mình bằng cách tận dụng một trong các trình điều khiển của nó , nhiều trình điều khiển được duy trì bởi các kỹ sư MongoDB và những trình điều khiển khác được duy trì bởi các thành viên của cộng đồng. MongoDB có trình điều khiển Python bản địa, PyMongo và một nhóm kỹ sư Trình điều khiển dành riêng để làm cho trình điều khiển phù hợp với nhu cầu của cộng đồng Python. Show
Trong bài viết này, dành cho các nhà phát triển Python, những người mới làm quen với MongoDB, bạn sẽ học cách làm như sau:
Bắt đầu nào! Bạn có thể bắt đầu làm việc ngay lập tức với MongoDB bằng cách sử dụng một cụm MongoDB miễn phí thông qua MongoDB Atlas. MongoDB Atlas là một dịch vụ cơ sở dữ liệu được lưu trữ cho phép bạn chọn kích thước cơ sở dữ liệu của mình và nhận một chuỗi kết nối! Nếu bạn quan tâm đến việc sử dụng bậc miễn phí, hãy làm theo hướng dẫn trong phần Phụ lục ở cuối bài viết này. Cài đặt trình điều khiển PythonĐối với bài viết này, chúng tôi sẽ cài đặt trình điều khiển Python có tên là PyMongo. Mặc dù có những trình điều khiển khác được viết bởi cộng đồng, PyMongo là trình điều khiển Python chính thức cho MongoDB. Để có tài liệu chi tiết về trình điều khiển, hãy xem tài liệu tại đây . Cách dễ nhất để cài đặt trình điều khiển là thông qua hệ thống quản lý gói pip. Thực hiện những điều sau đây trên một dòng lệnh: Lưu ý: Nếu bạn đang sử dụng cụm Atlas M0 (Bậc miễn phí), bạn phải sử dụng Python 2.7.9+ và sử dụng Python 3.4 hoặc mới hơn. Bạn có thể kiểm tra phiên bản Python và PyMongo mà bạn
đã cài đặt bằng cách phát hành Để biết các biến thể của cài đặt trình điều khiển, hãy xem tài liệu đầy đủ : Sau khi PyMongo được cài đặt, chúng ta có thể viết ứng dụng đầu tiên của mình để trả về thông tin về máy chủ MongoDB. Trong môi trường phát triển Python của bạn hoặc từ trình soạn thảo văn bản, hãy nhập mã sau:
Thay thế Một đầu ra ví dụ xuất hiện như sau:
Lưu ý rằng Trong ví dụ này, chúng tôi đang kết nối với cá thể MongoDB của mình và đưa ra Nếu ứng dụng của bạn chạy thành công, bạn đã sẵn sàng để tiếp tục! Khám phá Bộ sưu tập và Tài liệuMongoDB lưu trữ dữ liệu trong tài liệu. Tài liệu không giống như tài liệu PDF của Microsoft Word hoặc Adode mà là tài liệu JSON dựa trên đặc điểm kỹ thuật JSON . Ví dụ về tài liệu JSON sẽ như sau: Hình 1: Tài liệu mẫu.Lưu ý rằng tài liệu không chỉ là cặp khóa / giá trị mà có thể bao gồm mảng và tài liệu con. Bản thân dữ liệu có thể là các kiểu dữ liệu khác nhau như không gian địa lý, số thập phân và ISODate. Bên trong, MongoDB lưu trữ bản đại diện nhị phân của JSON được gọi là BSON. Điều này cho phép MongoDB cung cấp các kiểu dữ liệu như số thập phân không được xác định trong đặc tả JSON. Để biết thêm thông tin về thông số kỹ thuật BSON, hãy xem phần này . Một bộ sưu tập trong MongoDB là một vùng chứa tài liệu. Cơ sở dữ liệu là một vùng chứa cho các bộ sưu tập. Nhóm này tương tự như cơ sở dữ liệu quan hệ và được minh họa bên dưới:
Có rất nhiều lợi thế để lưu trữ dữ liệu trong tài liệu. Trong khi thảo luận sâu hơn nằm ngoài phạm vi của bài viết này, một số ưu điểm như lược đồ động, linh hoạt và khả năng lưu trữ mảng có thể được nhìn thấy từ các tập lệnh Python đơn giản của chúng tôi. Để biết thêm thông tin về cấu trúc tài liệu MongoDB, hãy xem tài liệu trực tuyến . Hãy cùng xem cách thực hiện các thao tác CRUD cơ bản trên các tài liệu trong MongoDB bằng PyMongo. Thực hiện các thao tác CRUD cơ bản bằng PymongoĐể thiết lập kết nối MongoDB với PyMongo, bạn sử dụng
Đây Bây giờ chúng ta có thể tạo một đối tượng cơ sở dữ liệu tham chiếu đến một cơ sở dữ liệu mới, được gọi
Khi chúng tôi tạo đối tượng này, chúng tôi có thể thực hiện các hoạt động CRUD của mình. Vì chúng tôi muốn một cái gì đó hữu ích để truy vấn, hãy bắt đầu bằng cách xây dựng một ứng dụng tạo dữ liệu mẫu. Ví dụ về tạo mã dữ liệu mẫuTạo một tệp mới có tên
Đảm bảo thay đổi URL kết nối máy khách
MongoDB thành URL trỏ đến phiên bản cơ sở dữ liệu MongoDB của bạn. Khi bạn chạy ứng dụng này, 500 doanh nghiệp được đặt tên ngẫu nhiên với xếp hạng tương ứng của họ sẽ được tạo trong cơ sở dữ liệu MongoDB được gọi Lệnh chèn dữ liệu vào MongoDB trong ví dụ này là Để biết chi tiết về tập hợp kết quả Bây giờ chúng tôi đã sẵn sàng khám phá truy vấn và quản lý dữ liệu trong MongoDB bằng Python. Để hướng dẫn việc khám phá này, chúng tôi sẽ tạo một ứng dụng khác sẽ quản lý các đánh giá về doanh nghiệp của chúng tôi. Khám phá dữ liệu đánh giá kinh doanhBây giờ chúng ta có một bộ dữ liệu tốt trong cơ sở dữ liệu của mình, hãy truy vấn một số kết quả bằng PyMongo. Trong MongoDB,
Với việc chúng tôi đã tạo 500 mẩu dữ liệu mẫu, có nhiều hơn một doanh nghiệp có xếp hạng 5.
Kết quả của bạn có thể thay đổi vì dữ liệu được tạo ngẫu nhiên nhưng trong một lần chạy thử nghiệm, giá trị 103 đã được trả về. MongoDB có thể dễ dàng thực hiện các truy vấn đơn giản này. Tuy nhiên, hãy xem xét tình huống mà bạn muốn tính tổng số lần xuất hiện của từng xếp hạng trên toàn bộ tập dữ liệu. Trong MongoDB, bạn có thể tạo 5 truy vấn tìm kiếm riêng biệt, thực thi chúng và trình bày kết quả hoặc bạn có thể chỉ cần đưa ra một truy vấn duy nhất bằng cách sử dụng đường ống tổng hợp MongoDB như sau :
Đi sâu vào khung tổng hợp nằm ngoài phạm vi của bài viết này. Tuy nhiên, nếu bạn muốn tìm hiểu thêm về nó, hãy xem phần này . Cập nhật dữ liệu với PymongoTương tự như
Khi chạy mã mẫu ở trên, bạn có thể thấy kết quả tương tự như sau:
Lưu ý rằng tài liệu gốc không có trường "lượt
thích" và bản cập nhật cho phép chúng tôi dễ dàng thêm trường vào tài liệu. Khả năng thêm khóa tự động mà không gặp rắc rối với các Nếu bạn muốn cập nhật tất cả các trường của tài liệu và giữ nguyên ObjectID, bạn sẽ muốn sử dụng Các chức năng cập nhật cũng hỗ trợ một tùy chọn được gọi là Xóa tài liệuGiống như các lệnh khác được thảo luận cho đến nay,
lệnh
Nếu bạn đang xóa một số lượng lớn tài liệu, có thể hiệu quả hơn nếu bỏ bộ sưu tập thay vì xóa tất cả các tài liệu. Đi đâu tiếp theoCó rất nhiều lựa chọn khi học về MongoDB và Python. Đại học MongoDB là một nơi tuyệt vời để bắt đầu và tìm hiểu về quản trị, phát triển và các chủ đề khác như phân tích với MongoDB. Đặc biệt, một khóa học là MongoDB dành cho nhà phát triển (Python). Khóa học này bao gồm các chủ đề của bài viết này chuyên sâu hơn bao gồm thảo luận về khung tổng hợp MongoDB. Để biết thêm thông tin, hãy xem tại đây . Phụ lục: Tạo cơ sở dữ liệu bản đồ cấp độ MongoDB miễn phíMongoDB Atlas là một dịch vụ cơ sở dữ liệu được lưu trữ cho phép bạn chọn kích thước cơ sở dữ liệu của mình và nhận một chuỗi kết nối! Làm theo các bước dưới đây để bắt đầu sử dụng miễn phí của bạn Xây dựng cụm của bạn miễn phíLàm theo các bước dưới đây để tạo cơ sở dữ liệu MongoDB miễn phí:
Sau khi bạn điền vào biểu mẫu, trang web sẽ tạo tài khoản của bạn và bạn sẽ thấy cửa sổ bật lên Build Your New Cluster như trong Hình 1. Hình 1. Để sử dụng tầng miễn phí, hãy di chuyển xuống và chọn M0 . Khi bạn làm điều này, bảng điều khiển Khu vực sẽ bị vô hiệu hóa. Cấp miễn phí có một số hạn chế với khả năng chọn một khu vực là một trong số đó và kích thước cơ sở dữ liệu của bạn sẽ bị giới hạn ở 512MB dung lượng lưu trữ. Do đó, khi bạn đã sẵn sàng sử dụng MongoDB cho nhiều hoạt động đơn giản hơn, bạn có thể dễ dàng tạo một phiên bản khác bằng cách chọn một kích thước từ danh sách Kích thước phiên bản . Trước khi bạn nhấp vào Xác nhận & Triển khai , hãy cuộn xuống trang và nhận thấy các tùy chọn bổ sung được hiển thị trong Hình 2. Hình 2. Từ cửa sổ bật lên Build Your New Cluster , bạn có thể thấy rằng có các tùy chọn khác có sẵn bao gồm chọn bộ bản sao nút 3, 5 hoặc 7 và tối đa một cụm 12 phân đoạn. Lưu ý rằng tầng miễn phí không cho phép bạn chọn bất kỳ thứ gì khác ngoài cụm 3 nút, nhưng nếu bạn chuyển sang các kích thước khác, các tùy chọn này sẽ trở nên khả dụng. Tại thời điểm này, chúng tôi gần như đã sẵn sàng; điều cuối cùng cần giải quyết là tên người dùng và mật khẩu quản trị viên. Bạn cũng có thể chọn tạo mật khẩu ngẫu nhiên cho mình bằng cách nhấp vào nút “Tự động tạo mật khẩu bảo mật”. Cuối cùng, nhấp vào nút Xác nhận & Triển khai để tạo cụm Atlas của bạn. Thiết lập Danh sách trắng IP của bạnTrong khi Atlas đang tạo cơ sở dữ liệu của bạn, bạn sẽ cần xác định IP nào được phép truy cập vào cơ sở dữ liệu mới của bạn vì MongoDB Atlas không cho phép truy cập từ internet theo mặc định. Danh sách các địa chỉ IP được cấp này được gọi là Danh sách trắng IP. Để thêm IP của máy vào danh sách này, hãy nhấp vào tab Bảo mật , sau đó nhấp vào Danh sách trắng IP rồi nhấp vào nút + THÊM ĐỊA CHỈ IP . Thao tác này sẽ bật lên một hộp thoại khác được hiển thị trong Hình 3 bên dưới. Bạn có thể nhấp vào nút “ Thêm địa chỉ IP hiện tại ” để thêm IP của mình hoặc cung cấp một địa chỉ IP cụ thể hoặc cho phép truy cập vào thế giới bằng cách hoàn toàn không hạn chế IP (không phải là một ý tưởng tuyệt vời nhưng có trong trường hợp bạn không có lựa chọn nào khác và cần phải cho phép xác thực từ bất kỳ IP nào). Khi bạn đã điền vào hộp thoại này, hãy nhấp vào Xác nhận và thao tác này sẽ cập nhật cài đặt tường lửa trên cụm MongoDB Atlas của bạn. Tiếp theo, nhấp vào tab Clusters và bạn sẽ thấy cơ sở dữ liệu MongoDB mới của mình đã sẵn sàng hoạt động! Kiểm tra kết nối của bạnChúng tôi muốn đảm bảo rằng cơ sở dữ liệu MongoDB có thể truy cập được từ hộp phát triển của chúng tôi trước khi chúng tôi bắt đầu nhập mã. Một cách nhanh chóng để kiểm tra là tạo kết nối bằng công cụ dòng lệnh Mongo Shell. Đảm bảo có sẵn thông tin kết nối MongoDB của bạn. Nếu bạn đang sử dụng MongoDB Atlas, bạn có thể lấy thông tin kết nối bằng cách nhấp vào nút Kết nối trên tab Cụm như thể hiện trong Hình 5. Nút Kết nối sẽ khởi chạy hộp thoại cung cấp thông tin kết nối. Ở cuối hộp thoại này, bạn sẽ thấy một dòng lệnh đã chuẩn bị sẵn sàng để bạn chỉ cần sao chép và dán vào dấu nhắc lệnh. Lưu ý rằng nếu bạn sao chép văn bản kết nối, bạn sẽ phải thay thế bằng mật khẩu cho người dùng quản trị và bằng tên của cơ sở dữ liệu mà bạn muốn kết nối. Văn bản lệnh xuất phát từ hộp thoại này dài dòng. Để rõ ràng, chúng ta hãy xem xét từng tham số riêng lẻ.
Tham số đầu tiên là một chuỗi chứa danh sách tất cả các nút trong cụm của chúng tôi bao gồm định nghĩa của một tập hợp bản sao được gọi Bây giờ bạn đã sẵn sàng để sử dụng MongoDB! Nếu bạn thích bài viết này và muốn tìm hiểu thêm về MongoDB, hãy xem bộ sưu tập các hướng dẫn và bài viết về tất cả mọi thứ về MongoDB. |