개발 Q&A

제목 AWS 웹과 IOS, Android 앱 간의 데이터베이스 동기화 관련 질문입니다.
카테고리 DB
글쓴이 브레인토스트 작성시각 2018/04/02 11:43:21
댓글 : 2 추천 : 0 스크랩 : 0 조회수 : 10598   RSS

안녕하세요.AWS 관련 질문입니다.

지금 만들고 있는 프로젝트가태블릿 같은 모바일 디바이스와

서버간의 데이터베이스 실시간 동기화를 생각하고 있는데요.

태블릿 같은 경우에는 온/오프라인의 변경이 자주 있다보니 일종의 데이터의 플래그 변수를 통해서

동기화를 하기보다는 AWS의 AppSync나 firebase와 같은 별도의 서비스를 알아보고 있습니다.

그런데 생각보다 이해하기가 조금 어려워서요.

이미 구축되어있는 데이터베이스가 있고 이 데이터를 마이그레이션 하면서 데이터 통신의 대한 솔루션을 찾아야 하는데

어떤식으로 접근해야할지 조금 어렵습니다.

혹시 이에 대한 힌트를 주실 수 있을까요 ??

기존의 데이터베이스는 AWS의 RDS(mariaDB)를 사용중이고이 데이터베이스를 마이그레이션하고

이 데이터들은 ios, Android 그리고 웹에서도 보여져야 합니다.

 

제가 이해한 AppSync와 Firebase의 특징은 NoSQL형태로 데이터베이스를 관리하고

내가 만드는 별도의 데이터에 접근 가능한 API를 만드는 것이 아니라

직접 데이터베이스에 앱, 웹에서 접근하는 방식인 것 같은데요.

 

어떤식으로 이 문제에 대해서 접근해야 이해하기가 좋을지

그리고 방향에 대한 힌트를 주시면 감사하겠습니다.

 

현재 서비스의 환경은

AWS

EC2(우분투), RDS(mariaDB), 프레임워크(Codeigniter)로 이루어져 있고

앱에서 생성되는 데이터는 전송을 선택하는 경우에만 서버로 전송되고 가져오는 요청을 하는경우에만 가져오도록 설계되어있습니다.

 다음글 iconv 특수문자 처리 질문 (4)
 이전글 CI 기초질문입니다. (4)

댓글

이제다시 / 2018/04/02 15:28:41 / 추천 0

AppSync, Firebase 등은 통칭 BaaS (Backend as a Service) 라고 부릅니다.

보통 프론트 (앱 / 웹) 에서는 DB 에 접근할 수 없기때문에 API 형태로 java, php 등을 이용하여 Backend 서비스를 구축 합니다. 

 

BaaS 서비스는 자체 API를 제공하여 Backend 에서 필요한 DB 접속 혹은 Push 전송등의 기능을 제공해 줍니다. 

기존 RDBMS 와 NoSql 은 설계방식에서 부터 차이가 나며, 원하는 형태가 나올 수 있도록 마이그레이션을 진행 하여야 합니다. 또한 API 를 호출하는 부분도 제공하는 API를 이용하는 방식으로 변경하셔야 합니다.  

 

기존 서비스를 마이그레이션 하는것 보다는 실시간 데이터 바인딩이 필요한 부분으로 한정지어 사용하는 것을 추천드리겠습니다.

혹은 웹소켓 등을 이용하여 기존데이터를 활용한 실시간 서비스를 구축하는 방법도 있습니다. 

브레인토스트 / 2018/04/02 15:37:01 / 추천 0
답변감사합니다