Github user chenliang613 commented on a diff in the pull request:
https://github.com/apache/carbondata/pull/1886#discussion_r165807902 --- Diff: examples/spark2/src/main/scala/org/apache/carbondata/examples/TimeSeriesPreAggregateTableExample.scala --- @@ -0,0 +1,105 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.carbondata.examples + +import java.io.File + +import org.apache.spark.sql.SaveMode + +import org.apache.carbondata.core.constants.CarbonCommonConstants +import org.apache.carbondata.core.util.CarbonProperties + +/** + * This example is for time series pre-aggregate tables. + */ + +object TimeSeriesPreAggregateTableExample { + + def main(args: Array[String]) { + + val rootPath = new File(this.getClass.getResource("/").getPath + + "../../../..").getCanonicalPath + val testData = s"$rootPath/integration/spark-common-test/src/test/resources/timeseriestest.csv" + val spark = ExampleUtils.createCarbonSession("TimeSeriesPreAggregateTableExample") + + spark.sparkContext.setLogLevel("ERROR") + + import spark.implicits._ + + import scala.util.Random + val r = new Random() + val df = spark.sparkContext.parallelize(1 to 10 * 1000 * 1000 ) + .map(x => ("" + 20 + "%02d".format(r.nextInt(20)) + "-" + "%02d".format(r.nextInt(11) + 1) + + "-" + "%02d".format(r.nextInt(27) + 1) + " " + "%02d".format(r.nextInt(12)) + ":" + + "%02d".format(r.nextInt(59)) + ":" + "%02d".format(r.nextInt(59)), "name" + x % 8, + r.nextInt(60))).toDF("mytime", "name", "age") + + // 1. simple usage for time series Pre-aggregate tables creation and query + spark.sql("drop table if exists timeSeriesTable") + spark.sql("CREATE TABLE timeSeriesTable(mytime timestamp," + + " name string, age int) STORED BY 'org.apache.carbondata.format'") + spark.sql( + s""" + | CREATE DATAMAP agg0_hour ON TABLE timeSeriesTable + | USING 'timeSeries' + | DMPROPERTIES ( + | 'EVENT_TIME'='mytime', + | 'HOUR_GRANULARITY'='1') + | AS SELECT mytime, SUM(age) FROM timeSeriesTable + | GROUP BY mytime + """.stripMargin) + spark.sql( + s""" + | CREATE DATAMAP agg0_day ON TABLE timeSeriesTable + | USING 'timeSeries' + | DMPROPERTIES ( + | 'EVENT_TIME'='mytime', + | 'DAY_GRANULARITY'='1') + | AS SELECT mytime, SUM(age) FROM timeSeriesTable + | GROUP BY mytime + """.stripMargin) + + + CarbonProperties.getInstance() + .addProperty(CarbonCommonConstants.CARBON_TIMESTAMP_FORMAT, "yyyy-MM-dd HH:mm:ss") + +// spark.sql(s"LOAD DATA LOCAL INPATH '$testData' into table timeSeriesTable") --- End diff -- remove it --- |
In reply to this post by qiuchenjian-2
Github user chenliang613 commented on the issue:
https://github.com/apache/carbondata/pull/1886 verified, LGTM --- |
In reply to this post by qiuchenjian-2
|
In reply to this post by qiuchenjian-2
Github user CarbonDataQA commented on the issue:
https://github.com/apache/carbondata/pull/1886 Build Success with Spark 2.2.1, Please check CI http://88.99.58.216:8080/job/ApacheCarbonPRBuilder/2233/ --- |
In reply to this post by qiuchenjian-2
Github user CarbonDataQA commented on the issue:
https://github.com/apache/carbondata/pull/1886 Build Success with Spark 2.1.0, Please check CI http://136.243.101.176:8080/job/ApacheCarbonPRBuilder1/3473/ --- |
Free forum by Nabble | Edit this page |