Hi,

Try setting fetchsize before querying. Assuming you don't set it too high, and 
you don't have too many tombstones, that should do it.

Cheers,
Jens



–
Skickat från Mailbox

On Wed, Mar 18, 2015 at 2:58 AM, Mehak Mehta <meme...@cs.stonybrook.edu>
wrote:

> Hi,
> I have requirement to fetch million row as result of my query which is
> giving timeout errors.
> I am fetching results by selecting clustering columns, then why the queries
> are taking so long. I can change the timeout settings but I need the data
> to fetched faster as per my requirement.
> My table definition is:
> *CREATE TABLE images.results (uuid uuid, analysis_execution_id varchar,
> analysis_execution_uuid uuid, x  double, y double, loc varchar, w double, h
> double, normalized varchar, type varchar, filehost varchar, filename
> varchar, image_uuid uuid, image_uri varchar, image_caseid varchar,
> image_mpp_x double, image_mpp_y double, image_width double, image_height
> double, objective double, cancer_type varchar,  Area float, submit_date
> timestamp, points list<double>,  PRIMARY KEY ((image_caseid),Area,uuid));*
> Here each row is uniquely identified on the basis of unique uuid. But since
> my data is generally queried based upon *image_caseid *I have made it
> partition key.
> I am currently using Java Datastax api to fetch the results. But the query
> is taking a lot of time resulting in timeout errors:
> Exception in thread "main"
> com.datastax.driver.core.exceptions.NoHostAvailableException: All host(s)
> tried for query failed (tried: localhost/127.0.0.1:9042
> (com.datastax.driver.core.exceptions.DriverException: Timed out waiting for
> server response))
> at
> com.datastax.driver.core.exceptions.NoHostAvailableException.copy(NoHostAvailableException.java:84)
> at
> com.datastax.driver.core.DefaultResultSetFuture.extractCauseFromExecutionException(DefaultResultSetFuture.java:289)
> at
> com.datastax.driver.core.DefaultResultSetFuture.getUninterruptibly(DefaultResultSetFuture.java:205)
> at com.datastax.driver.core.AbstractSession.execute(AbstractSession.java:52)
> at QueryDB.queryArea(TestQuery.java:59)
> at TestQuery.main(TestQuery.java:35)
> Caused by: com.datastax.driver.core.exceptions.NoHostAvailableException:
> All host(s) tried for query failed (tried: localhost/127.0.0.1:9042
> (com.datastax.driver.core.exceptions.DriverException: Timed out waiting for
> server response))
> at
> com.datastax.driver.core.RequestHandler.sendRequest(RequestHandler.java:108)
> at com.datastax.driver.core.RequestHandler$1.run(RequestHandler.java:179)
> at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
> at java.lang.Thread.run(Thread.java:744)
> Also when I try the same query on console even while using limit of 2000
> rows:
> cqlsh:images> select count(*) from results where
> image_caseid='TCGA-HN-A2NL-01Z-00-DX1' and Area<100 and Area>20 limit 2000;
> errors={}, last_host=127.0.0.1
> Thanks and Regards,
> Mehak

Reply via email to