2011-08-22 1 views
1
내가 항목을 항목 행렬을 구축하고

의 항목 항목 매트릭스를 구축하고 다음과 같은 형식<p></p> 난의 매트릭스를 구축 할 필요가 ..... 자바

UserX item1,item2,item3 
    userY item4,item5,item6 

의 데이터를 가지고 양식

 item1 item2 item3 
item1 
item2 
item3 

대용량 데이터를 처리 할 때 가장 좋은 설계 및 데이터 구조는 무엇이 될까요?

현재 해시 맵을 사용하여 디자인하고 있습니다. 다른 더 좋은 해결책이 있습니까?

EDIT : 행렬은 item1의 연관 값을 item2, item3에 저장하는 데 사용됩니다. 최종 사용은 Amazon 권장 사항과 유사한 것을 작성하는 것입니다.

+2

코드를 게시해야합니다. 사용자가 매트릭스에 어떤 영향을 주거나 특정 조합에 대해 어떤 값을 기대합니까 (예 : item1/item2)? – home

+0

매트릭스가 필요한 것은 무엇입니까? 계산을위한 것이라면 콜트 (Colt)와 같은 매트릭스 라이브러리를 사용하는 것이 좋습니다. 실제로 쌍에서 항목 사이의지도를 찾고 있다면 Pair 클래스를 만들어 키로 사용하는 것이 좋습니다. – amit

+0

이 기능적 요구 사항은 무엇입니까? 어떤 사용자가 특정 항목을 소유하고 있거나 모든 사용자가 특정 항목을 소유하고 싶습니까? –

답변

1

"매트릭스"요구 사항을 읽을 때 염두에 두었던 데이터 구조는 구아바의 Table입니다. 가장 성능이 좋은 코드인지 ("HashBasedTable, 표준 구현"은 해시 테이블을 사용하는지) 모르겠지만 원하는 작업 (코드를보다 명확하게 작성)을 처리하는 것이 가장 쉬운 방법 인 것 같습니다.

즉, 나는 진짜 추천 엔진을 봐야한다고 생각합니다. Java에서는 Apache Mahout Taste을 볼 수 있습니다. Google's prediction API을 사용할 수도 있습니다.

관련 문제