sách gpt4 ăn đã đi

bản đồ mongoDB/giảm trừ giảm

In lại Tác giả: IT Lão Cao Thời gian cập nhật: 28-10-2023 13:06:28 28 4
mua khóa gpt4 giày nike

Tôi có một số tài liệu 25k (4 GB ở dạng json thô) dữ liệu mà tôi muốn thực hiện một số thao tác javascript để làm người tiêu dùng dữ liệu cuối cùng của mình (R) giúp truy cập dữ liệu này dễ dàng hơn và tôi muốn "kiểm soát phiên bản" những thay đổi này bằng cách thêm bộ sưu tập mới cho mỗi thay đổi, nhưng tôi không thể tìm ra cách thực hiện điều đó mà không cần giảm bớt được thực hiện trong hoàn cảnh bản đồ/giảm. Tôi muốn ánh xạ tài liệu một-một - tôi bắt đầu với bộ sưu tập_1 Bắt đầu với 25.356 tài liệu trong bộ sưu tập_2 kết thúc với 25.356 tài liệu.

Tôi có thể hack nó bằng cách này:

var reducer = hàm(khóa, mảng giá trị) {
trả về {key: value_array[0]}
}

Sau đó gọi nó như thế này:

db.flat_1.mapReduce(mapper, reducer, {keeptemp: true, out: 'flat_2'})

(Trình ánh xạ của tôi chỉ gọi các cuộc gọi phát ra một lần, với tham số đầu tiên là một chuỗi và tham số thứ hai là tài liệu cuối cùng. Đây là tập hợp các tham số thứ hai mà tôi thực sự muốn.)

Nhưng điều này có vẻ khó xử và tôi không biết tại sao nó lại hoạt động vì trong trình ánh xạ của tôi phát ra Thông số cuộc gọi không tương đương với của tôi bộ giảm tốc Ngoài ra, tham số trả về của .

Một tập tin như vậy
{
"_id": "0xWH4T3V3R",
"giá trị": {
"chìa khóa": {
"cuối cùng": ["ở đây"],
"thisIsWhatIWanted": ["Đúng vậy!"]
}
}
}

Điều này có vẻ không cần thiết.

Ngoài ra, một con trỏ thực hiện thao tác chèn của chính nó thậm chí còn không nhanh bằng bản đồGiảm Một phần mười. Tôi không biết đủ về MongoDB để đánh giá nó, nhưng tôi đoán nó là về 50 lần chậm. Có cách nào để chạy con trỏ song song không? tôi không quan tâm đến chuyện của tôi bộ sưu tập_2 Liệu tài liệu trong bộ sưu tập_1 Thứ tự của các tài liệu trong đó là khác nhau.

câu trả lời hay nhất

Khi sử dụng bản đồ/thu nhỏ bạn luôn nhận được

{ "giá trị" : {  } }

để xóa giá trị chìa khóa, bạn phải sử dụng hoàn thiện chức năng.

Đây là cách đơn giản nhất để sao chép dữ liệu từ bộ sưu tập này sang bộ sưu tập khác:

bản đồ = hàm() { phát ra(this._id, this ); }
giảm = hàm(khóa, giá trị) { trả về giá trị[0]; }
finalize = hàm(khóa, giá trị) { db.collection_2.insert(giá trị); }

Sau đó, khi bạn chạy nó bình thường:

db.collection_1.mapReduce(bản đồ, giảm, {hoàn thiện: hoàn thiện });

Về bản đồ mongoDB/giảm trừ giảm, chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/3581058/

28 4 0
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress