사용자, 회사 및 방문이라는 세 가지 기본 모델이 있다고 가정 해 보겠습니다. 사용자가 회사에 갈 때마다 방문은 (user_id, company_id, visit_date)
형식으로 기록됩니다.분석 계산을 위해 MapReduce 또는 다른 분산 계산 방법을 사용합니까?
회사의 평균 방문 시간을 계산할 수 있기를 원합니다. 전반적인 방문은 아니지만 매장으로 돌아 오기 전에 평균적으로 고객이 기다리는 기간을 구체적으로 설명합니다.
예를 들어 한 사용자가 화요일, 수요일, 금요일에 방문하면 1 일의 "간격"과 2 일의 "간격"=> (1, 2)이 표시됩니다. 다른 사용자가 월요일과 금요일에 방문하면 4 일 => (4)의 간격이 제공됩니다. 세 번째 사용자가 한 번만 방문한 경우 고려하지 않아야합니다. 회사에서 사용자를 방문하는 평균 시간은 (1 + 2 + 4)/3 = 2.333 일입니다.
수천 명의 사용자, 도청 및 회사가 있고 각 회사에 대해 하나의 숫자를 계산하려면 어떻게해야합니까? 이전에 기본 MapReduce 응용 프로그램을 수행 한 적이 있었으며이를 수행하기 위해 내지도 및 축소 단계가 무엇인지 파악할 수 없습니다. 아무도 의사 코드에서 MapReduce를 찾아 낼 수 있습니까? 아니면 합리적으로 수행 할 수있는 분산 계산의 다른 방법이 있습니까? 기록을 위해 매일 밤 데이터베이스에서이 작업을 수행하고 싶습니다.
나는 "갭"으로 무엇을하고 있는지에 대해 조금 혼란 스럽습니까, 당신은 정교 할 수 있습니까? –
간격은 사용자가 정의한대로입니다. 사용자가 회사를 2 회 연속 방문하는 시간의 차이입니다. 대답을 좀 더 편집하겠습니다. –