blob: af19eb09ebb66c6b42697ab71be0887cfaf7a5ec [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!--
~ 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.
-->
<datamodel name="model_1">
<datamapping>
<column>
<!-- This column type defines what will generally happen to VARCHAR fields unless they are explicitly defined or overridden elsewhere -->
<type>VARCHAR</type>
<dataSequence>RANDOM</dataSequence>
<length>15</length>
<name>GENERAL_VARCHAR</name>
</column>
<column>
<type>CHAR</type>
<userDefined>true</userDefined>
<dataSequence>RANDOM</dataSequence>
<length>15</length>
<name>GENERAL_CHAR</name>
</column>
<column>
<type>INTEGER</type>
<dataSequence>RANDOM</dataSequence>
<minValue>1</minValue>
<maxValue>50000000</maxValue>
<!-- Number [0-100] that represents the probability of creating a null value -->
<!-- The higher the number, the more like the value will returned will be null -->
<!-- Leaving this tag out is equivalent to having a 0 probability. i.e. never null -->
<nullChance>0</nullChance>
<name>GENERAL_INTEGER</name>
</column>
<column>
<type>INTEGER</type>
<dataSequence>SEQUENTIAL</dataSequence>
<!-- Number [0-100] that represents the probability of creating a null value -->
<!-- The higher the number, the more like the value will returned will be null -->
<!-- Leaving this tag out is equivalent to having a 0 probability. i.e. never null -->
<nullChance>0</nullChance>
<name>INT_ID</name>
</column>
<column>
<type>DATE</type>
<!--SEQUENTIAL is unsupported for DATE -->
<dataSequence>RANDOM</dataSequence>
<!-- Number [0-100] that represents the probability of creating a null value -->
<!-- The higher the number, the more like the value will returned will be null -->
<!-- Leaving this tag out is equivalent to having a 0 probability. i.e. never null -->
<nullChance>0</nullChance>
<useCurrentDate>true</useCurrentDate>
<name>GENERAL_DATE</name>
</column>
<column>
<type>CHAR</type>
<length>3</length>
<userDefined>true</userDefined>
<dataSequence>LIST</dataSequence>
<name>TYPE</name>
<valuelist>
<!-- Distributes according to specified values. These must total 100 -->
<datavalue distribution="60">
<value>ABC</value>
</datavalue>
<datavalue distribution="20">
<value>XYZ</value>
</datavalue>
<datavalue distribution="20">
<value>LMN</value>
</datavalue>
</valuelist>
</column>
<column>
<type>CHAR</type>
<length>3</length>
<name>IDENTIFIER</name>
</column>
</datamapping>
<scenarios>
<scenario tableName="PHERF.EVT_1" name="EVT_11">
<loadProfile>
<batchSize>1</batchSize>
<numOperations>100</numOperations>
<!-- Case 1 : Upsert Operation test -->
<tenantDistribution id="tg1" weight="50" numTenants="1"></tenantDistribution>
<tenantDistribution id="tg2" weight="40" numTenants="9"></tenantDistribution>
<tenantDistribution id="tg3" weight="10" numTenants="10"></tenantDistribution>
<opDistribution id="upsertOp" weight="20"></opDistribution>
<opDistribution id="queryOp1" weight="20"></opDistribution>
<opDistribution id="queryOp2" weight="20"></opDistribution>
<opDistribution id="idleOp" weight="20"></opDistribution>
<opDistribution id="udfOp" weight="20"></opDistribution>
</loadProfile>
<preScenarioDdls>
<ddl statement="CREATE VIEW IF NOT EXISTS PHERF.EVT_1 (ZID CHAR(15), TYPE VARCHAR) AS SELECT * FROM PHERF.TEST_GLOBAL_VIEW1" />
</preScenarioDdls>
<upserts>
<upsert id="upsertOp">
<column>
<type>CHAR</type>
<name>ID</name>
</column>
<column>
<type>INTEGER</type>
<name>SOME_INT</name>
</column>
<column>
<type>CHAR</type>
<name>GID</name>
</column>
<column>
<type>VARCHAR</type>
<name>FIELD1</name>
</column>
<column>
<type>INTEGER</type>
<name>OTHER_INT</name>
</column>
<column>
<type>CHAR</type>
<name>ZID</name>
</column>
<column>
<type>CHAR</type>
<name>TYPE</name>
</column>
</upsert>
</upserts>
<querySet>
<query id="queryOp1" statement="select count(*) from PHERF.EVT_1"/>
<query id="queryOp2" statement="select * from PHERF.EVT_1"/>
</querySet>
<idleTimes>
<idleTime id="idleOp" idleTime="50"></idleTime>
</idleTimes>
<udfs>
<udf id="udfOp" >
<clazzName>org.apache.phoenix.pherf.ConfigurationParserTest.TestUDF</clazzName>
<args>Hello</args>
<args>World</args>
</udf>
</udfs>
</scenario>
<scenario tableName="PHERF.EVT_2" name="EVT_21">
<loadProfile>
<batchSize>1</batchSize>
<numOperations>100</numOperations>
<!-- Case 1 : Upsert Operation test -->
<tenantDistribution id="tg1" weight="50" numTenants="1"></tenantDistribution>
<tenantDistribution id="tg2" weight="40" numTenants="9"></tenantDistribution>
<tenantDistribution id="tg3" weight="10" numTenants="10"></tenantDistribution>
<opDistribution id="upsertOp" weight="20"></opDistribution>
<opDistribution id="queryOp1" weight="20"></opDistribution>
<opDistribution id="queryOp2" weight="20"></opDistribution>
<opDistribution id="idleOp" weight="20"></opDistribution>
<opDistribution id="udfOp" weight="20"></opDistribution>
</loadProfile>
<preScenarioDdls>
<ddl statement="CREATE VIEW IF NOT EXISTS PHERF.EVT_2 (INT_ID INTEGER, TYPE VARCHAR) AS SELECT * FROM PHERF.TEST_GLOBAL_VIEW2" />
</preScenarioDdls>
<upserts>
<upsert id="upsertOp">
<column>
<type>CHAR</type>
<name>ID</name>
</column>
<column>
<type>INTEGER</type>
<name>SOME_INT</name>
</column>
<column>
<type>CHAR</type>
<name>GID</name>
</column>
<column>
<type>VARCHAR</type>
<name>FIELD1</name>
</column>
<column>
<type>INTEGER</type>
<name>OTHER_INT</name>
</column>
<column>
<type>INTEGER</type>
<name>INT_ID</name>
</column>
<column>
<type>CHAR</type>
<name>TYPE</name>
</column>
</upsert>
</upserts>
<querySet>
<query id="queryOp1" statement="select count(*) from PHERF.EVT_2"/>
<query id="queryOp2" statement="select * from PHERF.EVT_2"/>
</querySet>
<idleTimes>
<idleTime id="idleOp" idleTime="50"/>
</idleTimes>
<udfs>
<udf id="udfOp" >
<clazzName>org.apache.phoenix.pherf.ConfigurationParserTest.TestUDF</clazzName>
<args>Hello</args>
<args>World</args>
</udf>
</udfs>
</scenario>
</scenarios>
</datamodel>