마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

안드로이드 SQLite - DB 간 통신...질문드립니다

0 추천
코드상의 질문은 아니고 방법적인 측면에서 조언을 좀 구하고자 질문드립니다.

 

DB - 웹서버 - 안드로이드(SQLite) 구성으로 HTTP 통신으로 통신을 하고 있습니다.

 

DB 안에는 수십개의 테이블이 존재하고. 안드로이드내부DB(SQLite) 는 DB 와 동일한 구조의 테이블이 존재합니다.

(단, 부분적으로 몇개정도)

 

그러니까 메인 웹서비스가 존재하고, 연동을 위해 모바일서비스를 구축한 사례라고 볼수 있겠네요.

내부DB 를 쓴이유는 오프라인에서도 부분적 사용이 가능하며, 부분적 데이터의 재사용을 통해 네트워크 트래픽/서버부하를 줄일수 있으니까.

예상이지만 카카오톡 경우에도 대화록이라던지 내부DB 에 저장하는 방식을 취하겠죠?

 

현재 DB의 여러 테이블에서 데이터를 쫙 뺴오고 그것을 byte 배열로 JSON 형식으로 만들어 한개의 String 배열로 전송합니다. 만약 USERtable 전체 전송이라면 요청 1개의 데이터 전송 InputStream 끊음(반복) 방식이 아니라.

요청 서버에서 User 전체 목록을 한개의 스트링으로 보내고 Stream 을 끊는 방식입니다.

 

안드로이드 코드는 간단해지지만 확장성에서 효율적이지 못한것 같은데요.

테이블을 몇십개 추가해서 가져오고 싶은데. 이 모든 테이블을 한개의 String 에 보내면 또 안드로이드 에서 받아와서 다시 재 배열시키는것도 문제가 생기고...

안드로이드에서 쓰레드등을 이용해서 HttpCon 을 여러개 얻어서 요청을 한번에 여러개 보내고 한번에 여러개 받아오는 방식

 

이런 통신을 구현하는게 옳은 방식일까요???

단위는...테이블 단위정도로??

 

조금 설명이 이상해서 이해가 힘드실지도 ㅠ
AND chobo (4,690 포인트) 님이 2013년 8월 29일 질문

1개의 답변

0 추천
어차피 json 부분은 다 돼있는것 같으니까 서버에서 offset으로 특정 구간을 가져오게 수정만 해놓으면 되지 않나요?

1~1000개 가져오고, 그 다음에 1001~2000 가져오고 하면 될 것 같아요
쎄미 (162,410 포인트) 님이 2013년 8월 30일 답변
특정구간을 가져온다는 그런것 보다는...쓰레드를 여러개...사용하는방식...
이게 좋은 방식인지가 궁금해서요...
AsynTask 를 여러개 돌리는 방식이라는거죠
서버가 버텨준다면 한 번에 여러 개를 돌려도 상관없지 싶어요
...