안녕하세요.
생산 설비에서 데이터를 수집하여 MS SQL Server에 올리는 프로그램을 개발해야 하는데
다루어 보지 못 했던 형태의 table 구조가 될 것 같아 고민입니다.
데이터 샘플이 엑셀파일로 왔는데 column의 갯수가 570개가 됩니다.
설비 담당자 말로는 설비 데이터의 종류가 570여개 정도 된다는 것이고
그 데이터가 row로 계속 추가되기 때문에 column이 570개로 구성해야 하는 것이 아니냐고 합니다.
검색해보니 MS SQL Server의 경우 column이 최대 1024개라고 하는데
통상적으로 column이 4~50개를 넘어가게 되면 데이터 scan을 할 때 성능지연이 발생할 수 있다고 하더군요.
이런 경우에는 column을 50개 정도씩으로 쪼개서 테이블을 10개 이상으로 구성하고
데이터를 활용할 때는 join해서 쓰는 것이 맞는 것일까요?
column의 경우 대부분 float이긴 하지만 문자형도 있어서 VARCHAR 형태도 꽤 될 것 같습니다.
바쁘시겠지만 조언주시면 감사하겠습니다.
좋은 하루 되세요.
Comment 2
-
지영아빠
2023.06.12 09:21
-
친절한 설명 감사드립니다. 그런데 저희 회사 보안 프로그램 때문에 첨부 파일이 안 되네요.
말씀해주신 부분을 바탕으로 조금 더 고민 해보겠습니다!!
칼럼이 많다 적다 보다는
거의 모든 행의 데이터를 불렀을 때 570개의 칼럼에 대한 값을 참조하고 있다면
키에 대한 속성이 맞다고 봐야 되기 때문에 설계적인 측면에서는 맞다고 해야 합니다.
그런데 그렇지 않고 설비의 데이터가 어떤 건 1~10까지의 칼럼을 쓰고, 어떤건 11~20번...
이런 식이라면 설계를 다시 해보는 것도 방법일 듯합니다.
설계의 문제는 맞고 틀리고가 아니라 효율적이냐 아니냐의 문제로 봐야 할 것 같습니다.
더 정보가 필요하시다면 샘플데이터와 설명을 쪽지로 한번 줘보시겠어요