2009-02-23 3 views
16

약간의 독서를하고 있는데, 응용 프로그램이 SQL로 전송되기 전에 데이터를 마사지 할 필요가없는 경우 internalStore를 피하기 시작했습니다. 데이터 마사지 란 무엇입니까?"데이터 마사지"란 무엇을 의미합니까?

+26

때로는 데이터가 업무 및 가족 과부하로 인해 과부하 상태가되는 경우가 있습니다. 때로는 데이터가 '해피 엔딩'을 위해 추가 비용을 지불하고 실제로 잘 분류됩니다. = oD – Echostorm

답변

18

조작, 처리, 변경, 다시 계산. 간단히 말해, 원시 데이터를 이동 한 후 internalStore를 사용할 필요는 없지만 저장 전에 데이터를 처리하는 경우 internalStore가 필요할 수 있습니다.

-Adam

+0

물론 데이터 순도가 절대 추정되어서는 안됩니다. :) – EBGreen

+1

아니요, 절대 암시 적으로 모든 종류의 프로그램 입력을 신뢰해서는 안됩니다. 그러나 간단한 점검은 데이터를 건드리지 않고 단순히 마사지 만받는 것으로 간주되지 않을 수 있습니다. –

+1

사실입니다. 마사지 경험은 거의 항상 내가 통제 할 수없는 다른 시스템에서 입력 한 데이터 저장소에있는 데이터를 정리하는 것이 었습니다. – EBGreen

3

정리, 정상화, 필터링, ... 그냥 사용에 더 적합한 형태로 원래의 입력에서 어떻게 든 데이터를 변경.

14

때로는 데이터 이동의 전체 프로세스를 "추출, 변환,로드"를 의미하는 "ETL"이라고합니다. 데이터를 마사지하는 것은 "변형"단계이지만 잘 알려진 형식 간의 변형이 아니라 마주 쳤던 것과 같은 문제 (근육에 마사지하는 것과 같은)를 부드럽게하기 위해 수행해야하는 임시 수정을 의미합니다.

당신이 할 수있는 생각에 "마사지"데이터는 다음과 같습니다 예를 들어, 소스 시스템이 목표 시스템이 무엇을 기대에 방출 한 것과

  • 변경 형식을 d/m/y에서 m/d/y로 날짜 형식을 변경하십시오.
  • 누락 된 값을 기본값으로 바꿉니다 (예 : 수량을 입력하지 않으면 "0"을 입력하십시오.
  • 대상 시스템에서 필요하지 않은 레코드를 필터링합니다.
  • 레코드의 유효성을 검사하고 삽입하려고하면 오류가 발생할 행을 무시하거나보고하십시오.
  • 데이터를 표준화하여 동일해야하는 유사 콘텐츠를 제거합니다 (예 : 대문자를 소문자로 바꾸려면 "01"을 "1"로 바꾸십시오.
1

마지막으로 데이터를 던지거나 숫자를 조정하여 원하는 답변을 제공하지 않아도 데이터를 마사지하는 것이 덜 바람직합니다. 통계 분석을하는 Unfortunatley peole은 종종 자신의 이론을 반증하는 성가신 이상 치를 없애기 위해 데이터를 마사지합니다. 데이터 집계로 데이터 정리를 언급하는 이러한 관행이 부적절합니다. 다른 사람이 날짜 대신 varchar에 저장 했으므로 의미가없는 날짜를 제거 (02/30/2009와 같은 의미없는 날짜 제거, 이름과 성을 별도의 필드로 분리, 모든 대문자 데이터 고정 , 제공된 데이터가 제공되지 않을 때 데이터를 필요로하는 필드에 대한 기본값을 추가하는 등)은 데이터를 마사지하는 것은 부적절하게 데이터를 조정하는 것을 의미합니다.