How Can Reporting Tools Use Non-RDB Data Sources Directly?

 

Reporting tools can connect to relational databases, as well as some other types of data sources, including NoSQL, files (CSV/Excel/JSON), Hadoop, and RESTful. These non-RDB data sources, however, do not have as good computing abilities as RDBs. We need to retrieve data from them to compute separately. And reporting tools also have limited computing abilities. These make report development rather difficult and complicated, and a secondary development to prepare report data source using hard coding is needed.

The report development will become easy if we use esProc SPL to cooperate with the reporting tool. As the special open-source data processing engine, esProc possesses powerful computational capabilities by encapsulating a large number of functions for structured data computations. The engine supports connecting to various data sources, including many types of non-RDB databases, enabling reporting tools to handle them effortlessly. Below are some of the data sources esProc supports:

TXT/CSV, Excel, JSON, XML, AliCloud, Cassandra, MDX, ElasticSearch, FTP, HBase, HDFS, Hiv, Influxdb, Kafka, MongoDB, Redis, Salesforce, SAP/BW, Spark, Webcrawl and HTTP/Webservice/Restful.

The list is growing…

SPL is the formalized syntax specifically offered by esProc. To connect to MongoDB and perform computations in SPL, for instance, we have the following script:


A

1

=mongo_open("mongodb://127.0.0.1:27017/mongo")

2

=mongo_shell(A1,"test1.find()")

3

=A2.new(Orders.OrderID,Orders.Client,Name,Gender,Dept).fetch()

4

=mongo_close(A1)

5

return A3

As we mentioned above, both the non-RDB databases and reporting tools have very limited computing abilities. Now SPL is their ideal supplement for handling computations they are unable to deal with. With its agile syntax, rich class libraries, support for diverse data source, cross-database computation and mixed computing, convenient parallel processing implementation, and high-performance storage schemes, SPL will prepare data efficiently and return result set to the reporting tool, which will then presents data in the desired layout.

esProc can act as an embedded JDBC to be integrated into the reporting tool, which, as it accesses a database, will access an SPL result set through JDBC.

undefined 

In summary, esProc not only supports various non-RDB data sources but has outstanding computational capabilities for handling complex data processing tasks, which become simple and easy with the agile SPL syntax. Moreover, it can act as an embedded computing engine to be integrated into the reporting tool, and the latter will access the SPL result set conveniently through JDBC.