From f4506ad5ac1f43a8d00951a91f07d9f51b75b8a4 Mon Sep 17 00:00:00 2001 From: Natasha Sherstneva Date: Thu, 7 Nov 2013 13:32:02 +0000 Subject: [PATCH] fix data report, protein report Conflicts: .classpath datadb/compbio/cassandra/CassandraNativeConnector.java --- .../cassandra/CassandraNativeConnector.java | 105 +++++++++++++++++++- 1 file changed, 102 insertions(+), 3 deletions(-) diff --git a/datadb/compbio/cassandra/CassandraNativeConnector.java b/datadb/compbio/cassandra/CassandraNativeConnector.java index 766c376..8e86624 100644 --- a/datadb/compbio/cassandra/CassandraNativeConnector.java +++ b/datadb/compbio/cassandra/CassandraNativeConnector.java @@ -339,6 +339,105 @@ public class CassandraNativeConnector { System.out.println (c + " rows analysed, execution time is " + (endTime - startTime) + " msec"); return res; } + + /* + * getting data from the db ProteinData + */ + public Integer ReadDateTable(long queryDate) { + final long startTime = System.currentTimeMillis(); + String com = "SELECT jobtime, JobID FROM ProteinKeyspace.ProteinData WHERE jobtime = " + queryDate + ";"; + System.out.println("Command: " + com); + ResultSet results = session.execute(com); + if (results.isExhausted()) + return null; + final long queryTime = System.currentTimeMillis(); + List rows = results.all(); + System.out.println ("Query time is " + (queryTime - startTime) + " msec"); + return rows.size(); + } + + /* + * getting whole protein sequence from the db ProteinRow + */ + public List ReadWholeSequence(String queryProtein) { + final long startTime = System.currentTimeMillis(); + String com = "SELECT JobID, Predictions FROM ProteinKeyspace.ProteinRow WHERE Protein = '" + queryProtein + "';"; + System.out.println("Command: " + com); + ResultSet results = session.execute(com); + if (results.isExhausted()) + return null; + final long queryTime = System.currentTimeMillis(); + List rows = results.all(); + System.out.println ("Query time is " + (queryTime - startTime) + " msec"); + System.out.println (" rows analysed, " + rows.size()); + List res = new ArrayList(); + int c = 0; + for (Row r : rows) { + StructureProteinPrediction structure = new StructureProteinPrediction(queryProtein, r.getString("JobID"), r.getMap("Predictions", String.class, String.class)); + res.add(structure); + ++c; + } + final long endTime = System.currentTimeMillis(); + System.out.println (c + " rows analysed, execution time is " + (endTime - startTime) + " msec"); + return res; + } + + /* + * getting part of protein sequence from the db ProteinRow + */ + public List ReadPartOfSequence(String queryProtein) { + final long startTime = System.currentTimeMillis(); + String com = "SELECT * FROM ProteinKeyspace.ProteinRow;"; + System.out.println("Command: " + com); + ResultSet results = session.execute(com); + if (results.isExhausted()) + return null; + final long queryTime = System.currentTimeMillis(); + List rows = results.all(); + System.out.println ("Query time is " + (queryTime - startTime) + " msec"); + System.out.println (" rows analysed, " + rows.size()); + List res = new ArrayList(); + int c = 0; + for (Row r : rows) { + String prot = r.getString("Protein"); + if (prot.matches("(.*)" + queryProtein + "(.*)")) { + StructureProteinPrediction structure = new StructureProteinPrediction(prot, r.getString("JobID"), r.getMap("Predictions", String.class, String.class)); + res.add(structure); + ++c; + } + } + final long endTime = System.currentTimeMillis(); + System.out.println (c + " rows analysed, execution time is " + (endTime - startTime) + " msec"); + return res; + } + + /* + * getting protein sequences by counter + */ + public Map ReadProteinDataByCounter() { + final long startTime = System.currentTimeMillis(); + String com = "SELECT Protein FROM ProteinKeyspace.ProteinRow;"; + System.out.println("Command: " + com); + ResultSet results = session.execute(com); + if (results.isExhausted()) + return null; + final long queryTime = System.currentTimeMillis(); + List rows = results.all(); + System.out.println ("Query time is " + (queryTime - startTime) + " msec"); + System.out.println (" rows analysed, " + rows.size()); + Map res = new HashMap(); + int c = 0; + for (Row r : rows) { + String protein = r.getString("Protein"); + if (res.containsKey(protein)) + res.put(protein, res.get(protein) + 1); + else + res.put(protein, 1); + } + final long endTime = System.currentTimeMillis(); + System.out.println (c + " rows analysed, execution time is " + (endTime - startTime) + " msec"); + return res; + } /* * getting protein sequences by counter @@ -365,7 +464,7 @@ public class CassandraNativeConnector { return res; } - /* + * getting earlest date of jobs from the db */ public long getEarliestDateInDB() { @@ -374,7 +473,7 @@ public class CassandraNativeConnector { System.out.println("Command: " + com); ResultSet results = session.execute(com); final long queryTime = System.currentTimeMillis(); - System.out.println("Query time is " + (queryTime - startTime) + " msec"); + System.out.println ("Query time is " + (queryTime - startTime) + " msec"); Calendar cal = Calendar.getInstance(); long res = cal.getTimeInMillis(); @@ -388,7 +487,7 @@ public class CassandraNativeConnector { ++c; } final long endTime = System.currentTimeMillis(); - System.out.println(c + " rows analysed, execution time is " + (endTime - startTime) + " msec"); + System.out.println (c + " rows analysed, execution time is " + (endTime - startTime) + " msec"); return res; } -- 1.7.10.2