Hi Julian,

On Thu, Feb 28, 2019 at 1:34 PM Julian Reschke <[email protected]>
wrote:

>
> You can use
> <https://sling.apache.org/documentation/bundles/datasource-providers.html>
>
> as datasource provider.
>

That's indeed the piece I was looking for, thanks a lot for the tip!
For the record, in case someone else would ever be interested, here's what
I did:

Maven pom.xml

>   <dependency>
>       <groupId>org.apache.sling</groupId>
>       <artifactId>org.apache.sling.datasource</artifactId>
>       <version>1.0.4</version>
>   </dependency>
>

OAK JSON configuration file:

>   "org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreService": {
>     "documentStoreType": "rdb"
>   },
>   "org.apache.sling.datasource.DataSourceFactory": {
>     "datasource.name": "oak",
>     "driverClassName": "org.postgresql.Driver",
>     "url": "${oak.postgresql.url}",
>     "username": "${oak.postgresql.username}",
>     "password": "${oak.postgresql.password}"
>   },
>

I saw a few interesting configuration flags as well in RDBDocumentStore.java
<https://github.com/apache/jackrabbit-oak/blob/trunk/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/rdb/RDBDocumentStore.java#L2145>
(NOGZIP, NOAPPEND, etc).
What the reasoning behind those flags? Are they useful to activate in
certain conditions / with certain databases?

By the way, using a set of ON SELECT / INSERT / UPDATE / DELETE DO INSTEAD
rules, I could even store the *data* column as *jsonb* in PostgreSQL.
(That should also be possible for the bdata column but I ran into some JSON
syntax issues so far.)


> That said: don't expect this to perform better than MongoDB - the
> RDBDocumentStore essentially emulates the JSON storage of MongoDB inside
> a relational database.
>

Speaking of performance, how can I determine if my Oak setup works as fast
as it should?
I understand that performance is very specific to the environment where it
runs, but what's an average "baseline" performance to expect from Oak?
In terms of nodes added / updated / deleted per second for example? No
queries here, simply CRUD operations.
And what would be the associated MongoDB insert / query / update / delete
metrics to expect?
I couldn't find much information related to performance (tuning) on the
website.

Best regards,

-- 
Damiano Albani

Reply via email to