sql - 大型 MSSQL 数据库上的字符串列索引
问题描述
我必须设计一个数据库来存储一些生产过程测量数据。数据将从 PLC 收集。我想将此数据存储在所有机器都可以访问的远程服务器上。我想存储以下数据:
- 时间戳
- 植物
- 生产线
- 机器
- 工件编号
- 计量单位
- 测量类型
有些机器共享相同的测量类型,有些机器具有独特的测量类型。这是一个很好的解决方案吗,我会创建measurement type
类型列,VARCHAR
让 PLC 程序员在没有我干预的情况下解放双手命名新的测量类型,在相关的外部表中插入新条目并将新的 id 交给他们?唯一测量类型的预期计数约为 100。此列上的索引是否是以后过滤和从该表中选择的解决方案,该表预计每年有大约 500 亿行?可能桌子的大小也将成为一个大问题。
编辑:除了零件信息之外,我还应该将测量值和测量类型与其他表格分开吗?
有没有办法让 SQL 服务器负责measurement type
向某些内部表添加新的并处理 id?
希望我已经充分解释了我的问题,否则请在评论中写下问题。
问候
解决方案
我会说创建一个新的表测量类型,因为您提到记录小于 100,然后在这种情况下创建 Id 列 TINYINT,这也将节省您的空间并有助于创建索引。
推荐阅读
- unit-testing - 如何并行运行测试需要不同的环境变量值
- python - 如何重复使用和多次绘制相同的情节
- git - 如何在不影响原始 repo 的情况下删除复制的 repo?
- php - 在 PhpStorm 中安装 composer 时 PHP (7.2.23) 更新版本不起作用
- python - 当我的函数没有接收到参数时,如何告诉我的函数做一些特定的事情?
- python - 快速将 Pandas 系列标签转换为相应列的间接值系列
- android - windowSoftInput 隐藏recycleview中的项目
- python - python:从URL读取文件
- java - 有没有办法“获取”从警报对话框中按下的任何内容并更改其他内容的值?
- c++ - 我不明白我的编译器是如何得到这个输出的