| # 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. |
| # |
| # ===================================================================================================================== |
| # |
| # Omid TSO Server Configuration |
| # --------------------------------------------------------------------------------------------------------------------- |
| # |
| # Tune here the default values for TSO server config parameters found in 'default-omid-server-configuration.yml' file |
| # |
| # ===================================================================================================================== |
| |
| |
| # --------------------------------------------------------------------------------------------------------------------- |
| # Basic configuration parameters |
| # --------------------------------------------------------------------------------------------------------------------- |
| |
| # Network interface for TSO server communication. Uncomment the following line to use a specific interface |
| # networkIfaceName: eth0 |
| # If a network interface in the configuration, the TSO will attempt to guess default network interface. |
| # See org.apache.omid.tso.TSOServerConfig.getDefaultNetworkInterface for more information. |
| |
| # Port reserved by the Status Oracle |
| port: 54758 |
| # Wait strategy for the Disruptor processors in TSO pipeline. Options: |
| # 1) HIGH_THROUGHPUT - [Default] Use this in production deployments for maximum performance |
| # 2) LOW_CPU - Use this option when testing or in deployments where saving CPU cycles is more important than throughput |
| waitStrategy: LOW_CPU |
| # The number of elements reserved in the conflict map to perform conflict resolution |
| conflictMapSize: 100000000 |
| # The number of Commit Table writers that persist data concurrently to the datastore. It has to be at least 2. |
| numConcurrentCTWriters: 2 |
| # The size of the batch of operations that each Commit Table writes has. The maximum number of operations that can be |
| # batched in the system at a certain point in time is: numConcurrentCTWriters * batchSizePerCTWriter |
| batchSizePerCTWriter: 25 |
| # When this timeout expires, the contents of the batch are flushed to the datastore |
| batchPersistTimeoutInMs: 10 |
| # Timestamp generation strategy |
| # INCREMENTAL - [Default] regular counter |
| # WORLD_TIME - world time based counter |
| timestampType: WORLD_TIME |
| lowLatency: false |
| # Default module configuration (No TSO High Availability & in-memory storage for timestamp and commit tables) |
| timestampStoreModule: !!org.apache.omid.timestamp.storage.HBaseTimestampStorageModule [ ] |
| commitTableStoreModule: !!org.apache.omid.committable.hbase.HBaseCommitTableStorageModule [ ] |
| |
| leaseModule: !!org.apache.omid.tso.VoidLeaseManagementModule [ ] |
| |
| # Default stats/metrics configuration |
| metrics: !!org.apache.omid.metrics.NullMetricsProvider [ ] |
| |
| monitorContext: false |
| |
| # --------------------------------------------------------------------------------------------------------------------- |
| # Timestamp storage configuration options |
| # --------------------------------------------------------------------------------------------------------------------- |
| # Could be any guava module that binds org.apache.omid.timestamp.storage.TimestampStorage |
| # Current available Timestamp stores: |
| # org.apache.omid.tso.InMemoryTimestampStorageModule |
| # org.apache.omid.timestamp.storage.HBaseTimestampStorageModule |
| # org.apache.omid.timestamp.storage.ZKTimestampStorageModule |
| |
| # --------------------------------------------------------------------------------------------------------------------- |
| # Commit Table storage configuration options |
| # --------------------------------------------------------------------------------------------------------------------- |
| # Could be any guava module that binds org.apache.omid.committable.CommitTable |
| # Available CommitTable stores: |
| # org.apache.omid.committable.hbase.HBaseCommitTableStorageModule |
| # org.apache.omid.tso.InMemoryCommitTableStorageModule |
| |
| # --------------------------------------------------------------------------------------------------------------------- |
| # Metrics configuration options |
| # --------------------------------------------------------------------------------------------------------------------- |
| # Metrics could be anything that is org.apache.omid.metrics.MetricsRegistry |
| # There are 4 built-in reporters: CSV, SLF4J, GRAPHITE, CONSOLE |
| # Please see org.apache.omid.metrics.CodahaleMetricsConfig for details. |
| |
| # Example configuration for reporting statistics to the console every minute: |
| # |
| # metrics: !!org.apache.omid.metrics.CodahaleMetricsProvider [ |
| # !!org.apache.omid.metrics.CodahaleMetricsConfig { |
| # outputFreqInSecs: 60, |
| # reporters: !!set { |
| # !!org.apache.omid.metrics.CodahaleMetricsConfig$Reporter CONSOLE |
| # }, |
| # } |
| # ] |
| |
| # Example of multiple reporter configuration (to CSV files and console) |
| # |
| # metrics: !!org.apache.omid.metrics.CodahaleMetricsProvider [ |
| # !!org.apache.omid.metrics.CodahaleMetricsConfig { |
| # outputFreqInSecs: 60, |
| # reporters: !!set { |
| # !!org.apache.omid.metrics.CodahaleMetricsConfig$Reporter CSV, |
| # !!org.apache.omid.metrics.CodahaleMetricsConfig$Reporter CONSOLE |
| # }, |
| # csvDir: "csvMetrics", |
| # prefix: "somePrefix", |
| # } |
| # ] |
| |
| # ===================================================================================================================== |
| # Some example configurations |
| # ===================================================================================================================== |
| |
| # --------------------------------------------------------------------------------------------------------------------- |
| # Configuration WITHOUT High Availability using HBase for all required storage & reporting metrics to CSV files |
| # --------------------------------------------------------------------------------------------------------------------- |
| # |
| # commitTableStoreModule: !!org.apache.omid.tso.DefaultHBaseCommitTableStorageModule [ ] |
| # See optional params |
| # - tableName |
| # - familyName |
| # - principal |
| # - keytab |
| # timestampStoreModule: !!org.apache.omid.tso.DefaultHBaseTimestampStorageModule [ ] |
| # See optional params |
| # - tableName |
| # - familyName |
| # - principal |
| # - keytab |
| # leaseModule: !!org.apache.omid.tso.VoidLeaseManagementModule [ ] |
| # metrics: !!org.apache.omid.metrics.CodahaleMetricsProvider [ |
| # !!org.apache.omid.metrics.CodahaleMetricsConfig { |
| # reporters: !!set { |
| # !!org.apache.omid.metrics.CodahaleMetricsConfig$Reporter CSV |
| # }, |
| # csvDir: "myCSVMetricsDir", |
| # prefix: "myAppPrefixForMetrics", |
| # } |
| # ] |
| |
| # --------------------------------------------------------------------------------------------------------------------- |
| # Configuration WITHOUT High Availability using ZK to store the timestamps & reporting metrics to console every 30 secs |
| # --------------------------------------------------------------------------------------------------------------------- |
| # |
| # commitTableStoreModule: !!org.apache.omid.tso.DefaultHBaseCommitTableStorageModule [ ] |
| # timestampStoreModule: !!org.apache.omid.tso.DefaultZKTimestampStorageModule |
| # zkCluster: "localhost:2181" |
| # namespace: "omid" |
| # leaseModule: !!org.apache.omid.tso.VoidLeaseManagementModule [ ] |
| # metrics: !!org.apache.omid.metrics.CodahaleMetricsProvider [ |
| # !!org.apache.omid.metrics.CodahaleMetricsConfig { |
| # outputFreqInSecs: 30, |
| # reporters: !!set { |
| # !!org.apache.omid.metrics.CodahaleMetricsConfig$Reporter CONSOLE |
| # }, |
| # } |
| # ] |
| |
| |
| # --------------------------------------------------------------------------------------------------------------------- |
| # Configuration WITH High Availability using HBase for all required storage and no metrics reports |
| # --------------------------------------------------------------------------------------------------------------------- |
| # |
| # commitTableStoreModule: !!org.apache.omid.tso.DefaultHBaseCommitTableStorageModule [ ] |
| # timestampStoreModule: !!org.apache.omid.tso.DefaultHBaseTimestampStorageModule [ ] |
| # leaseModule: !!org.apache.omid.tso.HALeaseManagementModule |
| # leasePeriodInMs: 10000 |
| # tsoLeasePath: "/tso-lease" |
| # currentTsoPath: "/current-tso" |
| # zkCluster: "localhost:2181" |
| # zkNamespace: "omid" |
| # metrics: !!org.apache.omid.metrics.NullMetricsProvider [ ] |