2009-02-02 2 views
3

저는 Rails가 재무 애플리케이션에 필요한 복잡한 집계 유형을 처리 할 수 ​​있는지, 특히 ORM이이를 효과적으로 처리 할 수 ​​있는지 여부에 관심이 있습니다. 이것을 사용하고자하는 재무 애플리케이션에서 다양한 방법으로 집계 된 상세한 재무 데이터에 대한 많은보고가 필요합니다. Rails ORM을 지원하지 않으면 직접 SQL을 작성해야합니다. 그러나 일단이 작업을 시작하면 레일스의 다른 부분도 제대로 작동하지 않을 수 있으며 결과적으로 대부분 레일스를 사용하고 결국 거의 사용하지 않게 될 수도 있습니다. 이것은 유효한 관심사입니까, 아니면 불필요하게 걱정합니까?Rails ORM이 집계를 수행하는 기능을 제한합니까?

+1

멋지게 말하고 완전히 대답 할 수없는 질문입니다. 가능한 구체적으로 당신이 할 수없는 것에 대해 우려하고 있습니까? 구체적이지 않은 경우 AR이 덜 평범한 상황에서도 SQL을 쉽게 사용할 수 있다는 지식을 바탕으로 최소한의 만족을 얻으십시오. –

답변

3

ActiveRecord의 한계는 과학적 환경에서 레일스를 사용하는 데 어려움을 겪은 이유 중 하나입니다.

디자인으로 ORM의 너무 SQL에서 멀리 당신을 데려 갈 궁극적으로 비록 : 당신은 다른 루비 ORM의 그것을 조금 쉽게 기존의 데이터베이스와 작업 할 수 있다는 것을 확인 할 수 있습니다 그들 중 누구도 잘 맞지 않을 수도 있습니다.

3

이 질문은 어려운 데이터베이스 매핑 요구 사항에 대한 상대적으로 불편한 RoR 문제를 설명합니다. (이것은 실제로 어려움이있는 ActiveRecord 패턴입니다.) 복잡한 쿼리를 AR 모델에 더 밀접하게 맞는 간단한 쿼리로 분해하는 것을 좋아합니다. 테이블에 비해 상대적으로 가벼운 추상화, 예를 들어. 일대 다 형식의 어설 션

그렇다면 SQL을 직접 받아 들인 다음 RoR이 비 지속성 부분을 처리하도록하면 더 편할 것이라고 말하고 싶습니다.

이것은 RoR에 국한된 문제가 아닙니다. 대부분의 모든 객체 관계형 모델링 도구는 동일한 질문을 제시합니다.

(각주 : 나는 거의 약어 ORM을 사용하지만, 우연히 아주 잘 특히 개념 데이터베이스 설계 및 abstration 이러한 유형의 문제를 처리하는 또 다른 ORM있다 :. 개체 역할 모델링)

2

그것은 가능성은 레일이 아니라고 이 응용 프로그램에 적합한 플랫폼 또는 데이터베이스의 뷰에 대해 ActiveRecord를 사용할 수도 있습니다. 데이터를 뷰에 집계 한 다음 'rails_sql_views'젬을 사용하면 일반 모델처럼 취급 할 수 있습니다. (나는 이것을 사용한 적이, 그래서 나는이 실제로 어떻게 작동하는지 잘 모른다.)

링크 : rails_sql_views

편집 : 추가 검사에, 당신은 심지어 어떤 그 보석이 필요하거나하지 않을 수 있습니다 보기에 대해 단순히 쿼리하는 다른 특별한 설정.

1

내가 적극적인 기록을 좋아하는 이유는 그것이 당신이 추상화를 뚫어지게하는 것입니다. 나는 AR과 함께 처리 할 수없는 상황에 처했다. 극도로 복잡한 예가있을 수 있지만 더 나은 질문은 원하는 쿼리 유형의 예를 들어 누군가가 AR에서이를 수행하는 방법을 보여줄 수 있다는 것입니다.

+0

좋습니다. –

관련 문제