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

gảy vs khác biệt trong mongoid db. cái nào nhanh hơn?

Hãy chạy một điểm chuẩn!

require 'benchmark'


1_200.times { FactoryGirl.create(:user) }

Benchmark.bmbm(7) do |bm|
  bm.report('pluck') do
    User.pluck(:email)
  end

  bm.report('pluck.uniq') do
    User.pluck(:email).uniq
  end

  bm.report('only.pluck') do
    User.only(:email).pluck(:email)
  end

  bm.report('only.pluck.uniq') do
    User.only(:email).pluck(:email).uniq
  end

  bm.report('distinct') do
    User.distinct(:email)
  end

  bm.report('only.distnct') do
    User.only(:email).distinct(:email)
  end
end

đầu ra nào:

Rehearsal ------------------------------------------------
pluck          0.010000   0.000000   0.010000 (  0.009913)
pluck.uniq     0.010000   0.000000   0.010000 (  0.012156)
only.pluck     0.000000   0.000000   0.000000 (  0.008731)
distinct       0.000000   0.000000   0.000000 (  0.004830)
only.distnct   0.000000   0.000000   0.000000 (  0.005048)
--------------------------------------- total: 0.020000sec

                   user     system      total        real

pluck          0.000000   0.000000   0.000000 (  0.007904)
pluck.uniq     0.000000   0.000000   0.000000 (  0.008440)
only.pluck     0.000000   0.000000   0.000000 (  0.008243)
distinct       0.000000   0.000000   0.000000 (  0.004604)
only.distnct   0.000000   0.000000   0.000000 (  0.004510)

nó cho thấy rõ ràng rằng việc sử dụng #distinct nhanh hơn gần hai lần so với #pluck




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Bất kỳ lý do chi tiết và cụ thể nào cho việc Tại sao MongoDB nhanh hơn nhiều so với SQL DBs?

  2. Tùy chọn Spring Data-MongoDb cho phương pháp tổng hợp

  3. Ghi nhật ký sự kiện với cơ sở dữ liệu phân tán cho node.js (MongoDB?)

  4. trong React, tôi gọi hai danh sách sang trang từ mongo và tôi muốn nhấp vào một danh sách để lọc những gì được hiển thị trong

  5. Không chạy được Mongodb