유효성이란 무엇인가?
유효성은 데이터 값이 예상 형식과 패턴에 부합하는지를 측정합니다. 값은 정의된 구조와 일치할 때 유효하고, 형식 규칙을 위반할 때 유효하지 않습니다.
이메일 주소는 ”@” 기호와 도메인을 포함할 때 유효합니다. URL은 프로토콜로 시작하고 도메인을 포함할 때 유효합니다. 제품 코드는 시스템에서 요구하는 정확한 문자 수를 가질 때 유효합니다.
DQS는 정규식(regex) 패턴을 사용하여 필드 값의 유효성을 검사합니다. Email, URL, Fixed Length와 같은 일반적인 형식에 대한 기본 제공 패턴에서 선택하거나, 비즈니스별 형식에 맞는 사용자 정의 정규식을 작성할 수 있습니다.
유효성 비율 = (패턴과 일치하는 레코드 / 전체 레코드) x 100
50,000개의 Contact 레코드 중 35,500개의 이메일 주소가 이메일 형식 패턴과 일치한다면, Email 유효성 비율은 71%입니다. 나머지 29%는 패턴 검사에 실패한 값을 포함합니다.
유효성 vs 정확성
유효성과 정확성은 다른 개념입니다.
| 검사 | 유효? | 정확? |
|---|---|---|
| [email protected] | 예 | 검증 없이는 알 수 없음 |
| john@company | 아니오 | 해당 없음 (형식이 잘못됨) |
| [email protected] | 예 | 아니오 (회사를 떠난 사람) |
| 555-123-4567 | 예 | 검증 없이는 알 수 없음 |
| 555-12-456 | 아니오 | 해당 없음 (잘못된 자릿수) |
DQS는 형식 검사를 자동화할 수 있기 때문에 유효성을 측정합니다. 정확성은 외부 검증이나 사람의 확인이 필요합니다.
유효한 데이터는 현실을 반영하지 않더라도 시스템에서 작동합니다. 유효하지 않은 데이터는 실제 세계의 진실과 관계없이 시스템을 손상시킵니다. 유효성을 먼저 처리하십시오. 검증 프로세스를 통해 정확성을 해결하십시오.
유효성이 중요한 이유
유효하지 않은 데이터는 전체 스택에 걸쳐 실패를 유발합니다. 반송된 이메일은 발신자 명성을 손상시킵니다. 잘못된 형식의 전화번호는 다이얼러 시간을 낭비합니다. 깨진 URL은 사용자를 불편하게 하고 보강 도구를 차단합니다.
API는 잘못된 형식의 데이터를 거부합니다. 통합이 마케팅 플랫폼에 유효하지 않은 이메일 형식을 전송하면 전체 배치가 실패할 수 있습니다. 필드 값을 파싱하는 Salesforce Flow는 형식이 예상과 다를 때 손상됩니다.
AI 모델은 텍스트를 그대로 처리합니다. 전화 필드에 깔끔한 번호 대신 “Phone: 555-1234”가 포함되면 모델은 불일치한 패턴을 봅니다. 유효하지 않은 형식은 AI 효과성을 감소시키고 신뢰할 수 없는 Agentforce 결과를 생성합니다.
| 시스템 | 유효성 영향 |
|---|---|
| 이메일 캠페인 | 반송이 발신자 명성을 손상시킴 |
| 전화 통신 | 유효하지 않은 번호가 다이얼러 시간을 낭비함 |
| 웹 링크 | 깨진 URL이 보강 및 탐색을 차단함 |
| API | 잘못된 형식의 데이터가 동기화 실패를 초래함 |
| AI 및 Agentforce | 일관성 없는 형식이 모델 정확도를 감소시킴 |
DQS가 유효성을 측정하는 방법
DQS는 진단적 질문을 중심으로 구성된 6가지 유효성 메트릭을 제공합니다. “데이터가 패턴과 일치하는가, 그리고 통과하는 값들 안에 숨겨진 쓰레기가 있는가?”
이 메트릭들을 진단 흐름으로 생각하십시오. 각 단계는 문제의 더 깊은 층을 드러냅니다.
1단계: 패턴과 일치하는가?
**유효성 비율(Validity Rate)**은 핵심 메트릭입니다. 구성된 패턴과 일치하는 레코드의 백분율을 계산합니다. 이것이 대시보드에 표시하는 숫자입니다.
Contact의 PersonEmail 필드에 Email 패턴을 구성합니다. 유효성 비율이 71%로 나옵니다. 이는 이메일 주소의 29%가 형식 검사에 실패했음을 의미합니다. ”@” 기호가 없거나, 도메인이 없거나, 공백이 포함되어 있습니다. 해당 주소로 발송된 모든 마케팅 캠페인이 반송됩니다. 이메일에 따라 트리거되는 모든 자동화 워크플로가 조용히 실패합니다.
**유효 개수(Valid Count)**는 절대 숫자를 알려줍니다. 50,000개의 Contact 중 35,800개가 유효한 이메일 주소를 가집니다. 이것이 시스템에 있는 50,000개가 아닌 이메일 캠페인의 실제 대상 고객입니다. 마케팅 팀은 부풀려진 숫자가 아닌 현실적인 캠페인 예측을 설정할 수 있습니다.
2단계: 전체 분석은 어떠한가?
비율은 심각도를 알려줍니다. 개수는 작업량을 알려줍니다. 두 가지 메트릭이 그림을 완성합니다.
| 메트릭 | 알려주는 것 |
|---|---|
| 유효하지 않은 비율(Invalid Rate) | 유효성 점수의 부정적 표현. “우리의 이메일 주소의 29%가 구조적으로 유효하지 않습니다”는 이사회 발표에서 “71%가 유효합니다”보다 더 주목을 끕니다. 동일한 데이터, 행동을 위한 프레이밍. |
| 유효하지 않은 개수(Invalid Count) | 하드 숫자로서의 정리 작업량. 회사가 E.164 형식이 필요한 새로운 전화 통신 시스템으로 마이그레이션하고 있습니다. Phone 필드의 유효하지 않은 개수: 23,400개. 마이그레이션이 진행되기 전에 재포매팅이 필요한 레코드의 정확한 수입니다. |
3단계: 형식 오류 너머에 쓰레기가 있는가?
값은 형식 검사를 통과하고도 쓰레기일 수 있습니다. 웹-투-리드 양식에는 Company 필드가 필요합니다. Company의 유효성 비율은 98%입니다. 거의 모든 것이 기본 텍스트 패턴을 통과하기 때문입니다. 하지만 **노이즈 비율(Noise Rate)**에 따르면 해당 값의 14%가 “asdf”, “test”, “xxxxx”, 또는 “na na na”와 같은 항목입니다. 형식적으로는 유효하지만, 영업 라우팅, 보강, 또는 세분화에는 전혀 쓸모가 없습니다.
**노이즈 레코드 개수(Noisy Records Count)**는 정리 범위를 제공합니다. 50,000개의 레코드에서 노이즈 비율이 14%라면 7,000개의 리드가 쓰레기 회사 이름을 가집니다. 운영 팀은 정리 대기열을 구축하고, 시간을 추정하고, 자동 삭제 또는 수동 검토를 위한 플래그를 결정할 수 있습니다.
두 가지 실패 범주
유효성 메트릭은 근본적으로 다른 두 가지 문제를 구분합니다.
| 문제 | 메트릭 | 근본 원인 | 해결책 |
|---|---|---|---|
| 형식 오류 | 유효성 비율, 유효하지 않은 비율, 유효/유효하지 않은 개수 | 사람의 실수, 통합 버그, 유효성 검사 규칙 누락 | 데이터 정리: 필드 유효성 검사 규칙, 데이터 변환, 보강 |
| 노이즈 및 쓰레기 | 노이즈 비율, 노이즈 레코드 개수 | 봇, 강제 양식 제출, 쓰레기 기본값이 있는 대량 가져오기 | 소스 수정: CAPTCHA, 필수 필드 재설계, 레코드 삭제 |
이 구분이 중요한 것은 해결책이 완전히 다르기 때문입니다. 형식 오류는 데이터를 정리함으로써 해결됩니다. 노이즈는 이를 생성하는 소스를 수정함으로써 해결됩니다.
메트릭 참조
기본 메트릭
이 2가지 메트릭은 모든 유효성 분석의 기반을 형성합니다. 일치 비율과 통과하는 레코드 수를 알려줍니다.
| 메트릭 | 유형 | 측정 내용 |
|---|---|---|
| 유효성 비율 | 백분율 | 구성된 패턴과 일치하는 레코드의 비율 |
| 유효 개수 | 개수 | 구성된 패턴과 일치하는 레코드 수 |
고급 메트릭
이 4가지 메트릭은 “일치하는가?”를 넘어 노이즈 감지를 포함한 전체 분석을 제공합니다. 고급 형식 유효성 검사 분석 모드가 필요합니다.
| 메트릭 | 유형 | 측정 내용 |
|---|---|---|
| 유효하지 않은 비율 | 백분율 | 구성된 패턴에 실패하는 레코드의 비율 |
| 유효하지 않은 개수 | 개수 | 구성된 패턴에 실패하는 레코드 수 |
| 노이즈 비율 | 백분율 | 노이즈 패턴(쓰레기 데이터)을 포함하는 레코드의 비율 |
| 노이즈 레코드 개수 | 개수 | 노이즈 패턴을 포함하는 레코드 수 |
비율과 개수가 쌍으로 제공되는 이유
대부분의 메트릭은 비율(백분율)과 개수(절대 숫자)로 제공됩니다. 이는 의도적인 설계입니다.
- 비율은 대시보드, 경영진 보고, 추세 추적에 사용됩니다. “유효성이 이번 분기에 71%에서 92%로 향상되었습니다.”
- 개수는 프로젝트 계획, 작업량 추정, 정리 범위 지정에 사용됩니다. “23,400개의 전화번호를 재포매팅해야 합니다.”
진척도를 전달하는 데는 비율을 사용하고, 작업을 계획하는 데는 개수를 사용하십시오.
필드 유형 적용 범위
6가지 유효성 메트릭은 모두 동일한 기본 필드 유형 지원을 공유하며, 노이즈 메트릭은 텍스트 필드로 제한됩니다.
| 메트릭 | 6가지 모든 필드 유형 | String 및 TextArea만 |
|---|---|---|
| 유효성 비율 | X | |
| 유효 개수 | X | |
| 유효하지 않은 비율 | X | |
| 유효하지 않은 개수 | X | |
| 노이즈 비율 | X | |
| 노이즈 레코드 개수 | X |
패턴 기반 메트릭(유효성 비율, 유효 개수, 유효하지 않은 비율, 유효하지 않은 개수)은 String, TextArea, Email, Phone, URL, Picklist의 6가지 지원 필드 유형 모두에서 작동합니다.
노이즈 메트릭(노이즈 비율, 노이즈 레코드 개수)은 String 및 TextArea 필드에만 적용됩니다. 반복 문자 및 키보드 스매시와 같은 노이즈 패턴은 자유 텍스트 현상입니다. 유효한 선택 목록 값을 가진 Picklist 필드는 노이즈를 포함할 수 없습니다. 노이즈 감지는 사용자가 자유 텍스트를 입력하는 필드에서만 의미가 있습니다.
두 가지 분석 모드
DQS는 두 가지 유효성 분석 모드를 제공합니다.
**형식 유효성 검사(Format Validation)**는 “필드 값이 예상 패턴과 일치하는가?”라는 질문에 답합니다. 2가지 기본 메트릭을 생성하며 형식 준수 검사 또는 빠른 감사에 필요한 필수 사항을 다룹니다.
**고급 형식 유효성 검사(Advanced Format Validation)**는 더 깊이 파고듭니다. 노이즈 감지를 포함한 전체 분석을 제공하는 6가지 메트릭을 모두 생성합니다. 형식 오류와 쓰레기 데이터를 구분해야 하거나, 정리 프로젝트 계획을 위한 정확한 개수가 필요할 때 이 모드를 사용하십시오.
| 비즈니스 요구 | 권장 모드 |
|---|---|
| 빠른 형식 준수 검사 | 형식 유효성 검사 |
| 컴플라이언스 보고 또는 감사 | 고급 (규제 기관을 위한 전체 유효/유효하지 않은 분석) |
| 리드 품질 평가 | 고급 (노이즈 비율이 형식 검사를 통과하는 쓰레기를 포착) |
| 마이그레이션 전 데이터 평가 | 고급 (카테고리별로 해결을 범위 지정하기 위한 전체 분석) |
| 지속적인 데이터 거버넌스 | 형식 유효성 검사로 시작하고, 노이즈 감지를 위해 고급으로 이동 |
유효성 구성
완전성(모든 필드에서 자동으로 작동)과 달리, 유효성은 구성이 필요합니다. DQS가 유효성을 검사하기 전에 각 필드에 대해 “유효”가 무엇을 의미하는지 정의해야 합니다. 패턴 없이 유효성 스캔을 실행하는 것은 의미가 없습니다. 무엇과 비교하여 유효한가?
DQS는 5가지 구성 입력을 제공합니다. 각각은 전역 수준(모든 필드에 적용)에서 설정할 수 있으며 개별 필드 수준에서 재정의할 수 있습니다.
| 설정 | 제어 내용 |
|---|---|
| 패턴 유형(Pattern Type) | 유효성을 검사할 형식. Email, URL, Fixed Length, 또는 Custom regex에서 선택. 필수: 스캔 실행 전에 패턴 유형을 선택해야 합니다. |
| 패턴 / 고정 길이(Pattern / Fixed Length) | 선택한 유형에 대한 특정 값. Fixed Length의 경우 문자 수(1~255)를 입력. Custom의 경우 정규식 패턴을 입력. Email 및 URL은 기본 제공 패턴을 사용. |
| 사용자 정의 패턴(Custom Pattern) | 패턴 유형이 Custom으로 설정된 경우 사용자 정의 정규식. DQS는 저장 전에 정규식을 유효성 검사하고 유효하지 않은 표현식을 차단합니다. |
| 공백 포함(Include Blanks) | 활성화하면 DQS가 공백 값을 유효하지 않은 것으로 계산합니다. 비활성화(기본값)하면 공백이 평가에서 완전히 제외됩니다. |
| 대소문자 구분(Case Sensitive) | 활성화하면 패턴 매칭이 대소문자를 고려합니다. 비활성화(기본값)하면 매칭이 대소문자를 구분하지 않습니다. |
패턴 유형
| 유형 | 유효성 검사 내용 | 통과 예시 | 실패 예시 |
|---|---|---|---|
| 표준 이메일 주소 형식: [email protected] | [email protected] | user@domain, invalid-email | |
| URL | 유효한 도메인이 있는 HTTP/HTTPS 웹 주소 | https://example.com | example.com, htp://site.com |
| Fixed Length | 정확한 문자 수 (사용자가 정의) | AAAAAAAAAA (10자, 길이 = 10인 경우) | SHORT (5자) |
| Custom | 사용자가 정의한 정규식 패턴 | 패턴에 따라 다름 | 패턴에 따라 다름 |
예시: 제품 코드가 “DQS-” 다음에 6자리 숫자가 오는 형식을 따릅니다. 패턴 유형을 Custom으로 설정하고 정규식 ^DQS-\d{6}$를 입력합니다. DQS는 이 구조와 일치하지 않는 모든 제품 코드에 플래그를 지정합니다.
노이즈 감지
노이즈 감지는 형식 검사를 통과하지만 여전히 쓰레기인 데이터를 포착합니다. DQS는 두 가지 기본 제공 휴리스틱을 사용하여 노이즈 값을 식별합니다.
휴리스틱 1: 연속적인 동일 문자. 연속으로 3개 이상의 동일한 문자. “aaaa”, ”!!!”, ”---”, “xxxxx”와 같은 값이 이 검사를 트리거합니다. 이는 일반적으로 키를 계속 누르는 행위, 패딩, 또는 자리 표시자 남용에서 발생합니다.
휴리스틱 2: 과도한 특수 문자. 공백을 제외한 비알파벳 문자가 50% 이상. ”!@#$%^” 또는 ”***///---“와 같은 값이 이 검사를 트리거합니다. 이는 키보드 스매시, 봇 입력, 또는 의도적인 쓰레기 입력을 나타냅니다.
| 휴리스틱 | 포착하는 것 | 노이즈 예시 | 정상 예시 |
|---|---|---|---|
| 연속 3개 이상의 동일 문자 | 패딩, 채움, 키 누름 유지 | ”aaaa”, ”!!!”, ”---”, “xxxxx" | "Premium”, “DOT AB3 2024” |
| 특수 문자 50% 이상 | 키보드 스매시, 봇 입력, 쓰레기 | ”!@#$%^”, “***test”, ”//—//" | "[email protected]”, “O’Brien Inc” |
기본 제공 휴리스틱이 다루지 않는 조직별 쓰레기에 대한 사용자 정의 노이즈 패턴을 정규식으로 정의할 수도 있습니다.
팁: 노이즈 감지는 사용자가 무엇이든 입력할 수 있는 자유 텍스트 필드에서 가장 유용합니다. Company, Description, Notes, 그리고 사용자 정의 텍스트 필드가 해당됩니다. 봇 제출과 강제 입력이 가장 일반적인 웹-투-리드 필드에서 먼저 실행하십시오.
일반적인 유효성 문제
유효하지 않은 이메일 주소
사용자들이 적절한 형식 없이 이메일을 입력합니다. ”@” 기호 누락, 도메인 누락, 이중 점, 오타가 가장 일반적인 문제입니다.
| 문제 | 예시 |
|---|---|
| @ 누락 | john.company.com |
| 도메인 누락 | john@ |
| 이중 점 | [email protected] |
| 오타 | [email protected] |
영향: 반송된 이메일, 손상된 발신자 점수, 통신 손실.
잘못된 형식의 전화번호
Salesforce에서 전화 필드는 모든 텍스트를 허용하므로 일관성 없고 유효하지 않은 형식으로 이어집니다.
| 문제 | 예시 |
|---|---|
| 문자 혼입 | 555-CALL-NOW |
| 잘못된 자릿수 | 555-12 |
| 내선 번호가 필드에 포함 | 555-1234 ext 5 |
| 국가 코드 혼동 | 1-555-123-4567 vs 555-123-4567 |
영향: 실패한 통화, 낭비된 영업 시간, 전화 통신 동기화 오류.
유효하지 않은 URL
웹 주소 필드는 종종 부분적이거나 잘못된 형식의 값을 포함합니다.
| 문제 | 예시 |
|---|---|
| 프로토콜 누락 | www.company.com |
| 도메인 누락 | https:// |
| 오타 | htps://company.com |
| 소셜 핸들 | @company (URL이 아님) |
영향: 깨진 링크, 실패한 보강, 탐색 오류.
모범 사례
입력 시 유효성 검사
최선의 유효성 검사는 데이터 입력 시에 이루어집니다. Salesforce 유효성 검사 규칙을 사용하여 데이터가 시스템에 입력되기 전에 형식을 강제하십시오.
// 예시: 이메일 형식 유효성 검사 규칙
NOT(ISBLANK(Email)) && NOT(REGEX(Email, "^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,}$"))
스캔 전 형식 표준화
각 필드에 대해 하나의 형식을 선택하고 강제하십시오. 전화번호의 경우 E.164(+15551234567)가 가장 보편적으로 허용되는 표준입니다. URL의 경우 https:// 프로토콜을 요구하십시오. 팀이 표준을 알 수 있도록 형식 결정을 문서화하십시오.
필드 우선순위에 따라 임계값 설정
필드마다 다른 유효성 기준이 필요합니다.
| 필드 | 권장 임계값 | 이유 |
|---|---|---|
| 기본 Email | 95%+ | 커뮤니케이션에 중요 |
| Phone | 90%+ | 중요하지만 레거시 데이터 예상 |
| Website | 85%+ | 종종 불완전하게 입력됨 |
| 사용자 정의 텍스트 코드 | 98%+ | 시스템 생성, 높은 준수 예상 |
자유 텍스트 필드에 노이즈 감지 사용
사용자가 자유 텍스트를 입력하는 필드에 노이즈 감지를 실행하십시오. Company, Description, 사용자 정의 텍스트 필드, 그리고 웹 양식으로 채워진 모든 필드가 해당됩니다. 노이즈 비율은 형식 유효성 검사가 놓치는 문제를 드러냅니다.
예상 형식 문서화
각 필드의 예상 형식, 허용 가능한 변형, 유효 및 유효하지 않은 값의 예시를 지정하는 데이터 사전을 생성하십시오. 이를 팀과 공유하고 데이터 정리 프로젝트 중에 참조하십시오.
다음 단계
이제 데이터 형식의 유효성을 검사하고 노이즈 값을 감지하는 방법을 이해했습니다. 다음 차원에 대한 학습을 계속하십시오.