• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    미해결

asyncio와 db 처리 관련 문의드려요.

20.12.03 20:21 작성 조회수 178

0

안녕하세요. 강사님. 좋은 강의 감사드립니다.

수업을 끝내고 크롤링 내용을 몽고db에 저장하는 실습을 해보았는데요. 이와 관련하여 문의드립니다.

크롤링에 대한 결과물을 db에 저장한다고 하였을때,

fetch함수나 main함수나 모두 처리가 가능한데요. (fetch함수에서는 insert_one, main함수에서는 insert_many로처리)

사이트를 300개 정도 해보니 속도는 별 차이가 나지 않는것 같은데요. 실무적으로는 어떤 과정에서 데이터를 처리할까요?

두번째로 

    result_data = {"title":soup.select_one("title").text}

    db_test.insert_one(result_data)

    return result_data

이렇게 하면 신기하게 {'title': 'Daum', '_id': ObjectId('5fc8c897a96c07e83ed5d1ff') ID 값 까지 담겨서 리턴이 되더라고요. 이건 몽고DB의 속성인지, asyncio의 속성인지 혹시 아시는 부분이 있을까요??

답변 1

답변을 작성해보세요.

0

안녕하세요 J님

병렬처리가 꼭 좋은 성능 결과를 보장해 주지는 않습니다.

하드웨어는 싱글코어도 충분히 좋은 성능을 보여주고 있고

보통 동시성 처리는 많은 양의 데이터를 주기적으로 많은 요청을 받아 처리할 때 (특히 웹서버 등)에 활용될 수 있습니다.

몽고db id값은 자동 생성됩니다.