You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@kylin.apache.org by GitBox <gi...@apache.org> on 2020/08/06 10:35:28 UTC
[GitHub] [kylin] tianhui5 opened a new pull request #1351: KYLIN-4683 Fail to consume kafka when partition number get larger
tianhui5 opened a new pull request #1351:
URL: https://github.com/apache/kylin/pull/1351
## Proposed changes
JIRA:https://issues.apache.org/jira/browse/KYLIN-4683
## Types of changes
- [x] Bugfix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds functionality)
- [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
- [ ] Documentation Update (if none of the other choices apply)
## Checklist
- [x] I have create an issue on [Kylin's jira](https://issues.apache.org/jira/browse/KYLIN), and have described the bug/feature there in detail
- [ ] Commit messages in my PR start with the related jira ID, like "KYLIN-0000 Make Kylin project open-source"
- [ ] Compiling and unit tests pass locally with my changes
- [ ] I have added tests that prove my fix is effective or that my feature works
- [ ] If this change need a document change, I will prepare another pr against the `document` branch
- [ ] Any dependent changes have been merged
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [kylin] hit-lacus commented on pull request #1351: KYLIN-4683 Fail to consume kafka when partition number get larger
Posted by GitBox <gi...@apache.org>.
hit-lacus commented on pull request #1351:
URL: https://github.com/apache/kylin/pull/1351#issuecomment-671064075
1. I will kill the producer.
![image](https://user-images.githubusercontent.com/14030549/89735113-bf6ea000-da92-11ea-98e8-3250a154d910.png)
2. check latest offset via Python
![image](https://user-images.githubusercontent.com/14030549/89735544-db277580-da95-11ea-8dc7-de421cb36b05.png)
3. Resize partition count.
```sh
[root@cdh-client xiaoxiang.yu]# kafka-topics --alter --topic useraction_xxyu --zookeeper cdh-master:2181 --partitions 16
20/08/09 23:13:33 INFO utils.Log4jControllerRegistration$: Registered kafka:type=kafka.Log4jController MBean
20/08/09 23:13:34 INFO zookeeper.ZooKeeperClient: [ZooKeeperClient] Initializing a new session to cdh-master:2181.
20/08/09 23:13:34 INFO zookeeper.ZooKeeper: Client environment:zookeeper.version=3.4.5-cdh5.14.2--1, built on 03/27/2018 20:39 GMT
20/08/09 23:13:34 INFO zookeeper.ZooKeeper: Client environment:host.name=cdh-client
20/08/09 23:13:34 INFO zookeeper.ZooKeeper: Client environment:java.version=1.8.0_171
20/08/09 23:13:34 INFO zookeeper.ZooKeeper: Client environment:java.vendor=Oracle Corporation
20/08/09 23:13:34 INFO zookeeper.ZooKeeper: Client environment:java.home=/usr/java/jdk1.8.0_171/jre
20/08/09 23:13:34 INFO zookeeper.ZooKeeper: Client environment:java.library.path=/usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib
20/08/09 23:13:34 INFO zookeeper.ZooKeeper: Client environment:java.io.tmpdir=/tmp
20/08/09 23:13:34 INFO zookeeper.ZooKeeper: Client environment:java.compiler=<NA>
20/08/09 23:13:34 INFO zookeeper.ZooKeeper: Client environment:os.name=Linux
20/08/09 23:13:34 INFO zookeeper.ZooKeeper: Client environment:os.arch=amd64
20/08/09 23:13:34 INFO zookeeper.ZooKeeper: Client environment:os.version=2.6.32-754.17.1.el6.x86_64
20/08/09 23:13:34 INFO zookeeper.ZooKeeper: Client environment:user.name=root
20/08/09 23:13:34 INFO zookeeper.ZooKeeper: Client environment:user.home=/root
20/08/09 23:13:34 INFO zookeeper.ZooKeeper: Client environment:user.dir=/root/xiaoxiang.yu
20/08/09 23:13:34 INFO zookeeper.ZooKeeper: Initiating client connection, connectString=cdh-master:2181 sessionTimeout=30000 watcher=kafka.zookeeper.ZooKeeperClient$ZooKeeperClientWatcher$@6302bbb1
20/08/09 23:13:34 INFO zookeeper.ZooKeeperClient: [ZooKeeperClient] Waiting until connected.
20/08/09 23:13:34 INFO zookeeper.ClientCnxn: Opening socket connection to server cdh-master/10.1.3.90:2181. Will not attempt to authenticate using SASL (unknown error)
20/08/09 23:13:34 INFO zookeeper.ClientCnxn: Socket connection established, initiating session, client: /10.1.3.91:54122, server: cdh-master/10.1.3.90:2181
20/08/09 23:13:34 INFO zookeeper.ClientCnxn: Session establishment complete on server cdh-master/10.1.3.90:2181, sessionid = 0x172bdedb56fcc33, negotiated timeout = 30000
20/08/09 23:13:34 INFO zookeeper.ZooKeeperClient: [ZooKeeperClient] Connected.
WARNING: If partitions are increased for a topic that has a key, the partition logic or ordering of the messages will be affected
20/08/09 23:13:34 INFO zk.AdminZkClient: Creating 6 partitions for 'useraction_xxyu' with the following replica assignment: Map(11 -> ArrayBuffer(115), 14 -> ArrayBuffer(115), 13 -> ArrayBuffer(114), 10 -> ArrayBuffer(114), 12 -> ArrayBuffer(116), 15 -> ArrayBuffer(116)).
20/08/09 23:13:34 INFO zk.AdminZkClient: Topic update Map(useraction_xxyu-8 -> Vector(115), useraction_xxyu-6 -> Vector(116), useraction_xxyu-0 -> Vector(116), useraction_xxyu-13 -> ArrayBuffer(114), useraction_xxyu-1 -> Vector(114), useraction_xxyu-9 -> Vector(116), useraction_xxyu-15 -> ArrayBuffer(116), useraction_xxyu-11 -> ArrayBuffer(115), useraction_xxyu-5 -> Vector(115), useraction_xxyu-2 -> Vector(115), useraction_xxyu-10 -> ArrayBuffer(114), useraction_xxyu-14 -> ArrayBuffer(115), useraction_xxyu-7 -> Vector(114), useraction_xxyu-12 -> ArrayBuffer(116), useraction_xxyu-4 -> Vector(114), useraction_xxyu-3 -> Vector(116))
Adding partitions succeeded!
20/08/09 23:13:34 INFO zookeeper.ZooKeeperClient: [ZooKeeperClient] Closing.
20/08/09 23:13:34 INFO zookeeper.ZooKeeper: Session: 0x172bdedb56fcc33 closed
20/08/09 23:13:34 INFO zookeeper.ClientCnxn: EventThread shut down
20/08/09 23:13:34 INFO zookeeper.ZooKeeperClient: [ZooKeeperClient] Closed.
```
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [kylin] hit-lacus commented on pull request #1351: KYLIN-4683 Fail to consume kafka when partition number get larger
Posted by GitBox <gi...@apache.org>.
hit-lacus commented on pull request #1351:
URL: https://github.com/apache/kylin/pull/1351#issuecomment-671065519
1. Go to web page and re-enable Cube, you will see some failure, please don't be in a panic.
```sh
2020-08-09 23:23:10,437 INFO [qtp193625667-35] controller.AdminController:58 : receive assign request:AssignRequest{cubeName='UserAnalysisCube', partitions=[Partition [partitionId=0, partitionInfo=null], Partition [partitionId=5, partitionInfo=null], Partition [partitionId=10, partitionInfo=null], Partition [partitionId=15, partitionInfo=null], Partition [partitionId=13, partitionInfo=null], Partition [partitionId=2, partitionInfo=null], Partition [partitionId=8, partitionInfo=null], Partition [partitionId=12, partitionInfo=null], Partition [partitionId=14, partitionInfo=null], Partition [partitionId=9, partitionInfo=null], Partition [partitionId=11, partitionInfo=null], Partition [partitionId=1, partitionInfo=null], Partition [partitionId=4, partitionInfo=null], Partition [partitionId=6, partitionInfo=null], Partition [partitionId=7, partitionInfo=null], Partition [partitionId=3, partitionInfo=null]], startConsumers=true}
2020-08-09 23:23:10,437 INFO [qtp193625667-35] server.StreamingServer:351 : create and start new consumer for cube:UserAnalysisCube
2020-08-09 23:23:10,468 INFO [qtp193625667-35] kafka.KafkaSource:141 : Create StreamingConnector for Cube UserAnalysisCube, assignedPartitions [Partition [partitionId=0, partitionInfo=null], Partition [partitionId=5, partitionInfo=null], Partition [partitionId=10, partitionInfo=null], Partition [partitionId=15, partitionInfo=null], Partition [partitionId=13, partitionInfo=null], Partition [partitionId=2, partitionInfo=null], Partition [partitionId=8, partitionInfo=null], Partition [partitionId=12, partitionInfo=null], Partition [partitionId=14, partitionInfo=null], Partition [partitionId=9, partitionInfo=null], Partition [partitionId=11, partitionInfo=null], Partition [partitionId=1, partitionInfo=null], Partition [partitionId=4, partitionInfo=null], Partition [partitionId=6, partitionInfo=null], Partition [partitionId=7, partitionInfo=null], Partition [partitionId=3, partitionInfo=null]], startProtocol null
2020-08-09 23:23:10,470 INFO [qtp193625667-35] kafka.TimedJsonStreamParser:98 : Using parser field mapping by {content_list=content_list, act_type=act_type, event_ts_2=event_ts_2, event_ts=event_ts, devide_type=user_detail.devide_type, location_city=user_detail.location.city, network_type=user_detail.network_type, video_id=video_id, event_date_2=event_date_2, str_minute=str_minute, video_type=video_type, play_times=play_times, pageview_id=pageview_id, active_minutes=active_minutes, device_brand=device_brand, str_minute_second=str_minute_second, play_duration=play_duration, event_date=event_date, page_id=page_id, str_second=str_second, uid=uid}
2020-08-09 23:23:10,470 INFO [qtp193625667-35] kafka.TimedJsonStreamParser:120 : TimedJsonStreamParser with formatTs false tsColName event_date
2020-08-09 23:23:10,470 INFO [qtp193625667-35] consumer.ConsumerConfig:279 : ConsumerConfig values:
auto.commit.interval.ms = 5000
auto.offset.reset = latest
bootstrap.servers = [cdh-master:9092, cdh-worker-1:9092, cdh-worker-2:9092]
check.crcs = true
client.dns.lookup = default
client.id =
connections.max.idle.ms = 540000
default.api.timeout.ms = 60000
enable.auto.commit = false
exclude.internal.topics = true
fetch.max.bytes = 52428800
fetch.max.wait.ms = 500
fetch.min.bytes = 1
group.id =
heartbeat.interval.ms = 3000
interceptor.classes = []
internal.leave.group.on.close = true
isolation.level = read_uncommitted
key.deserializer = class org.apache.kafka.common.serialization.ByteArrayDeserializer
max.partition.fetch.bytes = 1048576
max.poll.interval.ms = 300000
max.poll.records = 500
metadata.max.age.ms = 300000
metric.reporters = []
metrics.num.samples = 2
metrics.recording.level = INFO
metrics.sample.window.ms = 30000
partition.assignment.strategy = [class org.apache.kafka.clients.consumer.RangeAssignor]
receive.buffer.bytes = 65536
reconnect.backoff.max.ms = 1000
reconnect.backoff.ms = 50
request.timeout.ms = 30000
retry.backoff.ms = 100
sasl.client.callback.handler.class = null
sasl.jaas.config = null
sasl.kerberos.kinit.cmd = /usr/bin/kinit
sasl.kerberos.min.time.before.relogin = 60000
sasl.kerberos.service.name = null
sasl.kerberos.ticket.renew.jitter = 0.05
sasl.kerberos.ticket.renew.window.factor = 0.8
sasl.login.callback.handler.class = null
sasl.login.class = null
sasl.login.refresh.buffer.seconds = 300
sasl.login.refresh.min.period.seconds = 60
sasl.login.refresh.window.factor = 0.8
sasl.login.refresh.window.jitter = 0.05
sasl.mechanism = GSSAPI
security.protocol = PLAINTEXT
send.buffer.bytes = 131072
session.timeout.ms = 20000
ssl.cipher.suites = null
ssl.enabled.protocols = [TLSv1.2, TLSv1.1, TLSv1]
ssl.endpoint.identification.algorithm = https
ssl.key.password = null
ssl.keymanager.algorithm = SunX509
ssl.keystore.location = null
ssl.keystore.password = null
ssl.keystore.type = JKS
ssl.protocol = TLS
ssl.provider = null
ssl.secure.random.implementation = null
ssl.trustmanager.algorithm = PKIX
ssl.truststore.location = null
ssl.truststore.password = null
ssl.truststore.type = JKS
value.deserializer = class org.apache.kafka.common.serialization.ByteArrayDeserializer
2020-08-09 23:23:10,473 INFO [qtp193625667-35] utils.AppInfoParser:109 : Kafka version : 2.1.1
2020-08-09 23:23:10,473 INFO [qtp193625667-35] utils.AppInfoParser:110 : Kafka commitId : 21234bee31165527
2020-08-09 23:23:10,475 INFO [qtp193625667-35] kafka.KafkaSource:192 : localConsumeStats from local checkpoint null, remoteConsumeStats from remote checkpoint {"0":363171,"1":363198,"2":363249,"3":363171,"4":363199,"5":363250,"6":363170,"7":363196,"8":363250,"9":363170}
2020-08-09 23:23:10,475 INFO [qtp193625667-35] kafka.KafkaSource:239 : start kafka connector from specified position:KafkaPosition{partitionOffsetMap={0=363171, 1=363198, 2=363249, 3=363171, 4=363199, 5=363250, 6=363170, 7=363196, 8=363250, 9=363170}}
2020-08-09 23:23:10,476 ERROR [qtp193625667-35] server.StreamingServer:357 : consumer start fail for cube:UserAnalysisCube
java.lang.NullPointerException
at org.apache.kylin.stream.source.kafka.consumer.KafkaConnector.open(KafkaConnector.java:86)
at org.apache.kylin.stream.core.consumer.StreamingConsumerChannel.start(StreamingConsumerChannel.java:85)
at org.apache.kylin.stream.server.StreamingServer.startConsumer(StreamingServer.java:355)
at org.apache.kylin.stream.server.StreamingServer.startConsumers(StreamingServer.java:327)
at org.apache.kylin.stream.server.rest.controller.AdminController.assign(AdminController.java:61)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205)
at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:133)
at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:97)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:849)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:760)
at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:85)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:967)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:901)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:872)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:755)
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:547)
at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:233)
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1297)
at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:188)
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:485)
at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:186)
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1212)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:221)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)
at org.eclipse.jetty.server.Server.handle(Server.java:500)
at org.eclipse.jetty.server.HttpChannel.lambda$handle$1(HttpChannel.java:383)
at org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:547)
at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:375)
at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:270)
at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:311)
at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103)
at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:117)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:806)
at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:938)
at java.lang.Thread.run(Thread.java:748)
```
2. Let try doing a reassignment.
![image](https://user-images.githubusercontent.com/14030549/89735852-e8ddfa80-da97-11ea-8ae3-744e275dab0d.png)
![image](https://user-images.githubusercontent.com/14030549/89735807-9d2b5100-da97-11ea-82fb-c30ad15c24ab.png)
<img width="1517" alt="image" src="https://user-images.githubusercontent.com/14030549/89735825-bd5b1000-da97-11ea-9944-ae54331002aa.png">
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [kylin] hit-lacus edited a comment on pull request #1351: KYLIN-4683 Fail to consume kafka when partition number get larger
Posted by GitBox <gi...@apache.org>.
hit-lacus edited a comment on pull request #1351:
URL: https://github.com/apache/kylin/pull/1351#issuecomment-671064075
1. I will kill the producer.
![image](https://user-images.githubusercontent.com/14030549/89735113-bf6ea000-da92-11ea-98e8-3250a154d910.png)
2. check latest offset via Python
![image](https://user-images.githubusercontent.com/14030549/89735544-db277580-da95-11ea-8dc7-de421cb36b05.png)
3. Resize topic partition.
```sh
[root@cdh-client xiaoxiang.yu]# kafka-topics --alter --topic useraction_xxyu --zookeeper cdh-master:2181 --partitions 16
20/08/09 23:13:33 INFO utils.Log4jControllerRegistration$: Registered kafka:type=kafka.Log4jController MBean
20/08/09 23:13:34 INFO zookeeper.ZooKeeperClient: [ZooKeeperClient] Initializing a new session to cdh-master:2181.
20/08/09 23:13:34 INFO zookeeper.ZooKeeper: Client environment:zookeeper.version=3.4.5-cdh5.14.2--1, built on 03/27/2018 20:39 GMT
20/08/09 23:13:34 INFO zookeeper.ZooKeeper: Client environment:host.name=cdh-client
20/08/09 23:13:34 INFO zookeeper.ZooKeeper: Client environment:java.version=1.8.0_171
20/08/09 23:13:34 INFO zookeeper.ZooKeeper: Client environment:java.vendor=Oracle Corporation
20/08/09 23:13:34 INFO zookeeper.ZooKeeper: Client environment:java.home=/usr/java/jdk1.8.0_171/jre
20/08/09 23:13:34 INFO zookeeper.ZooKeeper: Client environment:java.library.path=/usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib
20/08/09 23:13:34 INFO zookeeper.ZooKeeper: Client environment:java.io.tmpdir=/tmp
20/08/09 23:13:34 INFO zookeeper.ZooKeeper: Client environment:java.compiler=<NA>
20/08/09 23:13:34 INFO zookeeper.ZooKeeper: Client environment:os.name=Linux
20/08/09 23:13:34 INFO zookeeper.ZooKeeper: Client environment:os.arch=amd64
20/08/09 23:13:34 INFO zookeeper.ZooKeeper: Client environment:os.version=2.6.32-754.17.1.el6.x86_64
20/08/09 23:13:34 INFO zookeeper.ZooKeeper: Client environment:user.name=root
20/08/09 23:13:34 INFO zookeeper.ZooKeeper: Client environment:user.home=/root
20/08/09 23:13:34 INFO zookeeper.ZooKeeper: Client environment:user.dir=/root/xiaoxiang.yu
20/08/09 23:13:34 INFO zookeeper.ZooKeeper: Initiating client connection, connectString=cdh-master:2181 sessionTimeout=30000 watcher=kafka.zookeeper.ZooKeeperClient$ZooKeeperClientWatcher$@6302bbb1
20/08/09 23:13:34 INFO zookeeper.ZooKeeperClient: [ZooKeeperClient] Waiting until connected.
20/08/09 23:13:34 INFO zookeeper.ClientCnxn: Opening socket connection to server cdh-master/10.1.3.90:2181. Will not attempt to authenticate using SASL (unknown error)
20/08/09 23:13:34 INFO zookeeper.ClientCnxn: Socket connection established, initiating session, client: /10.1.3.91:54122, server: cdh-master/10.1.3.90:2181
20/08/09 23:13:34 INFO zookeeper.ClientCnxn: Session establishment complete on server cdh-master/10.1.3.90:2181, sessionid = 0x172bdedb56fcc33, negotiated timeout = 30000
20/08/09 23:13:34 INFO zookeeper.ZooKeeperClient: [ZooKeeperClient] Connected.
WARNING: If partitions are increased for a topic that has a key, the partition logic or ordering of the messages will be affected
20/08/09 23:13:34 INFO zk.AdminZkClient: Creating 6 partitions for 'useraction_xxyu' with the following replica assignment: Map(11 -> ArrayBuffer(115), 14 -> ArrayBuffer(115), 13 -> ArrayBuffer(114), 10 -> ArrayBuffer(114), 12 -> ArrayBuffer(116), 15 -> ArrayBuffer(116)).
20/08/09 23:13:34 INFO zk.AdminZkClient: Topic update Map(useraction_xxyu-8 -> Vector(115), useraction_xxyu-6 -> Vector(116), useraction_xxyu-0 -> Vector(116), useraction_xxyu-13 -> ArrayBuffer(114), useraction_xxyu-1 -> Vector(114), useraction_xxyu-9 -> Vector(116), useraction_xxyu-15 -> ArrayBuffer(116), useraction_xxyu-11 -> ArrayBuffer(115), useraction_xxyu-5 -> Vector(115), useraction_xxyu-2 -> Vector(115), useraction_xxyu-10 -> ArrayBuffer(114), useraction_xxyu-14 -> ArrayBuffer(115), useraction_xxyu-7 -> Vector(114), useraction_xxyu-12 -> ArrayBuffer(116), useraction_xxyu-4 -> Vector(114), useraction_xxyu-3 -> Vector(116))
Adding partitions succeeded!
20/08/09 23:13:34 INFO zookeeper.ZooKeeperClient: [ZooKeeperClient] Closing.
20/08/09 23:13:34 INFO zookeeper.ZooKeeper: Session: 0x172bdedb56fcc33 closed
20/08/09 23:13:34 INFO zookeeper.ClientCnxn: EventThread shut down
20/08/09 23:13:34 INFO zookeeper.ZooKeeperClient: [ZooKeeperClient] Closed.
```
4. check partition again
<img width="801" alt="image" src="https://user-images.githubusercontent.com/14030549/89735618-77517c80-da96-11ea-950b-69fdcdf59cf7.png">
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [kylin] tianhui5 commented on pull request #1351: KYLIN-4683 Fail to consume kafka when partition number get larger
Posted by GitBox <gi...@apache.org>.
tianhui5 commented on pull request #1351:
URL: https://github.com/apache/kylin/pull/1351#issuecomment-678068937
> > > Thank you for you effort that you spend on this issue, here is my suggestion, what do you think?
> > > If `offset` is null, please just set it to zero.
> >
> >
> > I wonder if there is any difference between setting offset to zero and seekToBeginning.
>
> Please correct me if I was wrong.
> Let take the above test by me as an example, after scale up, it should continue its consumptation from this position:
>
> ```json
> {
> "0":363171,
> "1":363198,
> "2":363249,
> "3":363171,
> "4":363199,
> "5":363250,
> "6":363170,
> "7":363196,
> "8":363250,
> "9":363170,
> "10":0,
> "11":0,
> "12":0,
> "13":0,
> "14":0,
> "15":0
> }
> ```
>
> not this position:
>
> ```json
> {
> "0":0,
> "1":0,
> "2":0,
> "3":0,
> "4":0,
> "5":0,
> "6":0,
> "7":0,
> "8":0,
> "9":0,
> "10":0,
> "11":0,
> "12":0,
> "13":0,
> "14":0,
> "15":0
> }
> ```
>
> So, if you are using `seekToBeginning` API, can you make sure the partition 0 to partition 9 consume at right position?
Actually, I just add new partitions to list which seekToBeging. So the old partitions' offset won't be effected. Here is my test when I scale kafka from 7 partitions to 10 partitions.
2020-08-21 14:18:02,634 INFO [qtp310350177-45] kafka.KafkaSource:192 : localConsumeStats from local checkpoint null, remoteConsumeStats from remote checkpoint {"0":1369,"1":1412,"2":1500,"3":1395,"4":1430,"5":0,"6":0}
2020-08-21 14:24:33,038 INFO [cost_test_channel] storage.StreamingSegmentManager:645 : Print check point for cube cost_test ,CheckPoint{sourceConsumePosition='{"0":1408,"4":1476,"9":0}', persistedIndexes={1597978800000=1, 1597986000000=1, 1597982400000=1, 1597975200000=1, 1597989600000=3}, longLatencyInfo=LongLatencyInfo{longLatencyEventCnts={}, totalLongLatencyEventCnt=0}, segmentSourceStartPosition={1597978800000={"0":1376,"4":1442}, 1597986000000={"0":1398,"4":1457}, 1597982400000={"0":1392,"4":1454}, 1597975200000={"0":1369,"4":1430}, 1597989600000={"0":1408,"4":1467,"9":0}}, checkPointTime=1597991073038, totalCount=88, checkPointCount=1}
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [kylin] hit-lacus commented on pull request #1351: KYLIN-4683 Fail to consume kafka when partition number get larger
Posted by GitBox <gi...@apache.org>.
hit-lacus commented on pull request #1351:
URL: https://github.com/apache/kylin/pull/1351#issuecomment-671059337
Before we scale up the topic partition , we should doing the following steps:
1. Disable the cube, thus all consumption task will be cacelled.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [kylin] hit-lacus commented on pull request #1351: KYLIN-4683 Fail to consume kafka when partition number get larger
Posted by GitBox <gi...@apache.org>.
hit-lacus commented on pull request #1351:
URL: https://github.com/apache/kylin/pull/1351#issuecomment-678754154
Maybe you are right. Let me have a test and see if it is wroks.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [kylin] hit-lacus commented on pull request #1351: KYLIN-4683 Fail to consume kafka when partition number get larger
Posted by GitBox <gi...@apache.org>.
hit-lacus commented on pull request #1351:
URL: https://github.com/apache/kylin/pull/1351#issuecomment-671059037
Let's do a test to check what should we do when we need to scale up the topic partitions.
Give we have a topic `useraction_xxyu`, it has ten partitions.
![image](https://user-images.githubusercontent.com/14030549/89734584-9a2c6280-da8f-11ea-91bd-c1e9178673f5.png)
<img width="1336" alt="image" src="https://user-images.githubusercontent.com/14030549/89734596-ae705f80-da8f-11ea-8777-afaad8556817.png">
```sh
[root@cdh-client xiaoxiang.yu]# kafka-topics --describe --topic useraction_xxyu --zookeeper cdh-master:2181
...
...
20/08/09 22:19:36 INFO zookeeper.ZooKeeperClient: [ZooKeeperClient] Connected.
Topic:useraction_xxyu PartitionCount:10 ReplicationFactor:1 Configs:
Topic: useraction_xxyu Partition: 0 Leader: 116 Replicas: 116 Isr: 116
Topic: useraction_xxyu Partition: 1 Leader: 114 Replicas: 114 Isr: 114
Topic: useraction_xxyu Partition: 2 Leader: 115 Replicas: 115 Isr: 115
Topic: useraction_xxyu Partition: 3 Leader: 116 Replicas: 116 Isr: 116
Topic: useraction_xxyu Partition: 4 Leader: 114 Replicas: 114 Isr: 114
Topic: useraction_xxyu Partition: 5 Leader: 115 Replicas: 115 Isr: 115
Topic: useraction_xxyu Partition: 6 Leader: 116 Replicas: 116 Isr: 116
Topic: useraction_xxyu Partition: 7 Leader: 114 Replicas: 114 Isr: 114
Topic: useraction_xxyu Partition: 8 Leader: 115 Replicas: 115 Isr: 115
Topic: useraction_xxyu Partition: 9 Leader: 116 Replicas: 116 Isr: 116
```
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [kylin] tianhui5 commented on a change in pull request #1351: KYLIN-4683 Fail to consume kafka when partition number get larger
Posted by GitBox <gi...@apache.org>.
tianhui5 commented on a change in pull request #1351:
URL: https://github.com/apache/kylin/pull/1351#discussion_r467656696
##########
File path: stream-source-kafka/src/main/java/org/apache/kylin/stream/source/kafka/consumer/KafkaConnector.java
##########
@@ -81,9 +81,15 @@ public void open() {
} else if (startMode == ConsumerStartMode.LATEST) {
kafkaConsumer.seekToEnd(topicPartitions);
} else {
+ List<TopicPartition> newTopicPartitions = Lists.newArrayList();
for (TopicPartition topicPartition : topicPartitions) {
Long offset = partitionOffsets.get(topicPartition.partition());
- kafkaConsumer.seek(topicPartition, offset);
+ if (offset != null) {
+ kafkaConsumer.seek(topicPartition, offset);
+ } else {
+ newTopicPartitions.add(topicPartition);
+ }
+ kafkaConsumer.seekToBeginning(newTopicPartitions);
Review comment:
My mistake, thanks.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [kylin] hit-lacus commented on a change in pull request #1351: KYLIN-4683 Fail to consume kafka when partition number get larger
Posted by GitBox <gi...@apache.org>.
hit-lacus commented on a change in pull request #1351:
URL: https://github.com/apache/kylin/pull/1351#discussion_r467601221
##########
File path: stream-source-kafka/src/main/java/org/apache/kylin/stream/source/kafka/consumer/KafkaConnector.java
##########
@@ -81,9 +81,15 @@ public void open() {
} else if (startMode == ConsumerStartMode.LATEST) {
kafkaConsumer.seekToEnd(topicPartitions);
} else {
+ List<TopicPartition> newTopicPartitions = Lists.newArrayList();
for (TopicPartition topicPartition : topicPartitions) {
Long offset = partitionOffsets.get(topicPartition.partition());
- kafkaConsumer.seek(topicPartition, offset);
+ if (offset != null) {
+ kafkaConsumer.seek(topicPartition, offset);
+ } else {
+ newTopicPartitions.add(topicPartition);
+ }
+ kafkaConsumer.seekToBeginning(newTopicPartitions);
Review comment:
I think `kafkaConsumer.seekToBeginning(newTopicPartitions);` should not in **for-loop** .
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [kylin] hit-lacus edited a comment on pull request #1351: KYLIN-4683 Fail to consume kafka when partition number get larger
Posted by GitBox <gi...@apache.org>.
hit-lacus edited a comment on pull request #1351:
URL: https://github.com/apache/kylin/pull/1351#issuecomment-671065519
1. Go to web page and re-enable Cube, you will see some failure, please don't be in a panic.
```sh
2020-08-09 23:23:10,437 INFO [qtp193625667-35] controller.AdminController:58 : receive assign request:AssignRequest{cubeName='UserAnalysisCube', partitions=[Partition [partitionId=0, partitionInfo=null], Partition [partitionId=5, partitionInfo=null], Partition [partitionId=10, partitionInfo=null], Partition [partitionId=15, partitionInfo=null], Partition [partitionId=13, partitionInfo=null], Partition [partitionId=2, partitionInfo=null], Partition [partitionId=8, partitionInfo=null], Partition [partitionId=12, partitionInfo=null], Partition [partitionId=14, partitionInfo=null], Partition [partitionId=9, partitionInfo=null], Partition [partitionId=11, partitionInfo=null], Partition [partitionId=1, partitionInfo=null], Partition [partitionId=4, partitionInfo=null], Partition [partitionId=6, partitionInfo=null], Partition [partitionId=7, partitionInfo=null], Partition [partitionId=3, partitionInfo=null]], startConsumers=true}
2020-08-09 23:23:10,437 INFO [qtp193625667-35] server.StreamingServer:351 : create and start new consumer for cube:UserAnalysisCube
2020-08-09 23:23:10,468 INFO [qtp193625667-35] kafka.KafkaSource:141 : Create StreamingConnector for Cube UserAnalysisCube, assignedPartitions [Partition [partitionId=0, partitionInfo=null], Partition [partitionId=5, partitionInfo=null], Partition [partitionId=10, partitionInfo=null], Partition [partitionId=15, partitionInfo=null], Partition [partitionId=13, partitionInfo=null], Partition [partitionId=2, partitionInfo=null], Partition [partitionId=8, partitionInfo=null], Partition [partitionId=12, partitionInfo=null], Partition [partitionId=14, partitionInfo=null], Partition [partitionId=9, partitionInfo=null], Partition [partitionId=11, partitionInfo=null], Partition [partitionId=1, partitionInfo=null], Partition [partitionId=4, partitionInfo=null], Partition [partitionId=6, partitionInfo=null], Partition [partitionId=7, partitionInfo=null], Partition [partitionId=3, partitionInfo=null]], startProtocol null
2020-08-09 23:23:10,470 INFO [qtp193625667-35] kafka.TimedJsonStreamParser:98 : Using parser field mapping by {content_list=content_list, act_type=act_type, event_ts_2=event_ts_2, event_ts=event_ts, devide_type=user_detail.devide_type, location_city=user_detail.location.city, network_type=user_detail.network_type, video_id=video_id, event_date_2=event_date_2, str_minute=str_minute, video_type=video_type, play_times=play_times, pageview_id=pageview_id, active_minutes=active_minutes, device_brand=device_brand, str_minute_second=str_minute_second, play_duration=play_duration, event_date=event_date, page_id=page_id, str_second=str_second, uid=uid}
2020-08-09 23:23:10,470 INFO [qtp193625667-35] kafka.TimedJsonStreamParser:120 : TimedJsonStreamParser with formatTs false tsColName event_date
2020-08-09 23:23:10,470 INFO [qtp193625667-35] consumer.ConsumerConfig:279 : ConsumerConfig values:
auto.commit.interval.ms = 5000
auto.offset.reset = latest
bootstrap.servers = [cdh-master:9092, cdh-worker-1:9092, cdh-worker-2:9092]
check.crcs = true
client.dns.lookup = default
client.id =
connections.max.idle.ms = 540000
default.api.timeout.ms = 60000
enable.auto.commit = false
exclude.internal.topics = true
fetch.max.bytes = 52428800
fetch.max.wait.ms = 500
fetch.min.bytes = 1
group.id =
heartbeat.interval.ms = 3000
interceptor.classes = []
internal.leave.group.on.close = true
isolation.level = read_uncommitted
key.deserializer = class org.apache.kafka.common.serialization.ByteArrayDeserializer
max.partition.fetch.bytes = 1048576
max.poll.interval.ms = 300000
max.poll.records = 500
metadata.max.age.ms = 300000
metric.reporters = []
metrics.num.samples = 2
metrics.recording.level = INFO
metrics.sample.window.ms = 30000
partition.assignment.strategy = [class org.apache.kafka.clients.consumer.RangeAssignor]
receive.buffer.bytes = 65536
reconnect.backoff.max.ms = 1000
reconnect.backoff.ms = 50
request.timeout.ms = 30000
retry.backoff.ms = 100
sasl.client.callback.handler.class = null
sasl.jaas.config = null
sasl.kerberos.kinit.cmd = /usr/bin/kinit
sasl.kerberos.min.time.before.relogin = 60000
sasl.kerberos.service.name = null
sasl.kerberos.ticket.renew.jitter = 0.05
sasl.kerberos.ticket.renew.window.factor = 0.8
sasl.login.callback.handler.class = null
sasl.login.class = null
sasl.login.refresh.buffer.seconds = 300
sasl.login.refresh.min.period.seconds = 60
sasl.login.refresh.window.factor = 0.8
sasl.login.refresh.window.jitter = 0.05
sasl.mechanism = GSSAPI
security.protocol = PLAINTEXT
send.buffer.bytes = 131072
session.timeout.ms = 20000
ssl.cipher.suites = null
ssl.enabled.protocols = [TLSv1.2, TLSv1.1, TLSv1]
ssl.endpoint.identification.algorithm = https
ssl.key.password = null
ssl.keymanager.algorithm = SunX509
ssl.keystore.location = null
ssl.keystore.password = null
ssl.keystore.type = JKS
ssl.protocol = TLS
ssl.provider = null
ssl.secure.random.implementation = null
ssl.trustmanager.algorithm = PKIX
ssl.truststore.location = null
ssl.truststore.password = null
ssl.truststore.type = JKS
value.deserializer = class org.apache.kafka.common.serialization.ByteArrayDeserializer
2020-08-09 23:23:10,473 INFO [qtp193625667-35] utils.AppInfoParser:109 : Kafka version : 2.1.1
2020-08-09 23:23:10,473 INFO [qtp193625667-35] utils.AppInfoParser:110 : Kafka commitId : 21234bee31165527
2020-08-09 23:23:10,475 INFO [qtp193625667-35] kafka.KafkaSource:192 : localConsumeStats from local checkpoint null, remoteConsumeStats from remote checkpoint {"0":363171,"1":363198,"2":363249,"3":363171,"4":363199,"5":363250,"6":363170,"7":363196,"8":363250,"9":363170}
2020-08-09 23:23:10,475 INFO [qtp193625667-35] kafka.KafkaSource:239 : start kafka connector from specified position:KafkaPosition{partitionOffsetMap={0=363171, 1=363198, 2=363249, 3=363171, 4=363199, 5=363250, 6=363170, 7=363196, 8=363250, 9=363170}}
2020-08-09 23:23:10,476 ERROR [qtp193625667-35] server.StreamingServer:357 : consumer start fail for cube:UserAnalysisCube
java.lang.NullPointerException
at org.apache.kylin.stream.source.kafka.consumer.KafkaConnector.open(KafkaConnector.java:86)
at org.apache.kylin.stream.core.consumer.StreamingConsumerChannel.start(StreamingConsumerChannel.java:85)
at org.apache.kylin.stream.server.StreamingServer.startConsumer(StreamingServer.java:355)
at org.apache.kylin.stream.server.StreamingServer.startConsumers(StreamingServer.java:327)
at org.apache.kylin.stream.server.rest.controller.AdminController.assign(AdminController.java:61)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205)
at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:133)
at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:97)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:849)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:760)
at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:85)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:967)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:901)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:872)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:755)
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:547)
at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:233)
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1297)
at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:188)
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:485)
at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:186)
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1212)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:221)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)
at org.eclipse.jetty.server.Server.handle(Server.java:500)
at org.eclipse.jetty.server.HttpChannel.lambda$handle$1(HttpChannel.java:383)
at org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:547)
at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:375)
at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:270)
at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:311)
at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103)
at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:117)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:806)
at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:938)
at java.lang.Thread.run(Thread.java:748)
```
2. Let try doing a reassignment.
![image](https://user-images.githubusercontent.com/14030549/89735852-e8ddfa80-da97-11ea-8ae3-744e275dab0d.png)
![image](https://user-images.githubusercontent.com/14030549/89735807-9d2b5100-da97-11ea-82fb-c30ad15c24ab.png)
<img width="1517" alt="image" src="https://user-images.githubusercontent.com/14030549/89735825-bd5b1000-da97-11ea-9944-ae54331002aa.png">
3. I have to modify the source code and repackage. Here is my what I change:
```java
@Override
public void open() {
if (partitions == null || partitions.size() <= 0) {
throw new IllegalStateException("not assign partitions");
}
List<TopicPartition> topicPartitions = Lists.newArrayList();
for (Partition partition : partitions) {
topicPartitions.add(new TopicPartition(topic, partition.getPartitionId()));
}
kafkaConsumer.assign(topicPartitions);
if (startMode == ConsumerStartMode.EARLIEST) {
kafkaConsumer.seekToBeginning(topicPartitions);
} else if (startMode == ConsumerStartMode.LATEST) {
kafkaConsumer.seekToEnd(topicPartitions);
} else {
for (TopicPartition topicPartition : topicPartitions) {
Long offset = partitionOffsets.getOrDefault(topicPartition.partition(), 0L);
if (offset == 0L) {
logger.warn("Assume {} is a new added partition, let's seek it to 0", topicPartition);
}
kafkaConsumer.seek(topicPartition, offset);
}
}
}
```
```sh
mvn clean package -skipTests
...
scp stream-receiver/target/kylin-stream-receiver-3.1.1-SNAPSHOT-all.jar root@cdh-master:/root/xiaoxiang.yu/older_version/apache-kylin-3.1.0-bin-cdh57-receiver/lib/streaming
```
In receiver side, remove old kylin-stream-receiver-3.1.0-all.jar .
```
[root@cdh-master apache-kylin-3.1.0-bin-cdh57-receiver]# mv lib/streaming/kylin-stream-receiver-3.1.0-all.jar kylin-stream-receiver-3.1.0-all.jar.bak
```
4. Restart receiver and here is what we see:
```
2020-08-09 23:59:10,436 INFO [main] server.StreamingServer:725 : Using /root/xiaoxiang.yu/older_version/apache-kylin-3.1.0-bin-cdh57-receiver/stream_index to store local segment cache.
2020-08-09 23:59:10,437 INFO [main] server.StreamingServer:301 : register receiver: cdh-master:7514
2020-08-09 23:59:10,438 WARN [main] coordinator.ZookeeperStreamMetadataStore:488 : /stream/receivers/cdh-master_7514 exists.
2020-08-09 23:59:10,458 INFO [main] server.StreamingServer:421 : add the node to the replicaSet:0, join the group leader election.
2020-08-09 23:59:10,482 INFO [main] common.KylinConfig:476 : Creating new manager instance of class org.apache.kylin.cube.CubeManager
2020-08-09 23:59:10,495 INFO [main] cube.CubeManager:136 : Initializing CubeManager with config REALTIME@jdbc,url=jdbc:mysql://localhost:3306/NightlyBuild,username=root,password=R00t@kylin,maxActive=10,maxIdle=10
2020-08-09 23:59:10,539 INFO [main] persistence.ResourceStore:90 : Using metadata url REALTIME@jdbc,url=jdbc:mysql://localhost:3306/NightlyBuild,username=root,password=R00t@kylin,maxActive=10,maxIdle=10 for resource store
2020-08-09 23:59:10,545 INFO [main] persistence.JDBCConnectionManager:92 : Connecting to Jdbc with url:jdbc:mysql://localhost:3306/NightlyBuild by user root
2020-08-09 23:59:10,559 INFO [Curator-LeaderSelector-0] server.ReplicaSetLeaderSelector:66 : become the leader of the replicaSet:0
2020-08-09 23:59:10,559 INFO [Curator-LeaderSelector-0] server.StreamingServer:575 : become leader of the replicaSet:0
2020-08-09 23:59:10,607 INFO [Curator-LeaderSelector-0] client.HttpCoordinatorClient:81 : send replicaSet lead change notification to coordinator
2020-08-09 23:59:11,194 INFO [main] persistence.JDBCConnectionManager:65 : Connected to MySQL 5.7.26
2020-08-09 23:59:11,212 INFO [main] persistence.JDBCResourceStore:115 : Table [REALTIME] already exists
2020-08-09 23:59:11,214 INFO [main] persistence.JDBCResourceStore:115 : Table [REALTIME_log] already exists
2020-08-09 23:59:11,217 DEBUG [main] cachesync.CachedCrudAssist:122 : Reloading CubeInstance from REALTIME(key='/cube')@REALTIME@jdbc,url=jdbc:mysql://localhost:3306/NightlyBuild,username=root,password=R00t@kylin,maxActive=10,maxIdle=10
2020-08-09 23:59:11,306 INFO [main] common.KylinConfig:476 : Creating new manager instance of class org.apache.kylin.cube.CubeDescManager
2020-08-09 23:59:11,307 INFO [main] cube.CubeDescManager:91 : Initializing CubeDescManager with config REALTIME@jdbc,url=jdbc:mysql://localhost:3306/NightlyBuild,username=root,password=R00t@kylin,maxActive=10,maxIdle=10
2020-08-09 23:59:11,307 DEBUG [main] cachesync.CachedCrudAssist:122 : Reloading CubeDesc from REALTIME(key='/cube_desc')@REALTIME@jdbc,url=jdbc:mysql://localhost:3306/NightlyBuild,username=root,password=R00t@kylin,maxActive=10,maxIdle=10
2020-08-09 23:59:11,358 INFO [main] common.KylinConfig:476 : Creating new manager instance of class org.apache.kylin.metadata.project.ProjectManager
2020-08-09 23:59:11,359 INFO [main] project.ProjectManager:85 : Initializing ProjectManager with metadata url REALTIME@jdbc,url=jdbc:mysql://localhost:3306/NightlyBuild,username=root,password=R00t@kylin,maxActive=10,maxIdle=10
2020-08-09 23:59:11,360 DEBUG [main] cachesync.CachedCrudAssist:122 : Reloading ProjectInstance from REALTIME(key='/project')@REALTIME@jdbc,url=jdbc:mysql://localhost:3306/NightlyBuild,username=root,password=R00t@kylin,maxActive=10,maxIdle=10
2020-08-09 23:59:11,369 DEBUG [main] cachesync.CachedCrudAssist:155 : Loaded 1 ProjectInstance(s) out of 1 resource with 0 errors
2020-08-09 23:59:11,371 INFO [main] common.KylinConfig:476 : Creating new manager instance of class org.apache.kylin.metadata.cachesync.Broadcaster
2020-08-09 23:59:11,373 DEBUG [main] cachesync.Broadcaster:102 : 1 nodes in the cluster: [localhost:7514]
2020-08-09 23:59:11,377 INFO [main] common.KylinConfig:476 : Creating new manager instance of class org.apache.kylin.metadata.model.DataModelManager
2020-08-09 23:59:11,381 INFO [main] common.KylinConfig:476 : Creating new manager instance of class org.apache.kylin.metadata.TableMetadataManager
2020-08-09 23:59:11,382 DEBUG [main] cachesync.CachedCrudAssist:122 : Reloading TableDesc from REALTIME(key='/table')@REALTIME@jdbc,url=jdbc:mysql://localhost:3306/NightlyBuild,username=root,password=R00t@kylin,maxActive=10,maxIdle=10
2020-08-09 23:59:11,400 INFO [main] measure.MeasureTypeFactory:121 : Checking custom measure types from kylin config
2020-08-09 23:59:11,401 INFO [main] measure.MeasureTypeFactory:150 : registering COUNT_DISTINCT(hllc), class org.apache.kylin.measure.hllc.HLLCMeasureType$Factory
2020-08-09 23:59:11,406 INFO [main] measure.MeasureTypeFactory:150 : registering COUNT_DISTINCT(bitmap), class org.apache.kylin.measure.bitmap.BitmapMeasureType$Factory
2020-08-09 23:59:11,410 INFO [main] measure.MeasureTypeFactory:150 : registering TOP_N(topn), class org.apache.kylin.measure.topn.TopNMeasureType$Factory
2020-08-09 23:59:11,412 INFO [main] measure.MeasureTypeFactory:150 : registering RAW(raw), class org.apache.kylin.measure.raw.RawMeasureType$Factory
2020-08-09 23:59:11,414 INFO [main] measure.MeasureTypeFactory:150 : registering EXTENDED_COLUMN(extendedcolumn), class org.apache.kylin.measure.extendedcolumn.ExtendedColumnMeasureType$Factory
2020-08-09 23:59:11,415 INFO [main] measure.MeasureTypeFactory:150 : registering PERCENTILE_APPROX(percentile), class org.apache.kylin.measure.percentile.PercentileMeasureType$Factory
2020-08-09 23:59:11,416 INFO [main] measure.MeasureTypeFactory:150 : registering COUNT_DISTINCT(dim_dc), class org.apache.kylin.measure.dim.DimCountDistinctMeasureType$Factory
2020-08-09 23:59:11,418 INFO [main] measure.MeasureTypeFactory:150 : registering STDDEV_SUM(stddev_sum), class org.apache.kylin.measure.stddev.StdDevSumMeasureType$Factory
2020-08-09 23:59:11,431 INFO [main] measure.MeasureTypeFactory:150 : registering COUNT_DISTINCT(bitmap_map), class org.apache.kylin.measure.map.bitmap.BitmapMapMeasureType$Factory
2020-08-09 23:59:11,438 DEBUG [main] cachesync.CachedCrudAssist:155 : Loaded 1 TableDesc(s) out of 1 resource with 0 errors
2020-08-09 23:59:11,439 DEBUG [main] cachesync.CachedCrudAssist:122 : Reloading TableExtDesc from REALTIME(key='/table_exd')@REALTIME@jdbc,url=jdbc:mysql://localhost:3306/NightlyBuild,username=root,password=R00t@kylin,maxActive=10,maxIdle=10
2020-08-09 23:59:11,442 DEBUG [main] cachesync.CachedCrudAssist:155 : Loaded 0 TableExtDesc(s) out of 0 resource with 0 errors
2020-08-09 23:59:11,443 DEBUG [main] cachesync.CachedCrudAssist:122 : Reloading ExternalFilterDesc from REALTIME(key='/ext_filter')@REALTIME@jdbc,url=jdbc:mysql://localhost:3306/NightlyBuild,username=root,password=R00t@kylin,maxActive=10,maxIdle=10
2020-08-09 23:59:11,445 DEBUG [main] cachesync.CachedCrudAssist:155 : Loaded 0 ExternalFilterDesc(s) out of 0 resource with 0 errors
2020-08-09 23:59:11,445 DEBUG [main] cachesync.CachedCrudAssist:122 : Reloading DataModelDesc from REALTIME(key='/model_desc')@REALTIME@jdbc,url=jdbc:mysql://localhost:3306/NightlyBuild,username=root,password=R00t@kylin,maxActive=10,maxIdle=10
2020-08-09 23:59:11,472 DEBUG [main] cachesync.CachedCrudAssist:155 : Loaded 1 DataModelDesc(s) out of 1 resource with 0 errors
2020-08-09 23:59:11,494 DEBUG [main] cachesync.CachedCrudAssist:155 : Loaded 1 CubeDesc(s) out of 1 resource with 0 errors
2020-08-09 23:59:11,495 DEBUG [main] cachesync.CachedCrudAssist:155 : Loaded 1 CubeInstance(s) out of 1 resource with 0 errors
2020-08-09 23:59:11,518 INFO [main] storage.StreamingSegmentManager:239 : restore segments from local files for cube:UserAnalysisCube
2020-08-09 23:59:11,522 WARN [main] storage.StreamingSegmentManager:253 : no checkpoint for cube:UserAnalysisCube store state, remove all local segments folders
2020-08-09 23:59:11,522 INFO [main] server.StreamingServer:351 : create and start new consumer for cube:UserAnalysisCube
2020-08-09 23:59:11,550 INFO [main] common.KylinConfig:476 : Creating new manager instance of class org.apache.kylin.cube.cuboid.CuboidManager
2020-08-09 23:59:11,566 INFO [main] kafka.KafkaSource:141 : Create StreamingConnector for Cube UserAnalysisCube, assignedPartitions [Partition [partitionId=0, partitionInfo=null], Partition [partitionId=5, partitionInfo=null], Partition [partitionId=10, partitionInfo=null], Partition [partitionId=15, partitionInfo=null], Partition [partitionId=13, partitionInfo=null], Partition [partitionId=2, partitionInfo=null], Partition [partitionId=8, partitionInfo=null], Partition [partitionId=12, partitionInfo=null], Partition [partitionId=14, partitionInfo=null], Partition [partitionId=9, partitionInfo=null], Partition [partitionId=11, partitionInfo=null], Partition [partitionId=1, partitionInfo=null], Partition [partitionId=4, partitionInfo=null], Partition [partitionId=6, partitionInfo=null], Partition [partitionId=7, partitionInfo=null], Partition [partitionId=3, partitionInfo=null]], startProtocol null
2020-08-09 23:59:11,571 INFO [main] kafka.TimedJsonStreamParser:98 : Using parser field mapping by {content_list=content_list, act_type=act_type, event_ts_2=event_ts_2, event_ts=event_ts, devide_type=user_detail.devide_type, location_city=user_detail.location.city, network_type=user_detail.network_type, video_id=video_id, event_date_2=event_date_2, str_minute=str_minute, video_type=video_type, play_times=play_times, pageview_id=pageview_id, active_minutes=active_minutes, device_brand=device_brand, str_minute_second=str_minute_second, play_duration=play_duration, event_date=event_date, page_id=page_id, str_second=str_second, uid=uid}
2020-08-09 23:59:11,584 INFO [main] kafka.TimedJsonStreamParser:120 : TimedJsonStreamParser with formatTs false tsColName event_date
2020-08-09 23:59:11,663 INFO [main] consumer.ConsumerConfig:279 : ConsumerConfig values:
auto.commit.interval.ms = 5000
auto.offset.reset = latest
bootstrap.servers = [cdh-master:9092, cdh-worker-1:9092, cdh-worker-2:9092]
check.crcs = true
client.dns.lookup = default
client.id =
connections.max.idle.ms = 540000
default.api.timeout.ms = 60000
enable.auto.commit = false
exclude.internal.topics = true
fetch.max.bytes = 52428800
fetch.max.wait.ms = 500
fetch.min.bytes = 1
group.id =
heartbeat.interval.ms = 3000
interceptor.classes = []
internal.leave.group.on.close = true
isolation.level = read_uncommitted
key.deserializer = class org.apache.kafka.common.serialization.ByteArrayDeserializer
max.partition.fetch.bytes = 1048576
max.poll.interval.ms = 300000
max.poll.records = 500
metadata.max.age.ms = 300000
metric.reporters = []
metrics.num.samples = 2
metrics.recording.level = INFO
metrics.sample.window.ms = 30000
partition.assignment.strategy = [class org.apache.kafka.clients.consumer.RangeAssignor]
receive.buffer.bytes = 65536
reconnect.backoff.max.ms = 1000
reconnect.backoff.ms = 50
request.timeout.ms = 30000
retry.backoff.ms = 100
sasl.client.callback.handler.class = null
sasl.jaas.config = null
sasl.kerberos.kinit.cmd = /usr/bin/kinit
sasl.kerberos.min.time.before.relogin = 60000
sasl.kerberos.service.name = null
sasl.kerberos.ticket.renew.jitter = 0.05
sasl.kerberos.ticket.renew.window.factor = 0.8
sasl.login.callback.handler.class = null
sasl.login.class = null
sasl.login.refresh.buffer.seconds = 300
sasl.login.refresh.min.period.seconds = 60
sasl.login.refresh.window.factor = 0.8
sasl.login.refresh.window.jitter = 0.05
sasl.mechanism = GSSAPI
security.protocol = PLAINTEXT
send.buffer.bytes = 131072
session.timeout.ms = 20000
ssl.cipher.suites = null
ssl.enabled.protocols = [TLSv1.2, TLSv1.1, TLSv1]
ssl.endpoint.identification.algorithm = https
ssl.key.password = null
ssl.keymanager.algorithm = SunX509
ssl.keystore.location = null
ssl.keystore.password = null
ssl.keystore.type = JKS
ssl.protocol = TLS
ssl.provider = null
ssl.secure.random.implementation = null
ssl.trustmanager.algorithm = PKIX
ssl.truststore.location = null
ssl.truststore.password = null
ssl.truststore.type = JKS
value.deserializer = class org.apache.kafka.common.serialization.ByteArrayDeserializer
2020-08-09 23:59:11,790 INFO [main] utils.AppInfoParser:109 : Kafka version : 2.1.1
2020-08-09 23:59:11,790 INFO [main] utils.AppInfoParser:110 : Kafka commitId : 21234bee31165527
2020-08-09 23:59:11,792 INFO [main] kafka.KafkaSource:192 : localConsumeStats from local checkpoint null, remoteConsumeStats from remote checkpoint {"0":363171,"1":363198,"2":363249,"3":363171,"4":363199,"5":363250,"6":363170,"7":363196,"8":363250,"9":363170}
2020-08-09 23:59:11,793 INFO [main] kafka.KafkaSource:239 : start kafka connector from specified position:KafkaPosition{partitionOffsetMap={0=363171, 1=363198, 2=363249, 3=363171, 4=363199, 5=363250, 6=363170, 7=363196, 8=363250, 9=363170}}
2020-08-09 23:59:11,798 WARN [main] consumer.KafkaConnector:91 : Assume useraction_xxyu-10 is a new added partition, let's seek it to 0
2020-08-09 23:59:11,799 WARN [main] consumer.KafkaConnector:91 : Assume useraction_xxyu-15 is a new added partition, let's seek it to 0
2020-08-09 23:59:11,799 WARN [main] consumer.KafkaConnector:91 : Assume useraction_xxyu-13 is a new added partition, let's seek it to 0
2020-08-09 23:59:11,799 WARN [main] consumer.KafkaConnector:91 : Assume useraction_xxyu-12 is a new added partition, let's seek it to 0
2020-08-09 23:59:11,799 WARN [main] consumer.KafkaConnector:91 : Assume useraction_xxyu-14 is a new added partition, let's seek it to 0
2020-08-09 23:59:11,799 WARN [main] consumer.KafkaConnector:91 : Assume useraction_xxyu-11 is a new added partition, let's seek it to 0
2020-08-09 23:59:11,801 INFO [main] metrics.StreamingMetrics:76 : Skip streaming metricRegistry because it is empty.
2020-08-09 23:59:11,819 INFO [main] util.log:169 : Logging initialized @3474ms to org.eclipse.jetty.util.log.Slf4jLog
2020-08-09 23:59:11,946 INFO [UserAnalysisCube_channel] clients.Metadata:285 : Cluster ID: W1YX_q9GRd-R0qwcwFJ9rg
2020-08-09 23:59:12,163 INFO [UserAnalysisCube_channel] storage.StreamingSegmentManager:189 : Create new segment:StreamingCubeSegment [cubeName=UserAnalysisCube, segmentName=20200809210000_20200809220000]
2020-08-09 23:59:12,826 INFO [UserAnalysisCube_channel] storage.StreamingSegmentManager:189 : Create new segment:StreamingCubeSegment [cubeName=UserAnalysisCube, segmentName=20200809230000_20200810000000]
2020-08-09 23:59:13,226 INFO [main] server.Server:359 : jetty-9.4.26.v20200117; built: 2020-01-17T12:35:33.676Z; git: 7b38981d25d14afb4a12ff1f2596756144edf695; jvm 1.8.0_171-b11
2020-08-09 23:59:13,260 INFO [main] ContextHandler.kylin:2223 : Initializing Spring FrameworkServlet 'org.springframework.web.servlet.DispatcherServlet-d2e6b0b'
2020-08-09 23:59:13,278 INFO [main] handler.ContextHandler:825 : Started o.e.j.s.ServletContextHandler@708eb310{/kylin,null,AVAILABLE}
2020-08-09 23:59:13,279 INFO [main] handler.ContextHandler:825 : Started o.e.j.s.h.ContextHandler@6ebc9573{/kylin/logs,null,AVAILABLE}
2020-08-09 23:59:13,294 INFO [main] server.AbstractConnector:330 : Started ServerConnector@369c9bb{HTTP/1.1,[http/1.1]}{0.0.0.0:7514}
2020-08-09 23:59:13,294 INFO [main] server.Server:399 : Started @4949ms
2020-08-09 23:59:15,572 INFO [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:106 : Start persist memory store for cube:UserAnalysisCube, segment:20200809210000_20200809220000, rowCnt:50000
2020-08-09 23:59:15,635 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:202 : cuboid-8191 transform to columnar, take 58 ms
2020-08-09 23:59:15,655 INFO [UserAnalysisCube_channel] dict.TrieDictionaryForestBuilder:90 : values not in ascending order, previous '00000000000000003640', current '00000000000000003638'
2020-08-09 23:59:15,719 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 15962
2020-08-09 23:59:15,720 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$NumberTrieDictForestBuilder
2020-08-09 23:59:15,720 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:15,725 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: 3640=>1219, 3638=>1218, 3630=>1212, 3631=>1213, 3632=>1214
2020-08-09 23:59:15,725 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : UID took : 88 ms
2020-08-09 23:59:15,738 INFO [UserAnalysisCube_channel] dict.TrieDictionaryForestBuilder:90 : values not in ascending order, previous 'page_19', current 'page_13'
2020-08-09 23:59:15,739 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 50
2020-08-09 23:59:15,739 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$StringTrieDictForestBuilder
2020-08-09 23:59:15,740 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:15,740 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: page_19=>11, page_13=>5, page_14=>6, page_11=>3, page_12=>4
2020-08-09 23:59:15,740 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : PAGE_ID took : 13 ms
2020-08-09 23:59:15,751 INFO [UserAnalysisCube_channel] dict.TrieDictionaryForestBuilder:90 : values not in ascending order, previous 'stop', current 'pause'
2020-08-09 23:59:15,752 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 10
2020-08-09 23:59:15,752 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$StringTrieDictForestBuilder
2020-08-09 23:59:15,752 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:15,752 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: stop=>9, pause=>5, play=>6, like=>4, start=>8
2020-08-09 23:59:15,752 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : ACT_TYPE took : 11 ms
2020-08-09 23:59:15,763 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 34
2020-08-09 23:59:15,763 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$NumberTrieDictForestBuilder
2020-08-09 23:59:15,763 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:15,764 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: 0=>0, 1=>1, 2=>2, 3=>3, 4=>4
2020-08-09 23:59:15,764 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : DEVIDE_TYPE took : 10 ms
2020-08-09 23:59:15,774 INFO [UserAnalysisCube_channel] dict.TrieDictionaryForestBuilder:90 : values not in ascending order, previous 'hongkong', current 'hangzhou'
2020-08-09 23:59:15,774 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 7
2020-08-09 23:59:15,774 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$StringTrieDictForestBuilder
2020-08-09 23:59:15,775 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:15,775 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: hongkong=>3, hangzhou=>2, shenzhen=>6, berlin=>1, nanjing=>4
2020-08-09 23:59:15,775 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : LOCATION_CITY took : 10 ms
2020-08-09 23:59:15,785 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 4
2020-08-09 23:59:15,785 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$NumberTrieDictForestBuilder
2020-08-09 23:59:15,785 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:15,785 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: 2=>0, 3=>1, 4=>2, 5=>3
2020-08-09 23:59:15,785 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : NETWORK_TYPE took : 10 ms
2020-08-09 23:59:15,794 INFO [UserAnalysisCube_channel] dict.TrieDictionaryForestBuilder:90 : values not in ascending order, previous 'xiaomi', current 'vivo'
2020-08-09 23:59:15,795 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 5
2020-08-09 23:59:15,795 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$StringTrieDictForestBuilder
2020-08-09 23:59:15,795 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:15,795 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: huawei=>0, xiaomi=>4, vivo=>3, meizu=>2, iPhone=>1
2020-08-09 23:59:15,795 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : DEVICE_BRAND took : 9 ms
2020-08-09 23:59:15,806 INFO [UserAnalysisCube_channel] dict.TrieDictionaryForestBuilder:90 : values not in ascending order, previous '21_14_59', current '21_14_50'
2020-08-09 23:59:15,810 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 2032
2020-08-09 23:59:15,810 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$StringTrieDictForestBuilder
2020-08-09 23:59:15,810 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:15,810 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: 21_14_59=>355, 21_14_50=>346, 21_14_55=>351, 21_14_56=>352, 21_14_57=>353
2020-08-09 23:59:15,810 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : STR_MINUTE_SECOND took : 15 ms
2020-08-09 23:59:16,088 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:UID, took: 276ms
2020-08-09 23:59:16,171 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:PAGE_ID, took: 83ms
2020-08-09 23:59:16,254 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:ACT_TYPE, took: 82ms
2020-08-09 23:59:16,316 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:DEVIDE_TYPE, took: 61ms
2020-08-09 23:59:16,391 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:LOCATION_CITY, took: 75ms
2020-08-09 23:59:16,461 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:NETWORK_TYPE, took: 69ms
2020-08-09 23:59:16,532 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:DEVICE_BRAND, took: 70ms
2020-08-09 23:59:16,608 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:STR_MINUTE_SECOND, took: 75ms
2020-08-09 23:59:16,646 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:MONTH_START, took: 38ms
2020-08-09 23:59:16,673 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:WEEK_START, took: 26ms
2020-08-09 23:59:16,703 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:DAY_START, took: 29ms
2020-08-09 23:59:16,736 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:HOUR_START, took: 33ms
2020-08-09 23:59:16,779 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:MINUTE_START, took: 41ms
2020-08-09 23:59:16,808 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:_COUNT_, took: 29ms
2020-08-09 23:59:16,871 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:SUM_PLAY_TIMES, took: 63ms
2020-08-09 23:59:16,907 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:SUM_ACTIVE_MINUTES, took: 34ms
2020-08-09 23:59:16,932 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:SUM_PLAY_DURATION, took: 25ms
2020-08-09 23:59:16,993 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:MAX_PLAY_TIMES, took: 60ms
2020-08-09 23:59:17,027 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:MAX_ACTIVE_MINUTES, took: 33ms
2020-08-09 23:59:17,049 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:MAX_PLAY_DURATION, took: 22ms
2020-08-09 23:59:17,081 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:PV_STAT, took: 31ms
2020-08-09 23:59:17,089 INFO [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:110 : Finish persist memory store for cube:UserAnalysisCube segment:20200809210000_20200809220000, take: 1517ms
2020-08-09 23:59:18,954 INFO [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:106 : Start persist memory store for cube:UserAnalysisCube, segment:20200809210000_20200809220000, rowCnt:50000
2020-08-09 23:59:18,980 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:202 : cuboid-8191 transform to columnar, take 26 ms
2020-08-09 23:59:18,989 INFO [UserAnalysisCube_channel] dict.TrieDictionaryForestBuilder:90 : values not in ascending order, previous '00000000000000003640', current '00000000000000003638'
2020-08-09 23:59:19,008 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 16046
2020-08-09 23:59:19,008 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$NumberTrieDictForestBuilder
2020-08-09 23:59:19,008 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:19,008 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: 3640=>1240, 3638=>1238, 3639=>1239, 3630=>1231, 3631=>1232
2020-08-09 23:59:19,008 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : UID took : 28 ms
2020-08-09 23:59:19,017 INFO [UserAnalysisCube_channel] dict.TrieDictionaryForestBuilder:90 : values not in ascending order, previous 'page_19', current 'page_13'
2020-08-09 23:59:19,017 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 50
2020-08-09 23:59:19,017 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$StringTrieDictForestBuilder
2020-08-09 23:59:19,017 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:19,018 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: page_19=>11, page_13=>5, page_14=>6, page_11=>3, page_12=>4
2020-08-09 23:59:19,018 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : PAGE_ID took : 8 ms
2020-08-09 23:59:19,025 INFO [UserAnalysisCube_channel] dict.TrieDictionaryForestBuilder:90 : values not in ascending order, previous 'stop', current 'pause'
2020-08-09 23:59:19,026 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 10
2020-08-09 23:59:19,026 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$StringTrieDictForestBuilder
2020-08-09 23:59:19,026 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:19,026 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: stop=>9, pause=>5, play=>6, like=>4, start=>8
2020-08-09 23:59:19,026 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : ACT_TYPE took : 8 ms
2020-08-09 23:59:19,035 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 44
2020-08-09 23:59:19,035 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$NumberTrieDictForestBuilder
2020-08-09 23:59:19,035 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:19,035 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: 16=>0, 17=>1, 18=>2, 19=>3, 20=>4
2020-08-09 23:59:19,035 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : DEVIDE_TYPE took : 8 ms
2020-08-09 23:59:19,043 INFO [UserAnalysisCube_channel] dict.TrieDictionaryForestBuilder:90 : values not in ascending order, previous 'hongkong', current 'hangzhou'
2020-08-09 23:59:19,043 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 7
2020-08-09 23:59:19,043 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$StringTrieDictForestBuilder
2020-08-09 23:59:19,043 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:19,043 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: hongkong=>3, hangzhou=>2, shenzhen=>6, berlin=>1, nanjing=>4
2020-08-09 23:59:19,044 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : LOCATION_CITY took : 8 ms
2020-08-09 23:59:19,052 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 4
2020-08-09 23:59:19,052 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$NumberTrieDictForestBuilder
2020-08-09 23:59:19,052 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:19,052 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: 2=>0, 3=>1, 4=>2, 5=>3
2020-08-09 23:59:19,052 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : NETWORK_TYPE took : 8 ms
2020-08-09 23:59:19,059 INFO [UserAnalysisCube_channel] dict.TrieDictionaryForestBuilder:90 : values not in ascending order, previous 'xiaomi', current 'vivo'
2020-08-09 23:59:19,060 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 5
2020-08-09 23:59:19,060 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$StringTrieDictForestBuilder
2020-08-09 23:59:19,060 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:19,060 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: huawei=>0, xiaomi=>4, vivo=>3, meizu=>2, iPhone=>1
2020-08-09 23:59:19,060 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : DEVICE_BRAND took : 7 ms
2020-08-09 23:59:19,069 INFO [UserAnalysisCube_channel] dict.TrieDictionaryForestBuilder:90 : values not in ascending order, previous '21_55_9', current '21_55_0'
2020-08-09 23:59:19,077 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 2536
2020-08-09 23:59:19,077 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$StringTrieDictForestBuilder
2020-08-09 23:59:19,077 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:19,077 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: 21_55_7=>2341, 21_55_8=>2342, 21_55_9=>2343, 21_55_0=>2284, 21_55_1=>2285
2020-08-09 23:59:19,077 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : STR_MINUTE_SECOND took : 17 ms
2020-08-09 23:59:19,185 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:UID, took: 107ms
2020-08-09 23:59:19,235 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:PAGE_ID, took: 49ms
2020-08-09 23:59:19,284 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:ACT_TYPE, took: 48ms
2020-08-09 23:59:19,335 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:DEVIDE_TYPE, took: 50ms
2020-08-09 23:59:19,396 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:LOCATION_CITY, took: 60ms
2020-08-09 23:59:19,455 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:NETWORK_TYPE, took: 59ms
2020-08-09 23:59:19,522 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:DEVICE_BRAND, took: 66ms
2020-08-09 23:59:19,592 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:STR_MINUTE_SECOND, took: 69ms
2020-08-09 23:59:19,610 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:MONTH_START, took: 17ms
2020-08-09 23:59:19,626 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:WEEK_START, took: 16ms
2020-08-09 23:59:19,642 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:DAY_START, took: 15ms
2020-08-09 23:59:19,662 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:HOUR_START, took: 19ms
2020-08-09 23:59:19,691 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:MINUTE_START, took: 28ms
2020-08-09 23:59:19,708 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:_COUNT_, took: 16ms
2020-08-09 23:59:19,766 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:SUM_PLAY_TIMES, took: 57ms
2020-08-09 23:59:19,783 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:SUM_ACTIVE_MINUTES, took: 17ms
2020-08-09 23:59:19,801 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:SUM_PLAY_DURATION, took: 17ms
2020-08-09 23:59:19,856 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:MAX_PLAY_TIMES, took: 54ms
2020-08-09 23:59:19,873 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:MAX_ACTIVE_MINUTES, took: 17ms
2020-08-09 23:59:19,890 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:MAX_PLAY_DURATION, took: 16ms
2020-08-09 23:59:19,908 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:PV_STAT, took: 18ms
2020-08-09 23:59:19,913 INFO [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:110 : Finish persist memory store for cube:UserAnalysisCube segment:20200809210000_20200809220000, take: 959ms
2020-08-09 23:59:20,175 INFO [UserAnalysisCube_channel] storage.StreamingSegmentManager:189 : Create new segment:StreamingCubeSegment [cubeName=UserAnalysisCube, segmentName=20200809220000_20200809230000]
2020-08-09 23:59:22,201 INFO [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:106 : Start persist memory store for cube:UserAnalysisCube, segment:20200809220000_20200809230000, rowCnt:50000
2020-08-09 23:59:22,235 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:202 : cuboid-8191 transform to columnar, take 33 ms
2020-08-09 23:59:22,245 INFO [UserAnalysisCube_channel] dict.TrieDictionaryForestBuilder:90 : values not in ascending order, previous '00000000000000003640', current '00000000000000003638'
2020-08-09 23:59:22,258 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 15977
2020-08-09 23:59:22,258 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$NumberTrieDictForestBuilder
2020-08-09 23:59:22,258 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:22,258 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: 3640=>1166, 3638=>1165, 3630=>1158, 3631=>1159, 3632=>1160
2020-08-09 23:59:22,258 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : UID took : 23 ms
2020-08-09 23:59:22,267 INFO [UserAnalysisCube_channel] dict.TrieDictionaryForestBuilder:90 : values not in ascending order, previous 'page_19', current 'page_13'
2020-08-09 23:59:22,268 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 50
2020-08-09 23:59:22,268 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$StringTrieDictForestBuilder
2020-08-09 23:59:22,268 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:22,268 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: page_19=>11, page_13=>5, page_14=>6, page_11=>3, page_12=>4
2020-08-09 23:59:22,268 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : PAGE_ID took : 9 ms
2020-08-09 23:59:22,277 INFO [UserAnalysisCube_channel] dict.TrieDictionaryForestBuilder:90 : values not in ascending order, previous 'stop', current 'pause'
2020-08-09 23:59:22,277 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 10
2020-08-09 23:59:22,277 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$StringTrieDictForestBuilder
2020-08-09 23:59:22,277 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:22,277 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: stop=>9, pause=>5, play=>6, like=>4, start=>8
2020-08-09 23:59:22,277 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : ACT_TYPE took : 9 ms
2020-08-09 23:59:22,285 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 34
2020-08-09 23:59:22,285 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$NumberTrieDictForestBuilder
2020-08-09 23:59:22,286 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:22,286 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: 0=>0, 1=>1, 2=>2, 3=>3, 4=>4
2020-08-09 23:59:22,286 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : DEVIDE_TYPE took : 8 ms
2020-08-09 23:59:22,294 INFO [UserAnalysisCube_channel] dict.TrieDictionaryForestBuilder:90 : values not in ascending order, previous 'hongkong', current 'hangzhou'
2020-08-09 23:59:22,294 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 7
2020-08-09 23:59:22,294 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$StringTrieDictForestBuilder
2020-08-09 23:59:22,295 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:22,295 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: hongkong=>3, hangzhou=>2, shenzhen=>6, berlin=>1, nanjing=>4
2020-08-09 23:59:22,295 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : LOCATION_CITY took : 8 ms
2020-08-09 23:59:22,303 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 4
2020-08-09 23:59:22,303 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$NumberTrieDictForestBuilder
2020-08-09 23:59:22,303 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:22,303 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: 2=>0, 3=>1, 4=>2, 5=>3
2020-08-09 23:59:22,303 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : NETWORK_TYPE took : 8 ms
2020-08-09 23:59:22,311 INFO [UserAnalysisCube_channel] dict.TrieDictionaryForestBuilder:90 : values not in ascending order, previous 'xiaomi', current 'vivo'
2020-08-09 23:59:22,311 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 5
2020-08-09 23:59:22,311 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$StringTrieDictForestBuilder
2020-08-09 23:59:22,311 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:22,311 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: huawei=>0, xiaomi=>4, vivo=>3, meizu=>2, iPhone=>1
2020-08-09 23:59:22,311 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : DEVICE_BRAND took : 8 ms
2020-08-09 23:59:22,321 INFO [UserAnalysisCube_channel] dict.TrieDictionaryForestBuilder:90 : values not in ascending order, previous '22_14_59', current '22_14_41'
2020-08-09 23:59:22,323 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 1985
2020-08-09 23:59:22,324 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$StringTrieDictForestBuilder
2020-08-09 23:59:22,324 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:22,324 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: 22_14_58=>354, 22_14_59=>355, 22_14_41=>336, 22_14_42=>337, 22_14_40=>335
2020-08-09 23:59:22,324 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : STR_MINUTE_SECOND took : 12 ms
2020-08-09 23:59:22,426 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:UID, took: 102ms
2020-08-09 23:59:22,477 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:PAGE_ID, took: 50ms
2020-08-09 23:59:22,526 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:ACT_TYPE, took: 49ms
2020-08-09 23:59:22,574 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:DEVIDE_TYPE, took: 47ms
2020-08-09 23:59:22,706 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:LOCATION_CITY, took: 61ms
2020-08-09 23:59:22,768 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:NETWORK_TYPE, took: 61ms
2020-08-09 23:59:22,834 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:DEVICE_BRAND, took: 66ms
2020-08-09 23:59:22,903 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:STR_MINUTE_SECOND, took: 68ms
2020-08-09 23:59:22,920 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:MONTH_START, took: 16ms
2020-08-09 23:59:22,937 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:WEEK_START, took: 16ms
2020-08-09 23:59:22,953 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:DAY_START, took: 16ms
2020-08-09 23:59:22,971 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:HOUR_START, took: 17ms
2020-08-09 23:59:22,995 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:MINUTE_START, took: 24ms
2020-08-09 23:59:23,008 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:_COUNT_, took: 12ms
2020-08-09 23:59:23,064 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:SUM_PLAY_TIMES, took: 55ms
2020-08-09 23:59:23,082 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:SUM_ACTIVE_MINUTES, took: 17ms
2020-08-09 23:59:23,100 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:SUM_PLAY_DURATION, took: 17ms
2020-08-09 23:59:23,157 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:MAX_PLAY_TIMES, took: 56ms
2020-08-09 23:59:23,175 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:MAX_ACTIVE_MINUTES, took: 17ms
2020-08-09 23:59:23,193 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:MAX_PLAY_DURATION, took: 18ms
2020-08-09 23:59:23,213 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:PV_STAT, took: 19ms
2020-08-09 23:59:23,214 INFO [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:110 : Finish persist memory store for cube:UserAnalysisCube segment:20200809220000_20200809230000, take: 1012ms
2020-08-09 23:59:25,467 INFO [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:106 : Start persist memory store for cube:UserAnalysisCube, segment:20200809230000_20200810000000, rowCnt:50000
2020-08-09 23:59:25,495 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:202 : cuboid-8191 transform to columnar, take 26 ms
2020-08-09 23:59:25,504 INFO [UserAnalysisCube_channel] dict.TrieDictionaryForestBuilder:90 : values not in ascending order, previous '00000000000000003639', current '00000000000000003630'
2020-08-09 23:59:25,519 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 15936
2020-08-09 23:59:25,519 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$NumberTrieDictForestBuilder
2020-08-09 23:59:25,519 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:25,519 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: 3638=>1084, 3639=>1085, 3630=>1077, 3631=>1078, 3632=>1079
2020-08-09 23:59:25,519 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : UID took : 24 ms
2020-08-09 23:59:25,532 INFO [UserAnalysisCube_channel] dict.TrieDictionaryForestBuilder:90 : values not in ascending order, previous 'page_19', current 'page_13'
2020-08-09 23:59:25,533 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 50
2020-08-09 23:59:25,533 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$StringTrieDictForestBuilder
2020-08-09 23:59:25,533 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:25,533 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: page_19=>11, page_13=>5, page_14=>6, page_11=>3, page_12=>4
2020-08-09 23:59:25,533 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : PAGE_ID took : 13 ms
2020-08-09 23:59:25,542 INFO [UserAnalysisCube_channel] dict.TrieDictionaryForestBuilder:90 : values not in ascending order, previous 'stop', current 'pause'
2020-08-09 23:59:25,543 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 10
2020-08-09 23:59:25,543 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$StringTrieDictForestBuilder
2020-08-09 23:59:25,543 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:25,543 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: stop=>9, pause=>5, play=>6, like=>4, start=>8
2020-08-09 23:59:25,543 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : ACT_TYPE took : 9 ms
2020-08-09 23:59:25,553 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 41
2020-08-09 23:59:25,553 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$NumberTrieDictForestBuilder
2020-08-09 23:59:25,553 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:25,553 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: 19=>0, 20=>1, 21=>2, 22=>3, 23=>4
2020-08-09 23:59:25,553 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : DEVIDE_TYPE took : 10 ms
2020-08-09 23:59:25,562 INFO [UserAnalysisCube_channel] dict.TrieDictionaryForestBuilder:90 : values not in ascending order, previous 'hongkong', current 'hangzhou'
2020-08-09 23:59:25,563 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 7
2020-08-09 23:59:25,563 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$StringTrieDictForestBuilder
2020-08-09 23:59:25,563 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:25,563 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: hongkong=>3, hangzhou=>2, shenzhen=>6, berlin=>1, nanjing=>4
2020-08-09 23:59:25,563 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : LOCATION_CITY took : 9 ms
2020-08-09 23:59:25,572 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 4
2020-08-09 23:59:25,573 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$NumberTrieDictForestBuilder
2020-08-09 23:59:25,573 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:25,573 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: 2=>0, 3=>1, 4=>2, 5=>3
2020-08-09 23:59:25,573 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : NETWORK_TYPE took : 9 ms
2020-08-09 23:59:25,582 INFO [UserAnalysisCube_channel] dict.TrieDictionaryForestBuilder:90 : values not in ascending order, previous 'xiaomi', current 'vivo'
2020-08-09 23:59:25,583 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 5
2020-08-09 23:59:25,583 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$StringTrieDictForestBuilder
2020-08-09 23:59:25,583 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:25,583 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: huawei=>0, xiaomi=>4, vivo=>3, meizu=>2, iPhone=>1
2020-08-09 23:59:25,583 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : DEVICE_BRAND took : 10 ms
2020-08-09 23:59:25,594 INFO [UserAnalysisCube_channel] dict.TrieDictionaryForestBuilder:90 : values not in ascending order, previous '23_53_19', current '23_53_10'
2020-08-09 23:59:25,596 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 2412
2020-08-09 23:59:25,596 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$StringTrieDictForestBuilder
2020-08-09 23:59:25,596 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:25,596 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: 23_53_16=>2035, 23_53_17=>2036, 23_53_18=>2037, 23_53_19=>2038, 23_53_10=>2029
2020-08-09 23:59:25,596 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : STR_MINUTE_SECOND took : 12 ms
2020-08-09 23:59:25,702 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:UID, took: 105ms
2020-08-09 23:59:25,757 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:PAGE_ID, took: 54ms
2020-08-09 23:59:25,812 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:ACT_TYPE, took: 54ms
2020-08-09 23:59:25,866 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:DEVIDE_TYPE, took: 54ms
2020-08-09 23:59:25,932 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:LOCATION_CITY, took: 65ms
2020-08-09 23:59:25,996 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:NETWORK_TYPE, took: 63ms
2020-08-09 23:59:26,065 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:DEVICE_BRAND, took: 68ms
2020-08-09 23:59:26,138 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:STR_MINUTE_SECOND, took: 73ms
2020-08-09 23:59:26,157 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:MONTH_START, took: 18ms
2020-08-09 23:59:26,175 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:WEEK_START, took: 18ms
2020-08-09 23:59:26,193 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:DAY_START, took: 17ms
2020-08-09 23:59:26,210 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:HOUR_START, took: 17ms
2020-08-09 23:59:26,235 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:MINUTE_START, took: 24ms
2020-08-09 23:59:26,256 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:_COUNT_, took: 20ms
2020-08-09 23:59:26,316 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:SUM_PLAY_TIMES, took: 60ms
2020-08-09 23:59:26,336 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:SUM_ACTIVE_MINUTES, took: 19ms
2020-08-09 23:59:26,355 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:SUM_PLAY_DURATION, took: 18ms
2020-08-09 23:59:26,412 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:MAX_PLAY_TIMES, took: 57ms
2020-08-09 23:59:26,431 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:MAX_ACTIVE_MINUTES, took: 18ms
2020-08-09 23:59:26,450 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:MAX_PLAY_DURATION, took: 18ms
2020-08-09 23:59:26,470 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:PV_STAT, took: 20ms
2020-08-09 23:59:26,471 INFO [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:110 : Finish persist memory store for cube:UserAnalysisCube segment:20200809230000_20200810000000, take: 1003ms
```
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [kylin] hit-lacus edited a comment on pull request #1351: KYLIN-4683 Fail to consume kafka when partition number get larger
Posted by GitBox <gi...@apache.org>.
hit-lacus edited a comment on pull request #1351:
URL: https://github.com/apache/kylin/pull/1351#issuecomment-671064075
1. I will kill the producer.
![image](https://user-images.githubusercontent.com/14030549/89735113-bf6ea000-da92-11ea-98e8-3250a154d910.png)
2. check latest offset via Python
![image](https://user-images.githubusercontent.com/14030549/89735544-db277580-da95-11ea-8dc7-de421cb36b05.png)
3. Resize topic partition.
```sh
[root@cdh-client xiaoxiang.yu]# kafka-topics --alter --topic useraction_xxyu --zookeeper cdh-master:2181 --partitions 16
20/08/09 23:13:33 INFO utils.Log4jControllerRegistration$: Registered kafka:type=kafka.Log4jController MBean
20/08/09 23:13:34 INFO zookeeper.ZooKeeperClient: [ZooKeeperClient] Initializing a new session to cdh-master:2181.
20/08/09 23:13:34 INFO zookeeper.ZooKeeper: Client environment:zookeeper.version=3.4.5-cdh5.14.2--1, built on 03/27/2018 20:39 GMT
20/08/09 23:13:34 INFO zookeeper.ZooKeeper: Client environment:host.name=cdh-client
20/08/09 23:13:34 INFO zookeeper.ZooKeeper: Client environment:java.version=1.8.0_171
20/08/09 23:13:34 INFO zookeeper.ZooKeeper: Client environment:java.vendor=Oracle Corporation
20/08/09 23:13:34 INFO zookeeper.ZooKeeper: Client environment:java.home=/usr/java/jdk1.8.0_171/jre
20/08/09 23:13:34 INFO zookeeper.ZooKeeper: Client environment:java.library.path=/usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib
20/08/09 23:13:34 INFO zookeeper.ZooKeeper: Client environment:java.io.tmpdir=/tmp
20/08/09 23:13:34 INFO zookeeper.ZooKeeper: Client environment:java.compiler=<NA>
20/08/09 23:13:34 INFO zookeeper.ZooKeeper: Client environment:os.name=Linux
20/08/09 23:13:34 INFO zookeeper.ZooKeeper: Client environment:os.arch=amd64
20/08/09 23:13:34 INFO zookeeper.ZooKeeper: Client environment:os.version=2.6.32-754.17.1.el6.x86_64
20/08/09 23:13:34 INFO zookeeper.ZooKeeper: Client environment:user.name=root
20/08/09 23:13:34 INFO zookeeper.ZooKeeper: Client environment:user.home=/root
20/08/09 23:13:34 INFO zookeeper.ZooKeeper: Client environment:user.dir=/root/xiaoxiang.yu
20/08/09 23:13:34 INFO zookeeper.ZooKeeper: Initiating client connection, connectString=cdh-master:2181 sessionTimeout=30000 watcher=kafka.zookeeper.ZooKeeperClient$ZooKeeperClientWatcher$@6302bbb1
20/08/09 23:13:34 INFO zookeeper.ZooKeeperClient: [ZooKeeperClient] Waiting until connected.
20/08/09 23:13:34 INFO zookeeper.ClientCnxn: Opening socket connection to server cdh-master/10.1.3.90:2181. Will not attempt to authenticate using SASL (unknown error)
20/08/09 23:13:34 INFO zookeeper.ClientCnxn: Socket connection established, initiating session, client: /10.1.3.91:54122, server: cdh-master/10.1.3.90:2181
20/08/09 23:13:34 INFO zookeeper.ClientCnxn: Session establishment complete on server cdh-master/10.1.3.90:2181, sessionid = 0x172bdedb56fcc33, negotiated timeout = 30000
20/08/09 23:13:34 INFO zookeeper.ZooKeeperClient: [ZooKeeperClient] Connected.
WARNING: If partitions are increased for a topic that has a key, the partition logic or ordering of the messages will be affected
20/08/09 23:13:34 INFO zk.AdminZkClient: Creating 6 partitions for 'useraction_xxyu' with the following replica assignment: Map(11 -> ArrayBuffer(115), 14 -> ArrayBuffer(115), 13 -> ArrayBuffer(114), 10 -> ArrayBuffer(114), 12 -> ArrayBuffer(116), 15 -> ArrayBuffer(116)).
20/08/09 23:13:34 INFO zk.AdminZkClient: Topic update Map(useraction_xxyu-8 -> Vector(115), useraction_xxyu-6 -> Vector(116), useraction_xxyu-0 -> Vector(116), useraction_xxyu-13 -> ArrayBuffer(114), useraction_xxyu-1 -> Vector(114), useraction_xxyu-9 -> Vector(116), useraction_xxyu-15 -> ArrayBuffer(116), useraction_xxyu-11 -> ArrayBuffer(115), useraction_xxyu-5 -> Vector(115), useraction_xxyu-2 -> Vector(115), useraction_xxyu-10 -> ArrayBuffer(114), useraction_xxyu-14 -> ArrayBuffer(115), useraction_xxyu-7 -> Vector(114), useraction_xxyu-12 -> ArrayBuffer(116), useraction_xxyu-4 -> Vector(114), useraction_xxyu-3 -> Vector(116))
Adding partitions succeeded!
20/08/09 23:13:34 INFO zookeeper.ZooKeeperClient: [ZooKeeperClient] Closing.
20/08/09 23:13:34 INFO zookeeper.ZooKeeper: Session: 0x172bdedb56fcc33 closed
20/08/09 23:13:34 INFO zookeeper.ClientCnxn: EventThread shut down
20/08/09 23:13:34 INFO zookeeper.ZooKeeperClient: [ZooKeeperClient] Closed.
```
4. check partition again
<img width="801" alt="image" src="https://user-images.githubusercontent.com/14030549/89735618-77517c80-da96-11ea-950b-69fdcdf59cf7.png">
5. Restart producer and check offset again.
```sh
python fake.py | kafka-console-producer --topic useraction_xxyu --broker-list cdh-master:9092,cdh-worker-1:9092,cdh-worker-2:9092
```
![image](https://user-images.githubusercontent.com/14030549/89735691-ee871080-da96-11ea-9c2a-65850158cadf.png)
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [kylin] hit-lacus merged pull request #1351: KYLIN-4683 Fail to consume kafka when partition number get larger
Posted by GitBox <gi...@apache.org>.
hit-lacus merged pull request #1351:
URL: https://github.com/apache/kylin/pull/1351
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [kylin] hit-lacus commented on pull request #1351: KYLIN-4683 Fail to consume kafka when partition number get larger
Posted by GitBox <gi...@apache.org>.
hit-lacus commented on pull request #1351:
URL: https://github.com/apache/kylin/pull/1351#issuecomment-671133465
> > Thank you for you effort that you spend on this issue, here is my suggestion, what do you think?
> > If `offset` is null, please just set it to zero.
>
> I wonder if there is any difference between setting offset to zero and seekToBeginning.
Please correct me if I was wrong.
Let take the above test by me as an example, after scale up, it should continue its consumptation from this position:
```json
{
"0":363171,
"1":363198,
"2":363249,
"3":363171,
"4":363199,
"5":363250,
"6":363170,
"7":363196,
"8":363250,
"9":363170,
"10":0,
"11":0,
"12":0,
"13":0,
"14":0,
"15":0
}
```
not this position:
```json
{
"0":0,
"1":0,
"2":0,
"3":0,
"4":0,
"5":0,
"6":0,
"7":0,
"8":0,
"9":0,
"10":0,
"11":0,
"12":0,
"13":0,
"14":0,
"15":0
}
```
So, if you are using `seekToBeginning` API, can you make sure the partition 0 to partition 9 consume at right position?
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [kylin] hit-lacus commented on pull request #1351: KYLIN-4683 Fail to consume kafka when partition number get larger
Posted by GitBox <gi...@apache.org>.
hit-lacus commented on pull request #1351:
URL: https://github.com/apache/kylin/pull/1351#issuecomment-694084949
LGTM
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [kylin] hit-lacus commented on pull request #1351: KYLIN-4683 Fail to consume kafka when partition number get larger
Posted by GitBox <gi...@apache.org>.
hit-lacus commented on pull request #1351:
URL: https://github.com/apache/kylin/pull/1351#issuecomment-669972679
Thank you for your contributions.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [kylin] hit-lacus edited a comment on pull request #1351: KYLIN-4683 Fail to consume kafka when partition number get larger
Posted by GitBox <gi...@apache.org>.
hit-lacus edited a comment on pull request #1351:
URL: https://github.com/apache/kylin/pull/1351#issuecomment-671065519
1. Go to web page and re-enable Cube, you will see some failure, please don't be in a panic.
```sh
2020-08-09 23:23:10,437 INFO [qtp193625667-35] controller.AdminController:58 : receive assign request:AssignRequest{cubeName='UserAnalysisCube', partitions=[Partition [partitionId=0, partitionInfo=null], Partition [partitionId=5, partitionInfo=null], Partition [partitionId=10, partitionInfo=null], Partition [partitionId=15, partitionInfo=null], Partition [partitionId=13, partitionInfo=null], Partition [partitionId=2, partitionInfo=null], Partition [partitionId=8, partitionInfo=null], Partition [partitionId=12, partitionInfo=null], Partition [partitionId=14, partitionInfo=null], Partition [partitionId=9, partitionInfo=null], Partition [partitionId=11, partitionInfo=null], Partition [partitionId=1, partitionInfo=null], Partition [partitionId=4, partitionInfo=null], Partition [partitionId=6, partitionInfo=null], Partition [partitionId=7, partitionInfo=null], Partition [partitionId=3, partitionInfo=null]], startConsumers=true}
2020-08-09 23:23:10,437 INFO [qtp193625667-35] server.StreamingServer:351 : create and start new consumer for cube:UserAnalysisCube
2020-08-09 23:23:10,468 INFO [qtp193625667-35] kafka.KafkaSource:141 : Create StreamingConnector for Cube UserAnalysisCube, assignedPartitions [Partition [partitionId=0, partitionInfo=null], Partition [partitionId=5, partitionInfo=null], Partition [partitionId=10, partitionInfo=null], Partition [partitionId=15, partitionInfo=null], Partition [partitionId=13, partitionInfo=null], Partition [partitionId=2, partitionInfo=null], Partition [partitionId=8, partitionInfo=null], Partition [partitionId=12, partitionInfo=null], Partition [partitionId=14, partitionInfo=null], Partition [partitionId=9, partitionInfo=null], Partition [partitionId=11, partitionInfo=null], Partition [partitionId=1, partitionInfo=null], Partition [partitionId=4, partitionInfo=null], Partition [partitionId=6, partitionInfo=null], Partition [partitionId=7, partitionInfo=null], Partition [partitionId=3, partitionInfo=null]], startProtocol null
2020-08-09 23:23:10,470 INFO [qtp193625667-35] kafka.TimedJsonStreamParser:98 : Using parser field mapping by {content_list=content_list, act_type=act_type, event_ts_2=event_ts_2, event_ts=event_ts, devide_type=user_detail.devide_type, location_city=user_detail.location.city, network_type=user_detail.network_type, video_id=video_id, event_date_2=event_date_2, str_minute=str_minute, video_type=video_type, play_times=play_times, pageview_id=pageview_id, active_minutes=active_minutes, device_brand=device_brand, str_minute_second=str_minute_second, play_duration=play_duration, event_date=event_date, page_id=page_id, str_second=str_second, uid=uid}
2020-08-09 23:23:10,470 INFO [qtp193625667-35] kafka.TimedJsonStreamParser:120 : TimedJsonStreamParser with formatTs false tsColName event_date
2020-08-09 23:23:10,470 INFO [qtp193625667-35] consumer.ConsumerConfig:279 : ConsumerConfig values:
auto.commit.interval.ms = 5000
auto.offset.reset = latest
bootstrap.servers = [cdh-master:9092, cdh-worker-1:9092, cdh-worker-2:9092]
check.crcs = true
client.dns.lookup = default
client.id =
connections.max.idle.ms = 540000
default.api.timeout.ms = 60000
enable.auto.commit = false
exclude.internal.topics = true
fetch.max.bytes = 52428800
fetch.max.wait.ms = 500
fetch.min.bytes = 1
group.id =
heartbeat.interval.ms = 3000
interceptor.classes = []
internal.leave.group.on.close = true
isolation.level = read_uncommitted
key.deserializer = class org.apache.kafka.common.serialization.ByteArrayDeserializer
max.partition.fetch.bytes = 1048576
max.poll.interval.ms = 300000
max.poll.records = 500
metadata.max.age.ms = 300000
metric.reporters = []
metrics.num.samples = 2
metrics.recording.level = INFO
metrics.sample.window.ms = 30000
partition.assignment.strategy = [class org.apache.kafka.clients.consumer.RangeAssignor]
receive.buffer.bytes = 65536
reconnect.backoff.max.ms = 1000
reconnect.backoff.ms = 50
request.timeout.ms = 30000
retry.backoff.ms = 100
sasl.client.callback.handler.class = null
sasl.jaas.config = null
sasl.kerberos.kinit.cmd = /usr/bin/kinit
sasl.kerberos.min.time.before.relogin = 60000
sasl.kerberos.service.name = null
sasl.kerberos.ticket.renew.jitter = 0.05
sasl.kerberos.ticket.renew.window.factor = 0.8
sasl.login.callback.handler.class = null
sasl.login.class = null
sasl.login.refresh.buffer.seconds = 300
sasl.login.refresh.min.period.seconds = 60
sasl.login.refresh.window.factor = 0.8
sasl.login.refresh.window.jitter = 0.05
sasl.mechanism = GSSAPI
security.protocol = PLAINTEXT
send.buffer.bytes = 131072
session.timeout.ms = 20000
ssl.cipher.suites = null
ssl.enabled.protocols = [TLSv1.2, TLSv1.1, TLSv1]
ssl.endpoint.identification.algorithm = https
ssl.key.password = null
ssl.keymanager.algorithm = SunX509
ssl.keystore.location = null
ssl.keystore.password = null
ssl.keystore.type = JKS
ssl.protocol = TLS
ssl.provider = null
ssl.secure.random.implementation = null
ssl.trustmanager.algorithm = PKIX
ssl.truststore.location = null
ssl.truststore.password = null
ssl.truststore.type = JKS
value.deserializer = class org.apache.kafka.common.serialization.ByteArrayDeserializer
2020-08-09 23:23:10,473 INFO [qtp193625667-35] utils.AppInfoParser:109 : Kafka version : 2.1.1
2020-08-09 23:23:10,473 INFO [qtp193625667-35] utils.AppInfoParser:110 : Kafka commitId : 21234bee31165527
2020-08-09 23:23:10,475 INFO [qtp193625667-35] kafka.KafkaSource:192 : localConsumeStats from local checkpoint null, remoteConsumeStats from remote checkpoint {"0":363171,"1":363198,"2":363249,"3":363171,"4":363199,"5":363250,"6":363170,"7":363196,"8":363250,"9":363170}
2020-08-09 23:23:10,475 INFO [qtp193625667-35] kafka.KafkaSource:239 : start kafka connector from specified position:KafkaPosition{partitionOffsetMap={0=363171, 1=363198, 2=363249, 3=363171, 4=363199, 5=363250, 6=363170, 7=363196, 8=363250, 9=363170}}
2020-08-09 23:23:10,476 ERROR [qtp193625667-35] server.StreamingServer:357 : consumer start fail for cube:UserAnalysisCube
java.lang.NullPointerException
at org.apache.kylin.stream.source.kafka.consumer.KafkaConnector.open(KafkaConnector.java:86)
at org.apache.kylin.stream.core.consumer.StreamingConsumerChannel.start(StreamingConsumerChannel.java:85)
at org.apache.kylin.stream.server.StreamingServer.startConsumer(StreamingServer.java:355)
at org.apache.kylin.stream.server.StreamingServer.startConsumers(StreamingServer.java:327)
at org.apache.kylin.stream.server.rest.controller.AdminController.assign(AdminController.java:61)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205)
at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:133)
at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:97)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:849)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:760)
at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:85)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:967)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:901)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:872)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:755)
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:547)
at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:233)
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1297)
at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:188)
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:485)
at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:186)
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1212)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:221)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)
at org.eclipse.jetty.server.Server.handle(Server.java:500)
at org.eclipse.jetty.server.HttpChannel.lambda$handle$1(HttpChannel.java:383)
at org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:547)
at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:375)
at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:270)
at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:311)
at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103)
at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:117)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:806)
at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:938)
at java.lang.Thread.run(Thread.java:748)
```
2. Let try doing a reassignment.
![image](https://user-images.githubusercontent.com/14030549/89735852-e8ddfa80-da97-11ea-8ae3-744e275dab0d.png)
![image](https://user-images.githubusercontent.com/14030549/89735807-9d2b5100-da97-11ea-82fb-c30ad15c24ab.png)
<img width="1517" alt="image" src="https://user-images.githubusercontent.com/14030549/89735825-bd5b1000-da97-11ea-9944-ae54331002aa.png">
3. I have to modify the source code and repackage. Here is my what I change:
```java
@Override
public void open() {
if (partitions == null || partitions.size() <= 0) {
throw new IllegalStateException("not assign partitions");
}
List<TopicPartition> topicPartitions = Lists.newArrayList();
for (Partition partition : partitions) {
topicPartitions.add(new TopicPartition(topic, partition.getPartitionId()));
}
kafkaConsumer.assign(topicPartitions);
if (startMode == ConsumerStartMode.EARLIEST) {
kafkaConsumer.seekToBeginning(topicPartitions);
} else if (startMode == ConsumerStartMode.LATEST) {
kafkaConsumer.seekToEnd(topicPartitions);
} else {
for (TopicPartition topicPartition : topicPartitions) {
Long offset = partitionOffsets.getOrDefault(topicPartition.partition(), 0L);
if (offset == 0L) {
logger.warn("Assume {} is a new added partition, let's seek it to 0", topicPartition);
}
kafkaConsumer.seek(topicPartition, offset);
}
}
}
```
```sh
mvn clean package -skipTests
...
scp stream-receiver/target/kylin-stream-receiver-3.1.1-SNAPSHOT-all.jar root@cdh-master:/root/xiaoxiang.yu/older_version/apache-kylin-3.1.0-bin-cdh57-receiver/lib/streaming
```
In receiver side, remove old kylin-stream-receiver-3.1.0-all.jar .
```
[root@cdh-master apache-kylin-3.1.0-bin-cdh57-receiver]# mv lib/streaming/kylin-stream-receiver-3.1.0-all.jar kylin-stream-receiver-3.1.0-all.jar.bak
```
4. Restart receiver and here is what we see:
```
2020-08-09 23:59:10,436 INFO [main] server.StreamingServer:725 : Using /root/xiaoxiang.yu/older_version/apache-kylin-3.1.0-bin-cdh57-receiver/stream_index to store local segment cache.
2020-08-09 23:59:10,437 INFO [main] server.StreamingServer:301 : register receiver: cdh-master:7514
2020-08-09 23:59:10,438 WARN [main] coordinator.ZookeeperStreamMetadataStore:488 : /stream/receivers/cdh-master_7514 exists.
2020-08-09 23:59:10,458 INFO [main] server.StreamingServer:421 : add the node to the replicaSet:0, join the group leader election.
2020-08-09 23:59:10,482 INFO [main] common.KylinConfig:476 : Creating new manager instance of class org.apache.kylin.cube.CubeManager
2020-08-09 23:59:10,495 INFO [main] cube.CubeManager:136 : Initializing CubeManager with config REALTIME@jdbc,url=jdbc:mysql://localhost:3306/NightlyBuild,username=root,password=R00t@kylin,maxActive=10,maxIdle=10
2020-08-09 23:59:10,539 INFO [main] persistence.ResourceStore:90 : Using metadata url REALTIME@jdbc,url=jdbc:mysql://localhost:3306/NightlyBuild,username=root,password=R00t@kylin,maxActive=10,maxIdle=10 for resource store
2020-08-09 23:59:10,545 INFO [main] persistence.JDBCConnectionManager:92 : Connecting to Jdbc with url:jdbc:mysql://localhost:3306/NightlyBuild by user root
2020-08-09 23:59:10,559 INFO [Curator-LeaderSelector-0] server.ReplicaSetLeaderSelector:66 : become the leader of the replicaSet:0
2020-08-09 23:59:10,559 INFO [Curator-LeaderSelector-0] server.StreamingServer:575 : become leader of the replicaSet:0
2020-08-09 23:59:10,607 INFO [Curator-LeaderSelector-0] client.HttpCoordinatorClient:81 : send replicaSet lead change notification to coordinator
2020-08-09 23:59:11,194 INFO [main] persistence.JDBCConnectionManager:65 : Connected to MySQL 5.7.26
2020-08-09 23:59:11,212 INFO [main] persistence.JDBCResourceStore:115 : Table [REALTIME] already exists
2020-08-09 23:59:11,214 INFO [main] persistence.JDBCResourceStore:115 : Table [REALTIME_log] already exists
2020-08-09 23:59:11,217 DEBUG [main] cachesync.CachedCrudAssist:122 : Reloading CubeInstance from REALTIME(key='/cube')@REALTIME@jdbc,url=jdbc:mysql://localhost:3306/NightlyBuild,username=root,password=R00t@kylin,maxActive=10,maxIdle=10
2020-08-09 23:59:11,306 INFO [main] common.KylinConfig:476 : Creating new manager instance of class org.apache.kylin.cube.CubeDescManager
2020-08-09 23:59:11,307 INFO [main] cube.CubeDescManager:91 : Initializing CubeDescManager with config REALTIME@jdbc,url=jdbc:mysql://localhost:3306/NightlyBuild,username=root,password=R00t@kylin,maxActive=10,maxIdle=10
2020-08-09 23:59:11,307 DEBUG [main] cachesync.CachedCrudAssist:122 : Reloading CubeDesc from REALTIME(key='/cube_desc')@REALTIME@jdbc,url=jdbc:mysql://localhost:3306/NightlyBuild,username=root,password=R00t@kylin,maxActive=10,maxIdle=10
2020-08-09 23:59:11,358 INFO [main] common.KylinConfig:476 : Creating new manager instance of class org.apache.kylin.metadata.project.ProjectManager
2020-08-09 23:59:11,359 INFO [main] project.ProjectManager:85 : Initializing ProjectManager with metadata url REALTIME@jdbc,url=jdbc:mysql://localhost:3306/NightlyBuild,username=root,password=R00t@kylin,maxActive=10,maxIdle=10
2020-08-09 23:59:11,360 DEBUG [main] cachesync.CachedCrudAssist:122 : Reloading ProjectInstance from REALTIME(key='/project')@REALTIME@jdbc,url=jdbc:mysql://localhost:3306/NightlyBuild,username=root,password=R00t@kylin,maxActive=10,maxIdle=10
2020-08-09 23:59:11,369 DEBUG [main] cachesync.CachedCrudAssist:155 : Loaded 1 ProjectInstance(s) out of 1 resource with 0 errors
2020-08-09 23:59:11,371 INFO [main] common.KylinConfig:476 : Creating new manager instance of class org.apache.kylin.metadata.cachesync.Broadcaster
2020-08-09 23:59:11,373 DEBUG [main] cachesync.Broadcaster:102 : 1 nodes in the cluster: [localhost:7514]
2020-08-09 23:59:11,377 INFO [main] common.KylinConfig:476 : Creating new manager instance of class org.apache.kylin.metadata.model.DataModelManager
2020-08-09 23:59:11,381 INFO [main] common.KylinConfig:476 : Creating new manager instance of class org.apache.kylin.metadata.TableMetadataManager
2020-08-09 23:59:11,382 DEBUG [main] cachesync.CachedCrudAssist:122 : Reloading TableDesc from REALTIME(key='/table')@REALTIME@jdbc,url=jdbc:mysql://localhost:3306/NightlyBuild,username=root,password=R00t@kylin,maxActive=10,maxIdle=10
2020-08-09 23:59:11,400 INFO [main] measure.MeasureTypeFactory:121 : Checking custom measure types from kylin config
2020-08-09 23:59:11,401 INFO [main] measure.MeasureTypeFactory:150 : registering COUNT_DISTINCT(hllc), class org.apache.kylin.measure.hllc.HLLCMeasureType$Factory
2020-08-09 23:59:11,406 INFO [main] measure.MeasureTypeFactory:150 : registering COUNT_DISTINCT(bitmap), class org.apache.kylin.measure.bitmap.BitmapMeasureType$Factory
2020-08-09 23:59:11,410 INFO [main] measure.MeasureTypeFactory:150 : registering TOP_N(topn), class org.apache.kylin.measure.topn.TopNMeasureType$Factory
2020-08-09 23:59:11,412 INFO [main] measure.MeasureTypeFactory:150 : registering RAW(raw), class org.apache.kylin.measure.raw.RawMeasureType$Factory
2020-08-09 23:59:11,414 INFO [main] measure.MeasureTypeFactory:150 : registering EXTENDED_COLUMN(extendedcolumn), class org.apache.kylin.measure.extendedcolumn.ExtendedColumnMeasureType$Factory
2020-08-09 23:59:11,415 INFO [main] measure.MeasureTypeFactory:150 : registering PERCENTILE_APPROX(percentile), class org.apache.kylin.measure.percentile.PercentileMeasureType$Factory
2020-08-09 23:59:11,416 INFO [main] measure.MeasureTypeFactory:150 : registering COUNT_DISTINCT(dim_dc), class org.apache.kylin.measure.dim.DimCountDistinctMeasureType$Factory
2020-08-09 23:59:11,418 INFO [main] measure.MeasureTypeFactory:150 : registering STDDEV_SUM(stddev_sum), class org.apache.kylin.measure.stddev.StdDevSumMeasureType$Factory
2020-08-09 23:59:11,431 INFO [main] measure.MeasureTypeFactory:150 : registering COUNT_DISTINCT(bitmap_map), class org.apache.kylin.measure.map.bitmap.BitmapMapMeasureType$Factory
2020-08-09 23:59:11,438 DEBUG [main] cachesync.CachedCrudAssist:155 : Loaded 1 TableDesc(s) out of 1 resource with 0 errors
2020-08-09 23:59:11,439 DEBUG [main] cachesync.CachedCrudAssist:122 : Reloading TableExtDesc from REALTIME(key='/table_exd')@REALTIME@jdbc,url=jdbc:mysql://localhost:3306/NightlyBuild,username=root,password=R00t@kylin,maxActive=10,maxIdle=10
2020-08-09 23:59:11,442 DEBUG [main] cachesync.CachedCrudAssist:155 : Loaded 0 TableExtDesc(s) out of 0 resource with 0 errors
2020-08-09 23:59:11,443 DEBUG [main] cachesync.CachedCrudAssist:122 : Reloading ExternalFilterDesc from REALTIME(key='/ext_filter')@REALTIME@jdbc,url=jdbc:mysql://localhost:3306/NightlyBuild,username=root,password=R00t@kylin,maxActive=10,maxIdle=10
2020-08-09 23:59:11,445 DEBUG [main] cachesync.CachedCrudAssist:155 : Loaded 0 ExternalFilterDesc(s) out of 0 resource with 0 errors
2020-08-09 23:59:11,445 DEBUG [main] cachesync.CachedCrudAssist:122 : Reloading DataModelDesc from REALTIME(key='/model_desc')@REALTIME@jdbc,url=jdbc:mysql://localhost:3306/NightlyBuild,username=root,password=R00t@kylin,maxActive=10,maxIdle=10
2020-08-09 23:59:11,472 DEBUG [main] cachesync.CachedCrudAssist:155 : Loaded 1 DataModelDesc(s) out of 1 resource with 0 errors
2020-08-09 23:59:11,494 DEBUG [main] cachesync.CachedCrudAssist:155 : Loaded 1 CubeDesc(s) out of 1 resource with 0 errors
2020-08-09 23:59:11,495 DEBUG [main] cachesync.CachedCrudAssist:155 : Loaded 1 CubeInstance(s) out of 1 resource with 0 errors
2020-08-09 23:59:11,518 INFO [main] storage.StreamingSegmentManager:239 : restore segments from local files for cube:UserAnalysisCube
2020-08-09 23:59:11,522 WARN [main] storage.StreamingSegmentManager:253 : no checkpoint for cube:UserAnalysisCube store state, remove all local segments folders
2020-08-09 23:59:11,522 INFO [main] server.StreamingServer:351 : create and start new consumer for cube:UserAnalysisCube
2020-08-09 23:59:11,550 INFO [main] common.KylinConfig:476 : Creating new manager instance of class org.apache.kylin.cube.cuboid.CuboidManager
2020-08-09 23:59:11,566 INFO [main] kafka.KafkaSource:141 : Create StreamingConnector for Cube UserAnalysisCube, assignedPartitions [Partition [partitionId=0, partitionInfo=null], Partition [partitionId=5, partitionInfo=null], Partition [partitionId=10, partitionInfo=null], Partition [partitionId=15, partitionInfo=null], Partition [partitionId=13, partitionInfo=null], Partition [partitionId=2, partitionInfo=null], Partition [partitionId=8, partitionInfo=null], Partition [partitionId=12, partitionInfo=null], Partition [partitionId=14, partitionInfo=null], Partition [partitionId=9, partitionInfo=null], Partition [partitionId=11, partitionInfo=null], Partition [partitionId=1, partitionInfo=null], Partition [partitionId=4, partitionInfo=null], Partition [partitionId=6, partitionInfo=null], Partition [partitionId=7, partitionInfo=null], Partition [partitionId=3, partitionInfo=null]], startProtocol null
2020-08-09 23:59:11,571 INFO [main] kafka.TimedJsonStreamParser:98 : Using parser field mapping by {content_list=content_list, act_type=act_type, event_ts_2=event_ts_2, event_ts=event_ts, devide_type=user_detail.devide_type, location_city=user_detail.location.city, network_type=user_detail.network_type, video_id=video_id, event_date_2=event_date_2, str_minute=str_minute, video_type=video_type, play_times=play_times, pageview_id=pageview_id, active_minutes=active_minutes, device_brand=device_brand, str_minute_second=str_minute_second, play_duration=play_duration, event_date=event_date, page_id=page_id, str_second=str_second, uid=uid}
2020-08-09 23:59:11,584 INFO [main] kafka.TimedJsonStreamParser:120 : TimedJsonStreamParser with formatTs false tsColName event_date
2020-08-09 23:59:11,663 INFO [main] consumer.ConsumerConfig:279 : ConsumerConfig values:
auto.commit.interval.ms = 5000
auto.offset.reset = latest
bootstrap.servers = [cdh-master:9092, cdh-worker-1:9092, cdh-worker-2:9092]
check.crcs = true
client.dns.lookup = default
client.id =
connections.max.idle.ms = 540000
default.api.timeout.ms = 60000
enable.auto.commit = false
exclude.internal.topics = true
fetch.max.bytes = 52428800
fetch.max.wait.ms = 500
fetch.min.bytes = 1
group.id =
heartbeat.interval.ms = 3000
interceptor.classes = []
internal.leave.group.on.close = true
isolation.level = read_uncommitted
key.deserializer = class org.apache.kafka.common.serialization.ByteArrayDeserializer
max.partition.fetch.bytes = 1048576
max.poll.interval.ms = 300000
max.poll.records = 500
metadata.max.age.ms = 300000
metric.reporters = []
metrics.num.samples = 2
metrics.recording.level = INFO
metrics.sample.window.ms = 30000
partition.assignment.strategy = [class org.apache.kafka.clients.consumer.RangeAssignor]
receive.buffer.bytes = 65536
reconnect.backoff.max.ms = 1000
reconnect.backoff.ms = 50
request.timeout.ms = 30000
retry.backoff.ms = 100
sasl.client.callback.handler.class = null
sasl.jaas.config = null
sasl.kerberos.kinit.cmd = /usr/bin/kinit
sasl.kerberos.min.time.before.relogin = 60000
sasl.kerberos.service.name = null
sasl.kerberos.ticket.renew.jitter = 0.05
sasl.kerberos.ticket.renew.window.factor = 0.8
sasl.login.callback.handler.class = null
sasl.login.class = null
sasl.login.refresh.buffer.seconds = 300
sasl.login.refresh.min.period.seconds = 60
sasl.login.refresh.window.factor = 0.8
sasl.login.refresh.window.jitter = 0.05
sasl.mechanism = GSSAPI
security.protocol = PLAINTEXT
send.buffer.bytes = 131072
session.timeout.ms = 20000
ssl.cipher.suites = null
ssl.enabled.protocols = [TLSv1.2, TLSv1.1, TLSv1]
ssl.endpoint.identification.algorithm = https
ssl.key.password = null
ssl.keymanager.algorithm = SunX509
ssl.keystore.location = null
ssl.keystore.password = null
ssl.keystore.type = JKS
ssl.protocol = TLS
ssl.provider = null
ssl.secure.random.implementation = null
ssl.trustmanager.algorithm = PKIX
ssl.truststore.location = null
ssl.truststore.password = null
ssl.truststore.type = JKS
value.deserializer = class org.apache.kafka.common.serialization.ByteArrayDeserializer
2020-08-09 23:59:11,790 INFO [main] utils.AppInfoParser:109 : Kafka version : 2.1.1
2020-08-09 23:59:11,790 INFO [main] utils.AppInfoParser:110 : Kafka commitId : 21234bee31165527
2020-08-09 23:59:11,792 INFO [main] kafka.KafkaSource:192 : localConsumeStats from local checkpoint null, remoteConsumeStats from remote checkpoint {"0":363171,"1":363198,"2":363249,"3":363171,"4":363199,"5":363250,"6":363170,"7":363196,"8":363250,"9":363170}
2020-08-09 23:59:11,793 INFO [main] kafka.KafkaSource:239 : start kafka connector from specified position:KafkaPosition{partitionOffsetMap={0=363171, 1=363198, 2=363249, 3=363171, 4=363199, 5=363250, 6=363170, 7=363196, 8=363250, 9=363170}}
2020-08-09 23:59:11,798 WARN [main] consumer.KafkaConnector:91 : Assume useraction_xxyu-10 is a new added partition, let's seek it to 0
2020-08-09 23:59:11,799 WARN [main] consumer.KafkaConnector:91 : Assume useraction_xxyu-15 is a new added partition, let's seek it to 0
2020-08-09 23:59:11,799 WARN [main] consumer.KafkaConnector:91 : Assume useraction_xxyu-13 is a new added partition, let's seek it to 0
2020-08-09 23:59:11,799 WARN [main] consumer.KafkaConnector:91 : Assume useraction_xxyu-12 is a new added partition, let's seek it to 0
2020-08-09 23:59:11,799 WARN [main] consumer.KafkaConnector:91 : Assume useraction_xxyu-14 is a new added partition, let's seek it to 0
2020-08-09 23:59:11,799 WARN [main] consumer.KafkaConnector:91 : Assume useraction_xxyu-11 is a new added partition, let's seek it to 0
2020-08-09 23:59:11,801 INFO [main] metrics.StreamingMetrics:76 : Skip streaming metricRegistry because it is empty.
2020-08-09 23:59:11,819 INFO [main] util.log:169 : Logging initialized @3474ms to org.eclipse.jetty.util.log.Slf4jLog
2020-08-09 23:59:11,946 INFO [UserAnalysisCube_channel] clients.Metadata:285 : Cluster ID: W1YX_q9GRd-R0qwcwFJ9rg
2020-08-09 23:59:12,163 INFO [UserAnalysisCube_channel] storage.StreamingSegmentManager:189 : Create new segment:StreamingCubeSegment [cubeName=UserAnalysisCube, segmentName=20200809210000_20200809220000]
2020-08-09 23:59:12,826 INFO [UserAnalysisCube_channel] storage.StreamingSegmentManager:189 : Create new segment:StreamingCubeSegment [cubeName=UserAnalysisCube, segmentName=20200809230000_20200810000000]
2020-08-09 23:59:13,226 INFO [main] server.Server:359 : jetty-9.4.26.v20200117; built: 2020-01-17T12:35:33.676Z; git: 7b38981d25d14afb4a12ff1f2596756144edf695; jvm 1.8.0_171-b11
2020-08-09 23:59:13,260 INFO [main] ContextHandler.kylin:2223 : Initializing Spring FrameworkServlet 'org.springframework.web.servlet.DispatcherServlet-d2e6b0b'
2020-08-09 23:59:13,278 INFO [main] handler.ContextHandler:825 : Started o.e.j.s.ServletContextHandler@708eb310{/kylin,null,AVAILABLE}
2020-08-09 23:59:13,279 INFO [main] handler.ContextHandler:825 : Started o.e.j.s.h.ContextHandler@6ebc9573{/kylin/logs,null,AVAILABLE}
2020-08-09 23:59:13,294 INFO [main] server.AbstractConnector:330 : Started ServerConnector@369c9bb{HTTP/1.1,[http/1.1]}{0.0.0.0:7514}
2020-08-09 23:59:13,294 INFO [main] server.Server:399 : Started @4949ms
2020-08-09 23:59:15,572 INFO [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:106 : Start persist memory store for cube:UserAnalysisCube, segment:20200809210000_20200809220000, rowCnt:50000
2020-08-09 23:59:15,635 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:202 : cuboid-8191 transform to columnar, take 58 ms
2020-08-09 23:59:15,655 INFO [UserAnalysisCube_channel] dict.TrieDictionaryForestBuilder:90 : values not in ascending order, previous '00000000000000003640', current '00000000000000003638'
2020-08-09 23:59:15,719 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 15962
2020-08-09 23:59:15,720 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$NumberTrieDictForestBuilder
2020-08-09 23:59:15,720 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:15,725 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: 3640=>1219, 3638=>1218, 3630=>1212, 3631=>1213, 3632=>1214
2020-08-09 23:59:15,725 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : UID took : 88 ms
2020-08-09 23:59:15,738 INFO [UserAnalysisCube_channel] dict.TrieDictionaryForestBuilder:90 : values not in ascending order, previous 'page_19', current 'page_13'
2020-08-09 23:59:15,739 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 50
2020-08-09 23:59:15,739 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$StringTrieDictForestBuilder
2020-08-09 23:59:15,740 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:15,740 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: page_19=>11, page_13=>5, page_14=>6, page_11=>3, page_12=>4
2020-08-09 23:59:15,740 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : PAGE_ID took : 13 ms
2020-08-09 23:59:15,751 INFO [UserAnalysisCube_channel] dict.TrieDictionaryForestBuilder:90 : values not in ascending order, previous 'stop', current 'pause'
2020-08-09 23:59:15,752 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 10
2020-08-09 23:59:15,752 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$StringTrieDictForestBuilder
2020-08-09 23:59:15,752 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:15,752 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: stop=>9, pause=>5, play=>6, like=>4, start=>8
2020-08-09 23:59:15,752 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : ACT_TYPE took : 11 ms
2020-08-09 23:59:15,763 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 34
2020-08-09 23:59:15,763 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$NumberTrieDictForestBuilder
2020-08-09 23:59:15,763 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:15,764 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: 0=>0, 1=>1, 2=>2, 3=>3, 4=>4
2020-08-09 23:59:15,764 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : DEVIDE_TYPE took : 10 ms
2020-08-09 23:59:15,774 INFO [UserAnalysisCube_channel] dict.TrieDictionaryForestBuilder:90 : values not in ascending order, previous 'hongkong', current 'hangzhou'
2020-08-09 23:59:15,774 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 7
2020-08-09 23:59:15,774 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$StringTrieDictForestBuilder
2020-08-09 23:59:15,775 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:15,775 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: hongkong=>3, hangzhou=>2, shenzhen=>6, berlin=>1, nanjing=>4
2020-08-09 23:59:15,775 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : LOCATION_CITY took : 10 ms
2020-08-09 23:59:15,785 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 4
2020-08-09 23:59:15,785 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$NumberTrieDictForestBuilder
2020-08-09 23:59:15,785 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:15,785 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: 2=>0, 3=>1, 4=>2, 5=>3
2020-08-09 23:59:15,785 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : NETWORK_TYPE took : 10 ms
2020-08-09 23:59:15,794 INFO [UserAnalysisCube_channel] dict.TrieDictionaryForestBuilder:90 : values not in ascending order, previous 'xiaomi', current 'vivo'
2020-08-09 23:59:15,795 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 5
2020-08-09 23:59:15,795 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$StringTrieDictForestBuilder
2020-08-09 23:59:15,795 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:15,795 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: huawei=>0, xiaomi=>4, vivo=>3, meizu=>2, iPhone=>1
2020-08-09 23:59:15,795 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : DEVICE_BRAND took : 9 ms
2020-08-09 23:59:15,806 INFO [UserAnalysisCube_channel] dict.TrieDictionaryForestBuilder:90 : values not in ascending order, previous '21_14_59', current '21_14_50'
2020-08-09 23:59:15,810 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 2032
2020-08-09 23:59:15,810 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$StringTrieDictForestBuilder
2020-08-09 23:59:15,810 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:15,810 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: 21_14_59=>355, 21_14_50=>346, 21_14_55=>351, 21_14_56=>352, 21_14_57=>353
2020-08-09 23:59:15,810 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : STR_MINUTE_SECOND took : 15 ms
2020-08-09 23:59:16,088 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:UID, took: 276ms
2020-08-09 23:59:16,171 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:PAGE_ID, took: 83ms
2020-08-09 23:59:16,254 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:ACT_TYPE, took: 82ms
2020-08-09 23:59:16,316 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:DEVIDE_TYPE, took: 61ms
2020-08-09 23:59:16,391 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:LOCATION_CITY, took: 75ms
2020-08-09 23:59:16,461 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:NETWORK_TYPE, took: 69ms
2020-08-09 23:59:16,532 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:DEVICE_BRAND, took: 70ms
2020-08-09 23:59:16,608 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:STR_MINUTE_SECOND, took: 75ms
2020-08-09 23:59:16,646 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:MONTH_START, took: 38ms
2020-08-09 23:59:16,673 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:WEEK_START, took: 26ms
2020-08-09 23:59:16,703 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:DAY_START, took: 29ms
2020-08-09 23:59:16,736 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:HOUR_START, took: 33ms
2020-08-09 23:59:16,779 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:MINUTE_START, took: 41ms
2020-08-09 23:59:16,808 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:_COUNT_, took: 29ms
2020-08-09 23:59:16,871 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:SUM_PLAY_TIMES, took: 63ms
2020-08-09 23:59:16,907 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:SUM_ACTIVE_MINUTES, took: 34ms
2020-08-09 23:59:16,932 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:SUM_PLAY_DURATION, took: 25ms
2020-08-09 23:59:16,993 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:MAX_PLAY_TIMES, took: 60ms
2020-08-09 23:59:17,027 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:MAX_ACTIVE_MINUTES, took: 33ms
2020-08-09 23:59:17,049 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:MAX_PLAY_DURATION, took: 22ms
2020-08-09 23:59:17,081 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:PV_STAT, took: 31ms
2020-08-09 23:59:17,089 INFO [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:110 : Finish persist memory store for cube:UserAnalysisCube segment:20200809210000_20200809220000, take: 1517ms
2020-08-09 23:59:18,954 INFO [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:106 : Start persist memory store for cube:UserAnalysisCube, segment:20200809210000_20200809220000, rowCnt:50000
2020-08-09 23:59:18,980 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:202 : cuboid-8191 transform to columnar, take 26 ms
2020-08-09 23:59:18,989 INFO [UserAnalysisCube_channel] dict.TrieDictionaryForestBuilder:90 : values not in ascending order, previous '00000000000000003640', current '00000000000000003638'
2020-08-09 23:59:19,008 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 16046
2020-08-09 23:59:19,008 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$NumberTrieDictForestBuilder
2020-08-09 23:59:19,008 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:19,008 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: 3640=>1240, 3638=>1238, 3639=>1239, 3630=>1231, 3631=>1232
2020-08-09 23:59:19,008 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : UID took : 28 ms
2020-08-09 23:59:19,017 INFO [UserAnalysisCube_channel] dict.TrieDictionaryForestBuilder:90 : values not in ascending order, previous 'page_19', current 'page_13'
2020-08-09 23:59:19,017 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 50
2020-08-09 23:59:19,017 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$StringTrieDictForestBuilder
2020-08-09 23:59:19,017 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:19,018 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: page_19=>11, page_13=>5, page_14=>6, page_11=>3, page_12=>4
2020-08-09 23:59:19,018 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : PAGE_ID took : 8 ms
2020-08-09 23:59:19,025 INFO [UserAnalysisCube_channel] dict.TrieDictionaryForestBuilder:90 : values not in ascending order, previous 'stop', current 'pause'
2020-08-09 23:59:19,026 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 10
2020-08-09 23:59:19,026 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$StringTrieDictForestBuilder
2020-08-09 23:59:19,026 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:19,026 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: stop=>9, pause=>5, play=>6, like=>4, start=>8
2020-08-09 23:59:19,026 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : ACT_TYPE took : 8 ms
2020-08-09 23:59:19,035 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 44
2020-08-09 23:59:19,035 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$NumberTrieDictForestBuilder
2020-08-09 23:59:19,035 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:19,035 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: 16=>0, 17=>1, 18=>2, 19=>3, 20=>4
2020-08-09 23:59:19,035 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : DEVIDE_TYPE took : 8 ms
2020-08-09 23:59:19,043 INFO [UserAnalysisCube_channel] dict.TrieDictionaryForestBuilder:90 : values not in ascending order, previous 'hongkong', current 'hangzhou'
2020-08-09 23:59:19,043 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 7
2020-08-09 23:59:19,043 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$StringTrieDictForestBuilder
2020-08-09 23:59:19,043 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:19,043 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: hongkong=>3, hangzhou=>2, shenzhen=>6, berlin=>1, nanjing=>4
2020-08-09 23:59:19,044 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : LOCATION_CITY took : 8 ms
2020-08-09 23:59:19,052 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 4
2020-08-09 23:59:19,052 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$NumberTrieDictForestBuilder
2020-08-09 23:59:19,052 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:19,052 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: 2=>0, 3=>1, 4=>2, 5=>3
2020-08-09 23:59:19,052 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : NETWORK_TYPE took : 8 ms
2020-08-09 23:59:19,059 INFO [UserAnalysisCube_channel] dict.TrieDictionaryForestBuilder:90 : values not in ascending order, previous 'xiaomi', current 'vivo'
2020-08-09 23:59:19,060 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 5
2020-08-09 23:59:19,060 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$StringTrieDictForestBuilder
2020-08-09 23:59:19,060 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:19,060 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: huawei=>0, xiaomi=>4, vivo=>3, meizu=>2, iPhone=>1
2020-08-09 23:59:19,060 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : DEVICE_BRAND took : 7 ms
2020-08-09 23:59:19,069 INFO [UserAnalysisCube_channel] dict.TrieDictionaryForestBuilder:90 : values not in ascending order, previous '21_55_9', current '21_55_0'
2020-08-09 23:59:19,077 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 2536
2020-08-09 23:59:19,077 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$StringTrieDictForestBuilder
2020-08-09 23:59:19,077 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:19,077 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: 21_55_7=>2341, 21_55_8=>2342, 21_55_9=>2343, 21_55_0=>2284, 21_55_1=>2285
2020-08-09 23:59:19,077 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : STR_MINUTE_SECOND took : 17 ms
2020-08-09 23:59:19,185 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:UID, took: 107ms
2020-08-09 23:59:19,235 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:PAGE_ID, took: 49ms
2020-08-09 23:59:19,284 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:ACT_TYPE, took: 48ms
2020-08-09 23:59:19,335 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:DEVIDE_TYPE, took: 50ms
2020-08-09 23:59:19,396 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:LOCATION_CITY, took: 60ms
2020-08-09 23:59:19,455 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:NETWORK_TYPE, took: 59ms
2020-08-09 23:59:19,522 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:DEVICE_BRAND, took: 66ms
2020-08-09 23:59:19,592 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:STR_MINUTE_SECOND, took: 69ms
2020-08-09 23:59:19,610 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:MONTH_START, took: 17ms
2020-08-09 23:59:19,626 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:WEEK_START, took: 16ms
2020-08-09 23:59:19,642 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:DAY_START, took: 15ms
2020-08-09 23:59:19,662 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:HOUR_START, took: 19ms
2020-08-09 23:59:19,691 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:MINUTE_START, took: 28ms
2020-08-09 23:59:19,708 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:_COUNT_, took: 16ms
2020-08-09 23:59:19,766 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:SUM_PLAY_TIMES, took: 57ms
2020-08-09 23:59:19,783 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:SUM_ACTIVE_MINUTES, took: 17ms
2020-08-09 23:59:19,801 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:SUM_PLAY_DURATION, took: 17ms
2020-08-09 23:59:19,856 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:MAX_PLAY_TIMES, took: 54ms
2020-08-09 23:59:19,873 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:MAX_ACTIVE_MINUTES, took: 17ms
2020-08-09 23:59:19,890 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:MAX_PLAY_DURATION, took: 16ms
2020-08-09 23:59:19,908 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:PV_STAT, took: 18ms
2020-08-09 23:59:19,913 INFO [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:110 : Finish persist memory store for cube:UserAnalysisCube segment:20200809210000_20200809220000, take: 959ms
2020-08-09 23:59:20,175 INFO [UserAnalysisCube_channel] storage.StreamingSegmentManager:189 : Create new segment:StreamingCubeSegment [cubeName=UserAnalysisCube, segmentName=20200809220000_20200809230000]
2020-08-09 23:59:22,201 INFO [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:106 : Start persist memory store for cube:UserAnalysisCube, segment:20200809220000_20200809230000, rowCnt:50000
2020-08-09 23:59:22,235 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:202 : cuboid-8191 transform to columnar, take 33 ms
2020-08-09 23:59:22,245 INFO [UserAnalysisCube_channel] dict.TrieDictionaryForestBuilder:90 : values not in ascending order, previous '00000000000000003640', current '00000000000000003638'
2020-08-09 23:59:22,258 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 15977
2020-08-09 23:59:22,258 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$NumberTrieDictForestBuilder
2020-08-09 23:59:22,258 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:22,258 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: 3640=>1166, 3638=>1165, 3630=>1158, 3631=>1159, 3632=>1160
2020-08-09 23:59:22,258 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : UID took : 23 ms
2020-08-09 23:59:22,267 INFO [UserAnalysisCube_channel] dict.TrieDictionaryForestBuilder:90 : values not in ascending order, previous 'page_19', current 'page_13'
2020-08-09 23:59:22,268 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 50
2020-08-09 23:59:22,268 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$StringTrieDictForestBuilder
2020-08-09 23:59:22,268 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:22,268 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: page_19=>11, page_13=>5, page_14=>6, page_11=>3, page_12=>4
2020-08-09 23:59:22,268 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : PAGE_ID took : 9 ms
2020-08-09 23:59:22,277 INFO [UserAnalysisCube_channel] dict.TrieDictionaryForestBuilder:90 : values not in ascending order, previous 'stop', current 'pause'
2020-08-09 23:59:22,277 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 10
2020-08-09 23:59:22,277 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$StringTrieDictForestBuilder
2020-08-09 23:59:22,277 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:22,277 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: stop=>9, pause=>5, play=>6, like=>4, start=>8
2020-08-09 23:59:22,277 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : ACT_TYPE took : 9 ms
2020-08-09 23:59:22,285 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 34
2020-08-09 23:59:22,285 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$NumberTrieDictForestBuilder
2020-08-09 23:59:22,286 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:22,286 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: 0=>0, 1=>1, 2=>2, 3=>3, 4=>4
2020-08-09 23:59:22,286 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : DEVIDE_TYPE took : 8 ms
2020-08-09 23:59:22,294 INFO [UserAnalysisCube_channel] dict.TrieDictionaryForestBuilder:90 : values not in ascending order, previous 'hongkong', current 'hangzhou'
2020-08-09 23:59:22,294 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 7
2020-08-09 23:59:22,294 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$StringTrieDictForestBuilder
2020-08-09 23:59:22,295 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:22,295 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: hongkong=>3, hangzhou=>2, shenzhen=>6, berlin=>1, nanjing=>4
2020-08-09 23:59:22,295 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : LOCATION_CITY took : 8 ms
2020-08-09 23:59:22,303 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 4
2020-08-09 23:59:22,303 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$NumberTrieDictForestBuilder
2020-08-09 23:59:22,303 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:22,303 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: 2=>0, 3=>1, 4=>2, 5=>3
2020-08-09 23:59:22,303 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : NETWORK_TYPE took : 8 ms
2020-08-09 23:59:22,311 INFO [UserAnalysisCube_channel] dict.TrieDictionaryForestBuilder:90 : values not in ascending order, previous 'xiaomi', current 'vivo'
2020-08-09 23:59:22,311 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 5
2020-08-09 23:59:22,311 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$StringTrieDictForestBuilder
2020-08-09 23:59:22,311 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:22,311 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: huawei=>0, xiaomi=>4, vivo=>3, meizu=>2, iPhone=>1
2020-08-09 23:59:22,311 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : DEVICE_BRAND took : 8 ms
2020-08-09 23:59:22,321 INFO [UserAnalysisCube_channel] dict.TrieDictionaryForestBuilder:90 : values not in ascending order, previous '22_14_59', current '22_14_41'
2020-08-09 23:59:22,323 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 1985
2020-08-09 23:59:22,324 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$StringTrieDictForestBuilder
2020-08-09 23:59:22,324 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:22,324 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: 22_14_58=>354, 22_14_59=>355, 22_14_41=>336, 22_14_42=>337, 22_14_40=>335
2020-08-09 23:59:22,324 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : STR_MINUTE_SECOND took : 12 ms
2020-08-09 23:59:22,426 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:UID, took: 102ms
2020-08-09 23:59:22,477 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:PAGE_ID, took: 50ms
2020-08-09 23:59:22,526 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:ACT_TYPE, took: 49ms
2020-08-09 23:59:22,574 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:DEVIDE_TYPE, took: 47ms
2020-08-09 23:59:22,706 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:LOCATION_CITY, took: 61ms
2020-08-09 23:59:22,768 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:NETWORK_TYPE, took: 61ms
2020-08-09 23:59:22,834 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:DEVICE_BRAND, took: 66ms
2020-08-09 23:59:22,903 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:STR_MINUTE_SECOND, took: 68ms
2020-08-09 23:59:22,920 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:MONTH_START, took: 16ms
2020-08-09 23:59:22,937 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:WEEK_START, took: 16ms
2020-08-09 23:59:22,953 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:DAY_START, took: 16ms
2020-08-09 23:59:22,971 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:HOUR_START, took: 17ms
2020-08-09 23:59:22,995 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:MINUTE_START, took: 24ms
2020-08-09 23:59:23,008 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:_COUNT_, took: 12ms
2020-08-09 23:59:23,064 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:SUM_PLAY_TIMES, took: 55ms
2020-08-09 23:59:23,082 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:SUM_ACTIVE_MINUTES, took: 17ms
2020-08-09 23:59:23,100 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:SUM_PLAY_DURATION, took: 17ms
2020-08-09 23:59:23,157 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:MAX_PLAY_TIMES, took: 56ms
2020-08-09 23:59:23,175 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:MAX_ACTIVE_MINUTES, took: 17ms
2020-08-09 23:59:23,193 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:MAX_PLAY_DURATION, took: 18ms
2020-08-09 23:59:23,213 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:PV_STAT, took: 19ms
2020-08-09 23:59:23,214 INFO [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:110 : Finish persist memory store for cube:UserAnalysisCube segment:20200809220000_20200809230000, take: 1012ms
2020-08-09 23:59:25,467 INFO [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:106 : Start persist memory store for cube:UserAnalysisCube, segment:20200809230000_20200810000000, rowCnt:50000
2020-08-09 23:59:25,495 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:202 : cuboid-8191 transform to columnar, take 26 ms
2020-08-09 23:59:25,504 INFO [UserAnalysisCube_channel] dict.TrieDictionaryForestBuilder:90 : values not in ascending order, previous '00000000000000003639', current '00000000000000003630'
2020-08-09 23:59:25,519 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 15936
2020-08-09 23:59:25,519 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$NumberTrieDictForestBuilder
2020-08-09 23:59:25,519 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:25,519 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: 3638=>1084, 3639=>1085, 3630=>1077, 3631=>1078, 3632=>1079
2020-08-09 23:59:25,519 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : UID took : 24 ms
2020-08-09 23:59:25,532 INFO [UserAnalysisCube_channel] dict.TrieDictionaryForestBuilder:90 : values not in ascending order, previous 'page_19', current 'page_13'
2020-08-09 23:59:25,533 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 50
2020-08-09 23:59:25,533 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$StringTrieDictForestBuilder
2020-08-09 23:59:25,533 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:25,533 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: page_19=>11, page_13=>5, page_14=>6, page_11=>3, page_12=>4
2020-08-09 23:59:25,533 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : PAGE_ID took : 13 ms
2020-08-09 23:59:25,542 INFO [UserAnalysisCube_channel] dict.TrieDictionaryForestBuilder:90 : values not in ascending order, previous 'stop', current 'pause'
2020-08-09 23:59:25,543 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 10
2020-08-09 23:59:25,543 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$StringTrieDictForestBuilder
2020-08-09 23:59:25,543 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:25,543 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: stop=>9, pause=>5, play=>6, like=>4, start=>8
2020-08-09 23:59:25,543 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : ACT_TYPE took : 9 ms
2020-08-09 23:59:25,553 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 41
2020-08-09 23:59:25,553 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$NumberTrieDictForestBuilder
2020-08-09 23:59:25,553 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:25,553 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: 19=>0, 20=>1, 21=>2, 22=>3, 23=>4
2020-08-09 23:59:25,553 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : DEVIDE_TYPE took : 10 ms
2020-08-09 23:59:25,562 INFO [UserAnalysisCube_channel] dict.TrieDictionaryForestBuilder:90 : values not in ascending order, previous 'hongkong', current 'hangzhou'
2020-08-09 23:59:25,563 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 7
2020-08-09 23:59:25,563 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$StringTrieDictForestBuilder
2020-08-09 23:59:25,563 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:25,563 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: hongkong=>3, hangzhou=>2, shenzhen=>6, berlin=>1, nanjing=>4
2020-08-09 23:59:25,563 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : LOCATION_CITY took : 9 ms
2020-08-09 23:59:25,572 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 4
2020-08-09 23:59:25,573 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$NumberTrieDictForestBuilder
2020-08-09 23:59:25,573 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:25,573 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: 2=>0, 3=>1, 4=>2, 5=>3
2020-08-09 23:59:25,573 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : NETWORK_TYPE took : 9 ms
2020-08-09 23:59:25,582 INFO [UserAnalysisCube_channel] dict.TrieDictionaryForestBuilder:90 : values not in ascending order, previous 'xiaomi', current 'vivo'
2020-08-09 23:59:25,583 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 5
2020-08-09 23:59:25,583 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$StringTrieDictForestBuilder
2020-08-09 23:59:25,583 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:25,583 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: huawei=>0, xiaomi=>4, vivo=>3, meizu=>2, iPhone=>1
2020-08-09 23:59:25,583 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : DEVICE_BRAND took : 10 ms
2020-08-09 23:59:25,594 INFO [UserAnalysisCube_channel] dict.TrieDictionaryForestBuilder:90 : values not in ascending order, previous '23_53_19', current '23_53_10'
2020-08-09 23:59:25,596 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:91 : Dictionary cardinality: 2412
2020-08-09 23:59:25,596 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:92 : Dictionary builder class: org.apache.kylin.dict.DictionaryGenerator$StringTrieDictForestBuilder
2020-08-09 23:59:25,596 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:93 : Dictionary class: org.apache.kylin.dict.TrieDictionaryForest
2020-08-09 23:59:25,596 DEBUG [UserAnalysisCube_channel] dict.DictionaryGenerator:102 : Dictionary value samples: 23_53_16=>2035, 23_53_17=>2036, 23_53_18=>2037, 23_53_19=>2038, 23_53_10=>2029
2020-08-09 23:59:25,596 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:403 : BuildDictionary for column : STR_MINUTE_SECOND took : 12 ms
2020-08-09 23:59:25,702 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:UID, took: 105ms
2020-08-09 23:59:25,757 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:PAGE_ID, took: 54ms
2020-08-09 23:59:25,812 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:ACT_TYPE, took: 54ms
2020-08-09 23:59:25,866 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:DEVIDE_TYPE, took: 54ms
2020-08-09 23:59:25,932 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:LOCATION_CITY, took: 65ms
2020-08-09 23:59:25,996 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:NETWORK_TYPE, took: 63ms
2020-08-09 23:59:26,065 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:DEVICE_BRAND, took: 68ms
2020-08-09 23:59:26,138 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:STR_MINUTE_SECOND, took: 73ms
2020-08-09 23:59:26,157 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:MONTH_START, took: 18ms
2020-08-09 23:59:26,175 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:WEEK_START, took: 18ms
2020-08-09 23:59:26,193 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:DAY_START, took: 17ms
2020-08-09 23:59:26,210 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:HOUR_START, took: 17ms
2020-08-09 23:59:26,235 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:326 : cuboid-8191 saved dimension:MINUTE_START, took: 24ms
2020-08-09 23:59:26,256 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:_COUNT_, took: 20ms
2020-08-09 23:59:26,316 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:SUM_PLAY_TIMES, took: 60ms
2020-08-09 23:59:26,336 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:SUM_ACTIVE_MINUTES, took: 19ms
2020-08-09 23:59:26,355 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:SUM_PLAY_DURATION, took: 18ms
2020-08-09 23:59:26,412 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:MAX_PLAY_TIMES, took: 57ms
2020-08-09 23:59:26,431 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:MAX_ACTIVE_MINUTES, took: 18ms
2020-08-09 23:59:26,450 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:MAX_PLAY_DURATION, took: 18ms
2020-08-09 23:59:26,470 DEBUG [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:379 : cuboid-8191 saved measure:PV_STAT, took: 20ms
2020-08-09 23:59:26,471 INFO [UserAnalysisCube_channel] columnar.ColumnarMemoryStorePersister:110 : Finish persist memory store for cube:UserAnalysisCube segment:20200809230000_20200810000000, take: 1003ms
```
The key part is the folowing:
```
2020-08-09 23:59:11,792 INFO [main] kafka.KafkaSource:192 : localConsumeStats from local checkpoint null, remoteConsumeStats from remote checkpoint {"0":363171,"1":363198,"2":363249,"3":363171,"4":363199,"5":363250,"6":363170,"7":363196,"8":363250,"9":363170}
2020-08-09 23:59:11,793 INFO [main] kafka.KafkaSource:239 : start kafka connector from specified position:KafkaPosition{partitionOffsetMap={0=363171, 1=363198, 2=363249, 3=363171, 4=363199, 5=363250, 6=363170, 7=363196, 8=363250, 9=363170}}
2020-08-09 23:59:11,798 WARN [main] consumer.KafkaConnector:91 : Assume useraction_xxyu-10 is a new added partition, let's seek it to 0
2020-08-09 23:59:11,799 WARN [main] consumer.KafkaConnector:91 : Assume useraction_xxyu-15 is a new added partition, let's seek it to 0
2020-08-09 23:59:11,799 WARN [main] consumer.KafkaConnector:91 : Assume useraction_xxyu-13 is a new added partition, let's seek it to 0
2020-08-09 23:59:11,799 WARN [main] consumer.KafkaConnector:91 : Assume useraction_xxyu-12 is a new added partition, let's seek it to 0
2020-08-09 23:59:11,799 WARN [main] consumer.KafkaConnector:91 : Assume useraction_xxyu-14 is a new added partition, let's seek it to 0
2020-08-09 23:59:11,799 WARN [main] consumer.KafkaConnector:91 : Assume useraction_xxyu-11 is a new added partition, let's seek it to 0
```
It indicated taht receiver consume from position, which shoulf be the correct way:
```json
{
"0":363171,
"1":363198,
"2":363249,
"3":363171,
"4":363199,
"5":363250,
"6":363170,
"7":363196,
"8":363250,
"9":363170,
"10":0,
"11":0,
"12":0,
"13":0,
"14":0,
"15":0
}
```
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [kylin] tianhui5 commented on pull request #1351: KYLIN-4683 Fail to consume kafka when partition number get larger
Posted by GitBox <gi...@apache.org>.
tianhui5 commented on pull request #1351:
URL: https://github.com/apache/kylin/pull/1351#issuecomment-671132270
> Thank you for you effort that you spend on this issue, here is my suggestion, what do you think?
> If `offset` is null, please just set it to zero.
I wonder if there is any difference between setting offset to zero and seekToBeginning.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [kylin] coveralls edited a comment on pull request #1351: KYLIN-4683 Fail to consume kafka when partition number get larger
Posted by GitBox <gi...@apache.org>.
coveralls edited a comment on pull request #1351:
URL: https://github.com/apache/kylin/pull/1351#issuecomment-669893863
## Pull Request Test Coverage Report for [Build 6234](https://coveralls.io/builds/32636098)
* **0** of **5** **(0.0%)** changed or added relevant lines in **1** file are covered.
* **3** unchanged lines in **2** files lost coverage.
* Overall coverage decreased (**-0.001%**) to **28.027%**
---
| Changes Missing Coverage | Covered Lines | Changed/Added Lines | % |
| :-----|--------------|--------|---: |
| [stream-source-kafka/src/main/java/org/apache/kylin/stream/source/kafka/consumer/KafkaConnector.java](https://coveralls.io/builds/32636098/source?filename=stream-source-kafka%2Fsrc%2Fmain%2Fjava%2Forg%2Fapache%2Fkylin%2Fstream%2Fsource%2Fkafka%2Fconsumer%2FKafkaConnector.java#L84) | 0 | 5 | 0.0%
<!-- | **Total:** | **0** | **5** | **0.0%** | -->
| Files with Coverage Reduction | New Missed Lines | % |
| :-----|--------------|--: |
| [stream-source-kafka/src/main/java/org/apache/kylin/stream/source/kafka/consumer/KafkaConnector.java](https://coveralls.io/builds/32636098/source?filename=stream-source-kafka%2Fsrc%2Fmain%2Fjava%2Forg%2Fapache%2Fkylin%2Fstream%2Fsource%2Fkafka%2Fconsumer%2FKafkaConnector.java#L92) | 1 | 0% |
| [core-job/src/main/java/org/apache/kylin/job/impl/threadpool/DefaultScheduler.java](https://coveralls.io/builds/32636098/source?filename=core-job%2Fsrc%2Fmain%2Fjava%2Forg%2Fapache%2Fkylin%2Fjob%2Fimpl%2Fthreadpool%2FDefaultScheduler.java#L194) | 2 | 80.23% |
<!-- | **Total:** | **3** | | -->
| Totals | [![Coverage Status](https://coveralls.io/builds/32636098/badge)](https://coveralls.io/builds/32636098) |
| :-- | --: |
| Change from base [Build 6232](https://coveralls.io/builds/32631719): | -0.001% |
| Covered Lines: | 26236 |
| Relevant Lines: | 93609 |
---
##### 💛 - [Coveralls](https://coveralls.io)
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [kylin] hit-lacus edited a comment on pull request #1351: KYLIN-4683 Fail to consume kafka when partition number get larger
Posted by GitBox <gi...@apache.org>.
hit-lacus edited a comment on pull request #1351:
URL: https://github.com/apache/kylin/pull/1351#issuecomment-671059337
Before we scale up the topic partition , we should doing the following steps:
1. Disable the cube, thus all consumption task will be cacelled.
2. Use the REST API `http://${KYLIN_INSTANCE_IP}7236/kylin/cubes/view/${CUBE_NAME}/instancejson` to check the `CubeInstance.json`. You will find each READY segment has a property named `stream_source_checkpoint`. Here s part of its content:
```json
{
"uuid": "aab58181-29f7-0593-d7f8-ca9d9b97d49b",
"name": "20200809200000_20200809210000",
"storage_location_identifier": "APACHE:REALTIME_OLAP_ISH2P3HM30",
"date_range_start": 1597003200000,
"date_range_end": 1597006800000,
"source_offset_start": 0,
"source_offset_end": 0,
"status": "READY",
"size_kb": 102984,
"is_merged": false,
"estimate_ratio": null,
"input_records": 118216,
"input_records_size": 0,
"last_build_time": 1596982095554,
"last_build_job_id": "8f3660b8-72f7-7aac-e3bd-1e06ea30d8e2",
"create_time_utc": 1596981735548,
"cuboid_shard_nums": {},
"total_shards": 1,
"blackout_cuboids": [],
"binary_signature": null,
"dictionaries": {
"USERACTIONSTREAM.DEVICE_BRAND": "/dict/APACHE.USERACTIONSTREAM/DEVICE_BRAND/afb80e63-4fef-d575-3483-1e0314bf4bef.dict",
"USERACTIONSTREAM.DEVIDE_TYPE": "/dict/APACHE.USERACTIONSTREAM/DEVIDE_TYPE/61bf9051-3cdd-ec82-bc0f-1bb3226bb411.dict",
"USERACTIONSTREAM.LOCATION_CITY": "/dict/APACHE.USERACTIONSTREAM/LOCATION_CITY/292ce446-62a1-0b12-e4d0-13bc249b0dbe.dict",
"USERACTIONSTREAM.PAGE_ID": "/dict/APACHE.USERACTIONSTREAM/PAGE_ID/12fa188b-0f89-db3d-560a-8aea5b970349.dict",
"USERACTIONSTREAM.NETWORK_TYPE": "/dict/APACHE.USERACTIONSTREAM/NETWORK_TYPE/99d38dea-25ef-c03d-73b7-19a6fda2ce4c.dict",
"USERACTIONSTREAM.STR_MINUTE_SECOND": "/dict/APACHE.USERACTIONSTREAM/STR_MINUTE_SECOND/2b23e9aa-dee0-b88f-7e3e-0a3d74d89f89.dict",
"USERACTIONSTREAM.ACT_TYPE": "/dict/APACHE.USERACTIONSTREAM/ACT_TYPE/e77f008d-6bd8-bc1f-ba94-ff62764c3e14.dict",
"USERACTIONSTREAM.UID": "/dict/APACHE.USERACTIONSTREAM/UID/665546b1-424a-fc42-a35b-1a58fcd1fb5f.dict"
},
"snapshots": null,
"rowkey_stats": [
[
"ACT_TYPE",
10,
1
],
[
"NETWORK_TYPE",
4,
1
],
[
"LOCATION_CITY",
7,
1
],
[
"STR_MINUTE_SECOND",
3600,
2
],
[
"PAGE_ID",
50,
1
],
[
"DEVICE_BRAND",
5,
1
],
[
"DEVIDE_TYPE",
60,
1
],
[
"UID",
19543,
2
]
],
"stream_source_checkpoint": "{\"0\":363171,\"1\":363198,\"2\":363249,\"3\":363171,\"4\":363199,\"5\":363250,\"6\":363170,\"7\":363196,\"8\":363250,\"9\":363170}"
}
```
3. Check `${KYLIN_RECEIVER_HOME}/logs/kylin_streaming_receiver.log`, you can find the some output:
```
2020-08-09 22:34:05,381 INFO [UserAnalysisCube_channel] storage.StreamingSegmentManager:645 : Print check point for cube UserAnalysisCube ,CheckPoint{sourceConsumePosition='{"0":381733,"1":381763,"2":381820,"3":381733,"4":381764,"5":381820,"6":381732,"7":381760,"8":381821,"9":381733}', persistedIndexes={1597006800000=13, 1597010400000=8}, longLatencyInfo=LongLatencyInfo{longLatencyEventCnts={20200808000000_20200808010000=3, 20200808060000_20200808070000=2, 20200809000000_20200809010000=2, 20200809060000_20200809070000=2}, totalLongLatencyEventCnt=9}, segmentSourceStartPosition={1597006800000={"0":363171,"1":363198,"2":363249,"3":363171,"4":363199,"5":363250,"6":363170,"7":363196,"8":363250,"9":363170}, 1597010400000={"0":375013,"1":375040,"2":375099,"3":375013,"4":375041,"5":375099,"6":375012,"7":375038,"8":375100,"9":375013}}, checkPointTime=1596983645381, totalCount=3817689, checkPointCount=5801}
```
These logs indicated that the data ingetsed and indexed in receiver side is checkpointed at position :
```json
{
"0":375013,
"1":375040,
"2":375099,
"3":375013,
"4":375041,
"5":375099,
"6":375012,
"7":375038,
"8":375100,
"9":375013
}
```
4. When disable cube , data ingetsed and indexed in receiver side will be removed, so when scaled up, we expected receiver will continue its consumpution after following position:
```json
{
"0":363171,
"1":363198,
"2":363249,
"3":363171,
"4":363199,
"5":363250,
"6":363170,
"7":363196,
"8":363250,
"9":363170
}
```
5. So let's check if it is correct ?
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [kylin] tianhui5 commented on pull request #1351: KYLIN-4683 Fail to consume kafka when partition number get larger
Posted by GitBox <gi...@apache.org>.
tianhui5 commented on pull request #1351:
URL: https://github.com/apache/kylin/pull/1351#issuecomment-669855782
I think there is some network failure of CI
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [kylin] hit-lacus edited a comment on pull request #1351: KYLIN-4683 Fail to consume kafka when partition number get larger
Posted by GitBox <gi...@apache.org>.
hit-lacus edited a comment on pull request #1351:
URL: https://github.com/apache/kylin/pull/1351#issuecomment-671059337
Before we scale up the topic partition , we should doing the following steps:
1. Disable the cube, thus all consumption task will be cacelled.
2. Use the REST API `http://${KYLIN_INSTANCE_IP}:${KYLIN_INSTANCE_PORT}/kylin/cubes/view/${CUBE_NAME}/instancejson` to check the `CubeInstance.json`. You will find each READY segment has a property named `stream_source_checkpoint`. Here s part of its content:
```json
{
"uuid": "aab58181-29f7-0593-d7f8-ca9d9b97d49b",
"name": "20200809200000_20200809210000",
"storage_location_identifier": "APACHE:REALTIME_OLAP_ISH2P3HM30",
"date_range_start": 1597003200000,
"date_range_end": 1597006800000,
"source_offset_start": 0,
"source_offset_end": 0,
"status": "READY",
"size_kb": 102984,
"is_merged": false,
"estimate_ratio": null,
"input_records": 118216,
"input_records_size": 0,
"last_build_time": 1596982095554,
"last_build_job_id": "8f3660b8-72f7-7aac-e3bd-1e06ea30d8e2",
"create_time_utc": 1596981735548,
"cuboid_shard_nums": {},
"total_shards": 1,
"blackout_cuboids": [],
"binary_signature": null,
"dictionaries": {
"USERACTIONSTREAM.DEVICE_BRAND": "/dict/APACHE.USERACTIONSTREAM/DEVICE_BRAND/afb80e63-4fef-d575-3483-1e0314bf4bef.dict",
"USERACTIONSTREAM.DEVIDE_TYPE": "/dict/APACHE.USERACTIONSTREAM/DEVIDE_TYPE/61bf9051-3cdd-ec82-bc0f-1bb3226bb411.dict",
"USERACTIONSTREAM.LOCATION_CITY": "/dict/APACHE.USERACTIONSTREAM/LOCATION_CITY/292ce446-62a1-0b12-e4d0-13bc249b0dbe.dict",
"USERACTIONSTREAM.PAGE_ID": "/dict/APACHE.USERACTIONSTREAM/PAGE_ID/12fa188b-0f89-db3d-560a-8aea5b970349.dict",
"USERACTIONSTREAM.NETWORK_TYPE": "/dict/APACHE.USERACTIONSTREAM/NETWORK_TYPE/99d38dea-25ef-c03d-73b7-19a6fda2ce4c.dict",
"USERACTIONSTREAM.STR_MINUTE_SECOND": "/dict/APACHE.USERACTIONSTREAM/STR_MINUTE_SECOND/2b23e9aa-dee0-b88f-7e3e-0a3d74d89f89.dict",
"USERACTIONSTREAM.ACT_TYPE": "/dict/APACHE.USERACTIONSTREAM/ACT_TYPE/e77f008d-6bd8-bc1f-ba94-ff62764c3e14.dict",
"USERACTIONSTREAM.UID": "/dict/APACHE.USERACTIONSTREAM/UID/665546b1-424a-fc42-a35b-1a58fcd1fb5f.dict"
},
"snapshots": null,
"rowkey_stats": [
[
"ACT_TYPE",
10,
1
],
[
"NETWORK_TYPE",
4,
1
],
[
"LOCATION_CITY",
7,
1
],
[
"STR_MINUTE_SECOND",
3600,
2
],
[
"PAGE_ID",
50,
1
],
[
"DEVICE_BRAND",
5,
1
],
[
"DEVIDE_TYPE",
60,
1
],
[
"UID",
19543,
2
]
],
"stream_source_checkpoint": "{\"0\":363171,\"1\":363198,\"2\":363249,\"3\":363171,\"4\":363199,\"5\":363250,\"6\":363170,\"7\":363196,\"8\":363250,\"9\":363170}"
}
```
3. Check `${KYLIN_RECEIVER_HOME}/logs/kylin_streaming_receiver.log`, you can find the some output:
```
2020-08-09 22:34:05,381 INFO [UserAnalysisCube_channel] storage.StreamingSegmentManager:645 : Print check point for cube UserAnalysisCube ,CheckPoint{sourceConsumePosition='{"0":381733,"1":381763,"2":381820,"3":381733,"4":381764,"5":381820,"6":381732,"7":381760,"8":381821,"9":381733}', persistedIndexes={1597006800000=13, 1597010400000=8}, longLatencyInfo=LongLatencyInfo{longLatencyEventCnts={20200808000000_20200808010000=3, 20200808060000_20200808070000=2, 20200809000000_20200809010000=2, 20200809060000_20200809070000=2}, totalLongLatencyEventCnt=9}, segmentSourceStartPosition={1597006800000={"0":363171,"1":363198,"2":363249,"3":363171,"4":363199,"5":363250,"6":363170,"7":363196,"8":363250,"9":363170}, 1597010400000={"0":375013,"1":375040,"2":375099,"3":375013,"4":375041,"5":375099,"6":375012,"7":375038,"8":375100,"9":375013}}, checkPointTime=1596983645381, totalCount=3817689, checkPointCount=5801}
```
These logs indicated that the data ingetsed and indexed in receiver side is checkpointed at position :
```json
{
"0":375013,
"1":375040,
"2":375099,
"3":375013,
"4":375041,
"5":375099,
"6":375012,
"7":375038,
"8":375100,
"9":375013
}
```
4. When disable cube , data ingetsed and indexed in receiver side will be removed, so when scaled up, we expected receiver will continue its consumpution after following position:
```json
{
"0":363171,
"1":363198,
"2":363249,
"3":363171,
"4":363199,
"5":363250,
"6":363170,
"7":363196,
"8":363250,
"9":363170
}
```
5. So let's check if it is correct ?
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [kylin] coveralls commented on pull request #1351: KYLIN-4683 Fail to consume kafka when partition number get larger
Posted by GitBox <gi...@apache.org>.
coveralls commented on pull request #1351:
URL: https://github.com/apache/kylin/pull/1351#issuecomment-669893863
## Pull Request Test Coverage Report for [Build 6228](https://coveralls.io/builds/32580088)
* **0** of **5** **(0.0%)** changed or added relevant lines in **1** file are covered.
* **3** unchanged lines in **2** files lost coverage.
* Overall coverage increased (+**0.002%**) to **28.033%**
---
| Changes Missing Coverage | Covered Lines | Changed/Added Lines | % |
| :-----|--------------|--------|---: |
| [stream-source-kafka/src/main/java/org/apache/kylin/stream/source/kafka/consumer/KafkaConnector.java](https://coveralls.io/builds/32580088/source?filename=stream-source-kafka%2Fsrc%2Fmain%2Fjava%2Forg%2Fapache%2Fkylin%2Fstream%2Fsource%2Fkafka%2Fconsumer%2FKafkaConnector.java#L84) | 0 | 5 | 0.0%
<!-- | **Total:** | **0** | **5** | **0.0%** | -->
| Files with Coverage Reduction | New Missed Lines | % |
| :-----|--------------|--: |
| [stream-source-kafka/src/main/java/org/apache/kylin/stream/source/kafka/consumer/KafkaConnector.java](https://coveralls.io/builds/32580088/source?filename=stream-source-kafka%2Fsrc%2Fmain%2Fjava%2Forg%2Fapache%2Fkylin%2Fstream%2Fsource%2Fkafka%2Fconsumer%2FKafkaConnector.java#L93) | 1 | 0% |
| [core-job/src/main/java/org/apache/kylin/job/impl/threadpool/DefaultScheduler.java](https://coveralls.io/builds/32580088/source?filename=core-job%2Fsrc%2Fmain%2Fjava%2Forg%2Fapache%2Fkylin%2Fjob%2Fimpl%2Fthreadpool%2FDefaultScheduler.java#L194) | 2 | 80.23% |
<!-- | **Total:** | **3** | | -->
| Totals | [![Coverage Status](https://coveralls.io/builds/32580088/badge)](https://coveralls.io/builds/32580088) |
| :-- | --: |
| Change from base [Build 6212](https://coveralls.io/builds/32477996): | 0.002% |
| Covered Lines: | 26231 |
| Relevant Lines: | 93572 |
---
##### 💛 - [Coveralls](https://coveralls.io)
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [kylin] hit-lacus edited a comment on pull request #1351: KYLIN-4683 Fail to consume kafka when partition number get larger
Posted by GitBox <gi...@apache.org>.
hit-lacus edited a comment on pull request #1351:
URL: https://github.com/apache/kylin/pull/1351#issuecomment-669972679
Thank you for your contributions. But I think we should have a more discussion after check this patch.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org