开发者

Business Intelligence and NoSQL

For a new project I'm working I have the need to store some data into a database. The type of data and access model fits well with the NoSQL model and document databases. We are considering things like MongoDB but are still yet undecided.

One of the requirements is to be able to allows Business Intelligence tools to consume some of our data. Others I work for indicate that these tools allow consuming data directly from relational databases. I know not know what types of Business Intelligence tools need to mine the data.

Do BI tools typically support non-SQL databases as well? Are there other standard integration options that they have (Some seem to support web services of flat files) that might be applicable? Is it worth choosing a relational database simply so it can be more easily consumed by开发者_StackOverflow社区 a third party BI tool?


Do BI tools typically support non-SQL databases as well?

No. And they really can't. Non-SQL databases are very different from each other. NoSQL is really just a loose set of "things not SQL".

However, the problem you're going to face is a classic one. Most NoSQL database are run under the concept that you can "batch" and "output" the reporting that you're planning to do. (typically this means map-reduce)

So if you want to use common BI tools, you simply have to "bridge the gap".

MongoDB supports a CSV export that can then be imported into a relational DB for analysis. For some complex queries, you'll likely need to write "map-reduce" queries and then export that data. Obviously, you'll have to write a couple of export / import scripts.

But it's quite possible to provide BI reporting and still use MongoDB as the primary store of data. You'll still need an RDBMS running for the BI suite. But it's unlikely to require much hardware as it's just used for reporting and not for live data.


MongoDB is very nice but it isn't flexible. The developer defines the relations between the entities when developing the application. However business intellegence means that people with domain knowledge can look for new relations between entities. Data can get new meaning that was unknown when the developer developed the structure of the tables/collections.


Since 10 years this question was raised, a lot has changed in the BI landscape. BI tools do read from MongoDB data source by flattening the json response into a row format.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜