정상혁정상혁

많은 분들이 그렇듯이 저도 생활정보는 네이버로 찾고 일과 관련된 정보나 웹을 구석구석 뒤지고 싶을 때는 google을 쓰고 있습니다. google을 써오기는 해도 "검색기록"이라고는 것을 신경도 안 쓰고 있었는데, 얼마 전에 한번 찍어보니 꽤나 신기하더군요.

이 기능을 의식을 하고 쓴 것은 아니였는데 , 제가 어떤 키워드로 검색을 했는지 오래전의 기록부터 쫙 나오니깐 기분이 묘했습니다. 상위질문, 상위사이트, 상위클릭, 월별 일별 통계까지 나오니 좀 섬뜻하기도 했어요 삭제하고 싶은 키워드도 있는데 어떻게 삭제하는지 모르겠습니다 ^^;다음부터는 기록에 남기고 싶지 않는 검색어는 "일시중지"를 선택하고 검색해야겠군요. 얼마 전에 "http://blog.daum.net/suk5kyu/11605503[구글, 사용자 검색기록 보관기간 18개월로 단축 ]" 이라는 기사를 보았었는데, 정말 이것이 축적되면 무서운 도구가 될 수도 있을 것 같아요. 찜찜하신 분들은 구글에서 로그인하지 않은 상태로 검색하거나 기록 기능을 꺼야겠죠.

google search history1

google search history2

검색기록의 첫 페이지에 나와 있는 다음의 문구가 눈에 띕니다.

맞춤 검색은 Google 검색을 개선한 기능으로서 이전의 검색을 토대로 귀하의 검색 결과를 표시합니다. 처음에는 큰 차이를 느낄 수 없지만 검색 기록이 축적되면서 맞춤 검색 결과가 지속적으로 향상됩니다.

이번달 16일, jmirror님이 주최하신 'http://www.joonj.com/wordpress/archives/319[차세대 검색에 대한 블러거 토론회]'에 참석했습니다. 저는 특별한 발언없이 경청만 하다 왔지만, 다른 분들의 깊이 있는 말씀을 듣고 생각을 정리해볼 수 있는 자리였습니다. 거기서 몇몇 분들이 '검색의 개인화’가 앞으로 필요하다고 말씀하셨습니다. 그 때 저는 그 실제 적용 사례가 생각나지 않았었는데, 바로 이 구글의 검색기록을 한 번 찍어보고 갔었더라면 위의 화면이 머리 속에서 연결이 되었을건데 하는 아쉬움이 지금에서야 듭니다.

위의 토론회에서 들은 말인데, 구글이 유투브 동영상 검색에서 야후를 야후의 동영상 검색을 누르는데 걸린 시간은 6주였고, 국내 3위 업체였던 네이버는 지식검색으로 야후, 엠파스를 4주만에 추월했다고 합니다. 그렇게 짧은 시간내에 그것이 가능했던 이유는 검색엔진을 바꾸는 것에 대한 이사비용(스위칭코스트)이 거의 없기 때문이 아닐까 합니다. 메일, 블로그,커뮤니티의 경우에는 서비스를 바꾼다면 데이터 이전, 바뀐 주소 홍보 등의 번거로움을 감수해야하는 것에 비해서 검색은 그렇지 않다는 것이죠. 그리고 검색결과의 상호비교가 쉽기 때문에 조금이라도 나은 점이 보이는 서비스로 지체없이 옮겨갈 수 있습니다.

검색에서도 구글 검색 기록과 같이 쌓여가는 데이터가 있고, 그것을 바탕으로 개인화된 서비스를 제공할 수 있다면 스위칭코스트를 낳을 수 있다고 봅니다. 그리고 개인 검색기록 데이터를 쌓고 그 것을 바탕으로 개인화된 검색결과를 내놓을 수 있는 기술은 쉽게 따라할수 있는 일이 아닐 것 같아요. 네이버에 있는 지식인의 자료, 광고, 알바가 정리한 정보도 큰 자산이지만 그것만으로 사용자를 완벽히 묶어둘 수는 없지 않을까요?

정상혁정상혁

부서원들과 같이 하는 세미나를 위해서 정리했었던 자료 중의 일부입니다. 대충 알고 있었던 것도 막상 누가 물어보면 한마디로 설명하는 것은 어렵다고 종종 느낍니다. 세미나 발표 준비를 하면서 모르면서 알고 있었다고 착각했던 부분을 많이 발견할 수 있어서 좋았습니다.

약간 엉뚱한 이야기지만, 포스트를 작성하는 동안 '그림1’을 다시 보면서 최근 읽고 있는 'The world is flat'이라는 책의 내용이 생각났습니다. 그 책의 처음에는 기업의 아웃소싱에 대한 사례가 많이 나옵니다. 기업의 핵심 업무가 아니고 밖에서 할 수있는 업무들은 보다 싼 비용으로 처리할 수 있는 해외의 조직으로 넘기는 사례가 늘어나고 있다는 것이죠. 각 업무단의 코드에는 핵심로직만 남기고 공통적인 처리는 따로 정의해 둔 것을 weaving해서 쓴다는 내용과 왠지 비슷하게 보이더군요. (그런데 책을 아직 1장 밖에 못 읽었어요)

AOP 용어

  • AOP :보안, 예외등과 같이 프로그램에 처리해야 하는 다양한 관점을 분리(Separation of concerns)시키고 각각의 관점별로 구현을 한 후 이를 조합하여 완성된 프로그램을 만들고자 하는 개념. (참고자료1)

  • 횡단관점(crosscutting concerns) : 분리된 모듈로 작성하기 힘든 시스템 전반적으로 산재된 기능(예로 보안, 로그, 인증)

  • 핵심관점(main concern) : 해당시스템의 핵심가치와 목적이 드러난 관심영역 (primary concern, core concern)

  • 조인포인트(join point) : 횡단 관심모듈의 기능이 삽입되어 호출될 수 있는 실행가능한 특정위치

  • 포인트컷(point cut) : 조인포인트의 집합. 어떤 클래스의 어느 조인포인트를 사용할 것인지 결정하는 선택 기능. Code와 advice를 연결해주는 설정정보.

  • 어드바이스(advice) : 각 조인포인트에서 행하는 행위, 삽입될 수 있는 코드. cross-cutting concern을 구현한 코드.

  • 조합(weaving) : 핵심관점코드와 어드바이스를 조합해 애플리케이션으로 완성하는 과정

  • 기술적 용어로서의 asepct : Advice와 point-cut을 함께 지칭하는 단어

참고자료

정상혁정상혁

sa 계정으로 로그인해서,

select
    p.hostname,
    p.ipaddr,
    p.cnt,
    (select l.name from syslogins l where l.suid = p.suid) name
from
    (select s.hostname, s.ipaddr, s.suid,
        count(*) cnt from sysprocesses s
group by s.hostname, s.ipaddr ,s.suid ) p

현재 어느 로그인 아이디에서 많이 프로세스가 붙어있는지 볼 때 쓰면 됩니다. 내장 함수 중에 비슷한게 있는지 모르겠네요.

간단한 내용이지만 필요하신 분들이 검색엔진을 타고 오셔서 찾아가시길 바라는 의도에서 올립니다.