Hi, all

Leaving aside this feature, has the PR of the big feature we merged in been 
discussed in detail? How to define detailed discussion?

I think that we should discuss some of our discussion points clearly at the 
beginning of the design, instead of how to revert the PR after the PR is 
merged. I think there is a problem with this process.

Who can guarantee that there are no bugs and no problems in the developed 
functions, and we are all improving through continuous iteration. And this 
feature also refers to the design of some other excellent projects, such as 
doris and hbase.

As for the name of this feature, in doris, it is called multi-tenancy[1], in 
hbase it is called quota[2], we can call it resource-control, I think it is ok. 
After all, we did not reflect the wording of multi-tenancy in the code 
implementation.



[1] https://doris.apache.org/docs/dev/admin-manual/multi-tenant
[2] https://hbase.apache.org/book.html#quota




Thanks,
---------------------------------------
Houliang Qi
BONC, Ltd


---- Replied Message ----
| From | Chao Wang<[email protected]> |
| Date | 04/11/2023 09:15 |
| To | [email protected]<[email protected]> |
| Cc | [email protected]<[email protected]> |
| Subject | Re: [discuss] consider revert the feature of multi-tenancy |
Hi,  Xiangdong,


what is the side effect when we manually create a time series?


How about the pr https://github.com/apache/iotdb/pull/9430,  limit the 
timeseries number of cluster, anyone analyze the side effect about creating a 
time series?


This discuss is not for getting "+1" or "-1" (though anyone can reply
the vote..).
I just want to discuss that do we REALLY consider and analyze the
feature and the implementation carefully?


Why not discuss before the PR submission, but wait until the PR submission 
before discussing, wouldn't it waste the energy of community participants? I 
have also seen emails sent before, not without notifying everyone.




In addition, I think Jialin's suggestion is more reasonable. The description of 
this function may not be particularly clear. It can be said in another way, 
such as resource control. However, reverting will undoubtedly be harmful to the 
community, will discourage the enthusiasm of community participants, and is 
very unfriendly to community participants. If in doubt, I think it would be 
better to raise it as soon as possible, instead of waiting for others to finish 
their hard work before questioning.


Another point is that the multi-tenancy function may be a function required by 
other companies' IOTDB releases, but will other people's contributions to the 
community affect the development of the community? I think it will be more 
conducive to the development of community diversity.






Thanks!


Chao Wang
BONC ltd
[email protected]
On 4/10/2023 23:45,Xiangdong Huang<[email protected]> wrote:
Besides the above, when we merge this pr, we posted the design in the feishu[4] 
and discussed it online as least two times, and emailed and discussed it with 
everyone[5], it has been passed 10 days.

I think I know this and I have shown my concern about the possible
harm of this featuer  to IoTDB's edge mode...

1) how many side-effects the feature will bring;
We have done some tests under[1], which says with 20 databases and 1 user when 
we set `quota_enable` to true to enable the multi-tenancy feature, the write 
performance is only slowed down 1.75%, the read latency has not much 
difference, we will do more tests to show the side-effects in the feature.

The experiment is rather simple...
When we really want to show the added codes having no side-effects,
all the exepriemnt settings should follow a rule that how to fully
expose the possible problems.

For example, as mult-tenancy limits the available # of devices,
timeseries, and the spaces of disk, it should have side-effect on
create new device/timeseries, and writing new data.
So,
- what is the side effect when we manually create a time series?
- what is the side effect when we use automatical creating a time series?
- what is the side effect when we write new data? (as the data can be
compressed when it is flushed on disk in async mode, how to check the
disk space?). Besides, as it impaces each write operation, we need to
focus on write operstions which's batchsize=1.

This discuss is not for getting "+1" or "-1" (though anyone can reply
the vote..).
I just want to discuss that do we REALLY consider and analyze the
feature and the implementation carefully?

If not, then this big feature is not the time to be merged (and I will
call a vote then), and then let's rethink it and make it really
available together.
If yes, we also need to   rethink it and improve it for better performance.


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

Chao Wang <[email protected]> 于2023年4月10日周一 19:14写道:

Agree with Houliang's opinion.


Thanks!


Chao Wang
BONC ltd
On 4/10/2023 19:01,Houliang Qi<[email protected]> wrote:
-1

First of all, thanks Xiangdong for pointing out IoTDB's Charter.

"RESOLVED, that the Apache IoTDB Project be and hereby is
responsible for the creation and maintenance of software
related to an IoT native database with high performance
for data management and analysis, on the edge and the cloud."

As the charter post, IoTDB can be deployed in the cloud, this is why we deploy 
the multi-tenancy feature.

The cloud can be a public or private cloud if we can deploy only one IoTDB 
cluster, and manage multi databases and users with different resources, which 
will simplify the maintenance.

-> 1) how many side-effects the feature will bring;

We have done some tests under[1], which says with 20 databases and 1 user when 
we set `quota_enable` to true to enable the multi-tenancy feature, the write 
performance is only slowed down 1.75%, the read latency has not much 
difference, we will do more tests to show the side-effects in the feature.

-> 2) how to reduce the effect when IoTDB is deployed on the edge.

We supply one switch about this feature, called `quota_enable`, by default this 
value is false, so it has no effect when IoTDB is deployed on the edge.
This also answers Jinrui's doubt.

-> 3) some checks failed on WinOS, are they irrelevant?

No, I think they are not irrelevant, the false check message is about the 
Compaction module, and
I see the former pr[2][3] which have been merged 4 days ago has the same issue, 
so I suspect that the compaction module has occasional bugs

-> 4) The feature SHOULD be discussed carefully in the community, rather that 
submit PRs and merged after some reviews.

Besides the above, when we merge this pr, we posted the design in the feishu[4] 
and discussed it online as least two times, and emailed and discussed it with 
everyone[5], it has been passed 10 days.


The IoTDB community is open and different opinions are welcome. After all, we 
all have the same original intention of wanting IoTDB's features to be more 
diverse.

[1] https://apache-iotdb.feishu.cn/docx/DbqCd8t3EoxlCFx1yYicd9N4n4s
[2] https://github.com/apache/iotdb/actions/runs/4625220921/jobs/8181102446
[3] https://github.com/apache/iotdb/actions/runs/4531046594/jobs/7980725316
[4] https://apache-iotdb.feishu.cn/docx/doxcnKOYKDmJ40FpVnVsPMd3nTg
[5] https://lists.apache.org/thread/y6dqcm2o7qk0nbkllb61bp8cv6d3m1h7





Thanks,
---------------------------------------
Houliang Qi
BONC, Ltd


---- Replied Message ----
| From | 张金瑞<[email protected]> |
| Date | 04/10/2023 15:03 |
| To | dev<[email protected]> |
| Subject | Re:[discuss] consider revert the feature of multi-tenancy |
+1,


Agree with Xiangdong's opinion.&nbsp;
And on the other hand,&nbsp; checking this PR's side effects may take lot of 
time&nbsp; and during this period, there may be lots of users using latest code 
to deploy/upgrade their systems. So the best practice is reverting this PR 
until the side-effect is eliminated



Thanks,
Zhang Jinrui,Apache IoTDB PMC



Original



From:"Xiangdong Huang"< [email protected] &gt;;

Date:2023/4/10 10:05

To:"dev"< [email protected] &gt;;

Subject:[discuss] consider revert the feature of multi-tenancy


Hi all,

I see the multi-tenancy feature is merged, and several committers made
a lot of contributions on that.

As multi-tenancy is quite a big feature, which may change IoTDB's
position. The feature SHOULD be discussed carefully in the community,
rather that submit PRs and merged after some reviews.

Therefore, I call to revert the PR and discuss ASAP about the feature
after that.

At least, the proposer need to answer the following questions,
1) how many side-effect  the feature will bring;
2) how to reduce the effect when IoTDB is deployed on the edge.
3) some checks failed on WinOS, are they irrelevant?

I don't mean of rejecting any big contribution to IoTDB or harming the
community's diversity, but  accepting this feature is really big
decision and it deserves us to take time to deliberate.


Attached IoTDB's Charter:
"RESOLVED, that the Apache IoTDB Project be and hereby is
responsible for the creation and maintenance of software
related to an IoT native database with high performance
for data management and analysis, on the edge and the cloud."


[1] https://github.com/apache/iotdb/pull/9534/checks

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

Reply via email to