programing

MongoDB로 보고하는 방법은 무엇입니까?

megabox 2023. 7. 8. 10:47
반응형

MongoDB로 보고하는 방법은 무엇입니까?

다음 큰 프로젝트를 위해 MongoDB를 고려하고 있습니다만, 몇 가지 우려 사항이 있습니다.특히 보고는 어떻게 해야 하나요?

제가 알기로는 관계형 데이터베이스에서 일반적으로 수행하는 것과 같은 종류의 조인 및 집계를 수행할 수 없습니다.제가 염두에 둔 보고에는 엄격한 기준을 가진 다양한 "표"의 많은 데이터를 집계하는 것이 포함됩니다.

이것은 MongoDB에서 쉽게 할 수 있습니까, 아니면 큰 골칫거리가 될 것입니까?

Pentaho 및 Jaspersoft 및 기타 레거시 보고 솔루션은 MongoDB에서 데이터를 펌핑할 수 있는 방법이 있지만 MongoDB 데이터에 대한 분석 및 보고를 위해 명시적으로 설계된 두 가지 새로운 솔루션이 있습니다.

  • JSON 스튜디오.이는 집계 파이프라인을 시각적으로 구축하고 차트에 연결할 수 있는 상용 솔루션입니다.
  • 슬램 데이터.이것은 GUI 인터페이스 또는 API를 통해 MongoDB(JOIN, GROUP BY, HAVING 등)에서 SQL 쿼리를 직접 실행할 수 있는 오픈 소스 솔루션입니다.현재 버전의 프로젝트에는 데이터 시각화 기능이 내장되어 있으며 MongoDB 응용 프로그램에 보고 대시보드를 만들고 내장할 수 있습니다.

이 두 가지 모두 MongoDB 위에서 실행되기 때문에(다른 접근 방식, 즉 데이터를 펌핑하여 Mondrian 등으로 보고하기 위해 정규화) MongoDB 보고가 훨씬 쉽고 자연스럽습니다.반면 데이터가 모든 메모리 큐브에 로드되지 않기 때문에(예:) 복잡한 보고서를 실시간으로 생성하려고 하면 보고 환경이 저하될 수 있습니다.

고지 사항:저는 JSON Studio와는 관계가 없지만 SlamData 프로젝트에 참여하고 있습니다.

JasperReports 및 Pentaho와 같은 오픈 소스 도구는 MongoDB에 연결할 수 있는 것 같습니다. NoSQL로 점프하고 싶지만 NoSQL로 점프하지 않고 Simba의 드라이버와 같은 ODBC 또는 OLE DB 드라이버를 사용할 수 있으며 DBxtra와 같은 일반 SQL 보고 도구를 사용할 수 있습니다.

일반적으로 생산 환경에서 새로운 것을 시도하고 싶다고 해서 mongodb를 사용하지 마십시오. 그것이 여러분에게 많은 두통을 가져다 줄 것입니다.언제 사용해야 하는지에 대한 멋진 스택 오버플로 게시물이 있습니다. https://stackoverflow.com/a/1477354/1248724

보고와 관련하여 : Map-Reduce, 특히 증분식은 많은 도움이 되지만 mongoDB를 관계형 데이터베이스로 취급할 수 없습니다.그것은 단지 하나가 아닙니다.예를 들어 하위 문서 광기에 대한 쿼리입니다.mongoDB Aggregation-Framework는 대부분의 경우에 잘 작동하지만 SQL에 비해 한계가 있습니다.

.NET을 사용하는 경우 덱스 익스프레스 리포트를 사용하여 쉽게 리포트를 작성할 수 있습니다.MongoDb .NET 드라이버와 잘 작동합니다. 단 한 가지 제한 사항은 데이터에 사용 중인 각 집계에 대해 강력한 유형이 있어야 합니다.메인 애플리케이션 db 제공업체에서 사용할 수 있는 모든 유형이므로 큰 문제가 되지 않습니다.MongoDB 컬렉션이 SQL 데이터 테이블과 유사한 경우 ODBC 드라이버를 사용할 수 있습니다. 이 방법은 매우 제한적이지만 ODBC 연결과 함께 작동하는 모든 보고 서비스를 사용할 수 있습니다.저는 먼저 "데브익스프레스" XtraReports를 사용하는 것을 선호합니다.

MongoDB에서 모든 보고와 충분한 응답 시간을 가질 수 있는지 확신할 수 없습니다.그래서 당신은 그 목적을 위해 MongoDB 위에 도구를 추가할 수 있습니다.예를 들어, iCube는 현재 이러한 종류의 사용을 위해 MongoDB를 지원합니다.전체 데이터 집합을 추출하는 것은 의미가 없지만, 보고 및 분석을 위한 대부분의 시간 데이터는 전체의 일부에 불과하며 보고 및 분석을 위해 메모리 내 OLAP 툴을 연결하는 것이 의미가 있습니다.

MongoDB는 보고 소프트웨어에 연결할 수 있는 api를 제공하는 집계 프레임워크를 가지고 있기 때문에 보고가 더 쉬워집니다.다음은 MongoDB 보고 및 시각화에 대한 자세한 내용을 제공하는 기사입니다. http://blog.jinfonet.com/mongodb-reporting-visualization-jreport/

Mongo의 관계형 데이터베이스에서와 같은 방식으로 조인, 집계 등을 수행하는 쉬운 방법은 없는 것으로 알고 있습니다.이를 위해 사용할 수 있는 다양한 외부 분석 도구가 있습니다.우리 회사에서는 Sisense를 사용하고 ODBC 드라이버를 통해 MongoDB에 연결하여 데이터에 SQL과 유사한 기능을 사용할 수 있으며 매우 잘 작동합니다.하지만 저는 MongoDB에서 이것을 네이티브로 할 수 있는 방법을 모릅니다.

언급URL : https://stackoverflow.com/questions/14282817/how-to-do-reporting-with-mongodb

반응형