2012-12-03 2 views
1

매월 수백만 회의 페이지 뷰가있는 사이트에 대해 MongoDB 및 GoogleAnalytics를 사용하여 광고 추적 시스템을 설정하고 있습니다. 다음 스키마 내가 몽고 DB에 사용할 계획입니다 무엇을 (제안 환영) : 나뿐만 아니라 Google 웹 로그 분석을 사용하려는 이유는MongoDB에서 고유 한 페이지 뷰 및 고유 방문자 추적

{ 
    name: 'Ad Name', 
    image: 'http://cdn.hosteddomain.com/ad/ad.jpg', 
    link: 'http://linktoadwebsite.com/?ad=123123', 
    advertiser: 'Ad Client Name', 
    date: 4, 
    weight: 0, 
    clicks: 0, 
    purchased_clicks: 0, 
    impressions: 0, 
    purchased_impressions: 10000, 
    unique_impressions: 0, 
    ctr: 0.045, 
    display_duration: '', 
    start_time: '', 
    end_time: '', 
    status: 0 
} 

그래서 난 데이터를 내 서버에 거대한 데이터베이스를 만드는 아니에요입니다 나는 즉시 접근 할 필요가 없다. 그러나 총 노출 수 및 고유 노출 수는 각 페이지의 광고를 추적하는 데 중요하며 광고를 정확하게 표시하려면 표시해야합니다.

내 질문은 : 고유 방문자/페이지 뷰를 추적하고 데이터베이스가 커지지 않도록하는 스키마 또는 방법이 있습니까?

답변

1

이 데이터를 별도의 두 컬렉션 (또는 다른 서버의 데이터베이스)으로 나눌 수 있으며 거의 ​​사용되지 않은 데이터는 첫 번째 컬렉션에 저장하고 나머지 데이터는 두 번째 컬렉션에 저장할 수 있습니다. 따라서 두 번째 저장소가 더 느리게 커집니다.

+0

여전히 두 번째 컬렉션은 사이트를 공격하는 각 IP를 기록해야한다는 점을 감안할 때 상당히 커 보인다는 생각이들 것입니다. IP를 비교하여 값을 +1해야하는지 여부를 비교해야하기 때문입니다. 광고의 노출 수. – stwhite

+0

어쩌면 광고주의 순 쿠키를 추적 할 필요가 없습니다. – stwhite

+0

필요한 경우에도 할 수 있습니다. 기본 키 필드가 링크라고 가정합니다. 이 경우 지정된 이름의 레코드가 존재하면 노출 수 증가 필드를 사용하거나 그렇지 않으면 삽입 할 수 있습니다. 두 번째 경우에는 첫 번째 컬렉션에 삽입해야합니다. –

관련 문제