로그 서비스 데이터 가공 최 적 실천:다른 logstore 에서 데 이 터 를 끌 어 올 려 부 화 를 합 니 다.

개술
전역 부 화 함 수 를 사용 하여 부 화 를 할 때 사전 이나 표 구 조 를 전달 하여 부 화 를 해 야 합 니 다.사전 과 표를 구축 하여 데이터 부 화 를 하 는 여러 가지 경 로 를 참고 하 십시오. 이 글 은 자원 함수res_log_logstore_pull를 사용 하여 다른 logstore 에서 데 이 터 를 끌 어 올 리 는 것 을 부자 화 하 는 상세 한 실천 을 소개 합 니 다.res_log_logstore_pull의 매개 변수 설명 을 참고 하 십시오.이 문법 은 현재 두 가지 모델 로 logstore 에서 데 이 터 를 끌 어 올 리 는 것 을 지원 합 니 다.하 나 는 지 정 된 시간 간격 안의 logstore 의 데이터 내용 을 끌 어 올 리 는 것 이 고 다른 하 나 는 종료 시간 을 설정 하지 않 고 목표 logstore 내용 을 지속 적 으로 끌 어 올 리 는 것 입 니 다.
배경
여기 에는 두 개의 logstore 가 있 습 니 다.하 나 는 개인 정 보 를 저장 하 는 source 입 니 다.logstore,하 나 는 호텔 에서 손님 의 입주 정 보 를 저장 하 는 targetlogstore,우 리 는 지금 호텔 의 입주 정 보 를 부화 시 킵 니 다.주의:여 기 는 pulllog 인터페이스 에서 데 이 터 를 끌 어 옵 니 다.풍부 한 logstore 는 색인 에 의존 하지 않 습 니 다.
개인 정보 sourcelogstore
topic:xxx
city:xxx
cid:12345
name:maki

topic:xxx
city:xxx
cid:12346
name:vicky

topic:xxx
city:xxx
cid:12347
name:mary    

호텔 입주 정보 logstore
time:1567038284
status:check in
cid:12345
name:maki
room_number:1111

time:1567038284
status:check in
cid:12346
name:vicky
room_number:2222

time:1567038500
status:check in
cid:12347
name:mary
room_number:3333

time:1567038500
status:leave
cid:12345
name:maki
room_number:1111

기본 문법
res_log_logstore_pull(
        endpoint,
        ak_id,
        ak_secret,
        project,
        logstore,
        fields,
        from_time=None,
        to_time=None,
        fetch_include_data=None,
        fetch_exclude_data=None,
        primary_keys=None,
        delete_data=None,
        refresh_interval_max=60,
        fetch_interval=2):

구체 적 인 매개 변수 설명 res 참조log_logstore_pull,주의해 야 할 점 은'res'입 니 다.log_logstore_pull 은 하나의 단독 문법 으로 목표 logstore 에서 데 이 터 를 끌 어 내 리 는 것 만 책임 집 니 다.그 자체 가 풍부 한 조작 을 하지 않 았 기 때문에 res 를 단독으로 사용 하지 마 십시오.log_logstore_pull 문법,결합 etable_map 와 esearch_table_map 문 구 를 함께 사용 하 는 것 이 의미 가 있 습 니 다.이 편 도 e 와 결합 합 니 다.table_map 와 esearch_map_table 의 사용 은 예 를 들 어 보 여 줍 니 다.
장면 1: 지정 한 시간 내 모든 데이터 가 져 오기
메모:이곳 의 시간 은 로그 획득 시간 입 니 다.
DSL 편성 문법
res_log_logstore_pull(..., ["cid","name","room_number"],from_time=1567038284,to_time=1567038500)

가 져 온 데이터
#         field     cid,name,room_number     ,,         ,            logstore             

cid:12345
name:maki
room_number:1111

cid:12346
name:vicky
room_number:2222

cid:12347
name:mary
room_number:3333

cid:12345
name:maki
room_number:1111

장면 2:흑백 명단 파 라 메 터 를 설정 하여 끌 어 온 데 이 터 를 걸 러 냅 니 다.
1.DSL 편성 문법(화이트 리스트 만 설정)
#      ,   room_number     1111          
res_log_logstore_pull(..., ["cid","name","room_number","status"],from_time=1567038284,to_time=1567038500,fetch_include_data="room_number:1111")

가 져 온 데이터
#     ferch_include_data    ,     room_numver:1111         ,         。

status: check in
cid:12345
name:maki
room_number:1111

status:leave
cid:12345
name:maki
room_number:1111

2.DSL 편성 문법(블랙리스트 만 설정)
res_log_logstore_pull(..., ["cid","name","room_number","status"],from_time=1567038284,to_time=1567038500,fetch_exclude_data="room_number:1111")

가 져 온 데이터
#       fetch_exclude_data       room_number:1111         。
status:check in
cid:12346
name:vicky
room_number:2222

status:check in
cid:12347
name:mary
room_number:3333

3.DSL 편성 문법(흑백 리스트 설정)
res_log_logstore_pull(..., ["cid","name","room_number","status"],from_time=1567038284,to_time=1567038500,fetch_exclude_data="status:leave",fetch_include_data="status:check in")

가 져 온 데이터
#             ,            ,         status:leave  ,     status:leave    ,        ,       ,          status:check in       status: check in     ,          .
status:check in
cid:12345
name:maki
room_number:1111

status:check in
cid:12346
name:vicky
room_number:2222

status:check in
cid:12347
name:mary
room_number:3333

장면 3:목표 logstore 데 이 터 를 지속 적 으로 끌 어 올 립 니 다.
DSL 편성 문법
대상 logstore 의 데이터 가 지속 적 으로 기록 된다 면,우 리 는 지속 적 으로 끌 어 올 릴 때 to 를 설정 해 야 합 니 다.time 매개 변 수 는 None 이면 되 고 fetch 도 설정 할 수 있 습 니 다.interval 에서 끌 어 올 리 는 시간 간격 을 설정 하고 refreshinterval_max 당 김 오류 가 발생 했 을 때 소 둔 재 시도 의 최대 시간 간격
res_log_logstore_pull(..., ["cid","name","room_number","status"],from_time=1567038284,to_time=None,fetch_interval=15,refresh_interval_max=60)
#       ,         ,      ,          ,      ,          。

장면 4:메 인 키 유지 보수 에서 추출 한 목표 logstore 데이터 오픈(잠시 추천 하지 않 음)
주의 사항
현재 이 기능 은 모든 데 이 터 를 logstore 의 같은 shard 에 저장 할 수 있 기 때문에 당분간 사용 하 는 것 을 추천 하지 않 습 니 다.
배경
Google 의 개인 정보 logstore 와 호텔 정보 logstore 의 데 이 터 를 예 로 들 면 logstore 와 데이터 베이스 가 다 르 기 때문에 logstore 의 데 이 터 는 기록 만 할 수 있 고 삭제 할 수 없 기 때문에 일치 할 때 삭 제 된 데 이 터 를 일치 시 키 지 않 으 려 면 홈 키 유지 기능 을 켜 야 합 니 다.
수요 데모
지금 우 리 는 호텔 정보 logstore 에서 아직 떠 나 지 않 은 모든 손님 정 보 를 끌 어 내 려 고 합 니 다.status=leave 일 때 손님 이 호텔 을 떠 났 다 는 뜻 이기 때문에 이 정 보 를 끌 어 올 릴 필요 가 없습니다.
DSL 편성 문법
res_log_logstore_pull(..., ["cid","name","room_number","status","time"],from_time=1567038284,to_time=None,primary_keys="cid",delete_data="status:leave")

얻 은 데이터
##      name maki         status leave ,      ,       maki       ,
time:1567038284
status:check in
cid:12346
name:vicky
room_number:2222

time:1567038500
status:check in
cid:12347
name:mary
room_number:3333

주의 하 다.
주의해 야 할 것 은 primarykeys 는 현재 단일 문자열 만 설정 할 수 있 습 니 다.이 는 logstore 데이터 의 중간 값 을 유일한 필드 로 설정 해 야 합 니 다.예 를 들 어 샘플 의 cid,데이터베이스 와 유사 한 유일한 메 인 키 를 설정 하고 primary 를 설정 해 야 합 니 다.keys 때,deletedata 도 None 가 아니 어야 의미 가 있 습 니 다.
한층 더 참고 하 다.
  • 로그 서비스 최 적 실천 집계(지속 업데이트)
  • 완전한 DSL 문법 소개 와 참고 PDF 다운로드(지속 업데이트)
  • 데이터 가공 안내
  • 소개:
  • 기능 개술
  • 개념
  • 원리
  • 빠 른 시작:
  • 쾌속 시작(SLB 일지 가공 실전)
  • 콘 솔 조작
  • 원본 과 대상 방문 비밀 키 설정
  • 작업 진단 지침
  • 성능 가이드
  • 원가 최적화 안내

  • 문법:
  • DSL 문법 소개
  • 검색 문자열 문법
  • JMES 문법 소개
  • 관리 설정:
  • 하위 계 정 권한 부여 설정


  • 성 철
    원문 을 읽다
    본 고 는 운 서 지역사회 의 오리지널 내용 으로 허락 없 이 전재 할 수 없다.

    좋은 웹페이지 즐겨찾기