diff --git a/couchbase/.gitignore b/persistence-modules/couchbase/.gitignore
similarity index 100%
rename from couchbase/.gitignore
rename to persistence-modules/couchbase/.gitignore
diff --git a/couchbase/README.md b/persistence-modules/couchbase/README.md
similarity index 100%
rename from couchbase/README.md
rename to persistence-modules/couchbase/README.md
diff --git a/couchbase/mvnw b/persistence-modules/couchbase/mvnw
similarity index 100%
rename from couchbase/mvnw
rename to persistence-modules/couchbase/mvnw
diff --git a/couchbase/mvnw.cmd b/persistence-modules/couchbase/mvnw.cmd
similarity index 100%
rename from couchbase/mvnw.cmd
rename to persistence-modules/couchbase/mvnw.cmd
diff --git a/couchbase/pom.xml b/persistence-modules/couchbase/pom.xml
similarity index 97%
rename from couchbase/pom.xml
rename to persistence-modules/couchbase/pom.xml
index 823b33ee29..b98c0cc387 100644
--- a/couchbase/pom.xml
+++ b/persistence-modules/couchbase/pom.xml
@@ -10,7 +10,7 @@
com.baeldung
- parent-modules
+ persistence-modules
1.0.0-SNAPSHOT
diff --git a/couchbase/src/main/java/com/baeldung/couchbase/async/CouchbaseEntity.java b/persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/async/CouchbaseEntity.java
similarity index 100%
rename from couchbase/src/main/java/com/baeldung/couchbase/async/CouchbaseEntity.java
rename to persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/async/CouchbaseEntity.java
diff --git a/couchbase/src/main/java/com/baeldung/couchbase/async/person/Person.java b/persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/async/person/Person.java
similarity index 100%
rename from couchbase/src/main/java/com/baeldung/couchbase/async/person/Person.java
rename to persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/async/person/Person.java
diff --git a/couchbase/src/main/java/com/baeldung/couchbase/async/person/PersonCrudService.java b/persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/async/person/PersonCrudService.java
similarity index 100%
rename from couchbase/src/main/java/com/baeldung/couchbase/async/person/PersonCrudService.java
rename to persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/async/person/PersonCrudService.java
diff --git a/couchbase/src/main/java/com/baeldung/couchbase/async/person/PersonDocumentConverter.java b/persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/async/person/PersonDocumentConverter.java
similarity index 100%
rename from couchbase/src/main/java/com/baeldung/couchbase/async/person/PersonDocumentConverter.java
rename to persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/async/person/PersonDocumentConverter.java
diff --git a/couchbase/src/main/java/com/baeldung/couchbase/async/person/RegistrationService.java b/persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/async/person/RegistrationService.java
similarity index 100%
rename from couchbase/src/main/java/com/baeldung/couchbase/async/person/RegistrationService.java
rename to persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/async/person/RegistrationService.java
diff --git a/couchbase/src/main/java/com/baeldung/couchbase/async/service/AbstractBucketService.java b/persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/async/service/AbstractBucketService.java
similarity index 100%
rename from couchbase/src/main/java/com/baeldung/couchbase/async/service/AbstractBucketService.java
rename to persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/async/service/AbstractBucketService.java
diff --git a/couchbase/src/main/java/com/baeldung/couchbase/async/service/AbstractCrudService.java b/persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/async/service/AbstractCrudService.java
similarity index 100%
rename from couchbase/src/main/java/com/baeldung/couchbase/async/service/AbstractCrudService.java
rename to persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/async/service/AbstractCrudService.java
diff --git a/couchbase/src/main/java/com/baeldung/couchbase/async/service/BucketService.java b/persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/async/service/BucketService.java
similarity index 100%
rename from couchbase/src/main/java/com/baeldung/couchbase/async/service/BucketService.java
rename to persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/async/service/BucketService.java
diff --git a/couchbase/src/main/java/com/baeldung/couchbase/async/service/ClusterService.java b/persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/async/service/ClusterService.java
similarity index 100%
rename from couchbase/src/main/java/com/baeldung/couchbase/async/service/ClusterService.java
rename to persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/async/service/ClusterService.java
diff --git a/couchbase/src/main/java/com/baeldung/couchbase/async/service/ClusterServiceImpl.java b/persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/async/service/ClusterServiceImpl.java
similarity index 100%
rename from couchbase/src/main/java/com/baeldung/couchbase/async/service/ClusterServiceImpl.java
rename to persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/async/service/ClusterServiceImpl.java
diff --git a/couchbase/src/main/java/com/baeldung/couchbase/async/service/CrudService.java b/persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/async/service/CrudService.java
similarity index 100%
rename from couchbase/src/main/java/com/baeldung/couchbase/async/service/CrudService.java
rename to persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/async/service/CrudService.java
diff --git a/couchbase/src/main/java/com/baeldung/couchbase/async/service/JsonDocumentConverter.java b/persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/async/service/JsonDocumentConverter.java
similarity index 100%
rename from couchbase/src/main/java/com/baeldung/couchbase/async/service/JsonDocumentConverter.java
rename to persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/async/service/JsonDocumentConverter.java
diff --git a/couchbase/src/main/java/com/baeldung/couchbase/async/service/TutorialBucketService.java b/persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/async/service/TutorialBucketService.java
similarity index 100%
rename from couchbase/src/main/java/com/baeldung/couchbase/async/service/TutorialBucketService.java
rename to persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/async/service/TutorialBucketService.java
diff --git a/couchbase/src/main/java/com/baeldung/couchbase/intro/CodeSnippets.java b/persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/intro/CodeSnippets.java
similarity index 100%
rename from couchbase/src/main/java/com/baeldung/couchbase/intro/CodeSnippets.java
rename to persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/intro/CodeSnippets.java
diff --git a/couchbase/src/main/java/com/baeldung/couchbase/mapreduce/CouchbaseKeyGenerator.java b/persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/mapreduce/CouchbaseKeyGenerator.java
similarity index 100%
rename from couchbase/src/main/java/com/baeldung/couchbase/mapreduce/CouchbaseKeyGenerator.java
rename to persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/mapreduce/CouchbaseKeyGenerator.java
diff --git a/couchbase/src/main/java/com/baeldung/couchbase/mapreduce/DuplicateKeyException.java b/persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/mapreduce/DuplicateKeyException.java
similarity index 100%
rename from couchbase/src/main/java/com/baeldung/couchbase/mapreduce/DuplicateKeyException.java
rename to persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/mapreduce/DuplicateKeyException.java
diff --git a/couchbase/src/main/java/com/baeldung/couchbase/mapreduce/RandomUUIDGenerator.java b/persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/mapreduce/RandomUUIDGenerator.java
similarity index 100%
rename from couchbase/src/main/java/com/baeldung/couchbase/mapreduce/RandomUUIDGenerator.java
rename to persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/mapreduce/RandomUUIDGenerator.java
diff --git a/couchbase/src/main/java/com/baeldung/couchbase/mapreduce/StudentGrade.java b/persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/mapreduce/StudentGrade.java
similarity index 100%
rename from couchbase/src/main/java/com/baeldung/couchbase/mapreduce/StudentGrade.java
rename to persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/mapreduce/StudentGrade.java
diff --git a/couchbase/src/main/java/com/baeldung/couchbase/mapreduce/StudentGradeKeyGenerator.java b/persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/mapreduce/StudentGradeKeyGenerator.java
similarity index 100%
rename from couchbase/src/main/java/com/baeldung/couchbase/mapreduce/StudentGradeKeyGenerator.java
rename to persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/mapreduce/StudentGradeKeyGenerator.java
diff --git a/couchbase/src/main/java/com/baeldung/couchbase/mapreduce/StudentGradeQueryBuilder.java b/persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/mapreduce/StudentGradeQueryBuilder.java
similarity index 100%
rename from couchbase/src/main/java/com/baeldung/couchbase/mapreduce/StudentGradeQueryBuilder.java
rename to persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/mapreduce/StudentGradeQueryBuilder.java
diff --git a/couchbase/src/main/java/com/baeldung/couchbase/mapreduce/StudentGradeService.java b/persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/mapreduce/StudentGradeService.java
similarity index 100%
rename from couchbase/src/main/java/com/baeldung/couchbase/mapreduce/StudentGradeService.java
rename to persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/mapreduce/StudentGradeService.java
diff --git a/couchbase/src/main/java/com/baeldung/couchbase/n1ql/BucketFactory.java b/persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/n1ql/BucketFactory.java
similarity index 100%
rename from couchbase/src/main/java/com/baeldung/couchbase/n1ql/BucketFactory.java
rename to persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/n1ql/BucketFactory.java
diff --git a/couchbase/src/main/java/com/baeldung/couchbase/n1ql/CodeSnippets.java b/persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/n1ql/CodeSnippets.java
similarity index 100%
rename from couchbase/src/main/java/com/baeldung/couchbase/n1ql/CodeSnippets.java
rename to persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/n1ql/CodeSnippets.java
diff --git a/couchbase/src/main/java/com/baeldung/couchbase/spring/person/Person.java b/persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/spring/person/Person.java
similarity index 100%
rename from couchbase/src/main/java/com/baeldung/couchbase/spring/person/Person.java
rename to persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/spring/person/Person.java
diff --git a/couchbase/src/main/java/com/baeldung/couchbase/spring/person/PersonCrudService.java b/persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/spring/person/PersonCrudService.java
similarity index 100%
rename from couchbase/src/main/java/com/baeldung/couchbase/spring/person/PersonCrudService.java
rename to persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/spring/person/PersonCrudService.java
diff --git a/couchbase/src/main/java/com/baeldung/couchbase/spring/person/PersonDocumentConverter.java b/persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/spring/person/PersonDocumentConverter.java
similarity index 100%
rename from couchbase/src/main/java/com/baeldung/couchbase/spring/person/PersonDocumentConverter.java
rename to persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/spring/person/PersonDocumentConverter.java
diff --git a/couchbase/src/main/java/com/baeldung/couchbase/spring/person/RegistrationService.java b/persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/spring/person/RegistrationService.java
similarity index 100%
rename from couchbase/src/main/java/com/baeldung/couchbase/spring/person/RegistrationService.java
rename to persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/spring/person/RegistrationService.java
diff --git a/couchbase/src/main/java/com/baeldung/couchbase/spring/service/BucketService.java b/persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/spring/service/BucketService.java
similarity index 100%
rename from couchbase/src/main/java/com/baeldung/couchbase/spring/service/BucketService.java
rename to persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/spring/service/BucketService.java
diff --git a/couchbase/src/main/java/com/baeldung/couchbase/spring/service/ClusterService.java b/persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/spring/service/ClusterService.java
similarity index 100%
rename from couchbase/src/main/java/com/baeldung/couchbase/spring/service/ClusterService.java
rename to persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/spring/service/ClusterService.java
diff --git a/couchbase/src/main/java/com/baeldung/couchbase/spring/service/ClusterServiceImpl.java b/persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/spring/service/ClusterServiceImpl.java
similarity index 100%
rename from couchbase/src/main/java/com/baeldung/couchbase/spring/service/ClusterServiceImpl.java
rename to persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/spring/service/ClusterServiceImpl.java
diff --git a/couchbase/src/main/java/com/baeldung/couchbase/spring/service/CrudService.java b/persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/spring/service/CrudService.java
similarity index 100%
rename from couchbase/src/main/java/com/baeldung/couchbase/spring/service/CrudService.java
rename to persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/spring/service/CrudService.java
diff --git a/couchbase/src/main/java/com/baeldung/couchbase/spring/service/JsonDocumentConverter.java b/persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/spring/service/JsonDocumentConverter.java
similarity index 100%
rename from couchbase/src/main/java/com/baeldung/couchbase/spring/service/JsonDocumentConverter.java
rename to persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/spring/service/JsonDocumentConverter.java
diff --git a/couchbase/src/main/java/com/baeldung/couchbase/spring/service/TutorialBucketService.java b/persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/spring/service/TutorialBucketService.java
similarity index 100%
rename from couchbase/src/main/java/com/baeldung/couchbase/spring/service/TutorialBucketService.java
rename to persistence-modules/couchbase/src/main/java/com/baeldung/couchbase/spring/service/TutorialBucketService.java
diff --git a/couchbase/src/main/resources/application.properties b/persistence-modules/couchbase/src/main/resources/application.properties
similarity index 100%
rename from couchbase/src/main/resources/application.properties
rename to persistence-modules/couchbase/src/main/resources/application.properties
diff --git a/couchbase/src/main/resources/logback.xml b/persistence-modules/couchbase/src/main/resources/logback.xml
similarity index 100%
rename from couchbase/src/main/resources/logback.xml
rename to persistence-modules/couchbase/src/main/resources/logback.xml
diff --git a/couchbase/src/test/java/com/baeldung/couchbase/async/AsyncIntegrationTest.java b/persistence-modules/couchbase/src/test/java/com/baeldung/couchbase/async/AsyncIntegrationTest.java
similarity index 100%
rename from couchbase/src/test/java/com/baeldung/couchbase/async/AsyncIntegrationTest.java
rename to persistence-modules/couchbase/src/test/java/com/baeldung/couchbase/async/AsyncIntegrationTest.java
diff --git a/couchbase/src/test/java/com/baeldung/couchbase/async/AsyncIntegrationTestConfig.java b/persistence-modules/couchbase/src/test/java/com/baeldung/couchbase/async/AsyncIntegrationTestConfig.java
similarity index 100%
rename from couchbase/src/test/java/com/baeldung/couchbase/async/AsyncIntegrationTestConfig.java
rename to persistence-modules/couchbase/src/test/java/com/baeldung/couchbase/async/AsyncIntegrationTestConfig.java
diff --git a/couchbase/src/test/java/com/baeldung/couchbase/async/person/PersonCrudServiceIntegrationTestConfig.java b/persistence-modules/couchbase/src/test/java/com/baeldung/couchbase/async/person/PersonCrudServiceIntegrationTestConfig.java
similarity index 100%
rename from couchbase/src/test/java/com/baeldung/couchbase/async/person/PersonCrudServiceIntegrationTestConfig.java
rename to persistence-modules/couchbase/src/test/java/com/baeldung/couchbase/async/person/PersonCrudServiceIntegrationTestConfig.java
diff --git a/couchbase/src/test/java/com/baeldung/couchbase/async/person/PersonCrudServiceLiveTest.java b/persistence-modules/couchbase/src/test/java/com/baeldung/couchbase/async/person/PersonCrudServiceLiveTest.java
similarity index 100%
rename from couchbase/src/test/java/com/baeldung/couchbase/async/person/PersonCrudServiceLiveTest.java
rename to persistence-modules/couchbase/src/test/java/com/baeldung/couchbase/async/person/PersonCrudServiceLiveTest.java
diff --git a/couchbase/src/test/java/com/baeldung/couchbase/async/service/ClusterServiceLiveTest.java b/persistence-modules/couchbase/src/test/java/com/baeldung/couchbase/async/service/ClusterServiceLiveTest.java
similarity index 100%
rename from couchbase/src/test/java/com/baeldung/couchbase/async/service/ClusterServiceLiveTest.java
rename to persistence-modules/couchbase/src/test/java/com/baeldung/couchbase/async/service/ClusterServiceLiveTest.java
diff --git a/couchbase/src/test/java/com/baeldung/couchbase/mapreduce/StudentGradeServiceLiveTest.java b/persistence-modules/couchbase/src/test/java/com/baeldung/couchbase/mapreduce/StudentGradeServiceLiveTest.java
similarity index 100%
rename from couchbase/src/test/java/com/baeldung/couchbase/mapreduce/StudentGradeServiceLiveTest.java
rename to persistence-modules/couchbase/src/test/java/com/baeldung/couchbase/mapreduce/StudentGradeServiceLiveTest.java
diff --git a/couchbase/src/test/java/com/baeldung/couchbase/n1ql/IntegrationTestConfig.java b/persistence-modules/couchbase/src/test/java/com/baeldung/couchbase/n1ql/IntegrationTestConfig.java
similarity index 100%
rename from couchbase/src/test/java/com/baeldung/couchbase/n1ql/IntegrationTestConfig.java
rename to persistence-modules/couchbase/src/test/java/com/baeldung/couchbase/n1ql/IntegrationTestConfig.java
diff --git a/couchbase/src/test/java/com/baeldung/couchbase/n1ql/N1QLLiveTest.java b/persistence-modules/couchbase/src/test/java/com/baeldung/couchbase/n1ql/N1QLLiveTest.java
similarity index 100%
rename from couchbase/src/test/java/com/baeldung/couchbase/n1ql/N1QLLiveTest.java
rename to persistence-modules/couchbase/src/test/java/com/baeldung/couchbase/n1ql/N1QLLiveTest.java
diff --git a/couchbase/src/test/java/com/baeldung/couchbase/spring/IntegrationTest.java b/persistence-modules/couchbase/src/test/java/com/baeldung/couchbase/spring/IntegrationTest.java
similarity index 100%
rename from couchbase/src/test/java/com/baeldung/couchbase/spring/IntegrationTest.java
rename to persistence-modules/couchbase/src/test/java/com/baeldung/couchbase/spring/IntegrationTest.java
diff --git a/couchbase/src/test/java/com/baeldung/couchbase/spring/IntegrationTestConfig.java b/persistence-modules/couchbase/src/test/java/com/baeldung/couchbase/spring/IntegrationTestConfig.java
similarity index 100%
rename from couchbase/src/test/java/com/baeldung/couchbase/spring/IntegrationTestConfig.java
rename to persistence-modules/couchbase/src/test/java/com/baeldung/couchbase/spring/IntegrationTestConfig.java
diff --git a/couchbase/src/test/java/com/baeldung/couchbase/spring/person/PersonCrudServiceLiveTest.java b/persistence-modules/couchbase/src/test/java/com/baeldung/couchbase/spring/person/PersonCrudServiceLiveTest.java
similarity index 100%
rename from couchbase/src/test/java/com/baeldung/couchbase/spring/person/PersonCrudServiceLiveTest.java
rename to persistence-modules/couchbase/src/test/java/com/baeldung/couchbase/spring/person/PersonCrudServiceLiveTest.java
diff --git a/couchbase/src/test/java/com/baeldung/couchbase/spring/service/ClusterServiceLiveTest.java b/persistence-modules/couchbase/src/test/java/com/baeldung/couchbase/spring/service/ClusterServiceLiveTest.java
similarity index 100%
rename from couchbase/src/test/java/com/baeldung/couchbase/spring/service/ClusterServiceLiveTest.java
rename to persistence-modules/couchbase/src/test/java/com/baeldung/couchbase/spring/service/ClusterServiceLiveTest.java
diff --git a/couchbase/src/test/resources/logback.xml b/persistence-modules/couchbase/src/test/resources/logback.xml
similarity index 100%
rename from couchbase/src/test/resources/logback.xml
rename to persistence-modules/couchbase/src/test/resources/logback.xml
diff --git a/persistence-modules/pom.xml b/persistence-modules/pom.xml
index a99a180390..53e408c3a5 100644
--- a/persistence-modules/pom.xml
+++ b/persistence-modules/pom.xml
@@ -21,6 +21,7 @@
blaze-persistence
core-java-persistence
core-java-persistence-2
+ couchbase
elasticsearch
flyway
flyway-repair
diff --git a/pom.xml b/pom.xml
index a5abb59502..17a914d619 100644
--- a/pom.xml
+++ b/pom.xml
@@ -765,7 +765,6 @@
aws-modules
checker-framework
- couchbase
core-groovy-modules
core-java-modules
@@ -1035,8 +1034,7 @@
aws-modules
checker-framework
- couchbase
-
+
core-groovy-modules
core-java-modules