Hi all,

I am an architect of a PAAS BI solution and gave apache drill a test during a 
week.

On our current solution, we store our customer data on S3 column files and 
perform in memory computation on a home made nosql engine. We have TB of  data 
on S3, but since it's a multi tenant solution, when a end customer perform 
queries it's only on a subset of data in separated S3 folder with let's say 1 
gb of data max.

We try to have the best response time for real time analytics queries (things 
like 1 sec response time for 500K row aggregation on 4 cols with joins). To do 
so, we load only the necessary columns (we have one file per column, not per 
table) and cache the columns value in local JVM for xx mins.

I built a POC with drill & parquet to replace our computation engine. Local 
execution time are fine and mach our needs. I am quite happy with the 
capability to query on S3 with real SQL syntax. My main problem is the latency 
with S3 (from AWS instances) :  for every query I have to pay the download cost 
of the parquet file from S3, this makes the query response time too long for a 
"real time" solution.

I would like to know if you have plan anything in the roadmap to enable some 
native caching capabilities on the data itself (not only metadata caching).

I saw the AbstractStoragePlugin and AbstractRecordReader classes. Would it be 
possible (and a good idea) for us to create a decorator for the classic file 
provider (or a totally new custom S3 provider) with memory cache capability. 
How would this make sense in a drill cluster and in the drill philosophy ?

Thanks in advance


Jocelyn Demoy
BI Architect, R&D and strategy
Sage

Reply via email to