Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge the "Simplifying NoSQL Database Integration with Jakarta NoSQL" blogpost into staging #3751

Merged
merged 220 commits into from
May 10, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
220 commits
Select commit Hold shift + click to select a range
afca15a
chore: added info about key-value databases
dearrudam Feb 12, 2024
45accc6
chore: added info about document databases
dearrudam Feb 12, 2024
11d03c8
chore: added info about jakarta nosql, data and jnosql
dearrudam Feb 13, 2024
60001cf
chore: added the challenge od the blogpost
dearrudam Feb 13, 2024
dd9680b
chore: added images about jnopo game
dearrudam Feb 14, 2024
0a7220b
chore: fix jakarta nosql section
dearrudam Feb 14, 2024
629210f
chore: add .img_border_light info into block texts
dearrudam Feb 14, 2024
b734607
chore: delimiting jnosql sequence diagram section
dearrudam Feb 14, 2024
abc989e
chore: added resources link list
dearrudam Feb 14, 2024
2e591a5
text update suggestions
fabio-franco Feb 16, 2024
0059ea9
chore: added jnopo architecture info
dearrudam Feb 17, 2024
28a1ecc
chore: added jnopo architecture info
dearrudam Feb 17, 2024
7d5f1d6
chore: added running jnopo game
dearrudam Feb 17, 2024
fe7456b
chore: changes on meeting the jnopo game section
dearrudam Feb 19, 2024
30ebc06
chore: rename Max player to Player A
dearrudam Feb 19, 2024
32690f7
chore: change description of the game
dearrudam Feb 19, 2024
7271164
chore: change description of the game
dearrudam Feb 19, 2024
e6a75a5
chore: fixed images address
dearrudam Feb 19, 2024
dcbd8d4
chore: changes on challenge time section
dearrudam Feb 19, 2024
e104212
chore: defined next sections
dearrudam Feb 19, 2024
735c847
chore: defined next sections
dearrudam Feb 19, 2024
9ff742a
chore: added ref link
dearrudam Feb 19, 2024
777f9f9
chore: added ref link
dearrudam Feb 19, 2024
ce63d7c
chore: using column databases instead of wide-column database term
dearrudam Feb 21, 2024
25cd99b
chore: added key-value nosql image
dearrudam Feb 21, 2024
fea7c58
chore added column database type image
dearrudam Feb 21, 2024
2fb4f98
chore added column database type image
dearrudam Feb 21, 2024
27a8f8e
chore added document database type image
dearrudam Feb 21, 2024
0e61fc3
chore added graph database type image
dearrudam Feb 21, 2024
48d8ef5
chore: added setup databases locally section
dearrudam Feb 24, 2024
297dc15
chore: added eclipse jnosql configuring database section
dearrudam Feb 24, 2024
10e5d22
chore: added modeling with jakarta nosql and retrieve data with jakar…
dearrudam Feb 25, 2024
fce6738
chore: added modeling with jakarta nosql and retrieve data with jakar…
dearrudam Feb 25, 2024
9bc4e99
core: fix phase
dearrudam Feb 25, 2024
a416656
core: fix phase
dearrudam Feb 25, 2024
29b8a21
chore: changed package from java sample codes
dearrudam Feb 25, 2024
b116eba
chore: added put all the components to play section
dearrudam Feb 25, 2024
dbab3c5
chore: added testing the application doc
dearrudam Feb 26, 2024
d899367
chore: added testing the application doc
dearrudam Feb 26, 2024
e2c02de
chore: added testing the application doc
dearrudam Feb 26, 2024
ee164b2
chore: added switching database section
dearrudam Feb 26, 2024
9721ba9
chore: added switching database section
dearrudam Feb 26, 2024
87f48a0
chore: completed database switching section
dearrudam Feb 26, 2024
75b127e
chore: fixed typos
dearrudam Feb 26, 2024
0eb230b
chore: added note recommendation
dearrudam Feb 26, 2024
a98f140
chore: finishing the first version for this blog post
dearrudam Feb 26, 2024
9b5a5fd
refactor: rename project directory
dearrudam Feb 26, 2024
313a0b6
improving introduction of jakartanosql blog
kmacedovarela Mar 6, 2024
29586e4
review and improvements on nosql overview section
kmacedovarela Mar 6, 2024
6263566
first round of adjustments on headings hierarchy and titles
kmacedovarela Mar 6, 2024
af44603
Review of introduction for jakarta data and nosql
kmacedovarela Mar 6, 2024
22738c6
removing db ranking list
kmacedovarela Mar 6, 2024
f73da34
JNoSQL review
kmacedovarela Mar 6, 2024
c6f901e
chore: fixed headings and added special thanks section
dearrudam Mar 19, 2024
4c619f7
chore: adjustments on the section headings
dearrudam Mar 19, 2024
1e7e726
chore: fixed special thanks section
dearrudam Mar 19, 2024
4623151
chore: renamed file to follow the expected blog post naming format
dearrudam Mar 19, 2024
386d1d4
chore: added post description
dearrudam Mar 20, 2024
e7c4fe9
chore: fixed the Java SDK version utilization
dearrudam Mar 20, 2024
0e3db47
chore: added one more book reference
dearrudam Mar 20, 2024
b1bf1db
chore: split blog post into 3 parts
dearrudam Apr 9, 2024
c1a9fd9
chore: fixed blog posts links;
dearrudam Apr 9, 2024
95574d6
chore: renamed files and fixes typos
dearrudam Apr 21, 2024
1ba4d0c
chore: update to use Jakarta Data 1.0.0.RC1 api
dearrudam Apr 24, 2024
d020d1c
chore: update to use DataRepository interface from Jakarta Data 1.0.0…
dearrudam Apr 24, 2024
d7a9dee
chore: fixed broken links
dearrudam Apr 24, 2024
b653323
chore: enhance seo-description
dearrudam Apr 29, 2024
9d1a290
chore: enhance sql vs nosql key difference section
dearrudam Apr 29, 2024
570e655
chore: enhance introduction to nosql section
dearrudam Apr 29, 2024
3011086
chore: enhance the next steps section
dearrudam Apr 29, 2024
9b0b0ed
chore: enhance the next steps section
dearrudam Apr 29, 2024
6c4e00a
chore: removed duplicated info from the next steps section
dearrudam Apr 29, 2024
a448614
chore: removed duplicated info from the next steps section
dearrudam Apr 29, 2024
ed55626
chore: removed duplicated info from the next steps section
dearrudam Apr 29, 2024
453c7d5
chore: integrating the quote section to the text body
dearrudam Apr 29, 2024
b0a8c51
chore: enhance the blog_description info
dearrudam Apr 29, 2024
1393968
chore: enhance seo-description
dearrudam Apr 29, 2024
c936141
chore: enhance blog_description
dearrudam Apr 29, 2024
3ffb7ef
chore: removed commented text
dearrudam Apr 29, 2024
e088e99
chore: fixed typos
dearrudam Apr 29, 2024
989ff6e
chore: enhance the JNopo explanation
dearrudam Apr 29, 2024
e2ebf28
chore: removed line termination
dearrudam Apr 29, 2024
f41100b
chore: enhance the promotion for the next blog post
dearrudam Apr 29, 2024
36b9460
chore: enhance the text about the blog post series
dearrudam Apr 29, 2024
881e36d
chore: enhance the conclusion text
dearrudam Apr 29, 2024
e4643c5
chore: removed duplicated information
dearrudam Apr 29, 2024
0019d34
chore: renamed blog post and fixed links
dearrudam May 1, 2024
8af0371
chore: enhance seo-description
dearrudam May 2, 2024
04af24e
chore: enhance blog description at posts/2024-05-13-jakarta-nosql-cha…
dearrudam May 2, 2024
d528fb4
chore: removed commented lines from posts/2024-05-13-jakarta-nosql-ch…
dearrudam May 2, 2024
7d8aa5a
chore: enhance introduction secton of posts/2024-05-13-jakarta-nosql-…
dearrudam May 2, 2024
31aaee3
chore: enhance introduction section of posts/2024-05-13-jakarta-nosql…
dearrudam May 2, 2024
6b10050
chore: enhance key takeways section of posts/2024-05-13-jakarta-nosql…
dearrudam May 2, 2024
3fcb751
chore: enhance key takeways of posts/2024-05-13-jakarta-nosql-challen…
dearrudam May 2, 2024
54989a5
chore: fixed typo in posts/2024-05-13-jakarta-nosql-challenge-switchi…
dearrudam May 2, 2024
6ff3881
chore: enhance next steps section of posts/2024-05-13-jakarta-nosql-c…
dearrudam May 2, 2024
6d39385
chore: removed duplicated information from posts/2024-05-13-jakarta-n…
dearrudam May 2, 2024
47cf035
chore: fixed indentation of special thanks section
dearrudam May 2, 2024
2705966
chore: fixed the seo-title of the posts/2024-05-03-simplifying-nosql-…
dearrudam May 3, 2024
4616ccc
chore: update seo-description of the posts/2024-05-03-simplifying-nos…
dearrudam May 3, 2024
6631f30
chore: updated blog_description of the posts/2024-05-03-simplifying-…
dearrudam May 3, 2024
b01873a
chore: update introduction of the posts/2024-05-03-simplifying-nosql-…
dearrudam May 3, 2024
820e1cd
chore: update conclusion section of the posts/2024-05-03-simplifying-…
dearrudam May 3, 2024
404c7fb
chore: fixed typo at posts/2024-05-03-simplifying-nosql-database-inte…
dearrudam May 3, 2024
6764ebd
chore: updated NoSQL experts contribution invitation at posts/2024-05…
dearrudam May 3, 2024
4e948cf
chore: update OSS invitation at posts/2024-05-03-simplifying-nosql-da…
dearrudam May 3, 2024
de97cd6
chore: added invitation for the next blog posts
dearrudam May 3, 2024
83568d3
chore: update introduction of the posts/2024-05-03-simplifying-nosql-…
dearrudam May 3, 2024
c67661c
chore: enhance the scenario explanation at posts/2024-05-13-jakarta-n…
dearrudam May 4, 2024
9ac297b
chore: fixed typos in the introduction section
dearrudam May 4, 2024
a0f7de2
Merge branch 'jakarta-nosql-blogposts' of github.com:dearrudam/openli…
dearrudam May 4, 2024
3fd81e1
chore: update introduction section in the posts/2024-05-03-simplifyin…
dearrudam May 4, 2024
7344305
chore: fixed typo at posts/2024-05-03-simplifying-nosql-database-inte…
dearrudam May 4, 2024
c46b937
chore: fixed typo at posts/2024-05-03-simplifying-nosql-database-inte…
dearrudam May 5, 2024
a0ed70f
chore: removed unnecessary phrase at Update posts/2024-05-03-simplify…
dearrudam May 5, 2024
7045ff9
chore: enhance sql vs nosql section at posts/2024-05-03-simplifying-n…
dearrudam May 5, 2024
8fbf639
chore: enhance exploring nosql section at posts/2024-05-03-simplifyin…
dearrudam May 5, 2024
a3e3ae8
chore: enhance key-value section at posts/2024-05-03-simplifying-nosq…
dearrudam May 5, 2024
db69b7b
chore: fixed typo at posts/2024-05-03-simplifying-nosql-database-inte…
dearrudam May 5, 2024
9d7db82
chore: enhance column-database section at posts/2024-05-03-simplifyin…
dearrudam May 5, 2024
bca352b
chore: fixed typos and reorganized sections level indentation
dearrudam May 5, 2024
73a3370
chore: fixed typo at graph database section
dearrudam May 5, 2024
dffb643
chore: fixed typo at graph database section
dearrudam May 5, 2024
0aa155b
chore: fixed typo at graph database section title
dearrudam May 5, 2024
7631c8e
chore: fixed the sections indentation
dearrudam May 5, 2024
ce4aa44
chore: update title of posts/2024-05-06-jakarta-nosql-in-action-meet-…
dearrudam May 7, 2024
99710d7
chore: update seo-title of posts/2024-05-06-jakarta-nosql-in-action-m…
dearrudam May 7, 2024
24fcf39
chore: update seo-description of posts/2024-05-06-jakarta-nosql-in-ac…
dearrudam May 7, 2024
ffb67e5
chore: update blog-description of posts/2024-05-06-jakarta-nosql-in-a…
dearrudam May 7, 2024
9b60b55
chore: update open-graph-image of posts/2024-05-06-jakarta-nosql-in-a…
dearrudam May 7, 2024
1cfe2f1
chore: remove line delimiter character of posts/2024-05-06-jakarta-no…
dearrudam May 7, 2024
6d04ea6
chore: fixed next steps section title of posts/2024-05-06-jakarta-nos…
dearrudam May 7, 2024
d616b5c
chore: fixed typo at posts/2024-05-06-jakarta-nosql-in-action-meet-jn…
dearrudam May 7, 2024
6c4307c
chore: fixed typos at posts/2024-05-06-jakarta-nosql-in-action-meet-j…
dearrudam May 7, 2024
80eb02f
chore: fix toc at posts/2024-05-03-simplifying-nosql-database-integra…
dearrudam May 7, 2024
fd7fd99
chore: enhance introduction text at posts/2024-05-03-simplifying-nosq…
dearrudam May 7, 2024
a0058bb
chore: enhance posts/2024-05-03-simplifying-nosql-database-integratio…
dearrudam May 7, 2024
1f553e3
chore: fixed key-value title section at posts/2024-05-03-simplifying-…
dearrudam May 7, 2024
805794b
chore: removed bold style of texts at posts/2024-05-03-simplifying-no…
dearrudam May 7, 2024
5ce8944
chore: fixed typos and removed bold style form texts at posts/2024-05…
dearrudam May 7, 2024
15bbb81
chore: enhance text at posts/2024-05-03-simplifying-nosql-database-in…
dearrudam May 7, 2024
eecf2e4
chore: fixed typo at posts/2024-05-03-simplifying-nosql-database-inte…
dearrudam May 7, 2024
08d09e1
chore: fixed open-graph-image-alt at posts/2024-05-06-jakarta-nosql-i…
dearrudam May 7, 2024
bade6f3
chore: update posts/2024-05-03-simplifying-nosql-database-integration…
dearrudam May 7, 2024
25d86d4
chore: enhance document databases definition at posts/2024-05-03-simp…
dearrudam May 7, 2024
fb05ab0
chore: removed bold style from texts at posts/2024-05-03-simplifying-…
dearrudam May 7, 2024
a7b0259
chore: removed bold style from column databases text at posts/2024-05…
dearrudam May 8, 2024
0faebe5
chore: enhance title of posts/2024-05-06-jakarta-nosql-in-action-meet…
dearrudam May 8, 2024
bd5c101
chore: enhance config couchbase dependency section at posts/2024-05-1…
dearrudam May 8, 2024
e39dd89
chore: enhance introduction text at posts/2024-05-06-jakarta-nosql-in…
dearrudam May 8, 2024
80982e1
chore: removed unnecessary section title at posts/2024-05-06-jakarta-…
dearrudam May 8, 2024
badb9ad
chore: fixed getting started section title at posts/2024-05-06-jakart…
dearrudam May 8, 2024
d43a3db
chore: remove unnecessary phrase at posts/2024-05-13-jakarta-nosql-ch…
dearrudam May 8, 2024
17a32db
chore: enhance couchbase cluster config section at posts/2024-05-13-j…
dearrudam May 8, 2024
50a1f77
chore: fixed typos at posts/2024-05-13-jakarta-nosql-challenge-switch…
dearrudam May 8, 2024
f398a11
chore: fixed typo at couchbase config section
dearrudam May 8, 2024
8db8e7b
Merge branch 'jakarta-nosql-blogposts' of github.com:dearrudam/openli…
dearrudam May 8, 2024
21d73b1
chore: enhance text at posts/2024-05-13-jakarta-nosql-challenge-switc…
dearrudam May 8, 2024
3867362
chore: enhance text at posts/2024-05-13-jakarta-nosql-challenge-switc…
dearrudam May 8, 2024
fb62cea
chore: enhance why eclipse jnosql section at posts/2024-05-03-simplif…
dearrudam May 8, 2024
cb58933
chore: added databases images
dearrudam May 8, 2024
01dc7a9
chore: fixed image links
dearrudam May 8, 2024
3f0f305
Merge branch 'jakarta-nosql-blogposts' of github.com:dearrudam/openli…
dearrudam May 8, 2024
94fe5b6
chore: enhance text at posts/2024-05-03-simplifying-nosql-database-in…
dearrudam May 8, 2024
5a9282c
chore: enhance game rules explanation at posts/2024-05-06-jakarta-nos…
dearrudam May 8, 2024
cd5b3ad
chore: enhance text at posts/2024-05-03-simplifying-nosql-database-in…
dearrudam May 8, 2024
9086ebf
chore: enhance text
dearrudam May 8, 2024
5e846bb
Merge branch 'jakarta-nosql-blogposts' of github.com:dearrudam/openli…
dearrudam May 8, 2024
71c63aa
chore: added :toc: preamble at blog posts
dearrudam May 8, 2024
b7e5bb4
chore: enhance game explanation at posts/2024-05-06-jakarta-nosql-in-…
dearrudam May 8, 2024
d26e9c5
chore: enhance jnopo explanation at posts/2024-05-06-jakarta-nosql-in…
dearrudam May 8, 2024
d31d0ee
chore: fixed typos at posts/2024-05-06-jakarta-nosql-in-action-meet-j…
dearrudam May 8, 2024
898bf81
chore: fixed typos at posts/2024-05-06-jakarta-nosql-in-action-meet-j…
dearrudam May 8, 2024
d8b86a1
chore: fixed key takeaways section at 2024-05-06-jakarta-nosql-in-act…
dearrudam May 8, 2024
648baa7
chore: fixed line termination at 2024-05-06-jakarta-nosql-in-action-m…
dearrudam May 8, 2024
579af65
chore: enhance getting started section at 2024-05-06-jakarta-nosql-in…
dearrudam May 8, 2024
a01ca09
chore: removed bold style in the getting started section at 2024-05-0…
dearrudam May 8, 2024
2dd1b0a
chore: enhance fun time section at 2024-05-06-jakarta-nosql-in-action…
dearrudam May 9, 2024
ddc1825
chore: enhance fun time section at 2024-05-06-jakarta-nosql-in-action…
dearrudam May 9, 2024
c3e467b
chore: enhance winner ranking challenge section at 2024-05-06-jakarta…
dearrudam May 9, 2024
b5758ff
chore: enhance winner ranking challenge section at 2024-05-06-jakarta…
dearrudam May 9, 2024
bbec2f1
chore: enhance winner ranking challenge section at 2024-05-06-jakarta…
dearrudam May 9, 2024
c4a0eeb
chore: enhance winner ranking challenge section at 2024-05-06-jakarta…
dearrudam May 9, 2024
d8e6fe1
chore: enhance winner ranking challenge section at 2024-05-06-jakarta…
dearrudam May 9, 2024
8c64707
chore: enhance winner ranking challenge section at 2024-05-06-jakarta…
dearrudam May 9, 2024
5dd671d
chore: enhance setting up section at 2024-05-06-jakarta-nosql-in-acti…
dearrudam May 9, 2024
127ad47
chore: enhance setting up section at 2024-05-06-jakarta-nosql-in-acti…
dearrudam May 9, 2024
7d6dcff
chore: enhance config dependencies section at 2024-05-06-jakarta-nosq…
dearrudam May 9, 2024
bf177b2
chore: enhance config local databases section at 2024-05-06-jakarta-n…
dearrudam May 9, 2024
62be578
chore: enhance lets play jnopo section at 2024-05-06-jakarta-nosql-in…
dearrudam May 9, 2024
d7e8b61
chore: enhance setting up local databases section at 2024-05-06-jakar…
dearrudam May 9, 2024
bad69ee
chore: enhance setting up local databases section at 2024-05-06-jakar…
dearrudam May 9, 2024
97bdfc2
chore: enhance setting up local databases section at 2024-05-06-jakar…
dearrudam May 9, 2024
e4f2bc2
chore: enhance setting up local databases section at 2024-05-06-jakar…
dearrudam May 9, 2024
b919f58
chore: enhance defining database credentials section at 2024-05-06-ja…
dearrudam May 9, 2024
15b5486
chore: enhance defining database credentials section at 2024-05-06-ja…
dearrudam May 9, 2024
d440246
chore: enhance defining database credentials section at 2024-05-06-ja…
dearrudam May 9, 2024
c113dbf
chore: enhance modeling data with jakarta nosql section at 2024-05-06…
dearrudam May 9, 2024
dead83f
chore: enhance modeling data with jakarta nosql section at 2024-05-06…
dearrudam May 9, 2024
4cf04c8
chore: enhance modeling data with jakarta nosql section at 2024-05-06…
dearrudam May 9, 2024
0060392
chore: enhance modeling data with jakarta nosql section at 2024-05-06…
dearrudam May 9, 2024
ee74925
chore: enhance data storage with jakarta data section at 2024-05-06-j…
dearrudam May 9, 2024
2ba6a4c
chore: enhance data storage with jakarta data section at 2024-05-06-j…
dearrudam May 9, 2024
158964f
chore: enhance data storage with jakarta data section at 2024-05-06-j…
dearrudam May 9, 2024
f0d7de5
chore: enhance data storage with jakarta data section at 2024-05-06-j…
dearrudam May 9, 2024
a0a5d25
chore: enhance data storage with jakarta data section at 2024-05-06-j…
dearrudam May 9, 2024
661045e
chore: enhance capturing and persisting game matches section at 2024-…
dearrudam May 9, 2024
1377a16
chore: enhance capturing and persisting game matches section at 2024-…
dearrudam May 9, 2024
e4782bf
chore: enhance capturing and persisting game matches section at 2024-…
dearrudam May 9, 2024
3bb781c
chore: enhance exposing the winner ranking section at 2024-05-06-jaka…
dearrudam May 9, 2024
9a6ec5f
chore: enhance key takeaways section at 2024-05-06-jakarta-nosql-in-a…
dearrudam May 9, 2024
eddab1f
chore: removed undesired pipe at seo-description at 2024-05-13-jakart…
dearrudam May 9, 2024
6125dbc
chore: fixed typos and text at 2024-05-06-jakarta-nosql-in-action-mee…
dearrudam May 10, 2024
d491aad
chore: fixed introduction section at 2024-05-13-jakarta-nosql-challen…
dearrudam May 10, 2024
c4fa403
chore: fixed introduction section at 2024-05-13-jakarta-nosql-challen…
dearrudam May 10, 2024
80ba66e
chore: fixed couchbase cluster setup section at 2024-05-13-jakarta-no…
dearrudam May 10, 2024
5610b4a
chore: fixed key takeaways section at 2024-05-13-jakarta-nosql-challe…
dearrudam May 10, 2024
57f119d
chore: fixed next steps section at 2024-05-13-jakarta-nosql-challenge…
dearrudam May 10, 2024
0304e3b
chore: fixed special thanks section at 2024-05-13-jakarta-nosql-chall…
dearrudam May 10, 2024
323c729
chore: fixed the publishing date for the blog posts and their interna…
dearrudam May 10, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file added img/blog/arangodb.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added img/blog/column-nosql.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added img/blog/couchbase-01.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added img/blog/couchbase-02.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added img/blog/couchbase-03.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added img/blog/couchbase-04.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added img/blog/couchbase-05.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added img/blog/couchbase-06.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added img/blog/couchbase-verification-01.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added img/blog/couchbase-verification-02.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added img/blog/couchbase.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added img/blog/db-engine-ranking-2024-02.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added img/blog/document-nosql.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added img/blog/graph-nosql.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added img/blog/jnosql.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added img/blog/key-value-nosql.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added img/blog/mongo-express-01.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added img/blog/mongo-express-02.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added img/blog/mongo-express-03.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added img/blog/mongo-express-04.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added img/blog/mongo-express.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added img/blog/mongodb.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added img/blog/orientdb.png
Binary file added img/blog/swagger-ui-01.png
Binary file added img/blog/swagger-ui-02.png

Large diffs are not rendered by default.

798 changes: 798 additions & 0 deletions posts/2024-05-13-jakarta-nosql-in-action-meet-jnopo-game.adoc

Large diffs are not rendered by default.

222 changes: 222 additions & 0 deletions posts/2024-05-14-jakarta-nosql-challenge-switching-nosql-easily.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,222 @@
---
layout: post
title: "Jakarta NoSQL in Action: Switching NoSQL Databases with Ease"
# Do NOT change the categories section
categories: blog
author_picture: https://avatars3.githubusercontent.com/dearrudam
author_github: https://github.com/dearrudam
seo-title: TITLE - OpenLiberty.io
seo-description: In this cloud era, switching between NoSQL solutions could be a great way to save resources and costs, but it could be a nightmare, especially if we're highly coupled to a particular vendor. See how the flexibility of Jakarta NoSQL with an implementation like Eclipse JNoSQL could help to solve this issue.

blog_description: "In this cloud era, switching between NoSQL solutions could be a great way to save resources and costs, but it could be a nightmare, especially if we're highly coupled to a particular vendor. See how the flexibility of Jakarta NoSQL with an implementation like Eclipse JNoSQL could help to solve this issue."
open-graph-image: https://openliberty.io/img/twitter_card.jpg
open-graph-image-alt: Open Liberty Logo
---
= Jakarta NoSQL in Action: Switching NoSQL Databases with Ease
Maximillian Arruda <https://github.com/dearrudam>
:imagesdir: /
:url-prefix:
:url-about: /
:toc: preamble

In the cloud era, switching between NoSQL solutions could be an interesting way to save resources and costs. It could also be a nightmare, especially if we're highly coupled to a particular vendor. Certain changes could make this approach very expensive, e.g.: time spent on the change, the learning curve of a new API to use with this database, the code that will be lost, the persistence layer that needs to be replaced, etc.

This is where the flexibility of Jakarta NoSQL, with an implementation like link:https://www.jnosql.org[Eclipse JNoSQL], shines.

NOTE: As of March 2024, Eclipse JNoSQL supports about https://www.jnosql.org/docs/supported_dbs.html[30 NoSQL databases].

To explore this capability, let's use the link:{url-prefix}/blog/2024/05/13/jakarta-nosql-in-action-meet-jnopo-game.html[*JNopo* game] introduced in blog 2 of this series.

In our scenario, let's suppose that we need to change the JNopo's Document NoSQL database from MongoDB, to another Document NoSQL database (Couchbase) to save money. The good thing is that because we've already used the Jakarta NoSQL specification to connect to our NoSQL solutions in this application, with just a few small changes we'll be able to achieve this goal easily. Let's take a look at the steps we need to take for this.


== Configuring Eclipse JNoSQL dependencies for Couchbase

The first step we need to take is to add the Couchbase dependency to our the `pom.xml` file:

[source, xml]
----
<dependency>
<groupId>org.eclipse.jnosql.databases</groupId>
<artifactId>jnosql-couchbase</artifactId>
<version>1.1.0</version>
</dependency>
----

== Configuring a local Couchbase cluster

To successfully configure our new Couchbase cluster, we'll first need to add the following content to the `docker-compose.yml` file:

[source, yaml]
----
couchbase-db:
image: couchbase
container_name: couchbase-db
ports:
- "8091-8097:8091-8097"
- "9123:9123"
- "11207:11207"
- "11210:11210"
- "11280:11280"
- "18091-18097:18091-18097"
----

After we apply these changes, we then need to initialize the container by executing the following command:

[source, bash]
----
docker-compose up -d
----

Now, let's configure the Couchbase cluster for this example scenario:

. With the Couchbase container started, go to: http://localhost:8091/ui/index.html.
. Select the *Setup New Cluster* option.
+
[.img_border_light]
image::/img/blog/couchbase-01.png[Couchbase 01, align="center" width=80%]
. Define a name for the cluster.
. Set `root` as the Admin Username.
. Set `123456` as the Password.
+
[.img_border_light]
image::/img/blog/couchbase-02.png[Couchbase 02, align="center" width=80%]
. Check *I accept the terms and conditions* and click the *Finish With Defaults* button.
+
[.img_border_light]
image::/img/blog/couchbase-03.png[Couchbase 03, align="center" width=80%]
. Go to the *Buckets* section.
. Create a `jnopo` Bucket by clicking on the *Add Bucket* option
+
[.img_border_light]
image::/img/blog/couchbase-04.png[Couchbase 04, align="center" width=80%]
. Click *Scopes & Collections* and then click *Add Collection*.
. Enter `GameMatch` as the collection name and click the *Save* button to complete your creation.
+
[.img_border_light]
image::/img/blog/couchbase-05.png[Couchbase 05, align="center" width=80%]
. Now, in the *Query Editor* section, run the command link:https://www.couchbase.com/products/n1ql/[N1QL] command to create the primary index for the `GameMatch` collection:
+
[source, n1ql]
----
CREATE PRIMARY INDEX primaryGameMatch ON jnopo._default.GameMatch
----
+
[.img_border_light]
image::/img/blog/couchbase-06.png[Couchbase 06, align="center" width=80%]

With a Couchbase cluster running, we just need to set up Eclipse JNoSQL to connect to it.

Apply the following changes into the `resources/META-INF/microprofile-config.properties` file:

[source, properties]
----
## Couchbase
jnosql.couchbase.host=couchbase://localhost
jnosql.couchbase.user=root
jnosql.couchbase.password=123456
jnosql.document.provider=org.eclipse.jnosql.databases.couchbase.communication.CouchbaseDocumentConfiguration
----

The `jnosql.document.provider` property is required in this context because we have more than one Eclipse JNoSQL Database API for Document NoSQL implementations. You can learn more about the configurations available for Eclipse JNoSQL Database API for Couchbase in this https://github.com/eclipse/jnosql-databases/tree/main?tab=readme-ov-file#configuration-2[Git repository].

That's all! Let's restart the https://openliberty.io/[Open Liberty] runtime to make sure that everything is running smoothly:

* On Linux/Mac machines, run the following command:
+
[source, bash]
----
./mvnw liberty:dev
----

* On Windows machines, run the following command:
+
[source, powershell]
----
mvnw.cmd liberty:dev
----

After some game matches, you should see something similar to the following images to prove that this data is now being stored in our new Couchbase database.

[.img_border_light]
image::/img/blog/couchbase-verification-01.png[Couchbase Verification 01, align="center" width=80%]
[.img_border_light]
image::/img/blog/couchbase-verification-02.png[Couchbase Verification 02, align="center" width=80%]

If you're interesting to take a look on the finished project code developed during this challenge, clone this https://github.com/OpenLiberty/sample-jakartaNoSQL-game[Git repository] and navigate to the `database-switching-challenge` directory.

[source, bash]
----
git clone https://github.com/OpenLiberty/sample-jakartaNoSQL-game.git
cd sample-jakartaNoSQL-game
cd database-switching-challenge
----

== Key takeaways

This blog has shown just how easy it can be to switch between NoSQL solutions by using Jakarta NoSQL, bringing one more item to your utility belt that could be useful in helping you save resources and costs.

By reading this blog, you should now be familiar with:

* How to set up the Couchbase database cluster for development purposes;

* How to switch between NoSQL database from different vendors, in our example: switching from MongoDB to Couchbase;

== Next steps: continuing the journey

Congratulations on getting this far!

This blog post is the 3rd part of a set of blog posts:

* link:{url-prefix}/blog/2024/05/11/simplifying-nosql-database-integration-with-jakarta-nosql.html[Simplifying NoSQL Database Integration with Jakarta NoSQL, window="_blank"];
* link:{url-prefix}/blog/2024/05/13/jakarta-nosql-in-action-meet-jnopo-game.html[Jakarta NoSQL in Action: JNopo Game, window="_blank"];

To see more sample projects, take a look at the official Eclipse JNoSQL samples repositories:

- https://github.com/jnosql/demos-se
- https://github.com/JNOSQL/demos-ee

To learn more about Eclipse JNoSQL, take a look at these official repositories:

- https://github.com/eclipse/jnosql
- https://github.com/eclipse/jnosql-databases
- https://github.com/eclipse/jnosql-extensions

if you're an expert on some NoSQL database that Eclipse JNoSQL doesn't support, feel free to open an issue or a PR on the project repositories mentioned above. Except for the NoSQL solutions mentioned like MongoDB and Couchbase, all the technology used in this blog post are open-source, so, what do you think about contributing to these projects? If you don't know how to get started to contribute, take a look at this https://www.youtube.com/live/7qhHOOoZEBU?feature=share[Coffee.withJava("Contribute to JNoSQL") Youtube Series], or if you prefer, feel free to contact me! Contributing to these projects is not just with codes, you could help a lot by promoting and speaking about them wherever you go! Contributing to open-source is a great way to boost your career, and improve your skills to become an effective developer and relevant in the market! Think about that!

== Special thanks

I'm bursting with gratitude and would love to give a big shout-out to my incredible Java community friends for their unwavering support throughout my journey. A special round of applause for:

- Otavio Santana, you're not just a mentor but a guiding star in my open-source journey. Your mentorship has opened doors for me to become an active open-source contributor and a proud Eclipse Foundation committer. Thank you for being such a monumental part of my journey. Also, thanks for your insightful reviews of the codes featured in this blog post.

- Karina Varela, your keen eye for detail and your generosity in sharing your knowledge have enriched this content beyond measure. Your thoughtful reviews have made this content not just better, but truly curated and relevant. I'm so grateful for your contribution.

- Fabio Franco, you were the catalyst for this wonderful opportunity, connecting me with the fantastic OpenLiberty team and offering your support throughout the publishing process of this blog post. Your belief in me and your encouragement have been invaluable. Thank you for making this possible.

- And to the OpenLiberty team, thank you for opening your doors and allowing me the privilege to share and post this content that I've thoroughly enjoyed working on. Thanks for this opportunity.

To each of you, your support means a lot to me, and I'm deeply thankful.

== References and Further Reading

* Official documentation:
** https://jnosql.org[Eclipse JNoSQL website]
** https://jakarta.ee/specifications/[Jakarta EE Specifications]

* Articles:
** https://dzone.com/articles/jakarta-nosql-100-b5-how-to-make-your-life-easier[Jakarta NoSQL 1.0.0-b5: How To Make Your Life Easier Around Enterprise Java and NoSQL Databases by Otavio Santana]
** https://dzone.com/articles/eclipse-jnosql-100-streamlining-java-and-nosql-int[Eclipse JNoSQL 1.0.0: Streamlining Java and NoSQL Integration With New Features and Bug Fixes by Otavio Santana]
** https://dzone.com/articles/mastering-java-persistence-best-practices-for-clou[Mastering Java Persistence: Best Practices for Cloud-Native Applications and Modernization by Otavio Santana]
** https://dzone.com/articles/eclipse-jnosql-102-empowering-java-with-nosql-data[Eclipse JNoSQL 1.0.2: Empowering Java With NoSQL Database Flexibility by Otavio Santana]
** https://blogs.oracle.com/nosql/post/getting-started-accessing-oracle-nosql-database-using-jakarta-nosql[Getting Started - Accessing Oracle NoSQL Database using Jakarta NoSQL by Dario VEGA]
** https://dzone.com/articles/exploring-the-new-eclipse-jnosql-version-110-a-div[Exploring the New Eclipse JNoSQL Version 1.1.0: A Dive Into Oracle NoSQL by Otavio Santana]
** https://eldermoraes.com/how-to-create-cdi-events/[How to create CDI Events by Elder Moraes]
** https://blogs.oracle.com/javamagazine/post/jakarta-data-mysql[Simplifying data access with MySQL and Jakarta Data by Ivar Grimstad]
** https://dzone.com/articles/introduction-to-nosql-database-1[Introduction to NoSQL Database by Rama Krishna Panguluri];

* Books:
** https://www.amazon.com/Persistence-Best-Practices-Java-Applications/dp/1837631271/[Persistence Best Practices for Java Applications by Otavio Santana and Karina Varela]
** https://bpbonline.com/products/java-persistence-with-nosql[Java Persistence with NoSQL by Otavio Santana]
** https://a.co/d/4dlvHQj[NoSQL Distilled: A Brief Guide to the Emerging World of Polyglot Persistence by Pramod Sadalage and Martin Fowler]