python mongodb
글쓴이: adyhj87 / 작성시간: 화, 2015/09/22 - 11:31오전
python 에서 mongodb에서 insert를 짧은 시간 내에 반복하는 로직을 만들고 싶습니다.
E11000 duplicate key error 가 나네요..
따로 키 지정은 하지 않았고 _id값이 중복으로 들어가는 것 같습니다.
혹시 _id 값을 auto increment하도록 하는 방법이 있나요~
소스는 대략 아래와 같습니다.
from pymongo import MongoClient
while True:
client = MongoClient ('localhost:27017')
db = client.mydb
db = MongoDB.get_db()
Collection = db['cmmcol']
Collection.insert_one(DicDataForDB)
time.sleep(3)
작은 도움도 감사히 받겠습니다.
읽어 주셔서 감사합니다.
Forums:
from pymongo import
조심스레 답해봅니다. db커넥션 계속 만드는게 문제가 될지는 모르겠는데, client랑 db를 반복문 위로 빼보셨나요?
그리고 DicDataForDB는 어떻게 정의되는건가요. 코드상에 표현이 안되어있네요
그리고 소스코드 첨부하실때는 '<'code'>' '<'/code'>' 사이에 넣어주세요 보기 힘들어요
답변 감사드립니다.
DicDataForDB는 dictionary 형으로 옆 내용과 같이 값이 들어값니다. {'IP': '115.141.111.111', 'ACTUAL_MEMORY': '24.08', 'TIME': datetime.datetime(2015, 9, 22, 14, 13, 18,
147240), 'DISK': '2.20', 'CPU': '1'}
반복문 밖으로 빼도 같은 문제가 발생합니다.
에러는 아래와 같습니다.
duplicate key error index: mydb.cmmcol.$_id_ dup key: { : ObjectId(\'5600e36e0021b85490f0114f\')
특별히 키 생성을 겹치지 않게 자동으로 해주는 것이 필요합니다..
그리고 글에 소스 첨부때는 언어 상관 없이 소스 코드 위아래로 '<'code'>' '<'/code'>' 를 포함하면 되는지요~?
답변 감사합니다.
댓글 달기