mirror of
https://github.com/carrotquest/django-clickhouse.git
synced 2024-11-14 13:26:33 +03:00
52 lines
1.4 KiB
Python
52 lines
1.4 KiB
Python
from infi.clickhouse_orm import fields
|
|
|
|
from django_clickhouse.clickhouse_models import ClickHouseModel, ClickHouseMultiModel
|
|
from django_clickhouse.engines import ReplacingMergeTree, CollapsingMergeTree
|
|
from tests.models import TestModel, SecondTestModel
|
|
|
|
|
|
class ClickHouseTestModel(ClickHouseModel):
|
|
django_model = TestModel
|
|
sync_delay = 2
|
|
sync_enabled = True
|
|
|
|
id = fields.Int32Field()
|
|
created_date = fields.DateField()
|
|
value = fields.Int32Field()
|
|
|
|
engine = ReplacingMergeTree('created_date', ('id',))
|
|
migrate_replicated_db_aliases = ('default', 'secondary')
|
|
migrate_non_replicated_db_aliases = ('default', 'secondary')
|
|
|
|
|
|
class ClickHouseCollapseTestModel(ClickHouseModel):
|
|
django_model = TestModel
|
|
sync_delay = 2
|
|
sync_enabled = True
|
|
|
|
id = fields.Int32Field()
|
|
created_date = fields.DateField()
|
|
value = fields.Int32Field()
|
|
sign = fields.Int8Field()
|
|
|
|
engine = CollapsingMergeTree('created_date', ('id',), 'sign')
|
|
|
|
|
|
class ClickHouseMultiTestModel(ClickHouseMultiModel):
|
|
django_model = TestModel
|
|
sub_models = [ClickHouseTestModel, ClickHouseCollapseTestModel]
|
|
sync_delay = 2
|
|
sync_enabled = True
|
|
|
|
|
|
class ClickHouseSecondTestModel(ClickHouseModel):
|
|
django_model = SecondTestModel
|
|
sync_delay = 2
|
|
sync_enabled = True
|
|
|
|
id = fields.Int32Field()
|
|
created_date = fields.DateField()
|
|
value = fields.Int32Field()
|
|
|
|
engine = ReplacingMergeTree('created_date', ('id',))
|