데이터 시각화 디자인

데이터 시각화의 원리부터 실전 사례까지

데이터가 들려주는 이야기를 시각화하라!

《데이터 시각화 디자인》은 어떤 비지니스를 불문하고 데이터를 시각화할 기회를 가진 모든 분들을 대상으로 합니다. '대시보드(dashboard)'를 만들거나 일상적인 업무를 하면서 'Excel을 이용해 표에서 그래프를 그리기 위해 어떤 그래프를 이용하는 것이 가장 좋을까?' 고민하는 분들을 위해 쓴 책입니다.

이 책에서 말하는 '데이터 시각화'(비주얼라이제이션, visualization)는 그저 손 안의 데이터를 그래프로 나타내는 것만은 아닙니다. 데이터를 아무리 시각화한다 해도, 사람이 그 안에서 중요한 정보를 읽어낼 수 없다면 시각화의 의미가 없기 때문입니다. 어디까지나 그 데이터가 나타내는 의미를 명확하게 함으로써, 좀 더 많은 사람들(오디언스, audience)이 흥미를 갖고 볼 수 있도록 하는 것이 데이터 시각화의 목적입니다.

이 책에는 일본 여성 유일의 태블로 젠 마스터(Tableau ZEN MASTER)인 필자가 오랜 기간에 걸쳐 쌓아온 데이터 시각화의 노하우, 모범 사례, 안티 패턴 등을 정리, 분류한 정수가 담겨 있습니다. 구체적인 사례와 함께 가능한 세세한 설명을 덧붙였으며, 또한 세미나 등의 현장에서 자주 받는 질문에 대한 답변들도 모았으므로 어떤 의미로는 ‘FAQ’라고도 할 수 있습니다.

 

도서 상세 이미지

나가타 유카리 (永田ゆかり)

액센츄어, 라쿠텐, KPMG 등을 거치고 독립해서 PATH Data Analytics & Visualization(PATH 주식회사)를 설립했다. 일본 태블로 사용자 모임 회장을 맡고 있으며, 2019년 2월에는 일본 여성으로서는 처음으로 태블로 젠 마스터(Tableau ZEN MASTER)에 선정됐다. 데이터 활용 컨설팅, 데이터 비주얼라이제이션, 데이터 애널리틱스, 데이터 분석 및 활용을 위한 크리티컬 싱킹, 기업 임원 대상의 데이터 활용 연수 등을 주제로 한 트레이닝을 제공하고 있다. ‘비즈니스와 데이터의 연결’, ‘데이터 비주얼라이제이션’, ‘데이터 시각화 디자인’, ‘데이터 애널리틱스’ 등의 주제의 강연 활동 및 미디어 기고도 하고 있다. 데이터비주얼랩 주식회사 대표이사(Data Viz Lab), 데이터 미디어 ‘Data Viz Labs’ 주재, 와세다 대학 트랜스내셔널 HRM 연구소 초빙 연구원이다. 와세다 대학 정치경제학부를 졸업했다(서적 발행 당시 게재된 데이터 기준).

김연수 (yeonsoo.kim.wt@gmail.com)

소프트웨어 개발과 함께 업무 생산성 향상을 위한 활동을 지원하기 위해 꾸준히 학습하고 실험하고 있다. ‘나와 주변을 끊임없이 변화시키고 좋은 지식을 전달하는 것’과 ‘회사에 소속되지 않고도 지속할 수 있는 삶’에 관심이 많다. 옮긴 책으로는 『유니티 게임 디자인 바이블』, 『마케팅 성공률을 높여주는 구글 애널리틱스』(이상 위키북스), 『카이젠 저니』, 『알파제로를 분석하며 배우는 인공지능』, 『구글에서 배운 직장인 실무 컴퓨터 활용 45』, 『파이썬으로 배우는 게임 개발 입문편/실전편』(이상 제이펍), 『IT 전쟁과 평화』, 『케라스로 배우는 신경망 설계와 구현』, 『팀 토폴로지』(이상 에이콘출판사) 등이 있다.

  • ▣ 01장: 들어가며
    •  
  • ▣ 02장: BPF란?
    • 2.1 cBPF
    • 2.2 eBPF
    • 2.3 BCC, bpftrace, 그리고 IO Visor
    • 2.4 트레이싱과 샘플링
    •  
  • **▣ 03장: BPF의 개념 **
    • 3.1 BPF 아키텍처
    • 3.2 BPF 프로그램 타입
    • 3.3 맵과 오브젝트 피닝
      • 3.3.1 맵
      • 3.3.2 오브젝트 피닝
    • 3.4 BTF와 CO-RE
    • 3.5 테일 콜과 BPF to BPF 콜
    • 3.6 JIT
    • 3.7 XDP와 하드웨어 오프로드
    • 3.8 헬퍼 함수
    • 3.9 검사기
    • 3.10 제약사항
    • 3.11 다른 방법과 비교
      • 3.11.1 커널 모듈
      • 3.11.2 시스템 탭
      • 3.11.3 LTTng
      • 3.11.4 Perf
      • 3.11.5 {f,l,s,uf}trace
    •  
  • ▣ 04장: 이벤트
    • 4.1 kprobe
    • 4.2 uprobe
    • 4.3 트레이스포인트
    • 4.4 USDT
    • 4.5 소프트웨어 및 하드웨어 이벤트
    •  
  • ▣ 05장: 스택 트레이스
    • 5.1 스택 트레이스 종류
      • 5.1.1 프레임포인터
      • 5.1.2 DWARF
      • 5.1.3 LBR
      • 5.1.4 ORC
    • 5.2 스택 정보 수집
    • 5.3 가시화
      • 5.3.1 플레임그래프
      • 5.3.2 플레임스코프
    •  
  • ▣ 06장: BPF 다루기
    • 6.1 환경 설정
      • 6.1.1 리눅스 머신
      • 6.1.2 커널과 커널 헤더
      • 6.1.3 배포판별 패키지
      • 6.1.4 도커
    • 6.2 BCC tools
    • 6.3 bpftrace
      • 6.3.1 예제로 살펴보기
      • 6.3.2 기본 문법
      • 6.3.3 프루브
      • 6.3.4 필터
      • 6.3.5 액션
      • 6.3.6 변수
      • 6.3.7 함수
      • 6.3.8 복잡한 구조체 확인
      • 6.3.9 플레임스코프
    •  
  • ▣ 07장: BCC 프로그래밍
    • 7.1 예제로 살펴보기
    • 7.2 BPF 초기화
    • 7.3 이벤트
      • 7.3.1 kprobe와 kretprobe
      • 7.3.2 트레이스포인트
      • 7.3.3 kfunc와 kretfunc
      • 7.3.4 uprobe와 uretprobe
      • 7.3.5 USDT
    • 7.4 맵
      • 7.4.1 파이썬에서 맵 다루기
    • 7.5 커널 및 사용자 영역의 데이터
    • 7.6 출력 채널
    • 7.7 심벌 처리
    • 7.8 스택 트레이스
    • 7.9 TC와 XDP
    • 7.10 오브젝트 피닝
    • 7.11 테일 콜
    •  
  • ▣ 08장: BPF tool과 BTF
    • 8.1 BPF tool
    • 8.2 BTF
    •  
  • ▣ 09장: 시스템과 애플리케이션
    • 9.1 시스템
      • 9.1.1 CPU
      • 9.1.2 메모리
      • 9.1.3 파일 시스템
      • 9.1.4 블록 I/O
      • 9.1.5 네트워크
    • 9.2 애플리케이션
      • 9.2.1 C/C++
      • 9.2.2 고랭
      • 9.2.3 러스트
      • 9.2.4 자바
      • 9.2.5 파이썬
      • 9.2.6 노드
      • 9.2.7 루비
      • 9.2.8 펄
      • 9.2.9 PHP
      • 9.2.10 Bash
    •  
  • ▣ 10장: 컨테이너 및 클러스터 환경
    • 10.1 컨테이너
      • 10.1.1 cgroup
      • 10.1.2 네임스페이스
      • 10.1.3 컨테이너 필터링
      • 10.1.4 USDT, UPROBE
    • 10.2 쿠버네티스
      • 10.2.1 kubectl Trace
      • 10.2.2 Inspektor Gadget
    •  
  • ▣ 11장: 모니터링
    • 11.1 ebpf exporter
    • 11.2 tracee
    •  
  • ▣ 부록A: 트러블슈팅
    •  
  • ▣ 부록B: 저수준 BPF 프로그래밍
    • B.1 libbpf 프로그래밍
    • B.2 커널의 BPF 예제
    •  
  • ▣ 부록C: 결함 주입
    •  
  • ▣ 부록D: 실습 환경 구축