blob: 38464ce6a497fb3cc789f7d722bac5b7bb386085 [file]
// English-only string table for the sizing calculator.
// Adapted from https://github.com/cloudberry-fe/sizing (Apache-2.0).
export const STRINGS: Record<string, string> = {
'title': 'Apache Cloudberry Sizing Calculator',
'subtitle': 'Enter data size and infrastructure type to get a recommended hardware configuration',
'input.datasize': 'Data size (uncompressed business data)',
'input.infra': 'Infrastructure type',
'infra.physical': 'Physical',
'infra.vm': 'VM',
'infra.cloud': 'Cloud',
'product.physical': 'Apache Cloudberry · bare metal',
'product.vm': 'Apache Cloudberry · VM',
'product.cloud': 'Apache Cloudberry · cloud',
'advanced': 'Advanced options',
'adv.compression': 'Compression ratio',
'adv.concurrency': 'Concurrency',
'conc.std': 'Standard (≤80 concurrent, default)',
'conc.high': 'High (≤120 concurrent, resources ×1.5)',
'conc.xhigh': 'Very high (≤160 concurrent, resources ×2)',
'nav.method': 'Methodology',
'preset.title': 'Hardware preset',
'preset.sas_std': 'Standard · SAS',
'preset.sas_std.desc': '2×32C / 512G / 24×1.2T SAS dual RAID5',
'preset.ssd_perf': 'High-throughput · SSD',
'preset.ssd_perf.desc': '2×32C / 1T / 24×960G SSD dual RAID5',
'preset.nvme_modern': 'Modern · NVMe',
'preset.nvme_modern.desc': '2×32C / 1T DDR5 / 12×3.84T NVMe RAID5',
'vmprofile.title': 'VM profile',
'vmprofile.auto': 'Auto (by data size)',
'vmprofile.lite': 'Lite — 8 vCPU / 32G / 2T (≤5TB)',
'vmprofile.medium': 'Medium — 16 vCPU / 64G / 4T (≤50TB)',
'vmprofile.large': 'Large — 24 vCPU / 96G / 8T (>50TB)',
'vmprofile.picked': 'Auto-selected profile: {p}',
'vmhost.lite': 'Shared host acceptable',
'vmhost.medium': 'CPU overcommit ≤ 1:2',
'vmhost.large': 'Dedicated host, 1:1 physical',
'scheme.title': 'Cloud scheme',
'scheme.managed': 'Managed-disk',
'scheme.local': 'Local-NVMe',
'bom.cpu': 'CPU',
'bom.mem': 'Memory',
'bom.sysdisk': 'System disk',
'bom.datadisk': 'Data disks',
'bom.raid': 'RAID',
'bom.nic': 'NIC',
'bom.throughput': 'Disk throughput',
'bom.layout': 'Segment layout',
'bom.perseg': 'Data per primary',
'bom.segmem': 'Memory per segment',
'bom.host': 'Host requirement',
'raid.2x12r5': '2 × RAID5 groups of 12 (22 disks usable)',
'raid.1x12r5': '12-disk RAID5 (11 usable); needs tri-mode RAID (PERC H755N/H965i, MegaRAID 9560-class) or VROC; JBOD + mirror redundancy also viable',
'result.title': 'Recommended configuration',
'col.role': 'Role',
'col.count': 'Nodes',
'col.spec': 'Per-node spec',
'col.note': 'Notes',
'role.coordinator': 'Coordinator (primary + standby)',
'role.segment': 'Segment node',
'role.datanode': 'DataNode',
'role.oss': 'Object storage (OSS)',
'note.coord.physical': 'Active/standby HA',
'note.segment.physical': 'primary+mirror; XFS filesystem',
'note.coord.vm': 'Active/standby HA',
'note.datanode.vm': 'primary+mirror; SSD preferred; XFS',
'note.azure.extra': 'primary+mirror; use UDP interconnect, reserve port 65330',
'note.gcp.extra': 'primary+mirror; prefer more, smaller nodes on GCP (vs AWS)',
'note.oss': 'On demand, S3-compatible API',
'summary.title': 'Resource summary',
'summary.nodes': 'Total nodes',
'summary.cpu': 'Total vCPU/cores',
'summary.mem': 'Total memory',
'summary.storage': 'Total data storage',
'summary.capacity': 'Usable data capacity (at chosen compression)',
'binding.storage': 'Storage-bound: storage needs {s} nodes > compute needs {c}',
'binding.compute': 'Compute-bound: compute needs {c} nodes > storage needs {s} (8c32G per TB rule)',
'err.invalid': 'Enter a data size greater than 0',
'warn.huge': 'Beyond typical scale — contact field engineering',
'disclaimer': 'Estimates only. Validate with a POC before final sizing.',
'unit.vcpu': 'vCPU',
'unit.cores': 'cores',
'network.label': 'Network',
'network.10g': 'Network: 10Gbps Ethernet',
};
export function t(key: string): string {
return STRINGS[key] || key;
}