인터넷이 발명된 이후 이 공간에서 만들어지는 데이터는 계속적으로 증가하고 있습니다. 특히 소셜 네트워크 서비스(SNS)는 현대 디지털 시대에서 빠질 수 없는 일부가 되었고, SNS에서 생성되는 데이터 역시 폭발적으로 증가하고 있습니다. 우리는 하루 중 많은 시간을 SNS를 통해 정보를 공유하고 소통하는데 사용하고 있고, 이 과정에서 SNS에서 남은 데이터는 다양한 분야에서 중요한 역할을 하고 있습니다.
SNS 데이터의 중요성
막대한 양의 데이터 생성
매일 수십억 건의 트윗, 게시물, 사진, 비디오 등의 다양한 데이터가 SNS 플랫폼에 업로드되고 있습니다. 이로 인하여 생성되는 데이터의 양은 엄청난 규모에 이르며, 이는 현대 사회의 트렌드와 문화를 어떤 데이터들 보다 정확하게 방영하고 있습니다.
대중의 의견과 감정의 반영
SNS는 대중의 의견과 감정을 실시간으로 반영하는 플랫폼입니다. 사람들은 일상적인 경험부터 사회, 정치, 경제 등 다양한 주제에 대한 의견을 SNS를 통해 나누고 있습니다. 이는 정부, 기업, 연구자 등에게 실시간으로 대중의 생각을 파악하는데 큰 도움이 됩니다.
경제적 활용 가능성
기업들은 소비자의 피드백을 분석하여 제품과 서비스를 개선하고 마케팅 전략을 세우는 데에 SNS 데이터를 적극적으로 활용하고 있습니다. 단순한 SNS 게시물의 소비자 반응을 넘어서, 사람들이 생성한 데이터의 분석을 통해서도 소비자들의 단기 관심사, 요구사항, 트렌드 등을 연구합니다. 그 결과로 기업은 더욱 효과적인 비즈니스 전략을 수립할 수 있습니다.
SNS 데이터 수집
SNS 데이터 수집이란?
온라인상의 사회관계 망을 이용해 업로드 된 개인 및 단체의 데이터를 수집하는 것
우리도 SNS 데이터를 수집해서 분석을 할 수 있을까요? 당연히 가능합니다. 작게는 공개된 SNS 데이터들을 메모장에 옮겨 적고, 이렇게 수집된 데이터들의 공통점이나 그 의미를 고민해보는 것입니다. 하지만, 이런 방법은 투입 시간이나 분석 자료의 규모 면에서 효율적인 방법은 아닙니다.
SNS 데이터에 접근하는 방법 중에는 SNS 서비스 제공자가 제공하는 Open API(개방형 API)를 이용하는 것입니다.
API(Application Programming Interface)는 인증 절차를 거쳐 사용자가 요청한 데이터를 SNS 서비스 제공자에게 요청하고, 이후 요청된 값을 반환해서 전달하는 역할을 합니다.
Open API를 이용한 일반적인 데이터 수집 절차는 아래와 같습니다.
- 개발자 사이트 등록
- API 접근 권한 획득
- API 요청
- 클라이언트가 서버에 요청을 전송 (클라이언트는 API 문서를 참고하여, 서버가 이해하는 방식으로 요청 형식을 지정해야 합니다.)
- 대부분의 SNS는 Restful API 방식을 채택하고 있습니다.
- Restful API에는 4가지 메서드를 통해 데이터를 요청합니다.
- 서버가 클라이언트와 클라이언트가 해당 요청에 대한 권한을 가지고 있는지 인증
- 서버가 요청을 수신하고 내부 데이터 작업 수행
- 서버가 클라이언트에 결과를 반환
- 클라이언트가 서버에 요청을 전송 (클라이언트는 API 문서를 참고하여, 서버가 이해하는 방식으로 요청 형식을 지정해야 합니다.)
- 반환 객체 확인
- 응답코드 유형
- 200 : 일반 성공 응답
- 201 : POST 메서드 성공 응답
- 400 : 서버가 처리할 수 없는 잘못된 요청
- 404 : 리소스를 찾을 수 없
- 응답코드 유형
- 결과 파싱
Restful API의 4가지 메서드
GET
- 클라이언트는 GET을 사용하여 서버의 지정된 URL에 있는 리소스에 접근합니다.
- GET 요청을 캐싱하고 Restful API 요청에 파라미터를 넣어 전송하여 전송 전에 데이터를 필터링하도록 서버에 지시합니다.
POST
- 클라이언트는 POST를 사용하여 서버에 데이터를 전송합니다.
- GET과 달리 URL에 데이터 정보를 넣는 것이 아니라, 요청 API의 Body에 데이터를 전송합니다.
PUT
- 클라이언트는 PUT을 사용하여 서버의 기존 리소스를 업데이트합니다.
- Restful 웹 서비스에서 동일한 PUT 요청을 여러 번 전송해도 결과는 동일합니다.
DELETE
- 클라이언트는 DELETE 요청을 사용하여 리소스를 제거합니다.
수집 가능한 SNS
대표적으로 API를 통해 SNS 데이터를 제공하는 곳을 알아보고자 합니다.
- 네이버
- 뉴스, 블로그, 쇼핑 등의 다양한 정보의 수집 가능
- API 사용자 등록 절차가 비교적 간단함
- 국내 이슈, 사용자 선호도 등을 실시간으로 알아보기에 용이함
- https://developers.naver.com/
- 트위터
- 140자 길이 제한의 Tweet이라는 메시지로 실시간 의견 게재 가능한 SNS
- Oauth 인증 방식을 기반으로 API 제공
- Tweet Stream API를 제공하여, 실시간으로 원하는 주제의 Tweet만을 필터링하여 수집가능
- https://developer.twitter.com/
- 페이스북
- 회원가입 없이도 접근이 가능하도록 개방성을 높임
- Graph API로 데이터 제공
- 특정 관심사만 필터링하여 데이터를 수집하는 것에는 한계가 있음
- API 탐색기를 제공하여, 제공 받고자 하는 API를 코드로 변환하는 것 가능
- https://developers.facebook.com/
SNS 데이터는 어쩌면 디지털 시대의 보물로서, 우리의 생활과 사회를 보다 풍성하게 만드는데 도움을 줄 수 있습니다. 이를 적극적으로 분석하고 활용함으로써 더욱 지능적이고 효율적인 의사결정이 가능해지고, 미래의 발전을 이끌어나갈 수 있을 것입니다. 여러분도 SNS의 일상적인 사용과 함께, SNS에서 발생되는 데이터에 대한 관심과 활용에 대한 고민을 해보시면 좋을 것 같습니다.