2018-11-21 14:51:19 +03:00
|
|
|
from infi.clickhouse_orm import fields
|
2018-11-21 14:50:54 +03:00
|
|
|
|
2018-11-26 17:17:58 +03:00
|
|
|
from django_clickhouse.clickhouse_models import ClickHouseModel, ClickHouseMultiModel
|
2018-11-22 09:09:38 +03:00
|
|
|
from django_clickhouse.engines import ReplacingMergeTree, CollapsingMergeTree
|
2018-11-15 11:02:05 +03:00
|
|
|
from tests.models import TestModel
|
|
|
|
|
|
|
|
|
2018-11-16 13:16:36 +03:00
|
|
|
class ClickHouseTestModel(ClickHouseModel):
|
2018-11-15 11:02:05 +03:00
|
|
|
django_model = TestModel
|
2018-11-20 15:24:15 +03:00
|
|
|
sync_delay = 2
|
2018-11-15 14:50:38 +03:00
|
|
|
|
2018-11-15 15:37:58 +03:00
|
|
|
id = fields.Int32Field()
|
2018-11-15 14:50:38 +03:00
|
|
|
created_date = fields.DateField()
|
2018-11-15 15:37:58 +03:00
|
|
|
value = fields.Int32Field()
|
2018-11-15 14:50:38 +03:00
|
|
|
|
2018-11-22 09:09:38 +03:00
|
|
|
engine = ReplacingMergeTree('created_date', ('id',))
|
2018-11-16 13:16:36 +03:00
|
|
|
|
|
|
|
|
|
|
|
class ClickHouseCollapseTestModel(ClickHouseModel):
|
|
|
|
django_model = TestModel
|
2018-11-20 15:24:15 +03:00
|
|
|
sync_delay = 2
|
2018-11-16 13:16:36 +03:00
|
|
|
|
|
|
|
id = fields.Int32Field()
|
|
|
|
created_date = fields.DateField()
|
|
|
|
value = fields.Int32Field()
|
|
|
|
sign = fields.Int8Field()
|
|
|
|
|
2018-11-21 14:50:54 +03:00
|
|
|
engine = CollapsingMergeTree('created_date', ('id',), 'sign')
|
2018-11-26 17:17:58 +03:00
|
|
|
|
|
|
|
|
|
|
|
class ClickHouseMultiTestModel(ClickHouseMultiModel):
|
|
|
|
django_model = TestModel
|
|
|
|
sub_models = [ClickHouseTestModel, ClickHouseCollapseTestModel]
|