Documentation ¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the benchmark v1alpha1 API group +kubebuilder:object:generate=true +groupName=benchmark.apecloud.io
Index ¶
- Variables
- type BenchCommon
- type BenchmarkPhase
- type Fio
- type FioList
- type FioSpec
- type FioStatus
- type Pgbench
- type PgbenchList
- type PgbenchSpec
- type PgbenchStatus
- type RedisBench
- type RedisBenchList
- type RedisBenchSpec
- type RedisBenchStatus
- type ResourceList
- type Sysbench
- type SysbenchList
- type SysbenchSpec
- type SysbenchStatus
- type Target
- type Tpcc
- type TpccList
- type TpccSpec
- type TpccStatus
- type Tpcds
- type TpcdsList
- type TpcdsSpec
- type TpcdsStatus
- type Tpch
- type TpchList
- type TpchSpec
- type TpchStatus
- type Ycsb
- type YcsbList
- type YcsbSpec
- type YcsbStatus
Constants ¶
This section is empty.
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "benchmark.apecloud.io", Version: "v1alpha1"} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion} // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
Functions ¶
This section is empty.
Types ¶
type BenchCommon ¶
type BenchCommon struct { // step is all, will exec cleanup, prepare, run // step is cleanup, will exec cleanup // step is prepare, will exec prepare // step is run, will exec run // +kubebuilder:default=all // +kubebuilder:validation:Enum={all,cleanup,prepare,run} // +optional Step string `json:"step,omitempty"` // the database target to run benchmark // +required Target Target `json:"target"` // the other sysbench run command flags to use for benchmark // +optional ExtraArgs []string `json:"extraArgs,omitempty"` // If specified, the pod's tolerations. // +optional Tolerations []corev1.Toleration `json:"tolerations,omitempty" protobuf:"bytes,22,opt,name=tolerations"` // the resource requirements for the benchmark ResourceLimits *ResourceList `json:"resourceLimits,omitempty"` ResourceRequests *ResourceList `json:"resourceRequests,omitempty"` }
BenchCommon defines common attributes for all benchmarks.
func (*BenchCommon) DeepCopy ¶
func (in *BenchCommon) DeepCopy() *BenchCommon
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BenchCommon.
func (*BenchCommon) DeepCopyInto ¶
func (in *BenchCommon) DeepCopyInto(out *BenchCommon)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BenchmarkPhase ¶
type BenchmarkPhase string
BenchmarkPhase is the current state of the test. +kubebuilder:validation:Enum={Pending,Running,Completed,Failed}
const ( Pending BenchmarkPhase = "Pending" Running BenchmarkPhase = "Running" Completed BenchmarkPhase = "Completed" Failed BenchmarkPhase = "Failed" )
type Fio ¶
type Fio struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec FioSpec `json:"spec,omitempty"` Status FioStatus `json:"status,omitempty"` }
Fio is the Schema for the fios API
func (*Fio) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Fio.
func (*Fio) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Fio) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type FioList ¶
type FioList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Fio `json:"items"` }
FioList contains a list of Fio
func (*FioList) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FioList.
func (*FioList) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*FioList) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type FioSpec ¶
type FioSpec struct { // The total size of file I/O for each thread of the test. // Please refer to https://fio.readthedocs.io/en/latest/fio_doc.html#i-o-size // +kubebuilder:validation:Pattern=^[0-9]+[kKmMgG]?$ // +kubebuilder:default="1G" // +optional Size string `json:"size,omitempty"` // The block size to use for the test. // Please refer to https://fio.readthedocs.io/en/latest/fio_doc.html#block-size // +kubebuilder:validation:Pattern=^[0-9]+[kKmMgG]?$ // +kubebuilder:default="4k" // +optional Bs string `json:"bs,omitempty"` // The number of threads to use for the test. // Please refer to https://fio.readthedocs.io/en/latest/fio_doc.html#job-description // +kubebuilder:validation:MinItems=1 // +kubebuilder:default={1} // +optional Numjobs []int `json:"numjobs,omitempty"` // Limit runtime. The test will run until it completes the configured I/O workload // or until it has run for this specified amount of time, whichever occurs first. // Please refer to https://fio.readthedocs.io/en/latest/fio_doc.html##time-related-parameters // +kubebuilder:validation:Minimum=0 // +optional RunTime int `json:"runtime,omitempty"` // Number of I/O units to keep in flight against the file. // Please refer to https://fio.readthedocs.io/en/latest/fio_doc.html#i-o-depth // +kubebuilder:validation:Minimum=1 // +kubebuilder:default=1 // +optional Iodepth int `json:"iodepth,omitempty"` // The I/O engine to use. // Please refer to https://fio.readthedocs.io/en/latest/fio_doc.html#cmdoption-arg-ioengine // +kubebuilder:default=psync // +optional IoEngine string `json:"ioengine,omitempty"` // Whether to use non-buffered I/O. // Please refer to https://fio.readthedocs.io/en/latest/fio_doc.html#i-o-type // +kubebuilder:default=true // +optional Direct bool `json:"direct,omitempty"` // The type of I/O pattern to use. // Please refer to https://fio.readthedocs.io/en/latest/fio_doc.html#i-o-type // +kubebuilder:validation:MinItems=1 // +kubebuilder:default={read} // +optional Rws []string `json:"rws,omitempty"` // The other fio run command flags to use for benchmark // +optional ExtraArgs []string `json:"extraArgs,omitempty"` // If specified, the pod's tolerations. // +optional Tolerations []corev1.Toleration `json:"tolerations,omitempty" protobuf:"bytes,22,opt,name=tolerations"` // the resource requirements for the benchmark ResourceLimits *ResourceList `json:"resourceLimits,omitempty"` ResourceRequests *ResourceList `json:"resourceRequests,omitempty"` }
FioSpec defines the desired state of Fio Reference https://fio.readthedocs.io/en/latest/fio_doc.html
func (*FioSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FioSpec.
func (*FioSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FioStatus ¶
type FioStatus struct { // Phase is the current state of the test. Valid values are Disabled, Enabled, Failed, Enabling, Disabling. // +kubebuilder:validation:Enum={Pending,Running,Completed,Failed} Phase BenchmarkPhase `json:"phase,omitempty"` // completions is the completed/total number of pgbench runs Completions string `json:"completions,omitempty"` // succeeded is the number of successful pgbench runs Succeeded int `json:"succeeded,omitempty"` // total is the number of pgbench runs Total int `json:"total,omitempty"` // Describes the current state of benchmark conditions. // +optional Conditions []metav1.Condition `json:"conditions,omitempty"` }
FioStatus defines the observed state of Fio
func (*FioStatus) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FioStatus.
func (*FioStatus) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Pgbench ¶
type Pgbench struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec PgbenchSpec `json:"spec,omitempty"` Status PgbenchStatus `json:"status,omitempty"` }
Pgbench is the Schema for the pgbenches API
func (*Pgbench) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Pgbench.
func (*Pgbench) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Pgbench) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PgbenchList ¶
type PgbenchList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Pgbench `json:"items"` }
PgbenchList contains a list of Pgbench
func (*PgbenchList) DeepCopy ¶
func (in *PgbenchList) DeepCopy() *PgbenchList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PgbenchList.
func (*PgbenchList) DeepCopyInto ¶
func (in *PgbenchList) DeepCopyInto(out *PgbenchList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PgbenchList) DeepCopyObject ¶
func (in *PgbenchList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PgbenchSpec ¶
type PgbenchSpec struct { // The scale factor. // Multiply the number of rows generated by the scale factor. For example, // scale 100 will create 10,000,000 rows in the pgbench_accounts table. // Default is 1. When the scale is 20,000 or larger, the columns used to // hold account identifiers (aid columns) will switch to using larger // integers (bigint), in order to be big enough to hold the range of account // identifiers. // +kubebuilder:validation:Minimum=1 // +kubebuilder:default=1 // +optional Scale int `json:"scale,omitempty"` // clients provides a list of client counts to run pgbench with multiple times. // This allows for multiple runs of pgbench with different client counts. // It is different with the clients parameter of pgbench command, which is // the number of concurrent clients to run once. // +kubebuilder:validation:MinItems=1 // +kubebuilder:default={1} // +optional Clients []int `json:"clients,omitempty"` // Number of worker threads within pgbench. Using more than one thread can // be helpful on multi-CPU machines. Clients are distributed as evenly as // possible among available threads. Default is 1. // +kubebuilder:validation:Minimum=1 // +kubebuilder:default=1 // +optional Threads int `json:"threads,omitempty"` // Establish a connection for each transaction, rather than doing it just // once per client session. This is useful to measure the connection overhead. // +kubebuilder:default=false // +optional Connect bool `json:"connect,omitempty"` // Only run the select-only part of the benchmark // +optional SelectOnly bool `json:"selectOnly,omitempty"` // Number of transactions each client runs. // Note: the transactions and duration parameters are mutually exclusive. // +kubebuilder:validation:Minimum=0 // +kubebuilder:default=0 // +optional Transactions int `json:"transactions,omitempty"` // Run the test for this many seconds, rather than a fixed number of // transactions per client. // Note: the transactions and duration parameters are mutually exclusive. // +kubebuilder:validation:Minimum=0 // +kubebuilder:default=60 // +optional Duration int `json:"duration,omitempty"` BenchCommon `json:",inline"` }
PgbenchSpec defines the desired state of Pgbench Reference https://www.postgresql.org/docs/current/pgbench.html
func (*PgbenchSpec) DeepCopy ¶
func (in *PgbenchSpec) DeepCopy() *PgbenchSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PgbenchSpec.
func (*PgbenchSpec) DeepCopyInto ¶
func (in *PgbenchSpec) DeepCopyInto(out *PgbenchSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PgbenchStatus ¶
type PgbenchStatus struct { // Phase is the current state of the test. Valid values are Disabled, Enabled, Failed, Enabling, Disabling. // +kubebuilder:validation:Enum={Pending,Running,Completed,Failed} Phase BenchmarkPhase `json:"phase,omitempty"` // completions is the completed/total number of pgbench runs Completions string `json:"completions,omitempty"` // succeeded is the number of successful pgbench runs Succeeded int `json:"succeeded,omitempty"` // total is the number of pgbench runs Total int `json:"total,omitempty"` // Describes the current state of benchmark conditions. // +optional Conditions []metav1.Condition `json:"conditions,omitempty"` }
PgbenchStatus defines the observed state of Pgbench
func (*PgbenchStatus) DeepCopy ¶
func (in *PgbenchStatus) DeepCopy() *PgbenchStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PgbenchStatus.
func (*PgbenchStatus) DeepCopyInto ¶
func (in *PgbenchStatus) DeepCopyInto(out *PgbenchStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RedisBench ¶
type RedisBench struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec RedisBenchSpec `json:"spec,omitempty"` Status RedisBenchStatus `json:"status,omitempty"` }
RedisBench is the Schema for the RedisBenches API
func (*RedisBench) DeepCopy ¶
func (in *RedisBench) DeepCopy() *RedisBench
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedisBench.
func (*RedisBench) DeepCopyInto ¶
func (in *RedisBench) DeepCopyInto(out *RedisBench)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RedisBench) DeepCopyObject ¶
func (in *RedisBench) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type RedisBenchList ¶
type RedisBenchList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []RedisBench `json:"items"` }
RedisBenchList contains a list of RedisBench
func (*RedisBenchList) DeepCopy ¶
func (in *RedisBenchList) DeepCopy() *RedisBenchList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedisBenchList.
func (*RedisBenchList) DeepCopyInto ¶
func (in *RedisBenchList) DeepCopyInto(out *RedisBenchList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RedisBenchList) DeepCopyObject ¶
func (in *RedisBenchList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type RedisBenchSpec ¶
type RedisBenchSpec struct { // clients provides a list of client counts to run redis-benchmark with multiple times. // +kubebuilder:validation:MinItems=1 // +kubebuilder:default={1} Clients []int `json:"clients,omitempty"` // total number of requests // +kubebuilder:validation:Minimum=1 // +kubebuilder:default=100000 Requests int `json:"requests,omitempty"` // data size of set/get value in bytes // +kubebuilder:validation:Minimum=1 // +kubebuilder:default=3 DataSize int `json:"dataSize,omitempty"` // use random keys for SET/GET/INCR, random values for SADD. // +optional KeySpace *int `json:"keySpace,omitempty"` // only run the comma-separated list of tests. The test names are the same as the ones produced as output. Tests string `json:"tests,omitempty"` // pipeline number of commands to pipeline. Default is 1 (no pipeline). // +kubebuilder:validation:Minimum=1 // +kubebuilder:default=1 // +optional Pipeline int `json:"pipeline,omitempty"` // Quiet. Just show query/sec values. // +kubebuilder:default=true // +optional Quiet bool `json:"quiet,omitempty"` BenchCommon `json:",inline"` }
RedisBenchSpec defines the desired state of RedisBench
func (*RedisBenchSpec) DeepCopy ¶
func (in *RedisBenchSpec) DeepCopy() *RedisBenchSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedisBenchSpec.
func (*RedisBenchSpec) DeepCopyInto ¶
func (in *RedisBenchSpec) DeepCopyInto(out *RedisBenchSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RedisBenchStatus ¶
type RedisBenchStatus struct { // Phase is the current state of the test. Valid values are Disabled, Enabled, Failed, Enabling, Disabling. // +kubebuilder:validation:Enum={Pending,Running,Completed,Failed} Phase BenchmarkPhase `json:"phase,omitempty"` // completions is the completed/total number of pgbench runs Completions string `json:"completions,omitempty"` // succeeded is the number of successful pgbench runs Succeeded int `json:"succeeded,omitempty"` // total is the number of pgbench runs Total int `json:"total,omitempty"` // Describes the current state of benchmark conditions. // +optional Conditions []metav1.Condition `json:"conditions,omitempty"` }
RedisBenchStatus defines the observed state of RedisBench
func (*RedisBenchStatus) DeepCopy ¶
func (in *RedisBenchStatus) DeepCopy() *RedisBenchStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedisBenchStatus.
func (*RedisBenchStatus) DeepCopyInto ¶
func (in *RedisBenchStatus) DeepCopyInto(out *RedisBenchStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ResourceList ¶
type ResourceList struct { Cpu string `json:"cpu,omitempty" protobuf:"bytes,23,opt,name=cpu"` Memory string `json:"memory,omitempty" protobuf:"bytes,24,opt,name=memory"` }
func (*ResourceList) DeepCopy ¶
func (in *ResourceList) DeepCopy() *ResourceList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceList.
func (*ResourceList) DeepCopyInto ¶
func (in *ResourceList) DeepCopyInto(out *ResourceList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Sysbench ¶
type Sysbench struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec SysbenchSpec `json:"spec,omitempty"` Status SysbenchStatus `json:"status,omitempty"` }
Sysbench is the Schema for the sysbenches API
func (*Sysbench) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Sysbench.
func (*Sysbench) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Sysbench) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type SysbenchList ¶
type SysbenchList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Sysbench `json:"items"` }
SysbenchList contains a list of Sysbench
func (*SysbenchList) DeepCopy ¶
func (in *SysbenchList) DeepCopy() *SysbenchList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SysbenchList.
func (*SysbenchList) DeepCopyInto ¶
func (in *SysbenchList) DeepCopyInto(out *SysbenchList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SysbenchList) DeepCopyObject ¶
func (in *SysbenchList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type SysbenchSpec ¶
type SysbenchSpec struct { // the number of tables to use for sysbench Tables int `json:"tables,omitempty"` // the data volume of tables to use for sysbench Size int `json:"size,omitempty"` // the number of threads to use for sysbench // +kubebuilder:validation:MinItems=1 // +kubebuilder:default={4} // +optional Threads []int `json:"threads,omitempty"` // the sysbench test types to run // +kubebuilder:validation:MinItems=1 // +kubebuilder:default={"oltp_read_write"} // +optional Types []string `json:"types,omitempty"` // the number of seconds to run sysbench // +kubebuilder:validation:Minimum=1 // +optional Duration int `json:"duration,omitempty"` BenchCommon `json:",inline"` }
SysbenchSpec defines the desired state of Sysbench
func (*SysbenchSpec) DeepCopy ¶
func (in *SysbenchSpec) DeepCopy() *SysbenchSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SysbenchSpec.
func (*SysbenchSpec) DeepCopyInto ¶
func (in *SysbenchSpec) DeepCopyInto(out *SysbenchSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SysbenchStatus ¶
type SysbenchStatus struct { // Phase is the current state of the test. Valid values are Disabled, Enabled, Failed, Enabling, Disabling. // +kubebuilder:validation:Enum={Pending,Running,Completed,Failed} Phase BenchmarkPhase `json:"phase,omitempty"` // completions is the completed/total number of sysbench runs Completions string `json:"completions,omitempty"` // succeeded is the number of successful sysbench runs Succeeded int `json:"succeeded,omitempty"` // failed is the number of failed sysbench runs Total int `json:"total,omitempty"` // Describes the current state of benchmark conditions. // +optional Conditions []metav1.Condition `json:"conditions,omitempty"` }
SysbenchStatus defines the observed state of Sysbench
func (*SysbenchStatus) DeepCopy ¶
func (in *SysbenchStatus) DeepCopy() *SysbenchStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SysbenchStatus.
func (*SysbenchStatus) DeepCopyInto ¶
func (in *SysbenchStatus) DeepCopyInto(out *SysbenchStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Target ¶
type Target struct { // the driver represents the database type // +optional // +kubebuilder:validation:Enum={mysql,postgresql,mongodb,redis} Driver string `json:"driver,omitempty"` // The database server's host name // +required Host string `json:"host"` // The database server's port number // +required Port int `json:"port"` // The username to connect as // +optional User string `json:"user,omitempty"` // The database server's password // +optional Password string `json:"password,omitempty"` // The database name of the target // +optional // +kubebuilder:default=kubebench Database string `json:"database,omitempty"` }
func (*Target) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Target.
func (*Target) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Tpcc ¶
type Tpcc struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec TpccSpec `json:"spec,omitempty"` Status TpccStatus `json:"status,omitempty"` }
Tpcc is the Schema for the tpccs API
func (*Tpcc) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Tpcc.
func (*Tpcc) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Tpcc) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type TpccList ¶
type TpccList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Tpcc `json:"items"` }
TpccList contains a list of Tpcc
func (*TpccList) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TpccList.
func (*TpccList) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*TpccList) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type TpccSpec ¶
type TpccSpec struct { // overall scale of the tpcc test // +kubebuilder:validation:Minimum=1 // +kubebuilder:default=1 // +required WareHouses int `json:"wareHouses,omitempty"` // the number of threads to use for tpcc // +kubebuilder:validation:MinItems=1 // +kubebuilder:default={1} // +required Threads []int `json:"threads,omitempty"` // the number of transactions to use for tpcc each thread // +kubebuilder:validation:Minimum=1 // +optional Transactions int `json:"transactions,omitempty"` // the number of minutes to run tpcc // +kubebuilder:validation:Minimum=1 // +kubebuilder:default=1 // +optional Duration int `json:"duration,omitempty"` // number of transactions to use for each minute // 0 means no limit // +kubebuilder:validation:Minimum=0 // +kubebuilder:default=0 // +optional LimitTxPerMin int `json:"limitTxPerMin,omitempty"` // percentage of new order transactions // +kubebuilder:validation:Minimum=0 // +kubebuilder:validation:Maximum=100 // +kubebuilder:default=45 // +optional NewOrder int `json:"newOrder,omitempty"` // percentage of payment transactions // +kubebuilder:validation:Minimum=0 // +kubebuilder:validation:Maximum=100 // +kubebuilder:default=43 // +optional Payment int `json:"payment,omitempty"` // percentage of order status transactions // +kubebuilder:validation:Minimum=0 // +kubebuilder:validation:Maximum=100 // +kubebuilder:default=4 // +optional OrderStatus int `json:"orderStatus,omitempty"` // percentage of delivery transactions // +kubebuilder:validation:Minimum=0 // +kubebuilder:validation:Maximum=100 // +kubebuilder:default=4 // +optional Delivery int `json:"delivery,omitempty"` // percentage of stock level transactions // +kubebuilder:validation:Minimum=0 // +kubebuilder:validation:Maximum=100 // +kubebuilder:default=4 // +optional StockLevel int `json:"stockLevel,omitempty"` BenchCommon `json:",inline"` }
TpccSpec defines the desired state of Tpcc
func (*TpccSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TpccSpec.
func (*TpccSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TpccStatus ¶
type TpccStatus struct { // Phase is the current state of the test. Valid values are Disabled, Enabled, Failed, Enabling, Disabling. // +kubebuilder:validation:Enum={Pending,Running,Completed,Failed} Phase BenchmarkPhase `json:"phase,omitempty"` // completions is the completed/total number of sysbench runs Completions string `json:"completions,omitempty"` // succeeded is the number of successful sysbench runs Succeeded int `json:"succeeded,omitempty"` // failed is the number of failed sysbench runs Total int `json:"total,omitempty"` // Describes the current state of benchmark conditions. // +optional Conditions []metav1.Condition `json:"conditions,omitempty"` }
TpccStatus defines the observed state of Tpcc
func (*TpccStatus) DeepCopy ¶
func (in *TpccStatus) DeepCopy() *TpccStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TpccStatus.
func (*TpccStatus) DeepCopyInto ¶
func (in *TpccStatus) DeepCopyInto(out *TpccStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Tpcds ¶
type Tpcds struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec TpcdsSpec `json:"spec,omitempty"` Status TpcdsStatus `json:"status,omitempty"` }
Tpcds is the Schema for the tpcds API
func (*Tpcds) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Tpcds.
func (*Tpcds) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Tpcds) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type TpcdsList ¶
type TpcdsList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Tpcds `json:"items"` }
TpcdsList contains a list of Tpcds
func (*TpcdsList) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TpcdsList.
func (*TpcdsList) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*TpcdsList) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type TpcdsSpec ¶
type TpcdsSpec struct { // overall scale of the tpcds test // +kubebuilder:validation:Minimum=1 // +kubebuilder:default=1 // +required Size int `json:"size,omitempty"` // create pk and fk for tpcds test, it will cost extra time // +kubebuilder:default=false // +optional UseKey bool `json:"useKey,omitempty"` BenchCommon `json:",inline"` }
TpcdsSpec defines the desired state of Tpcds
func (*TpcdsSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TpcdsSpec.
func (*TpcdsSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TpcdsStatus ¶
type TpcdsStatus struct { // Phase is the current state of the test. Valid values are Disabled, Enabled, Failed, Enabling, Disabling. // +kubebuilder:validation:Enum={Pending,Running,Completed,Failed} Phase BenchmarkPhase `json:"phase,omitempty"` // completions is the completed/total number of sysbench runs Completions string `json:"completions,omitempty"` // succeeded is the number of successful sysbench runs Succeeded int `json:"succeeded,omitempty"` // failed is the number of failed sysbench runs Total int `json:"total,omitempty"` // Describes the current state of benchmark conditions. // +optional Conditions []metav1.Condition `json:"conditions,omitempty"` }
TpcdsStatus defines the observed state of Tpcds
func (*TpcdsStatus) DeepCopy ¶
func (in *TpcdsStatus) DeepCopy() *TpcdsStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TpcdsStatus.
func (*TpcdsStatus) DeepCopyInto ¶
func (in *TpcdsStatus) DeepCopyInto(out *TpcdsStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Tpch ¶
type Tpch struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec TpchSpec `json:"spec,omitempty"` Status TpchStatus `json:"status,omitempty"` }
Tpch is the Schema for the tpches API
func (*Tpch) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Tpch.
func (*Tpch) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Tpch) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type TpchList ¶
type TpchList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Tpch `json:"items"` }
TpchList contains a list of Tpch
func (*TpchList) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TpchList.
func (*TpchList) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*TpchList) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type TpchSpec ¶
type TpchSpec struct { // overall scale of the tpch test // +kubebuilder:validation:Minimum=1 // +kubebuilder:default=1 // +required Size int `json:"size,omitempty"` BenchCommon `json:",inline"` }
TpchSpec defines the desired state of Tpch
func (*TpchSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TpchSpec.
func (*TpchSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TpchStatus ¶
type TpchStatus struct { // Phase is the current state of the test. Valid values are Disabled, Enabled, Failed, Enabling, Disabling. // +kubebuilder:validation:Enum={Pending,Running,Completed,Failed} Phase BenchmarkPhase `json:"phase,omitempty"` // completions is the completed/total number of sysbench runs Completions string `json:"completions,omitempty"` // succeeded is the number of successful sysbench runs Succeeded int `json:"succeeded,omitempty"` // failed is the number of failed sysbench runs Total int `json:"total,omitempty"` // Describes the current state of benchmark conditions. // +optional Conditions []metav1.Condition `json:"conditions,omitempty"` }
TpchStatus defines the observed state of Tpch
func (*TpchStatus) DeepCopy ¶
func (in *TpchStatus) DeepCopy() *TpchStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TpchStatus.
func (*TpchStatus) DeepCopyInto ¶
func (in *TpchStatus) DeepCopyInto(out *TpchStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Ycsb ¶
type Ycsb struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec YcsbSpec `json:"spec,omitempty"` Status YcsbStatus `json:"status,omitempty"` }
Ycsb is the Schema for the ycsbs API
func (*Ycsb) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Ycsb.
func (*Ycsb) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Ycsb) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type YcsbList ¶
type YcsbList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Ycsb `json:"items"` }
YcsbList contains a list of Ycsb
func (*YcsbList) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new YcsbList.
func (*YcsbList) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*YcsbList) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type YcsbSpec ¶
type YcsbSpec struct { // the number of records in the table to be inserted in // the load phase or the number of records already in the // table before the run phase. // +kubebuilder:validation:Minimum=1 // +kubebuilder:default=10000 // +optional RecordCount int `json:"recordCount,omitempty"` // The number of operations to use during the run phase. // +kubebuilder:validation:Minimum=1 // +kubebuilder:default=10000 // +optional OperationCount int `json:"operationCount,omitempty"` // the proportion of reads in the run phase. // +kubebuilder:validation:Minimum=0 // +kubebuilder:validation:Maximum=100 // +kubebuilder:default=0 // +optional ReadProportion int `json:"readProportion,omitempty"` // the proportion of updates in the run phase. // +kubebuilder:validation:Minimum=0 // +kubebuilder:validation:Maximum=100 // +kubebuilder:default=0 // +optional UpdateProportion int `json:"updateProportion,omitempty"` // the proportion of inserts in the run phase. // +kubebuilder:validation:Minimum=0 // +kubebuilder:validation:Maximum=100 // +kubebuilder:default=0 // +optional InsertProportion int `json:"insertProportion,omitempty"` // the proportion of operations read then modify a record in the run phase. // +kubebuilder:validation:Minimum=0 // +kubebuilder:validation:Maximum=100 // +kubebuilder:default=0 // +optional ReadModifyWriteProportion int `json:"readModifyWriteProportion,omitempty"` // the proportion of scans in the run phase. // +kubebuilder:validation:Minimum=0 // +kubebuilder:validation:Maximum=100 // +kubebuilder:default=0 // +optional ScanProportion int `json:"scanProportion,omitempty"` // the distribution of requests accross the keyspace. // uniform: each key has an equal probability of being accessed. // sequential: keys are accessed in sequential order. // zipfian: some keys are accessed more frequently than others. // latest: the most recently inserted keys are accessed more frequently. // hotspot: a small number of keys are accessed more frequently. // exponential: keys are accessed in an exponential distribution. // +kubebuilder:validation:Enum={uniform,sequential,zipfian,latest,hotspot,exponential} // +kubebuilder:default=uniform // +optional RequestDistribution string `json:"requestDistribution,omitempty"` // the distribution of scan lengths // +kubebuilder:validation:Enum={uniform,zipfian} // +kubebuilder:default=uniform // +optional ScanLengthDistribution string `json:"scanLengthDistribution,omitempty"` // the distribution of field lengths // +kubebuilder:validation:Enum={constant,uniform,zipfian,histogram} // +kubebuilder:default=constant // +optional FieldLengthDistribution string `json:"fieldLengthDistribution,omitempty"` // the number of threads // +kubebuilder:validation:MinItems=1 // +kubebuilder:default={1} // +optional Threads []int `json:"threads,omitempty"` BenchCommon `json:",inline"` }
YcsbSpec defines the desired state of ycsb Reference https://github.com/pingcap/go-ycsb
func (*YcsbSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new YcsbSpec.
func (*YcsbSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type YcsbStatus ¶
type YcsbStatus struct { // Phase is the current state of the test. Valid values are Disabled, Enabled, Failed, Enabling, Disabling. // +kubebuilder:validation:Enum={Pending,Running,Completed,Failed} Phase BenchmarkPhase `json:"phase,omitempty"` // completions is the completed/total number of sysbench runs Completions string `json:"completions,omitempty"` // succeeded is the number of successful sysbench runs Succeeded int `json:"succeeded,omitempty"` // failed is the number of failed sysbench runs Total int `json:"total,omitempty"` // Describes the current state of benchmark conditions. // +optional Conditions []metav1.Condition `json:"conditions,omitempty"` }
YcsbStatus defines the observed state of Ycsb
func (*YcsbStatus) DeepCopy ¶
func (in *YcsbStatus) DeepCopy() *YcsbStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new YcsbStatus.
func (*YcsbStatus) DeepCopyInto ¶
func (in *YcsbStatus) DeepCopyInto(out *YcsbStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.