Reddit Data API
Reddit Data API

원본 응답에서 수락한 배치로 이동하기

원본 JSON에서 수락한 행까지, 컬럼 규칙과 거부 사유를 기록하고 같은 입력으로 변환을 검증하는 적재 절차를 설계하세요.

API 키 받기

1. 한 행의 의미를 정하세요

python 게시물의 텍스트와 기록된 점수를 살펴볼 테이블을 만든다고 가정하세요. 한 행은 수락한 원본 게시물 하나를 나타내고 실행 메타데이터는 따로 둡니다. 어떤 값이 분석에 꼭 필요하며 무엇은 없어도 되는지 정하세요. 이 설계는 자신의 테이블 계약이며 API가 모든 필드나 모든 게시물을 제공한다는 뜻은 아닙니다. 사용 목적이 달라지면 필요한 컬럼도 다시 검토해야 합니다.

2. 받은 입력을 그대로 남기세요

서버에서 https://api.redditdataapi.com/v1/posts?subreddit=python&limit=3을 요청하고 변환 전 응답을 저장하세요. 경로, 비밀을 제외한 조건, 수신 시각, 적재 프로그램 버전도 함께 기록합니다. 독립적인 과거 아카이브는 공식 실시간 Reddit이 아닙니다. 성공한 빈 응답도 배치 기록에 포함해 로컬 변환 실패와 다른 상태로 남기세요. 나중에 다시 요청하면 같은 객체를 받을 것이라고 기대해서는 안 됩니다.

3. 필드별 변환 규칙을 적으세요

id는 원본 문자열을 유지할지 결정합니다. title과 text는 속성 생략, null, 빈 문자열을 구분하세요. score는 허용할 숫자 자료형을 정하고 값이 없다는 사실을 0으로 바꾸지 마세요. created_utc는 단위를 확인한 다음 시간 변환을 선택합니다. 대상 컬럼의 이름과 그 값을 만든 규칙을 함께 기록하면 결과를 읽는 사람이 원본과 변환을 구분할 수 있습니다.

파생 컬럼은 자신의 계산 결과임을 표시하고 실패한 값은 원본으로 보관하세요. 존재하는 parent_id나 link_id로 관계를 묶을 수 있지만 완전한 대화나 조상 기록의 존재는 보장되지 않습니다. 서버가 임의의 대상 스키마를 검증하는 것은 아닙니다. 실제로 연결하지 못한 관계는 누락 상태로 남겨야 하며 가까운 다른 객체로 대신 채우지 마세요.

4. 거부된 행을 조사할 수 있게 하세요

거부된 행에는 원본 객체와 실패한 규칙을 붙이세요. 자료형 오류와 의도적인 분석 제외를 따로 분류하면 변환기를 고칠지 선택 기준을 바꿀지 결정할 수 있습니다. 수락, 거부, 제외 건수를 받은 객체 수와 대조합니다. 이 숫자는 로컬 처리 결과이며 Reddit 커뮤니티 전체의 활동량이 아닙니다. 검토자가 하나의 거부 사유에서 실제 입력까지 찾아갈 수 있어야 합니다.

5. 검토 후 테이블에 넣으세요

수정한 규칙을 같은 저장 파일로 시험한 다음 수락한 행을 넣으세요. 사용 가능한 식별자가 있으면 반복 객체 처리 방식을 정합니다. API 페이지 사이의 유일성은 보장되지 않습니다. 원본과 정규화 출력을 분리해 새로운 스키마 버전이 이전 결정의 근거를 덮어쓰지 않도록 하세요. 비교 결과와 사용한 변환 버전을 함께 기록하면 어느 규칙으로 적재했는지 확인할 수 있습니다.

필요한 파일과 적재 결과를 기록한 뒤 로컬 진행 지점을 갱신하세요. 이것은 자신의 작업 상태이지 고정된 서버 커서가 아닙니다. _doc는 시간순이나 관련도순이 아니며 요청당 100개 레코드와 쿼리당 100페이지 한도가 있습니다. 진행 지점만으로 재개 시 누락과 중복이 없음을 증명할 수는 없습니다.

6. 다음 요청에 목적을 두세요

새 배치는 구체적인 검증이나 분석에 필요할 때 요청하세요. 저장한 값의 변환만 다시 시험하려면 로컬 파일을 쓰면 됩니다. 미래의 원격 응답은 달라질 수 있습니다. 날짜와 총수는 문서에서, 성공 과금과 예약 반환 및 성공한 재시도 비용은 가격 페이지에서 확인하세요. 이 작업의 결과는 검토 가능한 적재 절차이며 완전하고 불변인 아카이브 내보내기가 아닙니다. 로컬 재현성과 원격 자료의 지속적인 가용성을 같은 약속으로 취급하지 마세요.