You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@iotdb.apache.org by Dhruv Garg <dg...@gmail.com> on 2021/03/02 07:53:56 UTC

New user of IoTDB - a few queries

Hello,

I am a researcher and a new user of IoTDB. I was excited when I saw the
performance numbers of IoTDB compared to InfluxDB, and I have set it up on
a few workstations and a Raspberry Pi device.

I am becoming familiar with it and have a few queries:

   1. Does IoTDB support Join queries? - I tried looking up some
   documentation on it, but could not find any. If the feature is available,
   could you please provide a sample query or the predicates for join queries?
   2. I also browsed through the IoTDB Jira issues page. I saw that the
   distributed / cluster version is being developed. Approximately how much
   time would it take to get a stable / working version of the cluster IoTDB?

It would be great if someone can respond to my queries. I would be
waiting for a reply. Thanks in advance.

Regards,
dgargcs

Re: Re: New user of IoTDB - a few queries

Posted by Jialin Qiao <qj...@mails.tsinghua.edu.cn>.
Hi Dhruv,

Welcome! Here is some design doc[1] about the query process :)

[1] http://iotdb.apache.org/SystemDesign/DataQuery/DataQuery.html

Thanks,
--
Jialin Qiao
School of Software, Tsinghua University

乔嘉林
清华大学 软件学院

&gt; -----原始邮件-----
&gt; 发件人: "Dhruv Garg" <dg...@gmail.com>
&gt; 发送时间: 2021-03-08 21:51:21 (星期一)
&gt; 收件人: dev@iotdb.apache.org
&gt; 抄送: 
&gt; 主题: Re: New user of IoTDB - a few queries
&gt; 
&gt; Yep, thanks! I would like to. Just need to find the time. :P
&gt; 
&gt; Regards,
&gt; dgargcs
&gt; 
&gt; On Mon, 8 Mar 2021 at 17:40, Xiangdong Huang <sa...@gmail.com> wrote:
&gt; 
&gt; &gt; By the way, welcome to contribute left, right, inner join to IoTDB if you
&gt; &gt; like ~ :D
&gt; &gt;
&gt; &gt; -----------------------------------
&gt; &gt; Xiangdong Huang
&gt; &gt; School of Software, Tsinghua University
&gt; &gt;
&gt; &gt;  黄向东
&gt; &gt; 清华大学 软件学院
&gt; &gt;
&gt; &gt;
&gt; &gt; Xiangdong Huang <sa...@gmail.com> 于2021年3月8日周一 下午8:09写道:
&gt; &gt;
&gt; &gt; &gt; Hi, yes, root is like "/" in Unix-like OS.
&gt; &gt; &gt;
&gt; &gt; &gt; -----------------------------------
&gt; &gt; &gt; Xiangdong Huang
&gt; &gt; &gt; School of Software, Tsinghua University
&gt; &gt; &gt;
&gt; &gt; &gt;  黄向东
&gt; &gt; &gt; 清华大学 软件学院
&gt; &gt; &gt;
&gt; &gt; &gt;
&gt; &gt; &gt; Dhruv Garg <dg...@gmail.com> 于2021年3月8日周一 下午6:14写道:
&gt; &gt; &gt;
&gt; &gt; &gt;&gt; Hello Xiangdong,
&gt; &gt; &gt;&gt;
&gt; &gt; &gt;&gt; Thanks for confirming! One last question for now, all storage groups
&gt; &gt; must
&gt; &gt; &gt;&gt; start with "root" right? I cannot have storage groups like root1.demo,
&gt; &gt; &gt;&gt; correct?
&gt; &gt; &gt;&gt;
&gt; &gt; &gt;&gt; Regards,
&gt; &gt; &gt;&gt; dgargcs
&gt; &gt; &gt;&gt;
&gt; &gt; &gt;&gt; On Mon, 8 Mar 2021 at 15:37, Xiangdong Huang <sa...@gmail.com>
&gt; &gt; wrote:
&gt; &gt; &gt;&gt;
&gt; &gt; &gt;&gt; &gt; Hi Dhruv,
&gt; &gt; &gt;&gt; &gt;
&gt; &gt; &gt;&gt; &gt; Yes you are right.  and IoTDB also supports join on timestamp across
&gt; &gt; &gt;&gt; &gt; storage groups.
&gt; &gt; &gt;&gt; &gt;
&gt; &gt; &gt;&gt; &gt; Q2: IoTDB does not support that now.
&gt; &gt; &gt;&gt; &gt; Current join looks like outer-join in RDBMS.
&gt; &gt; &gt;&gt; &gt; Supporting left join, right join and inner-join is not hard to
&gt; &gt; &gt;&gt; implement,
&gt; &gt; &gt;&gt; &gt; just omit the rows that contain NULL.
&gt; &gt; &gt;&gt; &gt; (Better implementation will need CBO cost-based optimization, but
&gt; &gt; IoTDB
&gt; &gt; &gt;&gt; &gt; lacks the statistics info for that.)
&gt; &gt; &gt;&gt; &gt;
&gt; &gt; &gt;&gt; &gt; Best,
&gt; &gt; &gt;&gt; &gt; -----------------------------------
&gt; &gt; &gt;&gt; &gt; Xiangdong Huang
&gt; &gt; &gt;&gt; &gt; School of Software, Tsinghua University
&gt; &gt; &gt;&gt; &gt;
&gt; &gt; &gt;&gt; &gt;  黄向东
&gt; &gt; &gt;&gt; &gt; 清华大学 软件学院
&gt; &gt; &gt;&gt; &gt;
&gt; &gt; &gt;&gt; &gt;
&gt; &gt; &gt;&gt; &gt; Dhruv Garg <dg...@gmail.com> 于2021年3月8日周一 下午5:56写道:
&gt; &gt; &gt;&gt; &gt;
&gt; &gt; &gt;&gt; &gt; &gt; Hello Xiangdong,
&gt; &gt; &gt;&gt; &gt; &gt;
&gt; &gt; &gt;&gt; &gt; &gt; Yes. Let me elaborate a bit about the join requirement. Suppose I
&gt; &gt; &gt;&gt; want to
&gt; &gt; &gt;&gt; &gt; &gt; do a join to print out values in root.demo.d1.m1 and root.demo.d2.m2
&gt; &gt; &gt;&gt; for
&gt; &gt; &gt;&gt; &gt; a
&gt; &gt; &gt;&gt; &gt; &gt; common time range say 2019-12-11 00:00:00 to 2020-12-18 23:59:59. It
&gt; &gt; &gt;&gt; &gt; should
&gt; &gt; &gt;&gt; &gt; &gt; print out the last two rows from your table.
&gt; &gt; &gt;&gt; &gt; &gt;
&gt; &gt; &gt;&gt; &gt; &gt; In SQL, when we do a join, there are two different tables and then
&gt; &gt; we
&gt; &gt; &gt;&gt; do
&gt; &gt; &gt;&gt; &gt; a
&gt; &gt; &gt;&gt; &gt; &gt; join based on some common column =&gt; root.demo.d1 is one table (has
&gt; &gt; an
&gt; &gt; &gt;&gt; &gt; "m1"
&gt; &gt; &gt;&gt; &gt; &gt; column) and another table root.demo.d2 (has an "m2" column). If I
&gt; &gt; do a
&gt; &gt; &gt;&gt; &gt; join
&gt; &gt; &gt;&gt; &gt; &gt; on d1 and d2 based on timestamp, it will return some rows containing
&gt; &gt; &gt;&gt; m1
&gt; &gt; &gt;&gt; &gt; and
&gt; &gt; &gt;&gt; &gt; &gt; m2 where timestamps are the same.
&gt; &gt; &gt;&gt; &gt; &gt;
&gt; &gt; &gt;&gt; &gt; &gt; I think the way to look at join queries in IoTDB is slightly
&gt; &gt; &gt;&gt; different.
&gt; &gt; &gt;&gt; &gt; &gt; Here, we have a storage group (root.demo) with different time-series
&gt; &gt; &gt;&gt; &gt; (d1.m1
&gt; &gt; &gt;&gt; &gt; &gt; and d2.m2). For each insert in a storage group, I think IoTDB
&gt; &gt; &gt;&gt; &gt; automatically
&gt; &gt; &gt;&gt; &gt; &gt; joins these time-series on timestamp since it assumes null values
&gt; &gt; for
&gt; &gt; &gt;&gt; &gt; other
&gt; &gt; &gt;&gt; &gt; &gt; time-series that were not given a value during insert.  For example,
&gt; &gt; &gt;&gt; if I
&gt; &gt; &gt;&gt; &gt; &gt; do an "insert root.demo.d2(timestamp,m2) values
&gt; &gt; (2021-08-03T00:00:00,
&gt; &gt; &gt;&gt; &gt; &gt; 2021)", it will also append NULL value for root.demo.d1.m1 for this
&gt; &gt; &gt;&gt; &gt; &gt; timestamp.
&gt; &gt; &gt;&gt; &gt; &gt;
&gt; &gt; &gt;&gt; &gt; &gt; Thus, to do a join within a storage group for *any number* of
&gt; &gt; &gt;&gt; time-series
&gt; &gt; &gt;&gt; &gt; &gt; is straightforward. I think this is trivially done by just giving
&gt; &gt; the
&gt; &gt; &gt;&gt; &gt; time
&gt; &gt; &gt;&gt; &gt; &gt; range and time-series names =&gt; "select d1.m1, d2.m2 from root.demo
&gt; &gt; &gt;&gt; where
&gt; &gt; &gt;&gt; &gt; &gt; timestamp &gt;= 2019-19-11T00:00:00".
&gt; &gt; &gt;&gt; &gt; &gt;
&gt; &gt; &gt;&gt; &gt; &gt; Next, I thought about a similar query across storage groups, say
&gt; &gt; &gt;&gt; &gt; root.demo1
&gt; &gt; &gt;&gt; &gt; &gt; and root.demo2. Here as well, I can run a similar query, but only
&gt; &gt; &gt;&gt; start
&gt; &gt; &gt;&gt; &gt; &gt; from a higher level in the storage hierarchy, i.e. "root" alone.
&gt; &gt; &gt;&gt; "select
&gt; &gt; &gt;&gt; &gt; &gt; demo1.m1, demo2.m2 from root where timestamp &gt;=
&gt; &gt; 2019-19-11T00:00:00".
&gt; &gt; &gt;&gt; &gt; &gt;
&gt; &gt; &gt;&gt; &gt; &gt; Q1. Is my interpretation of join on timestamp correct for IoTDB?
&gt; &gt; &gt;&gt; &gt; &gt;
&gt; &gt; &gt;&gt; &gt; &gt; Q2. Is there a way to omit rows that return one or more null column
&gt; &gt; &gt;&gt; &gt; values
&gt; &gt; &gt;&gt; &gt; &gt; in the result?
&gt; &gt; &gt;&gt; &gt; &gt;
&gt; &gt; &gt;&gt; &gt; &gt; PS: Sorry for the long email. I am exploring IoTDB for a research
&gt; &gt; &gt;&gt; project
&gt; &gt; &gt;&gt; &gt; &gt; and just want to be clear in my understanding.
&gt; &gt; &gt;&gt; &gt; &gt;
&gt; &gt; &gt;&gt; &gt; &gt; Thanks in advance!
&gt; &gt; &gt;&gt; &gt; &gt;
&gt; &gt; &gt;&gt; &gt; &gt; Regards,
&gt; &gt; &gt;&gt; &gt; &gt; dgargcs
&gt; &gt; &gt;&gt; &gt; &gt;
&gt; &gt; &gt;&gt; &gt; &gt; On Mon, 8 Mar 2021 at 14:12, Xiangdong Huang <sa...@gmail.com>
&gt; &gt; &gt;&gt; wrote:
&gt; &gt; &gt;&gt; &gt; &gt;
&gt; &gt; &gt;&gt; &gt; &gt; &gt; Hi Dhruv,
&gt; &gt; &gt;&gt; &gt; &gt; &gt;
&gt; &gt; &gt;&gt; &gt; &gt; &gt; 1. Could you give me an example to describe what you want to
&gt; &gt; query?
&gt; &gt; &gt;&gt; &gt; &gt; &gt; e.g., there are two time series:
&gt; &gt; &gt;&gt; &gt; &gt; &gt;
&gt; &gt; &gt;&gt; &gt; &gt; &gt; +-----------------------------+---------------+---------------+
&gt; &gt; &gt;&gt; &gt; &gt; &gt; |                         Time|root.demo.d1.m1|root.demo.d2.m2|
&gt; &gt; &gt;&gt; &gt; &gt; &gt; +-----------------------------+---------------+---------------+
&gt; &gt; &gt;&gt; &gt; &gt; &gt; |1970-01-01T08:00:00.001+08:00|            1.0|            2.0|
&gt; &gt; &gt;&gt; &gt; &gt; &gt; |2019-12-11T10:00:00.000+08:00|            1.0|            NULL|
&gt; &gt; &gt;&gt; &gt; &gt; &gt; |2020-12-18T11:45:14.519+08:00|            2.0|            2.0|
&gt; &gt; &gt;&gt; &gt; &gt; &gt; +-----------------------------+---------------+---------------+
&gt; &gt; &gt;&gt; &gt; &gt; &gt;
&gt; &gt; &gt;&gt; &gt; &gt; &gt; or,
&gt; &gt; &gt;&gt; &gt; &gt; &gt;
&gt; &gt; &gt;&gt; &gt; &gt; &gt; What you want to query? (you can consider it as a table in MySQL,
&gt; &gt; &gt;&gt; and
&gt; &gt; &gt;&gt; &gt; &gt; just
&gt; &gt; &gt;&gt; &gt; &gt; &gt; write the sqls you need in mysql.)
&gt; &gt; &gt;&gt; &gt; &gt; &gt;
&gt; &gt; &gt;&gt; &gt; &gt; &gt; 2. Ah, we are testing the performance of v0.12. maybe 2-3 weeks, I
&gt; &gt; &gt;&gt; &gt; think.
&gt; &gt; &gt;&gt; &gt; &gt; &gt;
&gt; &gt; &gt;&gt; &gt; &gt; &gt; Best,
&gt; &gt; &gt;&gt; &gt; &gt; &gt; -----------------------------------
&gt; &gt; &gt;&gt; &gt; &gt; &gt; Xiangdong Huang
&gt; &gt; &gt;&gt; &gt; &gt; &gt; School of Software, Tsinghua University
&gt; &gt; &gt;&gt; &gt; &gt; &gt;
&gt; &gt; &gt;&gt; &gt; &gt; &gt;  黄向东
&gt; &gt; &gt;&gt; &gt; &gt; &gt; 清华大学 软件学院
&gt; &gt; &gt;&gt; &gt; &gt; &gt;
&gt; &gt; &gt;&gt; &gt; &gt; &gt;
&gt; &gt; &gt;&gt; &gt; &gt; &gt; Dhruv Garg <dg...@gmail.com> 于2021年3月8日周一 下午4:11写道:
&gt; &gt; &gt;&gt; &gt; &gt; &gt;
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; Hello Xiangdong,
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt;
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; Thanks for your response.
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt;
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; 1. I have the same use-case: I want to run a join query on two
&gt; &gt; &gt;&gt; time
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; series but I think I am getting the syntax wrong.
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; I tried a few SQL-like join queries on IoTDB v0.11.2 and got the
&gt; &gt; &gt;&gt; &gt; &gt; &gt; following
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; error:  "mismatched input 'JOIN' expecting {<eof>, WHERE, ORDER,
&gt; &gt; &gt;&gt; &gt; &gt; SLIMIT,
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; LIMIT, OFFSET, SOFFSET, FILL, GROUP, DISABLE, ALIGN, ',', '.'}"
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; Could you please refer me to some documentation or provide a
&gt; &gt; &gt;&gt; simple
&gt; &gt; &gt;&gt; &gt; &gt; &gt; example
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; join query for IoTDB?
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt;
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; 2. I am also excited to try out the cluster version. Is there an
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; approximate timeline for v0.12 rollout?
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt;
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; Thanks in advance.
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt;
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; Regards,
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; dgargcs
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt;
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; On Tue, 2 Mar 2021 at 17:24, Xiangdong Huang &lt;
&gt; &gt; sainthxd@gmail.com&gt;
&gt; &gt; &gt;&gt; &gt; &gt; wrote:
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt;
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; &gt; Hi Dhruv,
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; &gt;
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; &gt; Welcome!
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; &gt;
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; &gt; 1. "join" for what requirements?
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; &gt;
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; &gt; IoTDB supports JOIN two time series ON their timestamp, i.e.,
&gt; &gt; &gt;&gt; time
&gt; &gt; &gt;&gt; &gt; &gt; &gt; series
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; &gt; alignment.
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; &gt;
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; &gt; 2. I think the cluster version is coming... In the coming
&gt; &gt; &gt;&gt; v0.12, I
&gt; &gt; &gt;&gt; &gt; &gt; &gt; think
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; a
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; &gt; cluster version (that does
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; &gt; not support dynamically scale-out) will be released, and the
&gt; &gt; &gt;&gt; &gt; &gt; scale-out
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; &gt; feature may be released in v0.13 or 0.14.
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; &gt;
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; &gt; Best,
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; &gt; -----------------------------------
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; &gt; Xiangdong Huang
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; &gt; School of Software, Tsinghua University
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; &gt;
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; &gt; Dhruv Garg <dg...@gmail.com> 于2021年3月2日周二 下午3:54写道:
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; &gt;
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; &gt; &gt; Hello,
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; &gt; &gt;
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; &gt; &gt; I am a researcher and a new user of IoTDB. I was excited
&gt; &gt; when
&gt; &gt; &gt;&gt; I
&gt; &gt; &gt;&gt; &gt; saw
&gt; &gt; &gt;&gt; &gt; &gt; &gt; the
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; &gt; &gt; performance numbers of IoTDB compared to InfluxDB, and I
&gt; &gt; have
&gt; &gt; &gt;&gt; set
&gt; &gt; &gt;&gt; &gt; &gt; it
&gt; &gt; &gt;&gt; &gt; &gt; &gt; up
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; &gt; on
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; &gt; &gt; a few workstations and a Raspberry Pi device.
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; &gt; &gt;
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; &gt; &gt; I am becoming familiar with it and have a few queries:
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; &gt; &gt;
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; &gt; &gt;    1. Does IoTDB support Join queries? - I tried looking up
&gt; &gt; &gt;&gt; some
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; &gt; &gt;    documentation on it, but could not find any. If the
&gt; &gt; &gt;&gt; feature is
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; &gt; &gt; available,
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; &gt; &gt;    could you please provide a sample query or the predicates
&gt; &gt; &gt;&gt; for
&gt; &gt; &gt;&gt; &gt; &gt; join
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; &gt; &gt; queries?
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; &gt; &gt;    2. I also browsed through the IoTDB Jira issues page. I
&gt; &gt; saw
&gt; &gt; &gt;&gt; &gt; that
&gt; &gt; &gt;&gt; &gt; &gt; &gt; the
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; &gt; &gt;    distributed / cluster version is being developed.
&gt; &gt; &gt;&gt; &gt; Approximately
&gt; &gt; &gt;&gt; &gt; &gt; &gt; how
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; &gt; much
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; &gt; &gt;    time would it take to get a stable / working version of
&gt; &gt; the
&gt; &gt; &gt;&gt; &gt; &gt; &gt; cluster
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; &gt; &gt; IoTDB?
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; &gt; &gt;
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; &gt; &gt; It would be great if someone can respond to my queries. I
&gt; &gt; &gt;&gt; would
&gt; &gt; &gt;&gt; &gt; be
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; &gt; &gt; waiting for a reply. Thanks in advance.
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; &gt; &gt;
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; &gt; &gt; Regards,
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; &gt; &gt; dgargcs
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; &gt; &gt;
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt; &gt;
&gt; &gt; &gt;&gt; &gt; &gt; &gt; &gt;
&gt; &gt; &gt;&gt; &gt; &gt; &gt;
&gt; &gt; &gt;&gt; &gt; &gt;
&gt; &gt; &gt;&gt; &gt;
&gt; &gt; &gt;&gt;
&gt; &gt; &gt;
&gt; &gt;
</d...@gmail.com>

Re: New user of IoTDB - a few queries

Posted by Dhruv Garg <dg...@gmail.com>.
Yep, thanks! I would like to. Just need to find the time. :P

Regards,
dgargcs

On Mon, 8 Mar 2021 at 17:40, Xiangdong Huang <sa...@gmail.com> wrote:

> By the way, welcome to contribute left, right, inner join to IoTDB if you
> like ~ :D
>
> -----------------------------------
> Xiangdong Huang
> School of Software, Tsinghua University
>
>  黄向东
> 清华大学 软件学院
>
>
> Xiangdong Huang <sa...@gmail.com> 于2021年3月8日周一 下午8:09写道:
>
> > Hi, yes, root is like "/" in Unix-like OS.
> >
> > -----------------------------------
> > Xiangdong Huang
> > School of Software, Tsinghua University
> >
> >  黄向东
> > 清华大学 软件学院
> >
> >
> > Dhruv Garg <dg...@gmail.com> 于2021年3月8日周一 下午6:14写道:
> >
> >> Hello Xiangdong,
> >>
> >> Thanks for confirming! One last question for now, all storage groups
> must
> >> start with "root" right? I cannot have storage groups like root1.demo,
> >> correct?
> >>
> >> Regards,
> >> dgargcs
> >>
> >> On Mon, 8 Mar 2021 at 15:37, Xiangdong Huang <sa...@gmail.com>
> wrote:
> >>
> >> > Hi Dhruv,
> >> >
> >> > Yes you are right.  and IoTDB also supports join on timestamp across
> >> > storage groups.
> >> >
> >> > Q2: IoTDB does not support that now.
> >> > Current join looks like outer-join in RDBMS.
> >> > Supporting left join, right join and inner-join is not hard to
> >> implement,
> >> > just omit the rows that contain NULL.
> >> > (Better implementation will need CBO cost-based optimization, but
> IoTDB
> >> > lacks the statistics info for that.)
> >> >
> >> > Best,
> >> > -----------------------------------
> >> > Xiangdong Huang
> >> > School of Software, Tsinghua University
> >> >
> >> >  黄向东
> >> > 清华大学 软件学院
> >> >
> >> >
> >> > Dhruv Garg <dg...@gmail.com> 于2021年3月8日周一 下午5:56写道:
> >> >
> >> > > Hello Xiangdong,
> >> > >
> >> > > Yes. Let me elaborate a bit about the join requirement. Suppose I
> >> want to
> >> > > do a join to print out values in root.demo.d1.m1 and root.demo.d2.m2
> >> for
> >> > a
> >> > > common time range say 2019-12-11 00:00:00 to 2020-12-18 23:59:59. It
> >> > should
> >> > > print out the last two rows from your table.
> >> > >
> >> > > In SQL, when we do a join, there are two different tables and then
> we
> >> do
> >> > a
> >> > > join based on some common column => root.demo.d1 is one table (has
> an
> >> > "m1"
> >> > > column) and another table root.demo.d2 (has an "m2" column). If I
> do a
> >> > join
> >> > > on d1 and d2 based on timestamp, it will return some rows containing
> >> m1
> >> > and
> >> > > m2 where timestamps are the same.
> >> > >
> >> > > I think the way to look at join queries in IoTDB is slightly
> >> different.
> >> > > Here, we have a storage group (root.demo) with different time-series
> >> > (d1.m1
> >> > > and d2.m2). For each insert in a storage group, I think IoTDB
> >> > automatically
> >> > > joins these time-series on timestamp since it assumes null values
> for
> >> > other
> >> > > time-series that were not given a value during insert.  For example,
> >> if I
> >> > > do an "insert root.demo.d2(timestamp,m2) values
> (2021-08-03T00:00:00,
> >> > > 2021)", it will also append NULL value for root.demo.d1.m1 for this
> >> > > timestamp.
> >> > >
> >> > > Thus, to do a join within a storage group for *any number* of
> >> time-series
> >> > > is straightforward. I think this is trivially done by just giving
> the
> >> > time
> >> > > range and time-series names => "select d1.m1, d2.m2 from root.demo
> >> where
> >> > > timestamp >= 2019-19-11T00:00:00".
> >> > >
> >> > > Next, I thought about a similar query across storage groups, say
> >> > root.demo1
> >> > > and root.demo2. Here as well, I can run a similar query, but only
> >> start
> >> > > from a higher level in the storage hierarchy, i.e. "root" alone.
> >> "select
> >> > > demo1.m1, demo2.m2 from root where timestamp >=
> 2019-19-11T00:00:00".
> >> > >
> >> > > Q1. Is my interpretation of join on timestamp correct for IoTDB?
> >> > >
> >> > > Q2. Is there a way to omit rows that return one or more null column
> >> > values
> >> > > in the result?
> >> > >
> >> > > PS: Sorry for the long email. I am exploring IoTDB for a research
> >> project
> >> > > and just want to be clear in my understanding.
> >> > >
> >> > > Thanks in advance!
> >> > >
> >> > > Regards,
> >> > > dgargcs
> >> > >
> >> > > On Mon, 8 Mar 2021 at 14:12, Xiangdong Huang <sa...@gmail.com>
> >> wrote:
> >> > >
> >> > > > Hi Dhruv,
> >> > > >
> >> > > > 1. Could you give me an example to describe what you want to
> query?
> >> > > > e.g., there are two time series:
> >> > > >
> >> > > > +-----------------------------+---------------+---------------+
> >> > > > |                         Time|root.demo.d1.m1|root.demo.d2.m2|
> >> > > > +-----------------------------+---------------+---------------+
> >> > > > |1970-01-01T08:00:00.001+08:00|            1.0|            2.0|
> >> > > > |2019-12-11T10:00:00.000+08:00|            1.0|            NULL|
> >> > > > |2020-12-18T11:45:14.519+08:00|            2.0|            2.0|
> >> > > > +-----------------------------+---------------+---------------+
> >> > > >
> >> > > > or,
> >> > > >
> >> > > > What you want to query? (you can consider it as a table in MySQL,
> >> and
> >> > > just
> >> > > > write the sqls you need in mysql.)
> >> > > >
> >> > > > 2. Ah, we are testing the performance of v0.12. maybe 2-3 weeks, I
> >> > think.
> >> > > >
> >> > > > Best,
> >> > > > -----------------------------------
> >> > > > Xiangdong Huang
> >> > > > School of Software, Tsinghua University
> >> > > >
> >> > > >  黄向东
> >> > > > 清华大学 软件学院
> >> > > >
> >> > > >
> >> > > > Dhruv Garg <dg...@gmail.com> 于2021年3月8日周一 下午4:11写道:
> >> > > >
> >> > > > > Hello Xiangdong,
> >> > > > >
> >> > > > > Thanks for your response.
> >> > > > >
> >> > > > > 1. I have the same use-case: I want to run a join query on two
> >> time
> >> > > > > series but I think I am getting the syntax wrong.
> >> > > > > I tried a few SQL-like join queries on IoTDB v0.11.2 and got the
> >> > > > following
> >> > > > > error:  "mismatched input 'JOIN' expecting {<EOF>, WHERE, ORDER,
> >> > > SLIMIT,
> >> > > > > LIMIT, OFFSET, SOFFSET, FILL, GROUP, DISABLE, ALIGN, ',', '.'}"
> >> > > > > Could you please refer me to some documentation or provide a
> >> simple
> >> > > > example
> >> > > > > join query for IoTDB?
> >> > > > >
> >> > > > > 2. I am also excited to try out the cluster version. Is there an
> >> > > > > approximate timeline for v0.12 rollout?
> >> > > > >
> >> > > > > Thanks in advance.
> >> > > > >
> >> > > > > Regards,
> >> > > > > dgargcs
> >> > > > >
> >> > > > > On Tue, 2 Mar 2021 at 17:24, Xiangdong Huang <
> sainthxd@gmail.com>
> >> > > wrote:
> >> > > > >
> >> > > > > > Hi Dhruv,
> >> > > > > >
> >> > > > > > Welcome!
> >> > > > > >
> >> > > > > > 1. "join" for what requirements?
> >> > > > > >
> >> > > > > > IoTDB supports JOIN two time series ON their timestamp, i.e.,
> >> time
> >> > > > series
> >> > > > > > alignment.
> >> > > > > >
> >> > > > > > 2. I think the cluster version is coming... In the coming
> >> v0.12, I
> >> > > > think
> >> > > > > a
> >> > > > > > cluster version (that does
> >> > > > > > not support dynamically scale-out) will be released, and the
> >> > > scale-out
> >> > > > > > feature may be released in v0.13 or 0.14.
> >> > > > > >
> >> > > > > > Best,
> >> > > > > > -----------------------------------
> >> > > > > > Xiangdong Huang
> >> > > > > > School of Software, Tsinghua University
> >> > > > > >
> >> > > > > > Dhruv Garg <dg...@gmail.com> 于2021年3月2日周二 下午3:54写道:
> >> > > > > >
> >> > > > > > > Hello,
> >> > > > > > >
> >> > > > > > > I am a researcher and a new user of IoTDB. I was excited
> when
> >> I
> >> > saw
> >> > > > the
> >> > > > > > > performance numbers of IoTDB compared to InfluxDB, and I
> have
> >> set
> >> > > it
> >> > > > up
> >> > > > > > on
> >> > > > > > > a few workstations and a Raspberry Pi device.
> >> > > > > > >
> >> > > > > > > I am becoming familiar with it and have a few queries:
> >> > > > > > >
> >> > > > > > >    1. Does IoTDB support Join queries? - I tried looking up
> >> some
> >> > > > > > >    documentation on it, but could not find any. If the
> >> feature is
> >> > > > > > > available,
> >> > > > > > >    could you please provide a sample query or the predicates
> >> for
> >> > > join
> >> > > > > > > queries?
> >> > > > > > >    2. I also browsed through the IoTDB Jira issues page. I
> saw
> >> > that
> >> > > > the
> >> > > > > > >    distributed / cluster version is being developed.
> >> > Approximately
> >> > > > how
> >> > > > > > much
> >> > > > > > >    time would it take to get a stable / working version of
> the
> >> > > > cluster
> >> > > > > > > IoTDB?
> >> > > > > > >
> >> > > > > > > It would be great if someone can respond to my queries. I
> >> would
> >> > be
> >> > > > > > > waiting for a reply. Thanks in advance.
> >> > > > > > >
> >> > > > > > > Regards,
> >> > > > > > > dgargcs
> >> > > > > > >
> >> > > > > >
> >> > > > >
> >> > > >
> >> > >
> >> >
> >>
> >
>

Re: New user of IoTDB - a few queries

Posted by Xiangdong Huang <sa...@gmail.com>.
By the way, welcome to contribute left, right, inner join to IoTDB if you
like ~ :D

-----------------------------------
Xiangdong Huang
School of Software, Tsinghua University

 黄向东
清华大学 软件学院


Xiangdong Huang <sa...@gmail.com> 于2021年3月8日周一 下午8:09写道:

> Hi, yes, root is like "/" in Unix-like OS.
>
> -----------------------------------
> Xiangdong Huang
> School of Software, Tsinghua University
>
>  黄向东
> 清华大学 软件学院
>
>
> Dhruv Garg <dg...@gmail.com> 于2021年3月8日周一 下午6:14写道:
>
>> Hello Xiangdong,
>>
>> Thanks for confirming! One last question for now, all storage groups must
>> start with "root" right? I cannot have storage groups like root1.demo,
>> correct?
>>
>> Regards,
>> dgargcs
>>
>> On Mon, 8 Mar 2021 at 15:37, Xiangdong Huang <sa...@gmail.com> wrote:
>>
>> > Hi Dhruv,
>> >
>> > Yes you are right.  and IoTDB also supports join on timestamp across
>> > storage groups.
>> >
>> > Q2: IoTDB does not support that now.
>> > Current join looks like outer-join in RDBMS.
>> > Supporting left join, right join and inner-join is not hard to
>> implement,
>> > just omit the rows that contain NULL.
>> > (Better implementation will need CBO cost-based optimization, but IoTDB
>> > lacks the statistics info for that.)
>> >
>> > Best,
>> > -----------------------------------
>> > Xiangdong Huang
>> > School of Software, Tsinghua University
>> >
>> >  黄向东
>> > 清华大学 软件学院
>> >
>> >
>> > Dhruv Garg <dg...@gmail.com> 于2021年3月8日周一 下午5:56写道:
>> >
>> > > Hello Xiangdong,
>> > >
>> > > Yes. Let me elaborate a bit about the join requirement. Suppose I
>> want to
>> > > do a join to print out values in root.demo.d1.m1 and root.demo.d2.m2
>> for
>> > a
>> > > common time range say 2019-12-11 00:00:00 to 2020-12-18 23:59:59. It
>> > should
>> > > print out the last two rows from your table.
>> > >
>> > > In SQL, when we do a join, there are two different tables and then we
>> do
>> > a
>> > > join based on some common column => root.demo.d1 is one table (has an
>> > "m1"
>> > > column) and another table root.demo.d2 (has an "m2" column). If I do a
>> > join
>> > > on d1 and d2 based on timestamp, it will return some rows containing
>> m1
>> > and
>> > > m2 where timestamps are the same.
>> > >
>> > > I think the way to look at join queries in IoTDB is slightly
>> different.
>> > > Here, we have a storage group (root.demo) with different time-series
>> > (d1.m1
>> > > and d2.m2). For each insert in a storage group, I think IoTDB
>> > automatically
>> > > joins these time-series on timestamp since it assumes null values for
>> > other
>> > > time-series that were not given a value during insert.  For example,
>> if I
>> > > do an "insert root.demo.d2(timestamp,m2) values (2021-08-03T00:00:00,
>> > > 2021)", it will also append NULL value for root.demo.d1.m1 for this
>> > > timestamp.
>> > >
>> > > Thus, to do a join within a storage group for *any number* of
>> time-series
>> > > is straightforward. I think this is trivially done by just giving the
>> > time
>> > > range and time-series names => "select d1.m1, d2.m2 from root.demo
>> where
>> > > timestamp >= 2019-19-11T00:00:00".
>> > >
>> > > Next, I thought about a similar query across storage groups, say
>> > root.demo1
>> > > and root.demo2. Here as well, I can run a similar query, but only
>> start
>> > > from a higher level in the storage hierarchy, i.e. "root" alone.
>> "select
>> > > demo1.m1, demo2.m2 from root where timestamp >= 2019-19-11T00:00:00".
>> > >
>> > > Q1. Is my interpretation of join on timestamp correct for IoTDB?
>> > >
>> > > Q2. Is there a way to omit rows that return one or more null column
>> > values
>> > > in the result?
>> > >
>> > > PS: Sorry for the long email. I am exploring IoTDB for a research
>> project
>> > > and just want to be clear in my understanding.
>> > >
>> > > Thanks in advance!
>> > >
>> > > Regards,
>> > > dgargcs
>> > >
>> > > On Mon, 8 Mar 2021 at 14:12, Xiangdong Huang <sa...@gmail.com>
>> wrote:
>> > >
>> > > > Hi Dhruv,
>> > > >
>> > > > 1. Could you give me an example to describe what you want to query?
>> > > > e.g., there are two time series:
>> > > >
>> > > > +-----------------------------+---------------+---------------+
>> > > > |                         Time|root.demo.d1.m1|root.demo.d2.m2|
>> > > > +-----------------------------+---------------+---------------+
>> > > > |1970-01-01T08:00:00.001+08:00|            1.0|            2.0|
>> > > > |2019-12-11T10:00:00.000+08:00|            1.0|            NULL|
>> > > > |2020-12-18T11:45:14.519+08:00|            2.0|            2.0|
>> > > > +-----------------------------+---------------+---------------+
>> > > >
>> > > > or,
>> > > >
>> > > > What you want to query? (you can consider it as a table in MySQL,
>> and
>> > > just
>> > > > write the sqls you need in mysql.)
>> > > >
>> > > > 2. Ah, we are testing the performance of v0.12. maybe 2-3 weeks, I
>> > think.
>> > > >
>> > > > Best,
>> > > > -----------------------------------
>> > > > Xiangdong Huang
>> > > > School of Software, Tsinghua University
>> > > >
>> > > >  黄向东
>> > > > 清华大学 软件学院
>> > > >
>> > > >
>> > > > Dhruv Garg <dg...@gmail.com> 于2021年3月8日周一 下午4:11写道:
>> > > >
>> > > > > Hello Xiangdong,
>> > > > >
>> > > > > Thanks for your response.
>> > > > >
>> > > > > 1. I have the same use-case: I want to run a join query on two
>> time
>> > > > > series but I think I am getting the syntax wrong.
>> > > > > I tried a few SQL-like join queries on IoTDB v0.11.2 and got the
>> > > > following
>> > > > > error:  "mismatched input 'JOIN' expecting {<EOF>, WHERE, ORDER,
>> > > SLIMIT,
>> > > > > LIMIT, OFFSET, SOFFSET, FILL, GROUP, DISABLE, ALIGN, ',', '.'}"
>> > > > > Could you please refer me to some documentation or provide a
>> simple
>> > > > example
>> > > > > join query for IoTDB?
>> > > > >
>> > > > > 2. I am also excited to try out the cluster version. Is there an
>> > > > > approximate timeline for v0.12 rollout?
>> > > > >
>> > > > > Thanks in advance.
>> > > > >
>> > > > > Regards,
>> > > > > dgargcs
>> > > > >
>> > > > > On Tue, 2 Mar 2021 at 17:24, Xiangdong Huang <sa...@gmail.com>
>> > > wrote:
>> > > > >
>> > > > > > Hi Dhruv,
>> > > > > >
>> > > > > > Welcome!
>> > > > > >
>> > > > > > 1. "join" for what requirements?
>> > > > > >
>> > > > > > IoTDB supports JOIN two time series ON their timestamp, i.e.,
>> time
>> > > > series
>> > > > > > alignment.
>> > > > > >
>> > > > > > 2. I think the cluster version is coming... In the coming
>> v0.12, I
>> > > > think
>> > > > > a
>> > > > > > cluster version (that does
>> > > > > > not support dynamically scale-out) will be released, and the
>> > > scale-out
>> > > > > > feature may be released in v0.13 or 0.14.
>> > > > > >
>> > > > > > Best,
>> > > > > > -----------------------------------
>> > > > > > Xiangdong Huang
>> > > > > > School of Software, Tsinghua University
>> > > > > >
>> > > > > > Dhruv Garg <dg...@gmail.com> 于2021年3月2日周二 下午3:54写道:
>> > > > > >
>> > > > > > > Hello,
>> > > > > > >
>> > > > > > > I am a researcher and a new user of IoTDB. I was excited when
>> I
>> > saw
>> > > > the
>> > > > > > > performance numbers of IoTDB compared to InfluxDB, and I have
>> set
>> > > it
>> > > > up
>> > > > > > on
>> > > > > > > a few workstations and a Raspberry Pi device.
>> > > > > > >
>> > > > > > > I am becoming familiar with it and have a few queries:
>> > > > > > >
>> > > > > > >    1. Does IoTDB support Join queries? - I tried looking up
>> some
>> > > > > > >    documentation on it, but could not find any. If the
>> feature is
>> > > > > > > available,
>> > > > > > >    could you please provide a sample query or the predicates
>> for
>> > > join
>> > > > > > > queries?
>> > > > > > >    2. I also browsed through the IoTDB Jira issues page. I saw
>> > that
>> > > > the
>> > > > > > >    distributed / cluster version is being developed.
>> > Approximately
>> > > > how
>> > > > > > much
>> > > > > > >    time would it take to get a stable / working version of the
>> > > > cluster
>> > > > > > > IoTDB?
>> > > > > > >
>> > > > > > > It would be great if someone can respond to my queries. I
>> would
>> > be
>> > > > > > > waiting for a reply. Thanks in advance.
>> > > > > > >
>> > > > > > > Regards,
>> > > > > > > dgargcs
>> > > > > > >
>> > > > > >
>> > > > >
>> > > >
>> > >
>> >
>>
>

Re: New user of IoTDB - a few queries

Posted by Xiangdong Huang <sa...@gmail.com>.
Hi, yes, root is like "/" in Unix-like OS.

-----------------------------------
Xiangdong Huang
School of Software, Tsinghua University

 黄向东
清华大学 软件学院


Dhruv Garg <dg...@gmail.com> 于2021年3月8日周一 下午6:14写道:

> Hello Xiangdong,
>
> Thanks for confirming! One last question for now, all storage groups must
> start with "root" right? I cannot have storage groups like root1.demo,
> correct?
>
> Regards,
> dgargcs
>
> On Mon, 8 Mar 2021 at 15:37, Xiangdong Huang <sa...@gmail.com> wrote:
>
> > Hi Dhruv,
> >
> > Yes you are right.  and IoTDB also supports join on timestamp across
> > storage groups.
> >
> > Q2: IoTDB does not support that now.
> > Current join looks like outer-join in RDBMS.
> > Supporting left join, right join and inner-join is not hard to implement,
> > just omit the rows that contain NULL.
> > (Better implementation will need CBO cost-based optimization, but IoTDB
> > lacks the statistics info for that.)
> >
> > Best,
> > -----------------------------------
> > Xiangdong Huang
> > School of Software, Tsinghua University
> >
> >  黄向东
> > 清华大学 软件学院
> >
> >
> > Dhruv Garg <dg...@gmail.com> 于2021年3月8日周一 下午5:56写道:
> >
> > > Hello Xiangdong,
> > >
> > > Yes. Let me elaborate a bit about the join requirement. Suppose I want
> to
> > > do a join to print out values in root.demo.d1.m1 and root.demo.d2.m2
> for
> > a
> > > common time range say 2019-12-11 00:00:00 to 2020-12-18 23:59:59. It
> > should
> > > print out the last two rows from your table.
> > >
> > > In SQL, when we do a join, there are two different tables and then we
> do
> > a
> > > join based on some common column => root.demo.d1 is one table (has an
> > "m1"
> > > column) and another table root.demo.d2 (has an "m2" column). If I do a
> > join
> > > on d1 and d2 based on timestamp, it will return some rows containing m1
> > and
> > > m2 where timestamps are the same.
> > >
> > > I think the way to look at join queries in IoTDB is slightly different.
> > > Here, we have a storage group (root.demo) with different time-series
> > (d1.m1
> > > and d2.m2). For each insert in a storage group, I think IoTDB
> > automatically
> > > joins these time-series on timestamp since it assumes null values for
> > other
> > > time-series that were not given a value during insert.  For example,
> if I
> > > do an "insert root.demo.d2(timestamp,m2) values (2021-08-03T00:00:00,
> > > 2021)", it will also append NULL value for root.demo.d1.m1 for this
> > > timestamp.
> > >
> > > Thus, to do a join within a storage group for *any number* of
> time-series
> > > is straightforward. I think this is trivially done by just giving the
> > time
> > > range and time-series names => "select d1.m1, d2.m2 from root.demo
> where
> > > timestamp >= 2019-19-11T00:00:00".
> > >
> > > Next, I thought about a similar query across storage groups, say
> > root.demo1
> > > and root.demo2. Here as well, I can run a similar query, but only start
> > > from a higher level in the storage hierarchy, i.e. "root" alone.
> "select
> > > demo1.m1, demo2.m2 from root where timestamp >= 2019-19-11T00:00:00".
> > >
> > > Q1. Is my interpretation of join on timestamp correct for IoTDB?
> > >
> > > Q2. Is there a way to omit rows that return one or more null column
> > values
> > > in the result?
> > >
> > > PS: Sorry for the long email. I am exploring IoTDB for a research
> project
> > > and just want to be clear in my understanding.
> > >
> > > Thanks in advance!
> > >
> > > Regards,
> > > dgargcs
> > >
> > > On Mon, 8 Mar 2021 at 14:12, Xiangdong Huang <sa...@gmail.com>
> wrote:
> > >
> > > > Hi Dhruv,
> > > >
> > > > 1. Could you give me an example to describe what you want to query?
> > > > e.g., there are two time series:
> > > >
> > > > +-----------------------------+---------------+---------------+
> > > > |                         Time|root.demo.d1.m1|root.demo.d2.m2|
> > > > +-----------------------------+---------------+---------------+
> > > > |1970-01-01T08:00:00.001+08:00|            1.0|            2.0|
> > > > |2019-12-11T10:00:00.000+08:00|            1.0|            NULL|
> > > > |2020-12-18T11:45:14.519+08:00|            2.0|            2.0|
> > > > +-----------------------------+---------------+---------------+
> > > >
> > > > or,
> > > >
> > > > What you want to query? (you can consider it as a table in MySQL, and
> > > just
> > > > write the sqls you need in mysql.)
> > > >
> > > > 2. Ah, we are testing the performance of v0.12. maybe 2-3 weeks, I
> > think.
> > > >
> > > > Best,
> > > > -----------------------------------
> > > > Xiangdong Huang
> > > > School of Software, Tsinghua University
> > > >
> > > >  黄向东
> > > > 清华大学 软件学院
> > > >
> > > >
> > > > Dhruv Garg <dg...@gmail.com> 于2021年3月8日周一 下午4:11写道:
> > > >
> > > > > Hello Xiangdong,
> > > > >
> > > > > Thanks for your response.
> > > > >
> > > > > 1. I have the same use-case: I want to run a join query on two time
> > > > > series but I think I am getting the syntax wrong.
> > > > > I tried a few SQL-like join queries on IoTDB v0.11.2 and got the
> > > > following
> > > > > error:  "mismatched input 'JOIN' expecting {<EOF>, WHERE, ORDER,
> > > SLIMIT,
> > > > > LIMIT, OFFSET, SOFFSET, FILL, GROUP, DISABLE, ALIGN, ',', '.'}"
> > > > > Could you please refer me to some documentation or provide a simple
> > > > example
> > > > > join query for IoTDB?
> > > > >
> > > > > 2. I am also excited to try out the cluster version. Is there an
> > > > > approximate timeline for v0.12 rollout?
> > > > >
> > > > > Thanks in advance.
> > > > >
> > > > > Regards,
> > > > > dgargcs
> > > > >
> > > > > On Tue, 2 Mar 2021 at 17:24, Xiangdong Huang <sa...@gmail.com>
> > > wrote:
> > > > >
> > > > > > Hi Dhruv,
> > > > > >
> > > > > > Welcome!
> > > > > >
> > > > > > 1. "join" for what requirements?
> > > > > >
> > > > > > IoTDB supports JOIN two time series ON their timestamp, i.e.,
> time
> > > > series
> > > > > > alignment.
> > > > > >
> > > > > > 2. I think the cluster version is coming... In the coming v0.12,
> I
> > > > think
> > > > > a
> > > > > > cluster version (that does
> > > > > > not support dynamically scale-out) will be released, and the
> > > scale-out
> > > > > > feature may be released in v0.13 or 0.14.
> > > > > >
> > > > > > Best,
> > > > > > -----------------------------------
> > > > > > Xiangdong Huang
> > > > > > School of Software, Tsinghua University
> > > > > >
> > > > > > Dhruv Garg <dg...@gmail.com> 于2021年3月2日周二 下午3:54写道:
> > > > > >
> > > > > > > Hello,
> > > > > > >
> > > > > > > I am a researcher and a new user of IoTDB. I was excited when I
> > saw
> > > > the
> > > > > > > performance numbers of IoTDB compared to InfluxDB, and I have
> set
> > > it
> > > > up
> > > > > > on
> > > > > > > a few workstations and a Raspberry Pi device.
> > > > > > >
> > > > > > > I am becoming familiar with it and have a few queries:
> > > > > > >
> > > > > > >    1. Does IoTDB support Join queries? - I tried looking up
> some
> > > > > > >    documentation on it, but could not find any. If the feature
> is
> > > > > > > available,
> > > > > > >    could you please provide a sample query or the predicates
> for
> > > join
> > > > > > > queries?
> > > > > > >    2. I also browsed through the IoTDB Jira issues page. I saw
> > that
> > > > the
> > > > > > >    distributed / cluster version is being developed.
> > Approximately
> > > > how
> > > > > > much
> > > > > > >    time would it take to get a stable / working version of the
> > > > cluster
> > > > > > > IoTDB?
> > > > > > >
> > > > > > > It would be great if someone can respond to my queries. I would
> > be
> > > > > > > waiting for a reply. Thanks in advance.
> > > > > > >
> > > > > > > Regards,
> > > > > > > dgargcs
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>

Re: New user of IoTDB - a few queries

Posted by Dhruv Garg <dg...@gmail.com>.
Hello Xiangdong,

Thanks for confirming! One last question for now, all storage groups must
start with "root" right? I cannot have storage groups like root1.demo,
correct?

Regards,
dgargcs

On Mon, 8 Mar 2021 at 15:37, Xiangdong Huang <sa...@gmail.com> wrote:

> Hi Dhruv,
>
> Yes you are right.  and IoTDB also supports join on timestamp across
> storage groups.
>
> Q2: IoTDB does not support that now.
> Current join looks like outer-join in RDBMS.
> Supporting left join, right join and inner-join is not hard to implement,
> just omit the rows that contain NULL.
> (Better implementation will need CBO cost-based optimization, but IoTDB
> lacks the statistics info for that.)
>
> Best,
> -----------------------------------
> Xiangdong Huang
> School of Software, Tsinghua University
>
>  黄向东
> 清华大学 软件学院
>
>
> Dhruv Garg <dg...@gmail.com> 于2021年3月8日周一 下午5:56写道:
>
> > Hello Xiangdong,
> >
> > Yes. Let me elaborate a bit about the join requirement. Suppose I want to
> > do a join to print out values in root.demo.d1.m1 and root.demo.d2.m2 for
> a
> > common time range say 2019-12-11 00:00:00 to 2020-12-18 23:59:59. It
> should
> > print out the last two rows from your table.
> >
> > In SQL, when we do a join, there are two different tables and then we do
> a
> > join based on some common column => root.demo.d1 is one table (has an
> "m1"
> > column) and another table root.demo.d2 (has an "m2" column). If I do a
> join
> > on d1 and d2 based on timestamp, it will return some rows containing m1
> and
> > m2 where timestamps are the same.
> >
> > I think the way to look at join queries in IoTDB is slightly different.
> > Here, we have a storage group (root.demo) with different time-series
> (d1.m1
> > and d2.m2). For each insert in a storage group, I think IoTDB
> automatically
> > joins these time-series on timestamp since it assumes null values for
> other
> > time-series that were not given a value during insert.  For example, if I
> > do an "insert root.demo.d2(timestamp,m2) values (2021-08-03T00:00:00,
> > 2021)", it will also append NULL value for root.demo.d1.m1 for this
> > timestamp.
> >
> > Thus, to do a join within a storage group for *any number* of time-series
> > is straightforward. I think this is trivially done by just giving the
> time
> > range and time-series names => "select d1.m1, d2.m2 from root.demo where
> > timestamp >= 2019-19-11T00:00:00".
> >
> > Next, I thought about a similar query across storage groups, say
> root.demo1
> > and root.demo2. Here as well, I can run a similar query, but only start
> > from a higher level in the storage hierarchy, i.e. "root" alone. "select
> > demo1.m1, demo2.m2 from root where timestamp >= 2019-19-11T00:00:00".
> >
> > Q1. Is my interpretation of join on timestamp correct for IoTDB?
> >
> > Q2. Is there a way to omit rows that return one or more null column
> values
> > in the result?
> >
> > PS: Sorry for the long email. I am exploring IoTDB for a research project
> > and just want to be clear in my understanding.
> >
> > Thanks in advance!
> >
> > Regards,
> > dgargcs
> >
> > On Mon, 8 Mar 2021 at 14:12, Xiangdong Huang <sa...@gmail.com> wrote:
> >
> > > Hi Dhruv,
> > >
> > > 1. Could you give me an example to describe what you want to query?
> > > e.g., there are two time series:
> > >
> > > +-----------------------------+---------------+---------------+
> > > |                         Time|root.demo.d1.m1|root.demo.d2.m2|
> > > +-----------------------------+---------------+---------------+
> > > |1970-01-01T08:00:00.001+08:00|            1.0|            2.0|
> > > |2019-12-11T10:00:00.000+08:00|            1.0|            NULL|
> > > |2020-12-18T11:45:14.519+08:00|            2.0|            2.0|
> > > +-----------------------------+---------------+---------------+
> > >
> > > or,
> > >
> > > What you want to query? (you can consider it as a table in MySQL, and
> > just
> > > write the sqls you need in mysql.)
> > >
> > > 2. Ah, we are testing the performance of v0.12. maybe 2-3 weeks, I
> think.
> > >
> > > Best,
> > > -----------------------------------
> > > Xiangdong Huang
> > > School of Software, Tsinghua University
> > >
> > >  黄向东
> > > 清华大学 软件学院
> > >
> > >
> > > Dhruv Garg <dg...@gmail.com> 于2021年3月8日周一 下午4:11写道:
> > >
> > > > Hello Xiangdong,
> > > >
> > > > Thanks for your response.
> > > >
> > > > 1. I have the same use-case: I want to run a join query on two time
> > > > series but I think I am getting the syntax wrong.
> > > > I tried a few SQL-like join queries on IoTDB v0.11.2 and got the
> > > following
> > > > error:  "mismatched input 'JOIN' expecting {<EOF>, WHERE, ORDER,
> > SLIMIT,
> > > > LIMIT, OFFSET, SOFFSET, FILL, GROUP, DISABLE, ALIGN, ',', '.'}"
> > > > Could you please refer me to some documentation or provide a simple
> > > example
> > > > join query for IoTDB?
> > > >
> > > > 2. I am also excited to try out the cluster version. Is there an
> > > > approximate timeline for v0.12 rollout?
> > > >
> > > > Thanks in advance.
> > > >
> > > > Regards,
> > > > dgargcs
> > > >
> > > > On Tue, 2 Mar 2021 at 17:24, Xiangdong Huang <sa...@gmail.com>
> > wrote:
> > > >
> > > > > Hi Dhruv,
> > > > >
> > > > > Welcome!
> > > > >
> > > > > 1. "join" for what requirements?
> > > > >
> > > > > IoTDB supports JOIN two time series ON their timestamp, i.e., time
> > > series
> > > > > alignment.
> > > > >
> > > > > 2. I think the cluster version is coming... In the coming v0.12, I
> > > think
> > > > a
> > > > > cluster version (that does
> > > > > not support dynamically scale-out) will be released, and the
> > scale-out
> > > > > feature may be released in v0.13 or 0.14.
> > > > >
> > > > > Best,
> > > > > -----------------------------------
> > > > > Xiangdong Huang
> > > > > School of Software, Tsinghua University
> > > > >
> > > > > Dhruv Garg <dg...@gmail.com> 于2021年3月2日周二 下午3:54写道:
> > > > >
> > > > > > Hello,
> > > > > >
> > > > > > I am a researcher and a new user of IoTDB. I was excited when I
> saw
> > > the
> > > > > > performance numbers of IoTDB compared to InfluxDB, and I have set
> > it
> > > up
> > > > > on
> > > > > > a few workstations and a Raspberry Pi device.
> > > > > >
> > > > > > I am becoming familiar with it and have a few queries:
> > > > > >
> > > > > >    1. Does IoTDB support Join queries? - I tried looking up some
> > > > > >    documentation on it, but could not find any. If the feature is
> > > > > > available,
> > > > > >    could you please provide a sample query or the predicates for
> > join
> > > > > > queries?
> > > > > >    2. I also browsed through the IoTDB Jira issues page. I saw
> that
> > > the
> > > > > >    distributed / cluster version is being developed.
> Approximately
> > > how
> > > > > much
> > > > > >    time would it take to get a stable / working version of the
> > > cluster
> > > > > > IoTDB?
> > > > > >
> > > > > > It would be great if someone can respond to my queries. I would
> be
> > > > > > waiting for a reply. Thanks in advance.
> > > > > >
> > > > > > Regards,
> > > > > > dgargcs
> > > > > >
> > > > >
> > > >
> > >
> >
>

Re: New user of IoTDB - a few queries

Posted by Xiangdong Huang <sa...@gmail.com>.
Hi Dhruv,

Yes you are right.  and IoTDB also supports join on timestamp across
storage groups.

Q2: IoTDB does not support that now.
Current join looks like outer-join in RDBMS.
Supporting left join, right join and inner-join is not hard to implement,
just omit the rows that contain NULL.
(Better implementation will need CBO cost-based optimization, but IoTDB
lacks the statistics info for that.)

Best,
-----------------------------------
Xiangdong Huang
School of Software, Tsinghua University

 黄向东
清华大学 软件学院


Dhruv Garg <dg...@gmail.com> 于2021年3月8日周一 下午5:56写道:

> Hello Xiangdong,
>
> Yes. Let me elaborate a bit about the join requirement. Suppose I want to
> do a join to print out values in root.demo.d1.m1 and root.demo.d2.m2 for a
> common time range say 2019-12-11 00:00:00 to 2020-12-18 23:59:59. It should
> print out the last two rows from your table.
>
> In SQL, when we do a join, there are two different tables and then we do a
> join based on some common column => root.demo.d1 is one table (has an "m1"
> column) and another table root.demo.d2 (has an "m2" column). If I do a join
> on d1 and d2 based on timestamp, it will return some rows containing m1 and
> m2 where timestamps are the same.
>
> I think the way to look at join queries in IoTDB is slightly different.
> Here, we have a storage group (root.demo) with different time-series (d1.m1
> and d2.m2). For each insert in a storage group, I think IoTDB automatically
> joins these time-series on timestamp since it assumes null values for other
> time-series that were not given a value during insert.  For example, if I
> do an "insert root.demo.d2(timestamp,m2) values (2021-08-03T00:00:00,
> 2021)", it will also append NULL value for root.demo.d1.m1 for this
> timestamp.
>
> Thus, to do a join within a storage group for *any number* of time-series
> is straightforward. I think this is trivially done by just giving the time
> range and time-series names => "select d1.m1, d2.m2 from root.demo where
> timestamp >= 2019-19-11T00:00:00".
>
> Next, I thought about a similar query across storage groups, say root.demo1
> and root.demo2. Here as well, I can run a similar query, but only start
> from a higher level in the storage hierarchy, i.e. "root" alone. "select
> demo1.m1, demo2.m2 from root where timestamp >= 2019-19-11T00:00:00".
>
> Q1. Is my interpretation of join on timestamp correct for IoTDB?
>
> Q2. Is there a way to omit rows that return one or more null column values
> in the result?
>
> PS: Sorry for the long email. I am exploring IoTDB for a research project
> and just want to be clear in my understanding.
>
> Thanks in advance!
>
> Regards,
> dgargcs
>
> On Mon, 8 Mar 2021 at 14:12, Xiangdong Huang <sa...@gmail.com> wrote:
>
> > Hi Dhruv,
> >
> > 1. Could you give me an example to describe what you want to query?
> > e.g., there are two time series:
> >
> > +-----------------------------+---------------+---------------+
> > |                         Time|root.demo.d1.m1|root.demo.d2.m2|
> > +-----------------------------+---------------+---------------+
> > |1970-01-01T08:00:00.001+08:00|            1.0|            2.0|
> > |2019-12-11T10:00:00.000+08:00|            1.0|            NULL|
> > |2020-12-18T11:45:14.519+08:00|            2.0|            2.0|
> > +-----------------------------+---------------+---------------+
> >
> > or,
> >
> > What you want to query? (you can consider it as a table in MySQL, and
> just
> > write the sqls you need in mysql.)
> >
> > 2. Ah, we are testing the performance of v0.12. maybe 2-3 weeks, I think.
> >
> > Best,
> > -----------------------------------
> > Xiangdong Huang
> > School of Software, Tsinghua University
> >
> >  黄向东
> > 清华大学 软件学院
> >
> >
> > Dhruv Garg <dg...@gmail.com> 于2021年3月8日周一 下午4:11写道:
> >
> > > Hello Xiangdong,
> > >
> > > Thanks for your response.
> > >
> > > 1. I have the same use-case: I want to run a join query on two time
> > > series but I think I am getting the syntax wrong.
> > > I tried a few SQL-like join queries on IoTDB v0.11.2 and got the
> > following
> > > error:  "mismatched input 'JOIN' expecting {<EOF>, WHERE, ORDER,
> SLIMIT,
> > > LIMIT, OFFSET, SOFFSET, FILL, GROUP, DISABLE, ALIGN, ',', '.'}"
> > > Could you please refer me to some documentation or provide a simple
> > example
> > > join query for IoTDB?
> > >
> > > 2. I am also excited to try out the cluster version. Is there an
> > > approximate timeline for v0.12 rollout?
> > >
> > > Thanks in advance.
> > >
> > > Regards,
> > > dgargcs
> > >
> > > On Tue, 2 Mar 2021 at 17:24, Xiangdong Huang <sa...@gmail.com>
> wrote:
> > >
> > > > Hi Dhruv,
> > > >
> > > > Welcome!
> > > >
> > > > 1. "join" for what requirements?
> > > >
> > > > IoTDB supports JOIN two time series ON their timestamp, i.e., time
> > series
> > > > alignment.
> > > >
> > > > 2. I think the cluster version is coming... In the coming v0.12, I
> > think
> > > a
> > > > cluster version (that does
> > > > not support dynamically scale-out) will be released, and the
> scale-out
> > > > feature may be released in v0.13 or 0.14.
> > > >
> > > > Best,
> > > > -----------------------------------
> > > > Xiangdong Huang
> > > > School of Software, Tsinghua University
> > > >
> > > > Dhruv Garg <dg...@gmail.com> 于2021年3月2日周二 下午3:54写道:
> > > >
> > > > > Hello,
> > > > >
> > > > > I am a researcher and a new user of IoTDB. I was excited when I saw
> > the
> > > > > performance numbers of IoTDB compared to InfluxDB, and I have set
> it
> > up
> > > > on
> > > > > a few workstations and a Raspberry Pi device.
> > > > >
> > > > > I am becoming familiar with it and have a few queries:
> > > > >
> > > > >    1. Does IoTDB support Join queries? - I tried looking up some
> > > > >    documentation on it, but could not find any. If the feature is
> > > > > available,
> > > > >    could you please provide a sample query or the predicates for
> join
> > > > > queries?
> > > > >    2. I also browsed through the IoTDB Jira issues page. I saw that
> > the
> > > > >    distributed / cluster version is being developed. Approximately
> > how
> > > > much
> > > > >    time would it take to get a stable / working version of the
> > cluster
> > > > > IoTDB?
> > > > >
> > > > > It would be great if someone can respond to my queries. I would be
> > > > > waiting for a reply. Thanks in advance.
> > > > >
> > > > > Regards,
> > > > > dgargcs
> > > > >
> > > >
> > >
> >
>

Re: New user of IoTDB - a few queries

Posted by Dhruv Garg <dg...@gmail.com>.
Hello Xiangdong,

Yes. Let me elaborate a bit about the join requirement. Suppose I want to
do a join to print out values in root.demo.d1.m1 and root.demo.d2.m2 for a
common time range say 2019-12-11 00:00:00 to 2020-12-18 23:59:59. It should
print out the last two rows from your table.

In SQL, when we do a join, there are two different tables and then we do a
join based on some common column => root.demo.d1 is one table (has an "m1"
column) and another table root.demo.d2 (has an "m2" column). If I do a join
on d1 and d2 based on timestamp, it will return some rows containing m1 and
m2 where timestamps are the same.

I think the way to look at join queries in IoTDB is slightly different.
Here, we have a storage group (root.demo) with different time-series (d1.m1
and d2.m2). For each insert in a storage group, I think IoTDB automatically
joins these time-series on timestamp since it assumes null values for other
time-series that were not given a value during insert.  For example, if I
do an "insert root.demo.d2(timestamp,m2) values (2021-08-03T00:00:00,
2021)", it will also append NULL value for root.demo.d1.m1 for this
timestamp.

Thus, to do a join within a storage group for *any number* of time-series
is straightforward. I think this is trivially done by just giving the time
range and time-series names => "select d1.m1, d2.m2 from root.demo where
timestamp >= 2019-19-11T00:00:00".

Next, I thought about a similar query across storage groups, say root.demo1
and root.demo2. Here as well, I can run a similar query, but only start
from a higher level in the storage hierarchy, i.e. "root" alone. "select
demo1.m1, demo2.m2 from root where timestamp >= 2019-19-11T00:00:00".

Q1. Is my interpretation of join on timestamp correct for IoTDB?

Q2. Is there a way to omit rows that return one or more null column values
in the result?

PS: Sorry for the long email. I am exploring IoTDB for a research project
and just want to be clear in my understanding.

Thanks in advance!

Regards,
dgargcs

On Mon, 8 Mar 2021 at 14:12, Xiangdong Huang <sa...@gmail.com> wrote:

> Hi Dhruv,
>
> 1. Could you give me an example to describe what you want to query?
> e.g., there are two time series:
>
> +-----------------------------+---------------+---------------+
> |                         Time|root.demo.d1.m1|root.demo.d2.m2|
> +-----------------------------+---------------+---------------+
> |1970-01-01T08:00:00.001+08:00|            1.0|            2.0|
> |2019-12-11T10:00:00.000+08:00|            1.0|            NULL|
> |2020-12-18T11:45:14.519+08:00|            2.0|            2.0|
> +-----------------------------+---------------+---------------+
>
> or,
>
> What you want to query? (you can consider it as a table in MySQL, and just
> write the sqls you need in mysql.)
>
> 2. Ah, we are testing the performance of v0.12. maybe 2-3 weeks, I think.
>
> Best,
> -----------------------------------
> Xiangdong Huang
> School of Software, Tsinghua University
>
>  黄向东
> 清华大学 软件学院
>
>
> Dhruv Garg <dg...@gmail.com> 于2021年3月8日周一 下午4:11写道:
>
> > Hello Xiangdong,
> >
> > Thanks for your response.
> >
> > 1. I have the same use-case: I want to run a join query on two time
> > series but I think I am getting the syntax wrong.
> > I tried a few SQL-like join queries on IoTDB v0.11.2 and got the
> following
> > error:  "mismatched input 'JOIN' expecting {<EOF>, WHERE, ORDER, SLIMIT,
> > LIMIT, OFFSET, SOFFSET, FILL, GROUP, DISABLE, ALIGN, ',', '.'}"
> > Could you please refer me to some documentation or provide a simple
> example
> > join query for IoTDB?
> >
> > 2. I am also excited to try out the cluster version. Is there an
> > approximate timeline for v0.12 rollout?
> >
> > Thanks in advance.
> >
> > Regards,
> > dgargcs
> >
> > On Tue, 2 Mar 2021 at 17:24, Xiangdong Huang <sa...@gmail.com> wrote:
> >
> > > Hi Dhruv,
> > >
> > > Welcome!
> > >
> > > 1. "join" for what requirements?
> > >
> > > IoTDB supports JOIN two time series ON their timestamp, i.e., time
> series
> > > alignment.
> > >
> > > 2. I think the cluster version is coming... In the coming v0.12, I
> think
> > a
> > > cluster version (that does
> > > not support dynamically scale-out) will be released, and the scale-out
> > > feature may be released in v0.13 or 0.14.
> > >
> > > Best,
> > > -----------------------------------
> > > Xiangdong Huang
> > > School of Software, Tsinghua University
> > >
> > > Dhruv Garg <dg...@gmail.com> 于2021年3月2日周二 下午3:54写道:
> > >
> > > > Hello,
> > > >
> > > > I am a researcher and a new user of IoTDB. I was excited when I saw
> the
> > > > performance numbers of IoTDB compared to InfluxDB, and I have set it
> up
> > > on
> > > > a few workstations and a Raspberry Pi device.
> > > >
> > > > I am becoming familiar with it and have a few queries:
> > > >
> > > >    1. Does IoTDB support Join queries? - I tried looking up some
> > > >    documentation on it, but could not find any. If the feature is
> > > > available,
> > > >    could you please provide a sample query or the predicates for join
> > > > queries?
> > > >    2. I also browsed through the IoTDB Jira issues page. I saw that
> the
> > > >    distributed / cluster version is being developed. Approximately
> how
> > > much
> > > >    time would it take to get a stable / working version of the
> cluster
> > > > IoTDB?
> > > >
> > > > It would be great if someone can respond to my queries. I would be
> > > > waiting for a reply. Thanks in advance.
> > > >
> > > > Regards,
> > > > dgargcs
> > > >
> > >
> >
>

Re: New user of IoTDB - a few queries

Posted by Xiangdong Huang <sa...@gmail.com>.
Hi Dhruv,

1. Could you give me an example to describe what you want to query?
e.g., there are two time series:

+-----------------------------+---------------+---------------+
|                         Time|root.demo.d1.m1|root.demo.d2.m2|
+-----------------------------+---------------+---------------+
|1970-01-01T08:00:00.001+08:00|            1.0|            2.0|
|2019-12-11T10:00:00.000+08:00|            1.0|            NULL|
|2020-12-18T11:45:14.519+08:00|            2.0|            2.0|
+-----------------------------+---------------+---------------+

or,

What you want to query? (you can consider it as a table in MySQL, and just
write the sqls you need in mysql.)

2. Ah, we are testing the performance of v0.12. maybe 2-3 weeks, I think.

Best,
-----------------------------------
Xiangdong Huang
School of Software, Tsinghua University

 黄向东
清华大学 软件学院


Dhruv Garg <dg...@gmail.com> 于2021年3月8日周一 下午4:11写道:

> Hello Xiangdong,
>
> Thanks for your response.
>
> 1. I have the same use-case: I want to run a join query on two time
> series but I think I am getting the syntax wrong.
> I tried a few SQL-like join queries on IoTDB v0.11.2 and got the following
> error:  "mismatched input 'JOIN' expecting {<EOF>, WHERE, ORDER, SLIMIT,
> LIMIT, OFFSET, SOFFSET, FILL, GROUP, DISABLE, ALIGN, ',', '.'}"
> Could you please refer me to some documentation or provide a simple example
> join query for IoTDB?
>
> 2. I am also excited to try out the cluster version. Is there an
> approximate timeline for v0.12 rollout?
>
> Thanks in advance.
>
> Regards,
> dgargcs
>
> On Tue, 2 Mar 2021 at 17:24, Xiangdong Huang <sa...@gmail.com> wrote:
>
> > Hi Dhruv,
> >
> > Welcome!
> >
> > 1. "join" for what requirements?
> >
> > IoTDB supports JOIN two time series ON their timestamp, i.e., time series
> > alignment.
> >
> > 2. I think the cluster version is coming... In the coming v0.12, I think
> a
> > cluster version (that does
> > not support dynamically scale-out) will be released, and the scale-out
> > feature may be released in v0.13 or 0.14.
> >
> > Best,
> > -----------------------------------
> > Xiangdong Huang
> > School of Software, Tsinghua University
> >
> > Dhruv Garg <dg...@gmail.com> 于2021年3月2日周二 下午3:54写道:
> >
> > > Hello,
> > >
> > > I am a researcher and a new user of IoTDB. I was excited when I saw the
> > > performance numbers of IoTDB compared to InfluxDB, and I have set it up
> > on
> > > a few workstations and a Raspberry Pi device.
> > >
> > > I am becoming familiar with it and have a few queries:
> > >
> > >    1. Does IoTDB support Join queries? - I tried looking up some
> > >    documentation on it, but could not find any. If the feature is
> > > available,
> > >    could you please provide a sample query or the predicates for join
> > > queries?
> > >    2. I also browsed through the IoTDB Jira issues page. I saw that the
> > >    distributed / cluster version is being developed. Approximately how
> > much
> > >    time would it take to get a stable / working version of the cluster
> > > IoTDB?
> > >
> > > It would be great if someone can respond to my queries. I would be
> > > waiting for a reply. Thanks in advance.
> > >
> > > Regards,
> > > dgargcs
> > >
> >
>

Re: New user of IoTDB - a few queries

Posted by Dhruv Garg <dg...@gmail.com>.
Hello Xiangdong,

Thanks for your response.

1. I have the same use-case: I want to run a join query on two time
series but I think I am getting the syntax wrong.
I tried a few SQL-like join queries on IoTDB v0.11.2 and got the following
error:  "mismatched input 'JOIN' expecting {<EOF>, WHERE, ORDER, SLIMIT,
LIMIT, OFFSET, SOFFSET, FILL, GROUP, DISABLE, ALIGN, ',', '.'}"
Could you please refer me to some documentation or provide a simple example
join query for IoTDB?

2. I am also excited to try out the cluster version. Is there an
approximate timeline for v0.12 rollout?

Thanks in advance.

Regards,
dgargcs

On Tue, 2 Mar 2021 at 17:24, Xiangdong Huang <sa...@gmail.com> wrote:

> Hi Dhruv,
>
> Welcome!
>
> 1. "join" for what requirements?
>
> IoTDB supports JOIN two time series ON their timestamp, i.e., time series
> alignment.
>
> 2. I think the cluster version is coming... In the coming v0.12, I think a
> cluster version (that does
> not support dynamically scale-out) will be released, and the scale-out
> feature may be released in v0.13 or 0.14.
>
> Best,
> -----------------------------------
> Xiangdong Huang
> School of Software, Tsinghua University
>
> Dhruv Garg <dg...@gmail.com> 于2021年3月2日周二 下午3:54写道:
>
> > Hello,
> >
> > I am a researcher and a new user of IoTDB. I was excited when I saw the
> > performance numbers of IoTDB compared to InfluxDB, and I have set it up
> on
> > a few workstations and a Raspberry Pi device.
> >
> > I am becoming familiar with it and have a few queries:
> >
> >    1. Does IoTDB support Join queries? - I tried looking up some
> >    documentation on it, but could not find any. If the feature is
> > available,
> >    could you please provide a sample query or the predicates for join
> > queries?
> >    2. I also browsed through the IoTDB Jira issues page. I saw that the
> >    distributed / cluster version is being developed. Approximately how
> much
> >    time would it take to get a stable / working version of the cluster
> > IoTDB?
> >
> > It would be great if someone can respond to my queries. I would be
> > waiting for a reply. Thanks in advance.
> >
> > Regards,
> > dgargcs
> >
>

Re: New user of IoTDB - a few queries

Posted by Xiangdong Huang <sa...@gmail.com>.
Hi Dhruv,

Welcome!

1. "join" for what requirements?

IoTDB supports JOIN two time series ON their timestamp, i.e., time series
alignment.

2. I think the cluster version is coming... In the coming v0.12, I think a
cluster version (that does
not support dynamically scale-out) will be released, and the scale-out
feature may be released in v0.13 or 0.14.

Best,
-----------------------------------
Xiangdong Huang
School of Software, Tsinghua University

Dhruv Garg <dg...@gmail.com> 于2021年3月2日周二 下午3:54写道:

> Hello,
>
> I am a researcher and a new user of IoTDB. I was excited when I saw the
> performance numbers of IoTDB compared to InfluxDB, and I have set it up on
> a few workstations and a Raspberry Pi device.
>
> I am becoming familiar with it and have a few queries:
>
>    1. Does IoTDB support Join queries? - I tried looking up some
>    documentation on it, but could not find any. If the feature is
> available,
>    could you please provide a sample query or the predicates for join
> queries?
>    2. I also browsed through the IoTDB Jira issues page. I saw that the
>    distributed / cluster version is being developed. Approximately how much
>    time would it take to get a stable / working version of the cluster
> IoTDB?
>
> It would be great if someone can respond to my queries. I would be
> waiting for a reply. Thanks in advance.
>
> Regards,
> dgargcs
>