MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

Tại sao trình kết nối Mongo Spark trả về các số lượng khác nhau và không chính xác cho một truy vấn?

Tôi đã giải quyết được vấn đề của mình. Lý do của số lượng không nhất quán là MongoDefaultPartitioner bao bọc MongoSamplePartitioner trong đó sử dụng lấy mẫu ngẫu nhiên. Thành thật mà nói, đây là một mặc định khá kỳ lạ đối với tôi. Cá nhân tôi muốn có một trình phân vùng chậm nhưng nhất quán để thay thế. Bạn có thể tìm thấy chi tiết về các tùy chọn phân vùng trong tùy chọn cấu hình chính thức tài liệu.

mã:

val df = spark.read
  .format("com.mongodb.spark.sql.DefaultSource")
  .option("uri", "mongodb://127.0.0.1/enron_mail.messages")
  .option("partitioner", "spark.mongodb.input.partitionerOptions.MongoPaginateBySizePartitioner ")
  .load()


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Sử dụng cơ sở dữ liệu không gian để tìm các đa giác có chứa một điểm

  2. Thống kê thời gian thực:MySQL (/ Drizzle) hay MongoDB?

  3. Lưu trữ một dữ liệuURL trong MongoDB để truy cập nó qua URL cục bộ (JS)

  4. Triển khai MongoDB an toàn trên Amazon AWS

  5. MongoDB + trình điều khiển C # + mảng truy vấn các phần tử trong đó mỗi phần tử mảng chứa tài liệu con để truy vấn