안녕하세요.

자바에서 카우치베이스 Object 생성 시 비동기로 Insert 하는 방법을 알아보겠습니다.


카우치베이스의 장점과 특성, 그리고 동기(sync) 방식으로 Insert 하는 방법은

아래 링크를 참조해주시면 됩니다.


카우치베이스 장점과 특성

카우치베이스(Couchbase) Java Insert 하기 (동기방식)


그럼 비동기로 insert 하는 방식입니다.

비동기로 멀티건을 insert 하는 예시 입니다.


public JsonDocument asyncBulkInsert(String insertJsonStr) { JsonDocument result = null; List docList = new ArrayList<>(); for (int i = 0; i < 3; i++) { long nextIdNumber = bucket.counter(SAMPLE_COUNTER_KEY, 1).content(); String docId = "test_"+nextIdNumber; String testName = "Test " + nextIdNumber + " Name"; JsonObject content = JsonObject.fromJson(insertJsonStr); content.put("id", nextIdNumber); content.put("name", testName ); docList.add(JsonDocument.create(docId, content)); } // async bulkWrite result = Observable .from(docList) .flatMap(doc -> bucket.async().insert(doc)) .last() .toBlocking() .single(); return result; }


RxJava 와 람다 표현식으로 구현된 부분이며, 카우치베이스 자바 문서를 참조하실 수 있습니다.

비동기로 구현해야할 여러 케이스가 있을 수 있는데, 이와 같은 방법으로 Bulk Insert 할 수 있습니다.


이상입니다.


도움이 되셨다면 공감 을 눌러주세요.


감사합니다.


  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기