You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by ja...@apache.org on 2025/08/15 03:12:07 UTC

(iotdb) branch ChangeExample created (now 8287018804b)

This is an automated email from the ASF dual-hosted git repository.

jackietien pushed a change to branch ChangeExample
in repository https://gitbox.apache.org/repos/asf/iotdb.git


      at 8287018804b Change all query example into iterator style

This branch includes the following new commits:

     new 8287018804b Change all query example into iterator style

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.



(iotdb) 01/01: Change all query example into iterator style

Posted by ja...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

jackietien pushed a commit to branch ChangeExample
in repository https://gitbox.apache.org/repos/asf/iotdb.git

commit 8287018804b93cfd28d2c0ac7150c6c5a5fe42eb
Author: JackieTien97 <ja...@gmail.com>
AuthorDate: Fri Aug 15 11:11:45 2025 +0800

    Change all query example into iterator style
---
 .../main/java/org/apache/iotdb/SessionExample.java | 118 +++++++--------------
 .../java/org/apache/iotdb/SessionPoolExample.java  |  23 ----
 .../org/apache/iotdb/TableModelSessionExample.java |  23 ++--
 .../apache/iotdb/TableModelSessionPoolExample.java |  38 ++-----
 4 files changed, 54 insertions(+), 148 deletions(-)

diff --git a/example/session/src/main/java/org/apache/iotdb/SessionExample.java b/example/session/src/main/java/org/apache/iotdb/SessionExample.java
index b7e9bddfe41..c9e8d42aacf 100644
--- a/example/session/src/main/java/org/apache/iotdb/SessionExample.java
+++ b/example/session/src/main/java/org/apache/iotdb/SessionExample.java
@@ -64,7 +64,7 @@ public class SessionExample {
   private static final String LOCAL_HOST = "127.0.0.1";
   public static final String SELECT_D1 = "select * from root.sg1.d1";
 
-  private static Random random = new Random();
+  private static final Random RANDOM = new Random();
 
   public static void main(String[] args)
       throws IoTDBConnectionException, StatementExecutionException, RedirectException {
@@ -102,13 +102,12 @@ public class SessionExample {
     //    selectInto();
     //    createAndDropContinuousQueries();
     //    nonQuery();
-    query();
+    queryByIterator();
     //    queryWithTimeout();
     rawDataQuery();
     lastDataQuery();
     aggregationQuery();
     groupByQuery();
-    //    queryByIterator();
     //    deleteData();
     //    deleteTimeseries();
     //    setTimeout();
@@ -456,7 +455,7 @@ public class SessionExample {
       int rowIndex = tablet.getRowSize();
       tablet.addTimestamp(rowIndex, timestamp);
       for (int s = 0; s < 3; s++) {
-        long value = random.nextLong();
+        long value = RANDOM.nextLong();
         tablet.addValue(schemaList.get(s).getMeasurementName(), rowIndex, value);
       }
       if (tablet.getRowSize() == tablet.getMaxRowNumber()) {
@@ -497,7 +496,7 @@ public class SessionExample {
       int rowIndex = tablet.getRowSize();
       tablet.addTimestamp(rowIndex, timestamp);
       for (int s = 0; s < 3; s++) {
-        long value = random.nextLong();
+        long value = RANDOM.nextLong();
         tablet.addValue(schemaList.get(s).getMeasurementName(), rowIndex, value);
       }
       if (tablet.getRowSize() == tablet.getMaxRowNumber()) {
@@ -558,7 +557,7 @@ public class SessionExample {
       int rowIndex = tablet.getRowSize();
       tablet.addTimestamp(rowIndex, timestamp);
       for (int s = 0; s < 3; s++) {
-        long value = random.nextLong();
+        long value = RANDOM.nextLong();
         if (row % 3 != s) {
           tablet.addValue(schemaList.get(s).getMeasurementName(), rowIndex, value);
         }
@@ -602,7 +601,7 @@ public class SessionExample {
       tablet2.addTimestamp(row2, timestamp);
       tablet3.addTimestamp(row3, timestamp);
       for (int i = 0; i < 3; i++) {
-        long value = random.nextLong();
+        long value = RANDOM.nextLong();
         tablet1.addValue(schemaList.get(i).getMeasurementName(), row1, value);
         tablet2.addValue(schemaList.get(i).getMeasurementName(), row2, value);
         tablet3.addValue(schemaList.get(i).getMeasurementName(), row3, value);
@@ -690,16 +689,6 @@ public class SessionExample {
     session.deleteTimeseries(paths);
   }
 
-  private static void query() throws IoTDBConnectionException, StatementExecutionException {
-    try (SessionDataSet dataSet = session.executeQueryStatement(SELECT_D1)) {
-      System.out.println(dataSet.getColumnNames());
-      dataSet.setFetchSize(1024); // default is 10000
-      while (dataSet.hasNext()) {
-        System.out.println(dataSet.next());
-      }
-    }
-  }
-
   private static void query4Redirect()
       throws IoTDBConnectionException, StatementExecutionException {
     String selectPrefix = "select * from root.redirect";
@@ -707,11 +696,7 @@ public class SessionExample {
       try (SessionDataSet dataSet =
           sessionEnableRedirect.executeQueryStatement(selectPrefix + i + ".d1")) {
 
-        System.out.println(dataSet.getColumnNames());
-        dataSet.setFetchSize(1024); // default is 10000
-        while (dataSet.hasNext()) {
-          System.out.println(dataSet.next());
-        }
+        printDataSet(dataSet);
       }
     }
 
@@ -720,11 +705,7 @@ public class SessionExample {
           sessionEnableRedirect.executeQueryStatement(
               selectPrefix + i + ".d1 where time >= 1 and time < 10")) {
 
-        System.out.println(dataSet.getColumnNames());
-        dataSet.setFetchSize(1024); // default is 10000
-        while (dataSet.hasNext()) {
-          System.out.println(dataSet.next());
-        }
+        printDataSet(dataSet);
       }
     }
 
@@ -733,11 +714,7 @@ public class SessionExample {
           sessionEnableRedirect.executeQueryStatement(
               selectPrefix + i + ".d1 where time >= 1 and time < 10 align by device")) {
 
-        System.out.println(dataSet.getColumnNames());
-        dataSet.setFetchSize(1024); // default is 10000
-        while (dataSet.hasNext()) {
-          System.out.println(dataSet.next());
-        }
+        printDataSet(dataSet);
       }
     }
 
@@ -749,11 +726,7 @@ public class SessionExample {
                   + ".d1 where time >= 1 and time < 10 and root.redirect"
                   + i
                   + ".d1.s1 > 1")) {
-        System.out.println(dataSet.getColumnNames());
-        dataSet.setFetchSize(1024); // default is 10000
-        while (dataSet.hasNext()) {
-          System.out.println(dataSet.next());
-        }
+        printDataSet(dataSet);
       }
     }
   }
@@ -761,11 +734,7 @@ public class SessionExample {
   private static void queryWithTimeout()
       throws IoTDBConnectionException, StatementExecutionException {
     try (SessionDataSet dataSet = session.executeQueryStatement(SELECT_D1, 2000)) {
-      System.out.println(dataSet.getColumnNames());
-      dataSet.setFetchSize(1024); // default is 10000
-      while (dataSet.hasNext()) {
-        System.out.println(dataSet.next());
-      }
+      printDataSet(dataSet);
     }
   }
 
@@ -779,12 +748,7 @@ public class SessionExample {
     long timeOut = 60000;
 
     try (SessionDataSet dataSet = session.executeRawDataQuery(paths, startTime, endTime, timeOut)) {
-
-      System.out.println(dataSet.getColumnNames());
-      dataSet.setFetchSize(1024);
-      while (dataSet.hasNext()) {
-        System.out.println(dataSet.next());
-      }
+      printDataSet(dataSet);
     }
   }
 
@@ -793,12 +757,8 @@ public class SessionExample {
     paths.add(ROOT_SG1_D1_S1);
     paths.add(ROOT_SG1_D1_S2);
     paths.add(ROOT_SG1_D1_S3);
-    try (SessionDataSet sessionDataSet = session.executeLastDataQuery(paths, 3, 60000)) {
-      System.out.println(sessionDataSet.getColumnNames());
-      sessionDataSet.setFetchSize(1024);
-      while (sessionDataSet.hasNext()) {
-        System.out.println(sessionDataSet.next());
-      }
+    try (SessionDataSet dataSet = session.executeLastDataQuery(paths, 3, 60000)) {
+      printDataSet(dataSet);
     }
   }
 
@@ -809,28 +769,20 @@ public class SessionExample {
     paths.add("s1");
     paths.add("s2");
     paths.add("s3");
-    try (SessionDataSet sessionDataSet =
+    try (SessionDataSet dataSet =
         sessionEnableRedirect.executeLastDataQueryForOneDevice(
             ROOT_SG1, ROOT_SG1_D1, paths, true)) {
-      System.out.println(sessionDataSet.getColumnNames());
-      sessionDataSet.setFetchSize(1024);
-      while (sessionDataSet.hasNext()) {
-        System.out.println(sessionDataSet.next());
-      }
+      printDataSet(dataSet);
     }
   }
 
   private static void fastLastDataQueryForOnePrefix()
       throws IoTDBConnectionException, StatementExecutionException, RedirectException {
     System.out.println("-------fastLastQueryForOnePrefix------");
-    try (SessionDataSet sessionDataSet =
+    try (SessionDataSet dataSet =
         sessionEnableRedirect.executeFastLastDataQueryForOnePrefixPath(
             Arrays.asList("root", "sg1"))) {
-      System.out.println(sessionDataSet.getColumnNames());
-      sessionDataSet.setFetchSize(1024);
-      while (sessionDataSet.hasNext()) {
-        System.out.println(sessionDataSet.next());
-      }
+      printDataSet(dataSet);
     }
   }
 
@@ -845,12 +797,8 @@ public class SessionExample {
     aggregations.add(TAggregationType.COUNT);
     aggregations.add(TAggregationType.SUM);
     aggregations.add(TAggregationType.MAX_VALUE);
-    try (SessionDataSet sessionDataSet = session.executeAggregationQuery(paths, aggregations)) {
-      System.out.println(sessionDataSet.getColumnNames());
-      sessionDataSet.setFetchSize(1024);
-      while (sessionDataSet.hasNext()) {
-        System.out.println(sessionDataSet.next());
-      }
+    try (SessionDataSet dataSet = session.executeAggregationQuery(paths, aggregations)) {
+      printDataSet(dataSet);
     }
   }
 
@@ -864,13 +812,28 @@ public class SessionExample {
     aggregations.add(TAggregationType.COUNT);
     aggregations.add(TAggregationType.SUM);
     aggregations.add(TAggregationType.MAX_VALUE);
-    try (SessionDataSet sessionDataSet =
+    try (SessionDataSet dataSet =
         session.executeAggregationQuery(paths, aggregations, 0, 100, 10, 20)) {
-      System.out.println(sessionDataSet.getColumnNames());
-      sessionDataSet.setFetchSize(1024);
-      while (sessionDataSet.hasNext()) {
-        System.out.println(sessionDataSet.next());
+      printDataSet(dataSet);
+    }
+  }
+
+  public static void printDataSet(SessionDataSet dataSet)
+      throws IoTDBConnectionException, StatementExecutionException {
+    DataIterator iterator = dataSet.iterator();
+    System.out.println(dataSet.getColumnNames());
+    System.out.println(dataSet.getColumnTypes());
+    int columnCount = dataSet.getColumnNames().size();
+    while (iterator.next()) {
+      StringBuilder builder = new StringBuilder();
+      for (int i = 1; i <= columnCount; i++) {
+        if (!iterator.isNull(i)) {
+          builder.append(iterator.getString(i)).append(",");
+        } else {
+          builder.append("null").append(",");
+        }
       }
+      System.out.println(builder);
     }
   }
 
@@ -880,7 +843,6 @@ public class SessionExample {
 
       DataIterator iterator = dataSet.iterator();
       System.out.println(dataSet.getColumnNames());
-      dataSet.setFetchSize(1024); // default is 10000
       while (iterator.next()) {
         StringBuilder builder = new StringBuilder();
         // get time
diff --git a/example/session/src/main/java/org/apache/iotdb/SessionPoolExample.java b/example/session/src/main/java/org/apache/iotdb/SessionPoolExample.java
index 578a82d4b84..ea5cdccb597 100644
--- a/example/session/src/main/java/org/apache/iotdb/SessionPoolExample.java
+++ b/example/session/src/main/java/org/apache/iotdb/SessionPoolExample.java
@@ -74,7 +74,6 @@ public class SessionPoolExample {
 
     service = Executors.newFixedThreadPool(10);
     insertRecord();
-    queryByRowRecord();
     Thread.sleep(1000);
     queryByIterator();
     sessionPool.close();
@@ -102,28 +101,6 @@ public class SessionPoolExample {
     }
   }
 
-  private static void queryByRowRecord() {
-    for (int i = 0; i < 1; i++) {
-      service.submit(
-          () -> {
-            SessionDataSetWrapper wrapper = null;
-            try {
-              wrapper = sessionPool.executeQueryStatement("select * from root.sg1.d1");
-              System.out.println(wrapper.getColumnNames());
-              System.out.println(wrapper.getColumnTypes());
-              while (wrapper.hasNext()) {
-                System.out.println(wrapper.next());
-              }
-            } catch (IoTDBConnectionException | StatementExecutionException e) {
-              LOGGER.error("Query by row record error", e);
-            } finally {
-              // remember to close data set finally!
-              sessionPool.closeResultSet(wrapper);
-            }
-          });
-    }
-  }
-
   private static void queryByIterator() {
     for (int i = 0; i < 1; i++) {
       service.submit(
diff --git a/example/session/src/main/java/org/apache/iotdb/TableModelSessionExample.java b/example/session/src/main/java/org/apache/iotdb/TableModelSessionExample.java
index f7e9275ce15..981c9d366a0 100644
--- a/example/session/src/main/java/org/apache/iotdb/TableModelSessionExample.java
+++ b/example/session/src/main/java/org/apache/iotdb/TableModelSessionExample.java
@@ -34,6 +34,8 @@ import java.util.Arrays;
 import java.util.Collections;
 import java.util.List;
 
+import static org.apache.iotdb.SessionExample.printDataSet;
+
 public class TableModelSessionExample {
 
   private static final String LOCAL_URL = "127.0.0.1:6667";
@@ -71,10 +73,7 @@ public class TableModelSessionExample {
       // show tables by specifying another database
       // using SHOW tables FROM
       try (SessionDataSet dataSet = session.executeQueryStatement("SHOW TABLES FROM test1")) {
-        System.out.println(dataSet.getColumnNames());
-        while (dataSet.hasNext()) {
-          System.out.println(dataSet.next());
-        }
+        printDataSet(dataSet);
       }
 
       // insert table data by tablet
@@ -122,11 +121,7 @@ public class TableModelSessionExample {
           session.executeQueryStatement(
               "select * from test1 "
                   + "where region_id = '1' and plant_id in ('3', '5') and device_id = '3'")) {
-        System.out.println(dataSet.getColumnNames());
-        System.out.println(dataSet.getColumnTypes());
-        while (dataSet.hasNext()) {
-          System.out.println(dataSet.next());
-        }
+        printDataSet(dataSet);
       }
 
     } catch (IoTDBConnectionException e) {
@@ -146,10 +141,7 @@ public class TableModelSessionExample {
 
       // show tables from current database
       try (SessionDataSet dataSet = session.executeQueryStatement("SHOW TABLES")) {
-        System.out.println(dataSet.getColumnNames());
-        while (dataSet.hasNext()) {
-          System.out.println(dataSet.next());
-        }
+        printDataSet(dataSet);
       }
 
       // change database to test2
@@ -158,10 +150,7 @@ public class TableModelSessionExample {
       // show tables by specifying another database
       // using SHOW tables FROM
       try (SessionDataSet dataSet = session.executeQueryStatement("SHOW TABLES")) {
-        System.out.println(dataSet.getColumnNames());
-        while (dataSet.hasNext()) {
-          System.out.println(dataSet.next());
-        }
+        printDataSet(dataSet);
       }
 
     } catch (IoTDBConnectionException e) {
diff --git a/example/session/src/main/java/org/apache/iotdb/TableModelSessionPoolExample.java b/example/session/src/main/java/org/apache/iotdb/TableModelSessionPoolExample.java
index a8d3c8b382b..0a335f02c96 100644
--- a/example/session/src/main/java/org/apache/iotdb/TableModelSessionPoolExample.java
+++ b/example/session/src/main/java/org/apache/iotdb/TableModelSessionPoolExample.java
@@ -35,6 +35,8 @@ import java.util.Arrays;
 import java.util.Collections;
 import java.util.List;
 
+import static org.apache.iotdb.SessionExample.printDataSet;
+
 public class TableModelSessionPoolExample {
 
   private static final String LOCAL_URL = "127.0.0.1:6667";
@@ -77,21 +79,13 @@ public class TableModelSessionPoolExample {
 
       // show tables from current database
       try (SessionDataSet dataSet = session.executeQueryStatement("SHOW TABLES")) {
-        System.out.println(dataSet.getColumnNames());
-        System.out.println(dataSet.getColumnTypes());
-        while (dataSet.hasNext()) {
-          System.out.println(dataSet.next());
-        }
+        printDataSet(dataSet);
       }
 
       // show tables by specifying another database
       // using SHOW tables FROM
       try (SessionDataSet dataSet = session.executeQueryStatement("SHOW TABLES FROM test1")) {
-        System.out.println(dataSet.getColumnNames());
-        System.out.println(dataSet.getColumnTypes());
-        while (dataSet.hasNext()) {
-          System.out.println(dataSet.next());
-        }
+        printDataSet(dataSet);
       }
 
       // insert table data by tablet
@@ -139,11 +133,7 @@ public class TableModelSessionPoolExample {
           session.executeQueryStatement(
               "select * from test1 "
                   + "where region_id = '1' and plant_id in ('3', '5') and device_id = '3'")) {
-        System.out.println(dataSet.getColumnNames());
-        System.out.println(dataSet.getColumnTypes());
-        while (dataSet.hasNext()) {
-          System.out.println(dataSet.next());
-        }
+        printDataSet(dataSet);
       }
 
     } catch (IoTDBConnectionException e) {
@@ -168,11 +158,7 @@ public class TableModelSessionPoolExample {
 
       // show tables from current database
       try (SessionDataSet dataSet = session.executeQueryStatement("SHOW TABLES")) {
-        System.out.println(dataSet.getColumnNames());
-        System.out.println(dataSet.getColumnTypes());
-        while (dataSet.hasNext()) {
-          System.out.println(dataSet.next());
-        }
+        printDataSet(dataSet);
       }
 
       // change database to test2
@@ -181,11 +167,7 @@ public class TableModelSessionPoolExample {
       // show tables by specifying another database
       // using SHOW tables FROM
       try (SessionDataSet dataSet = session.executeQueryStatement("SHOW TABLES")) {
-        System.out.println(dataSet.getColumnNames());
-        System.out.println(dataSet.getColumnTypes());
-        while (dataSet.hasNext()) {
-          System.out.println(dataSet.next());
-        }
+        printDataSet(dataSet);
       }
 
     } catch (IoTDBConnectionException e) {
@@ -198,11 +180,7 @@ public class TableModelSessionPoolExample {
 
       // show tables from default database test1
       try (SessionDataSet dataSet = session.executeQueryStatement("SHOW TABLES")) {
-        System.out.println(dataSet.getColumnNames());
-        System.out.println(dataSet.getColumnTypes());
-        while (dataSet.hasNext()) {
-          System.out.println(dataSet.next());
-        }
+        printDataSet(dataSet);
       }
 
     } catch (IoTDBConnectionException e) {