반응형

mongoDB 23

집계 쿼리에 대한 MongoDB의 성능

집계 쿼리에 대한 MongoDB의 성능 MongoDB의 성과에 대해 많은 좋은 이야기를 들은 후, 우리는 Mongodb에게 우리가 가지고 있는 문제를 해결하기 위해 노력하기로 결정했습니다.저는 여러 mysql 데이터베이스에 있는 모든 기록을 mongodb의 단일 컬렉션으로 옮기는 것으로 시작했습니다.그 결과 HD에서 약 100GB의 공간을 차지하는 2,900만 개의 문서(각 문서에는 최소 20개의 필드가 있음)가 수집되었습니다.우리는 모든 문서가 동일한 구조를 가지고 있고 모든 문서에 대한 결과를 쿼리하고 집계하기를 원하기 때문에 모든 문서를 하나의 컬렉션에 포함하기로 결정했습니다. 쿼리와 일치하도록 인덱스를 몇 개 만들었습니다. 그렇지 않으면 단순한 카운트()도 오래 걸립니다.그러나 distinct()..

programing 2023.07.15

제외할 투영을 사용하여 Node.js MongoDB 찾기 _id가 여전히 반환합니다.

제외할 투영을 사용하여 Node.js MongoDB 찾기 _id가 여전히 반환합니다. _id를 제외하는 투영법을 사용하여 필터링하기 위해 여기에 있는 예제를 따르려고 합니다._id는 여전히 다음을 반환합니다. 코드 var MongoClient = require('mongodb').MongoClient; var url = "mongodb://localhost:27017/db1"; MongoClient.connect(url, function (err, db) { if (err) throw err; var dbase = db.db("db1"); //here dbase.collection("customers").find( {}, { _id: 0 } ).toArray(function(err, result) { i..

programing 2023.07.15

Mongo groupby가 Laravel 원시 메서드에서 다른 시간으로 작동하지 않습니다.

Mongo groupby가 Laravel 원시 메서드에서 다른 시간으로 작동하지 않습니다. 아래 코드는 MongoDB에서 데이터를 가져와 날짜 범위 내의 그래프에 금액과 날짜의 합계를 표시하는 것입니다.(sum(prepayment_amount) and sum(total_prepayment_amount) group by checkin_from date)금액의 합계는 다음과 같습니다.y axis날짜가 다음 날짜입니다.x axis. 이 코드에서 금액과 날짜의 합계를 얻고 있지만 문제는 날짜와 시간을 보다2017-10-05T19:07:17Z & 2017-10-05T00:00:00Z이 경우 (sum(prepayment_amount)그리고.sum(total_prepayment_amount)날짜가 별도로 표시됩니다...

programing 2023.07.05

MongoDB - 값이 null이거나 X보다 작은 결과를 찾습니다.

MongoDB - 값이 null이거나 X보다 작은 결과를 찾습니다. 나는 MongoDB에 어떤 것이 최신인지 아닌지를 정의하는 두 개의 날짜가 있는 컬렉션을 가지고 있습니다.따라서 "end_date"는 null일 수도 있고 시간 값을 가질 수도 있습니다.현재 항목에 null end_date 또는 미래의 시간이 있습니다.내 질문은 다음과 같습니다. program_enrollments.find( {"start_date":{"$lte":1376982000},"end_date":[null,{"$gte ":1376982000}],"client":"52002d02cc94a31a0f000000"}, [] ) 제가 보기에 이것은 적절해 보이지만, 다른 접근법이 필요한가요?피할 수 있다면 날짜가 최신인지 여부를 알려주는..

programing 2023.07.05

mongodb 데이터베이스를 첫 번째 시스템을 볼 수 없는 다른 시스템으로 전송하려면 어떻게 해야 합니까?

mongodb 데이터베이스를 첫 번째 시스템을 볼 수 없는 다른 시스템으로 전송하려면 어떻게 해야 합니까? 외부와 대화하는 데 문제가 있는 서버가 있습니다.다른 서버로 mongodb 콘텐츠를 가져오고 싶지만 서버가 서로 통신할 수 없기 때문에 db.copyDatabase()로는 안 됩니다. mysqdump와 같은 것이 제가 db를 바이너리 파일로 덤프하고, 어딘가에서 scp한 다음, 그것을 사용하여 다른 mongodb 서버를 채울 수 있을까요?Ubuntu/Linux를 사용하는 경우 다음 명령을 실행합니다.첫번째,mongodump오리진 서버: mongodump --db DataBaseName 생성된 파일 복사dump/DataBaseName폴더를 새 컴퓨터로 이동합니다.다음을 사용하여 가져오기mongores..

programing 2023.06.30

mongo.exe가 버전 6.0.0에 설치되지 않음

mongo.exe가 버전 6.0.0에 설치되지 않음 저는 이 링크에서 MongoDB Community Server를 설치했습니다.그런데 C:\Program Files\MongoDB를 조사해보니\Server\6.0\bin, mongo를 찾을 수 없습니다.exe 파일저는 몽고드를 볼 수 있습니다.exe 및 mongos.exe.누가 도와줄 수 있나요?감사해요.쉘 (mongo shell)mongo더 이상 바이너리( > )와 제공되지 . (서버용 > = 6.0). 쉘 버전 version)을 할 수 .mongosh여기서부터도도도의 대답은 저에게 효과가 있었습니다. MongoDB 다운로드 센터에서 Mongo Shell - mongosh 다운로드 다운로드 받은 zip 파일에서 mongoDB 폴더의 bin 파일로 bin..

programing 2023.06.30

중첩된 객체 값별 MongoDB 정렬

중첩된 객체 값별 MongoDB 정렬 중첩된 개체의 값을 기준으로 결과를 정렬하려고 합니다.사용.node-mongodb-native내가 하는 일은: this.collection.find({ "_id": ObjectID(item_id) }, { "items": 1 }, { sort : { items.date : 1 } }, function(err, result) { if (err) { callback(err); } else { callback(null, result); } }); 다음에 대해 예기치 않은 토큰 오류가 발생함items.date. items개체의 배열입니다.일부 문서는 빈 배열이고, 다른 문서는 데이터를 포함합니다.date들판. 감사해요!점 표기법을 사용할 때는 따옴표에 키 값을 넣어야 합니다..

programing 2023.06.25

$lookup Aggregation 연산자와 함께 샤딩을 사용하는 MongoDB

$lookup Aggregation 연산자와 함께 샤딩을 사용하는 MongoDB $lookupMongoDB 3.2의 새로운 기능입니다.동일한 데이터베이스의 공유되지 않은 컬렉션에 대한 왼쪽 외부 조인을 수행하여 처리를 위해 "가입된" 컬렉션의 문서를 필터링합니다. 사용하기$lookup,그from컬렉션을 셰이딩할 수 없습니다. 반면에, 샤딩은 유용한 수평 스케일링 접근법입니다. 그것들을 함께 사용하는 가장 좋은 방법은 무엇입니까?당신이 인용한 문서가 나타내듯이, 당신은 사용할 수 없습니다.$lookup단편적으로 모은 돈으로따라서 최상의 해결 방법은 별도의 쿼리에서 직접 조회를 수행하는 것입니다. 수행할 작업aggregate질의하다 를 사용하여 쿼리 결과의 "localField" 값을 배열로 가져옵니다. 수..

programing 2023.06.25

페이지화를 위해 MongoDB 집계를 사용하는 방법은 무엇입니까?

페이지화를 위해 MongoDB 집계를 사용하는 방법은 무엇입니까? 기본 페이지화를 수행하는 집계 쿼리를 수행합니다. 특정 주문에 속하는 모든 주문 찾기company_id 순서를 정렬합니다.order_number 총 문서 수 카운트 문서 번호 등으로 건너뜁니다.100그리고 나머지를 물려줍니다. 문서 수를 다음과 같이 제한합니다. 2그리고 그것들을 전달합니다. 문서에서 카운트와 선택한 몇 개의 필드를 반환하는 것으로 끝납니다. 다음은 쿼리에 대한 세부 정보입니다. db.Order.collection.aggregate([ 일치하는 모든 문서를 찾습니다. { '$match' : { "company_id" : ObjectId("54c0...") } }, 이렇게 하면 문서가 정렬됩니다. { '$sort' : { '..

programing 2023.05.21

Java mongodb 드라이버에서 "_id" 필드를 사용하여 문서를 쿼리하는 방법은 무엇입니까?

Java mongodb 드라이버에서 "_id" 필드를 사용하여 문서를 쿼리하는 방법은 무엇입니까? 저는 "_id" 키를 검색하여 MongoDB에서 문서를 찾으려고 합니다.내 서류는 이렇게 생겼어요 { "_id" : ObjectId("4f693d40e4b04cde19f17205"), "hostname" : "hostnameGoesHere", "OSType" : "OSTypeGoesHere" } 저는 이 문서를 검색하려고 합니다. ObjectId id= new ObjectId("4f693d40e4b04cde19f17205"); BasicDBObject obj = new BasicDBObject(); obj.append("_id", id); BasicDBObject query = new BasicDBObjec..

programing 2023.05.06
반응형