나는 사용자가 수행하는 상당한 양의 이벤트를 저장해야하는 앱을 만들고 있습니다. (LOTS는 매월 수백만 개라고 생각합니다.)Rails에서 통계 테이블 사용하기
이러한 이벤트 (지난 달의 총 x 등)를보고해야하며 탄력 있고 빠른 것이 필요합니다.
데이터 집계를 저장하기 위해 Redis 등을 사용 해왔다. 그러나 이것은 내가 다시 작성할 수없는 단일 그림 집계의 거대한 저장소를 만들고 있다는 것을 의미 할 수있다.
이것은 나쁜 해결책은 아니지만 필요에 따라 쿼리 할 수있는 테이블에 원시 이벤트 데이터를 저장하고 주기적으로 집계 카운터를 생성 할 수 있습니다. 따라서 시간이 지남에 따라 카운터를 추가 할 수있는 기능을 제공 할뿐 아니라 진행중인 작업에 대한 임시 점검을 수행합니다. 이는 집계가 허용하지 않는 것입니다.
질문 : 어떻게해야합니까? 나는 분명히 각 테이블 (레일스가 선호하는 모델)을 만들 필요가 없다. 테이블을 만들고 필요에 따라 원시 SQL과 상호 작용할 것인가, 아니면 처리 할 다른 선택의 여지가 있는가? 이런 종류의 데이터? > 저장 모든 - -> 집계 생성 -> 짧은 기간 이후에 모든 것을 삭제 (1 주
:
들으을;
또한 .. 레일과 성능은 매우 일반적으로 손에 손을 가지마) –