Định dạng nào được sử dụng bởi các tài liệu mongodb?

BSON chỉ là JSON nhị phân (một siêu bộ JSON với một số loại dữ liệu hơn, quan trọng nhất là mảng byte nhị phân). Nó là một định dạng tuần tự hóa được sử dụng trong MongoDB. BSON có thể là một tổ chức chuyên loại bỏ hiệu quả các kho lưu trữ giống như JSON, gần như hỗ trợ sắp xếp thông tin JSON truyền thống, hơn nữa nó còn hỗ trợ ngày tháng và dữ liệu song song nguyên bản. Nó được tổ chức gấp đôi, vì vậy nó không thể đọc được bằng con người như JSON. Bản ghi BSON tương đương không phải lúc nào cũng nhỏ hơn JSON, nhưng nó cho phép bạn dễ dàng bỏ qua các bản ghi mà bạn không quan tâm khi đọc nó, trong khi với JSON, bạn phải phân tích cú pháp từng byte. Thông thường, lý do cơ bản tại sao nó được sử dụng bên trong MongoDB. Nếu bạn không làm việc với MongoDB và không yêu cầu bất kỳ điểm nổi bật nào thì tốt hơn hết là bạn nên sử dụng JSON. Trong một tài liệu MongoDB duy nhất, bạn có thể lưu trữ tối đa 16MB dữ liệu nhị phân. Tuy nhiên, MongoDB có hệ thống tệp GridFS riêng, lưu trữ các tệp nhị phân lớn hơn 16 MB theo khối

JSON. JSON là một tổ chức tương thích dữ liệu có thể đọc được dựa trên văn bản, được sử dụng để nói với các đối tượng và cấu trúc dữ liệu cơ bản trong mã dựa trên trình duyệt web. JSON trong một số trường hợp cũng được sử dụng trong các tình huống lập trình phía máy tính để bàn và máy chủ. JSON ban đầu dựa trên phương ngữ lập trình JavaScript và được trình bày dưới dạng phương ngữ kịch bản trang cho trình duyệt Web Netscape Pilot. JSON có thể là một cấu trúc ngôn ngữ để tuần tự hóa các đối tượng, cụm, số, chuỗi, booleans và không hợp lệ. Nó dựa trên cấu trúc ngôn ngữ JavaScript nhưng không thể nhầm lẫn với nó. một số JavaScript không phải là JSON và một số JSON không phải là JavaScript. Bạn sẽ thay đổi mọi JSON nhận được từ máy chủ thành các đối tượng JavaScript. Nó tạo ra sự khác biệt khi làm việc với thông tin dưới dạng các đối tượng JavaScript mà không cần phân tích cú pháp và dịch thuật phức tạp. Bây giờ chỉ cần biết JSON là gì, hãy tiếp tục và xem tại sao chúng ta phải sử dụng nó và những điểm đặc biệt của việc sử dụng JSON là gì

Lợi thế của JSON

  • nhanh hơn. Xử lý phân tích cú pháp chương trình XML chậm hơn JSON. Thông thường vì các thư viện điều khiển DOM yêu cầu nhiều bộ nhớ hơn để xử lý các bản ghi XML lớn. Mặt khác, JSON sử dụng ít thông tin hơn, điều này làm giảm mức phí đã thực hiện và tăng tốc độ phân tích cú pháp
  • Dữ liệu có cấu trúc. JSON sử dụng cấu trúc dữ liệu phác thảo trong khi XML bao gồm cấu trúc cây. Bộ chìa khóa hoặc bộ giá trị có thể hạn chế công việc của bạn, nhưng bạn sẽ nhận được thông tin dễ hiểu và không ngạc nhiên để chứng minh
  • có thể đọc được. Nó là con người có thể đọc và ghi. Đó là định dạng trao đổi dữ liệu dựa trên văn bản có trọng lượng nhẹ, nghĩa là đọc và viết đơn giản hơn khi so sánh với XML

BSON. BSON có thể là một dạng JSON nhị phân được sử dụng để giao tiếp với các cấu trúc thông tin – được gọi là bản ghi hoặc đối tượng – trong MongoDB. Mặc dù so với JSON, BSON không giống lắm. JSON thuần túy ở một mức độ nào đó gây lãng phí dung lượng lớn và truyền dữ liệu, do đó, định dạng BSON có thể được sử dụng sau khi bạn phải gửi một phần dữ liệu JSON ở tốc độ cao – và không cần mặc cả với tính năng nén, điều này có thể tốn kém. Chuyển đổi BSON sang JSON và ngược lại nhanh hơn rất nhiều so với việc nén JSON sử dụng tính toán nén cho mục đích chung

Trang chủ Tài liệuBản đồ MongoDB
Định dạng dữ liệu được hỗ trợ
Định dạng nào được sử dụng bởi các tài liệu mongodb?

Liên kết dữ liệu có thể đọc các định dạng dữ liệu sau.

Định dạng được hỗ trợ

Nén được hỗ trợ

avro

  • gzip

  • bzip2

Sàn gỗ

  • gzip

  • linh hoạt

ORC

  • linh hoạt

  • zlib

JSON 1

  • gzip

  • bzip2

JSON mở rộng của MongoDB 1

  • gzip

  • bzip2

BSON

  • gzip

  • bzip2

CSV

  • gzip

  • bzip2

TSV

  • gzip

  • bzip2

←  Định cấu hình mã hóa S3Sàn gỗ →

MongoDB lưu trữ tài liệu (đối tượng) ở định dạng có tên là BSON. BSON là một tuần tự hóa nhị phân của các tài liệu giống như JSON. BSON là viết tắt của “JSON nhị phân”, nhưng cũng chứa các phần mở rộng cho phép biểu diễn các loại dữ liệu không phải là một phần của JSON. Ví dụ BSON có kiểu dữ liệu Date và kiểu BinData

Trình điều khiển máy khách MongoDB thực hiện tuần tự hóa và hủy tuần tự hóa. Đối với một ngôn ngữ nhất định, trình điều khiển thực hiện dịch từ biểu diễn dữ liệu “đối tượng” (mảng kết hợp có thứ tự) của ngôn ngữ sang BSON và ngược lại. Trong khi máy khách thực hiện công việc này, cơ sở dữ liệu hiểu nội dung bên trong của định dạng và có thể “tiếp cận” các đối tượng BSON khi thích hợp. ví dụ: để tạo các khóa chỉ mục hoặc để khớp một đối tượng với một biểu thức truy vấn. Điều đó có nghĩa là, MongoDB không chỉ là một cửa hàng blob

Do đó, BSON là định dạng trao đổi dữ liệu độc lập với ngôn ngữ

Mã tuần tự hóa BSON từ bất kỳ trình điều khiển MongoDB nào có thể được sử dụng để tuần tự hóa và hủy tuần tự hóa BSON, ngay cả đối với các ứng dụng mà cơ sở dữ liệu Mongo hoàn toàn không được giải quyết. Việc sử dụng này được khuyến khích và chúng tôi rất sẵn lòng làm việc với những người khác để làm cho định dạng này trở nên hữu ích nhất có thể

định dạng khác

Ưu điểm chính so với XML và JSON là tính hiệu quả (cả về không gian và thời gian tính toán), vì đây là định dạng nhị phân

BSON có thể được so sánh với các định dạng trao đổi nhị phân, chẳng hạn như Bộ đệm giao thức. BSON “không lược đồ” hơn so với Bộ đệm giao thức - đây vừa là một lợi thế về tính linh hoạt, vừa là một bất lợi nhỏ về không gian vì BSON có một chút chi phí cho tên trường trong dữ liệu BSON được tuần tự hóa

Xem thêm

Đặc điểm kỹ thuật BSON

← Trước

AGPL

MongoDB được phát hành theo Giấy phép Công cộng GNU Affero. Giấy phép Free Software Foundation này khá mới và do đó chúng tôi muốn nói về sự khác biệt giữa giấy phép này với GPL. Mục tiêu của chúng tôi khi sử dụng AGPL là duy trì khái niệm copyleft với MongoDB. Với GPL truyền thống, copyleft gắn liền với khái niệm phân phối phần mềm. Vấn đề là ngày nay, việc phân phối phần mềm rất hiếm. mọi thứ có xu hướng chạy trên đám mây. AGPL khắc phục “lỗ hổng” này trong GPL bằng cách nói rằng nếu bạn sử dụng phần mềm qua mạng, bạn sẽ bị ràng buộc bởi copyleft. Ngoài ra, giấy phép hầu như giống với GPL v3. Để nói điều này một cách khác. nếu bạn sửa đổi mã nguồn cơ sở dữ liệu cốt lõi, mục tiêu là bạn phải đóng góp những sửa đổi đó lại cho cộng đồng. Tuy nhiên, xin lưu ý rằng KHÔNG bắt buộc các ứng dụng sử dụng mongo phải được xuất bản. Copyleft chỉ áp dụng cho các chương trình cơ sở dữ liệu mongod và mongos. Đây là lý do tại sao tất cả các trình điều khiển Mongo DB đều được cấp phép theo giấy phép Apache. Ứng dụng của bạn, mặc dù nó giao tiếp với cơ sở dữ liệu, là một chương trình riêng biệt và “làm việc”. Như mọi khi, chúng tôi muốn phản hồi của bạn (và sự tham gia) – các bình luận được hoan nghênh cả ở đây và trong các diễn đàn

Ngày 5 tháng 5 năm 2009

Tiếp theo →

MongoDB được vinh danh là người dẫn đầu trong The Forrester Wave™. Nền tảng dữ liệu xuyên biên giới, quý 4 năm 2022

Trong Forrester Wave™. Nền tảng dữ liệu xuyên phân chia, Quý 4 năm 2022, các nền tảng dữ liệu xuyên phân chia được Forrester mô tả là “được thiết kế để hỗ trợ khối lượng công việc giao dịch, vận hành và phân tích mà không làm giảm tính toàn vẹn của dữ liệu, hiệu suất và quy mô phân tích. ” Được đặc trưng là nền tảng dữ liệu thế hệ tiếp theo, báo cáo của Forrester lưu ý thêm rằng “Việc áp dụng các nền tảng này tiếp tục phát triển mạnh mẽ để hỗ trợ các trường hợp kinh doanh mới và đang nổi lên, bao gồm thông tin chuyên sâu tích hợp theo thời gian thực, dịch vụ siêu nhỏ có thể mở rộng, máy học (ML), phân tích phát trực tuyến . ” Để giúp người dùng hiểu được bối cảnh công nghệ mới nổi này, Forrester đã xuất bản Làn sóng nền tảng dữ liệu xuyên phân tuyến trước đó vào năm 2019. Ba năm sau, Forrester đã vinh danh MongoDB là Người dẫn đầu trong làn sóng Nền tảng dữ liệu xuyên phân tuyến mới nhất của mình. Chúng tôi tin rằng MongoDB được vinh danh là Người dẫn đầu trong báo cáo này do các khoản đầu tư vào R&D được thực hiện để tiếp tục xây dựng các khả năng trong MongoDB Atlas , nền tảng dữ liệu dành cho nhà phát triển đa đám mây của chúng tôi. Những khoản đầu tư này được thúc đẩy bởi nhu cầu của cộng đồng nhà phát triển mà chúng tôi làm việc hàng ngày. Bạn đã cho chúng tôi biết bạn đã đấu tranh như thế nào để tập hợp tất cả cơ sở hạ tầng dữ liệu cần thiết để cung cấp năng lượng cho trải nghiệm kỹ thuật số hiện đại – từ cơ sở dữ liệu giao dịch đến xử lý phân tích, tìm kiếm toàn văn và phát trực tuyến. Đây chính xác là những gì nền tảng dữ liệu nhà phát triển của chúng tôi cung cấp. Nó cung cấp một kiến ​​trúc dữ liệu thanh lịch, tích hợp và được quản lý đầy đủ được truy cập thông qua một bộ API hợp nhất. Với MongoDB Atlas, các nhà phát triển làm việc hiệu quả hơn, họ gửi mã nhanh hơn và cải thiện nó thường xuyên hơn. Translytics và sự trỗi dậy của phân tích dựa trên ứng dụng Translytics là một phần của sự thay đổi quan trọng mà chúng tôi tại MongoDB gọi là phân tích dựa trên ứng dụng. Bằng cách xây dựng các ứng dụng thông minh hơn và tăng tốc độ hiểu biết về doanh nghiệp, phân tích dựa trên ứng dụng mang đến cho bạn cơ hội đổi mới vượt trội so với đối thủ cạnh tranh và nâng cao hiệu quả. Để làm điều này, bạn không còn có thể chỉ dựa vào việc sao chép dữ liệu từ các hệ thống vận hành vào các kho phân tích riêng biệt. Di chuyển dữ liệu mất thời gian và tạo ra quá nhiều sự tách biệt giữa các sự kiện và hành động của ứng dụng. Thay vào đó, quá trình xử lý phân tích phải được “chuyển trái” sang nguồn dữ liệu của bạn – đến chính các ứng dụng. Đây là sự thay đổi mà MongoDB gọi là phân tích dựa trên ứng dụng. Đó là một sự thay đổi tác động đến cả kỹ năng và công nghệ mà các nhà phát triển và nhóm phân tích sử dụng hàng ngày. Đây là lý do tại sao hiểu được bối cảnh công nghệ là rất quan trọng. Nhìn chung, MongoDB phù hợp với những khách hàng đang thúc đẩy chiến lược của họ xung quanh các nhà phát triển được giao nhiệm vụ xây dựng phân tích cho ứng dụng của họ. Sóng Forrester™. Nền tảng dữ liệu xuyên phân chia, Q4 năm 2022 Đánh giá các nhà cung cấp hàng đầu trong Nền tảng dữ liệu xuyên phân chia Wave Forrester đã đánh giá 15 trong số các nhà cung cấp nền tảng dữ liệu xuyên phân chia quan trọng nhất dựa trên 26 tiêu chí. Các tiêu chí này trải dài từ việc cung cấp và chiến lược hiện tại cho đến sự hiện diện trên thị trường. Forrester đã cho MongoDB số điểm cao nhất có thể trên 11 tiêu chí, bao gồm. Số lượng khách hàng Hiệu suất Khả năng mở rộng Công cụ dành cho nhà phát triển/API Truyền phát đa mô hình Đám mây / Kiến trúc tại chỗ / phân tán Mô hình thương mại Báo cáo trích dẫn rằng “MongoDB tăng cường tích cực việc cung cấp dịch vụ xuyên biên giới” và rằng “Các tổ chức sử dụng MongoDB để hỗ trợ phân tích thời gian thực, . ” Truy cập bản báo cáo miễn phí của bạn tại đây. Động lực của khách hàng Nhiều nhóm phát triển bắt đầu sử dụng MongoDB làm cơ sở dữ liệu hoạt động cho cả dịch vụ gốc trên đám mây mới cũng như các ứng dụng cũ được hiện đại hóa. Ngày càng có nhiều nhóm trong số này đang cải thiện trải nghiệm của khách hàng và tăng tốc hiểu biết về doanh nghiệp bằng cách áp dụng các phân tích dựa trên ứng dụng. Những ví dụ bao gồm. Bosch để bảo trì dự đoán bằng cách sử dụng dữ liệu cảm biến IoT. Keller Williams cho bảng điều khiển bán hàng và tìm kiếm tài sản dựa trên mức độ liên quan. Iron Mountain để khám phá thông tin và trí thông minh dựa trên AI. Volvo Connect để quản lý đội xe. Bắt đầu hành trình Translytics của bạn Nền tảng dữ liệu dành cho nhà phát triển MongoDB Atlas được thiết kế để giúp bạn chuyển sang Translytics và phân tích dựa trên ứng dụng – dẫn đến các ứng dụng thông minh hơn và tăng khả năng hiển thị của doanh nghiệp. Cách tốt nhất để bắt đầu là đăng ký một tài khoản trên MongoDB Atlas. Sau đó, tạo một cụm cơ sở dữ liệu miễn phí, tải dữ liệu của riêng bạn hoặc bộ dữ liệu mẫu của chúng tôi và khám phá những gì có thể có trong nền tảng. Trung tâm nhà phát triển MongoDB lưu trữ một loạt tài nguyên bao gồm hướng dẫn, mã mẫu, video và tài liệu được sắp xếp theo ngôn ngữ lập trình và sản phẩm. Cho dù bạn là nhà phát triển hay thành viên của nhóm phân tích, việc bắt đầu làm giàu khối lượng công việc giao dịch của bạn bằng phân tích chưa bao giờ dễ dàng hơn thế

Định dạng BSON trong MongoDB là gì?

MongoDB lưu trữ tài liệu (đối tượng) ở định dạng được gọi là BSON. BSON là một tuần tự hóa nhị phân của các tài liệu giống như JSON . BSON là viết tắt của “JSON nhị phân”, nhưng cũng chứa các tiện ích mở rộng cho phép biểu diễn các loại dữ liệu không phải là một phần của JSON. Ví dụ BSON có kiểu dữ liệu Date và kiểu BinData.

MongoDB sử dụng định dạng ngày nào?

Các chức năng này chấp nhận các định dạng sau. new Date(" trả về ISODate với ngày đã chỉ định. ngày mới("

Sự khác biệt giữa JSON và BSON là gì?

Sau đây là những khác biệt giữa JSON và BSON. Đây là loại định dạng tệp nhị phân. JSON chứa một số kiểu dữ liệu cơ bản như chuỗi, số, Boolean, null. BSON chứa một số loại dữ liệu bổ sung như ngày, dấu thời gian, v.v. Cơ sở dữ liệu như AnyDB, redis, v.v.

Tại sao MongoDB sử dụng BSON và JSON?

BSON là mã hóa nhị phân của các tài liệu giống như JSON mà MongoDB sử dụng khi lưu trữ tài liệu trong các bộ sưu tập. Nó thêm hỗ trợ cho các loại dữ liệu như Ngày và nhị phân không được hỗ trợ trong JSON