Blackboard 앱 사용 활동
모바일 사용 활동
이 페이지에는 Blackboard 모바일 사용에 관한 활동 정보를 얻기 위해 Blackboard 데이터베이스에서 활동 누적기 SQL 쿼리를 포함하고 있습니다. 이 정보는 이미 데이터베이스에 접근할 수 있는 기능과 정보를 쿼리할 권한을 가지고 있다고 가정합니다. 이 쿼리는 보고 목적으로 설계되었기 때문에 쓰기 권한이 필요 없습니다.
중요
읽기 전용 액세스 권한을 가진 계정을 사용하여 실수로 변경되는 것을 방지하는 것이 좋습니다. 직접 복잡한 시스템의 데이터베이스를 변경하면 다운타임을 포함해 심각한 문제가 발생할 수 있습니다. 이 문서의 이 페이지에 나열된 쿼리는 시스템을 변경하지 않습니다.
이 페이지에는 SQL 쿼리 코드 샘플이 지정되어 있습니다. 이 쿼리들은 추가 작업이 어떻게 진행되는지에 대한 아이디어를 제공합니다. 데이터 기록 방법에는 몇 가지 제한 사항이 있습니다. 특정 이벤트가 어떤 앱이나 플랫폼에서 실행되었는지 현재로서 확인할 수 없습니다. 데이터를 볼 때 블랙보드 앱과 블랙보드 교수자 앱이 모두 동일하게 표시됩니다.
SQL 쿼리 예제에서 'Bblearn'은 예제 데이터베이스 스키마로 사용됩니다. Blackboard 데이터베이스에는 bb_bb60이나 bblearn_stats와 같은 여러 대체 스키마에 보관된 데이터가 저장될 수 있습니다. 쿼리의 첫 부분은 스키마 변형을 고려하여 변경해야 할 수도 있습니다.
특정 기간 동안 총 모바일 로그인 횟수를 계산합니다.
이 쿼리는 사용자가 모든 장치의 앱에서 블랙보드에 로그인한 횟수를 보여줍니다. 사용자가 로그인할 때마다 한 번으로 계산됩니다. 사용자가 수신 상태가 좋지 않은 지역에서 연결이 반복적으로 끊길 경우, 디바이스에서 하나의 세션으로 인식될지라도 여러 로그인이 보고될 수 있다. 이 샘플은 한 달간의 데이터를 분석합니다.
select Count(*) from bblearn.activity_accumulator where TIMESTAMP > '01-MAR-2016' and TIMESTAMP < '01-APR-2016' and data like '%Mobile Login%'
참고
Blackboard 데이터베이스의 활동 누적 테이블은 웹 강제 인증을 통해 로그인하는 모든 모바일 앱 사용자의 로그인 시도를 여러 번 기록합니다.
특정 기간 동안 고유 사용자 수를 계산하는 중
이 쿼리는 특정 기간 동안 로그인한 고유 사용자 수를 보여줍니다. 이 기간 동안 사용된 앱이나 장치의 수와 상관없이 로그인과 연결된 데이터베이스 ID를 사용하기 때문에 사용자는 단 한 명으로만 표시됩니다. 예를 들어, 사용자가 이 쿼리를 반복적으로 사용하여 월별 보고서를 작성하는 경우, 각 쿼리는 고유해야 합니다. 실행할 때마다 각 사용자는 한 번씩 계산됩니다. 각 사용자는 로그인한 달마다 계산되지만, 한 달에 한 번만 계산됩니다. 이 샘플은 한 달간의 데이터를 분석합니다.
select Count(Distinct(user_pk1)) from bblearn.activity_accumulator where TIMESTAMP > '01-MAR-2016' and TIMESTAMP < '01-APR-2016' and data like '%Mobile Login%'
코스별 역할에 따른 고유 사용자 로그인 횟수 계산
코스 역할에 따라 로그인한 고유 사용자 수를 보여주는 쿼리입니다. activity_accumulator 테이블을 course_users(등록) 테이블과 결합합니다. course_users 테이블에 각 사용자의 코스 및 조직 역할이 포함되어 있어 Blackboard와 Blackboard 교수자 앱에 접근하는 사용자 수를 대략적으로 추정할 수 있습니다. "특정 기간 동안 고유 사용자 수를 계산하는 중"에 적용되는 가이드가 이 쿼리에도 적용됩니다. 이 샘플은 한 달간 교수자의 고유 모바일 로그인 횟수를 반환합니다.
select Count(Distinct(user_pk1)) from bblearn.activity_accumulator aa join bblearn.course_users cu on aa.user_pk1 = cu.users_pk1 where cu.role = 'P' and timestamp > '01-NOV-2018' and timestamp < '30-NOV-2018' and aa.data like '%Mobile Login%';
"ROLE ID"에 해당하는 코스나 조직에서는 cu.role을 사용해야 합니다. 일부 사용자가 잘못된 앱에 로그인할 수도 있습니다. 교수자는 실수로 Blackboard 앱에 로그인할 수 있다. 결과 분석 시 이 점을 고려하십시오.
지정된 기간 동안의 모든 개별 로그인 기록
이 쿼리는 '특정 기간 동안 모바일 로그인 총수 계산' 쿼리와 사실상 같지만 행 수를 계산하는 것이 아니라 모든 원시 데이터를 보여준다는 점이 다릅니다. 데이터를 조작하고 패턴을 찾거나 심층 보고서를 작성하기 위해 내보낼 계획이 있는 경우 이 방법이 유용할 수 있습니다. '*' 문자는 테이블의 모든 열을 나타낸다는 의미입니다.
select * from bblearn.activity_accumulator where TIMESTAMP > '01-MAR-2016' and TIMESTAMP < '01-APR-2016' and data like '%Mobile Login%'
특정 기간 동안 사용자가 포럼 스레드를 본 각각의 시간을 모두 표시합니다.
이 쿼리는 로그인 데이터를 보는 Mobile Analytics 페이지 대신 학생들이 앱에서 수행하는 작업을 살펴봅니다. 누군가 Blackboard 앱에서 포럼 토론글을 볼 때마다 빌딩 블록은 activity_accumulator 테이블에 'mobile.view.thread' 항목을 기록합니다. 이 쿼리는 학생이 포럼에서 스레드를 본 시점을 보여줍니다. 이 데이터를 다른 테이블의 데이터와 결합하거나 Microsoft Excel과 같은 프로그램에서 조작하여 특정 학생, 과정 및 사용 패턴에 대한 정보를 확인할 수 있습니다.
select * from bblearn.activity_accumulator where TIMESTAMP > '01-MAR-2016' and TIMESTAMP < '01-APR-2016' and data = 'mobile.view.thread'
모든 모바일 사용량을 표시합니다.
다음 쿼리는 특정 월의 모든 Mobile 항목을 검색합니다. 그러나 쿼리 결과에는 '모바일'이라는 단어가 포함된 페이지가 포함될 수 있습니다. 데이터를 다른 형식으로 변환하여 사용 패턴을 찾는 것이 더 유용할 수 있습니다. 모바일 장치에서 가장 자주 접근하는 항목을 확인하기 위해 사용량이 기록된 항목을 예로 들 수 있습니다.
select * from bblearn.activity_accumulator where TIMESTAMP > '01-MAR-2016' and TIMESTAMP < '01-APR-2016' and data like '%Mobile%'
작성 중입니다.
다음 쿼리는 위에서 언급한 기본 사항 중 일부를 포함하고 있으며, 데이터를 더 세분화하고 읽기 쉽게 만들기 위해 데이터를 집계하는 방법을 보여줍니다.
블랙보드 사용자 조회
이 쿼리에는 users 테이블에 있는 모든 데이터가 포함되어 있습니다. 각 사용자의 사용자 이름 및 관련 PK값이 여기에 포함되어 있습니다. Blackboard 모바일 제품 사용 여부와 상관없이 모든 Blackboard 사용자입니다.
select * from bblearn.users
특정 열에 쿼리를 제한
이 페이지의 쿼리는 모든 열을 지정할 수 있는 쿼리 부분에서 '*' 지정자를 사용하였습니다. SQL은 실제 값이 제공되는지 여부와 상관없이 테이블의 모든 열을 반환합니다. 다음 쿼리는 activity_accumulator 테이블의 모든 행을 반환하지만 5개 열만 반환합니다. 이를 통해 사용자와 강좌, 콘텐츠 항목을 확인할 수 있을 뿐만 아니라 데이터 필드의 정보와 활동이 발생한 시점의 타임스탬프도 제공합니다. 다른 열은 표시되지 않습니다.
select user_pk1, course_pk1, content_pk1, data, timestamp from bblearn.activity_accumulator
여러 테이블을 결합
두 테이블의 결과를 결합하면 관련 사용자에게 데이터를 제한하여 필터링하는 데 도움이 될 수 있습니다. 사용자 이름을 가져와 활동과 직접 연결함으로써 수동 조회가 필요 없게 할 수 있습니다. SQL은 여러 테이블의 결과를 결합하기 위해 조인을 사용합니다. 조인은 한 테이블의 값이 다른 테이블의 동일한 값과 같음을 SQL where 문을 통해 알리는 것입니다.
다음 쿼리는 테이블을 사용한 SQL 조인 예시입니다. 조인 과정은 어려울 수 있고 때로는 많은 시행착오가 필요할 수 있습니다. 더 복잡한 쿼리를 수행하고자 한다면 조인에 대해 배우는 것이 유익할 것입니다. 데이터베이스 서버에서 처리해야 하는 복잡한 쿼리는 더 많은 작업을 필요로 하며 문제가 더 자주 발생할 수 있습니다.
다음은 한 줄씩 예제를 제공하고 다른 쿼리를 작성하는 데 좋은 참고자료입니다. 이 쿼리는 앞서 소개한 여러 부분을 제한 조건이 설정된 여러 테이블의 특정 열만을 결합하여 하나의 쿼리로 제공합니다.
두 개의 다른 테이블에서 열을 지정합니다. 테이블 이름은 열 뒤에 정의됩니다.
테이블 두 개를 선택하고 한 글자짜리 닉네임을 지정하세요.
조건을 넣을 곳은 어디입니까? SQL에서 테이블 간의 관련성을 설명하는 것은 조건으로 간주됩니다. 그러므로 SQL이 데이터를 연결할 수 있도록 어떤 열이 동일한지 명시해야 합니다.추가 조건: 타임스탬프 시작 날짜
추가 조건: 타임스탬프 종료 날짜
추가 조건: 데이터 열 제한기
select u.user_id, a.data, a.timestamp from bblearn.activity_accumulator a, bblearn.users u where u.pk1=a.user_pk1 and a.TIMESTAMP > '01-MAR-2016' and a.TIMESTAMP < '01-APR-2016' and a.data like '%Mobile Login%'
사용자 테이블에 u.user_id = 'StudentLogin과 같은 조건을 추가하는 것은 쿼리와 마찬가지로 가능합니다. 학생의 실제 사용자 이름을 알지 못해도 activity_accumulator 테이블에 쿼리를 실행할 수 있게 됩니다.
다른 테이블과 조인할 수 있습니다. 조건과 조인을 더 추가하면 쿼리 시간은 길어지지만, 결국 더 우수한 데이터를 획득할 수 있습니다. 콘텐츠 이름과 강좌 이름으로 쿼리를 채워 activity_accumulator에서 출력하는 많은 데이터베이스 ID를 대체할 수 있습니다.
참조 데이터
모바일 이벤트
다음 이벤트는 activity_accumulator 테이블의 모바일 웹 서비스 구성 요소에서 기록됩니다. 이 목록은 시간이 흐르면서 변경될 수 있습니다. 이벤트는 앱 자체가 아닌 구성 요소에 의해 기록되기 때문에 어떤 앱을 사용하든 데이터 형식은 동일하다. 이전 'mobile.view.thread' 쿼리에서 스레드 보기 매개변수는 모바일 목록에 추가 텍스트가 포함된 경우 아래 표에 있는 항목으로 대체될 수 있습니다. 동일한 작업에 서로 다른 항목이 있는 경우도 있습니다. 녹화 형식이 어느 시점에서 변경되었기 때문에 시간이 흐르면서 결과를 얻기 위해서는 두 종류의 항목을 모두 검색해야 할 수 있습니다.
이벤트 | '데이터' 테이블의 'activity_accumulator' 필드 항목 |
|---|---|
블로그 목록 확인하기 | mobile.list.블로그 |
게시물 목록 확인 | 모바일.list.블로그.항목 |
게시물 댓글 확인 | mobile.list.블로그.comments |
저널에 주석 추가 | 모바일.목록.저널.추가.항목.댓글 |
블로그에 댓글 추가하기 | mobile.list.블로그.add.entry.comment |
저널 항목 추가 | mobile.list.journal.add.entry |
블로그 항목 추가 | 모바일.리스트.블로그.새글추가 |
저널 목록 확인하기 | mobile.list.저널 |
게시물 목록 확인 | mobile.list.journal.항목 |
게시물 댓글 확인 | mobile.list.journal.comments |
포럼 보기 | mobile.list.포럼 |
스레드 보기를 유지합니다. | 모바일.리스트.스레드 |
스레드 보기를 선택하면 관련 메시지가 한눈에 보입니다. | mobile.view.thread |
스레드 게시글 보기 | mobile.view.thread.post |
공지사항 보기 | mobile.view.announcements |
명단 보기 | mobile.view.명단 |
성적 확인 | mobile.view.grades |
저널 항목 추가 | mobile.add.journal.entry |
DB 게시물 추가 완료 | mobile.add.thread.post |
DB 게시물에 댓글 추가 | mobile.add.thread.post.comment |
콘텐츠 항목 보기 | 모바일 콘텐츠 보기 |
Bb 모바일 앱을 사용하는 학생 및 교직원 수를 어떻게 알 수 있나요?
버전 *.2.9 이상의 Blackboard Mobile 웹 서비스 빌딩 블록을 사용하는 서버에서 사용자가 Blackboard Mobile 앱에 로그인할 때 BbMobile 사용자 역할이 보조 교육기관 역할로 추가된다.
학생
다음은 BbMobile 사용자가 보조 기관 역할로 연결된 모든 학생 사용자를 찾는 방법에 대한 쿼리입니다('학생' 역할이 institution_roles_pk1 = 1이라고 가정할 때).
SELECT count(distinct u.pk1) as count_BbMobileUser FROM users u, user_roles r, institution_roles ir WHERE u.institution_roles_pk1 = '1' AND u.pk1 = r.users_pk1 AND r.institution_roles_pk1 = ir.pk1 AND ir.role_name = 'BbMobile User';
모교
BbMobile 사용자가 보조 교육기관 역할로 연결된 모든 교직원 사용자를 찾는 쿼리입니다('교직원' 역할의 institution_roles_pk1이 2라고 가정할 때).
SELECT count(distinct u.pk1) as count_BbMobileUser FROM users u, user_roles r, institution_roles ir WHERE u.institution_roles_pk1 = '2' AND u.pk1 = r.users_pk1 AND r.institution_roles_pk1 = ir.pk1 AND ir.role_name = 'BbMobile User';
1개월 동안의 총 모바일 로그인 횟수 계산
SELECT Count(*) from bblearn.activity_accumulator WHERE TIMESTAMP > '01-MAR-2016' AND TIMESTAMP < '01-APR-2016' AND data like '%Mobile Login%';
1개월 동안 순사용자 수 계산
SELECT Count(Distinct(user_pk1)) FROM bblearn.activity_accumulator WHERE TIMESTAMP > '01-MAR-2016' AND TIMESTAMP < '01-APR-2016' AND data like '%Mobile Login%';