Hi Andrey,

interesting benchmark.

The point interesting for me is memory consumption.
With plocal how memory is configured ? Could you execute the same test with max memory settings divided by 2, by 4, by 8... ? In order to estimate when times became crazy or OOM is thrown.

Why this point is important for me ? Of course in dedicated server with 64 or 128Gb RAM it's not so important, but I have 2 other use cases :

 * standalone application (with orient embedded running on the client
   computer). Memory settings must be automatic/dynamic and should
   start to work with very few memory. Of course if the user create
   millions records, it is normal that the application requires more
   memory.
 * low-cost cloud. We plan to deploy a new very low-cost solution with
   shared server. Each user has his own webapp and OriendDb instance
   but running in the same Tomcat server. So we must fix memory
   settings, with quite low values for each user.

That's why evaluate how performance degrades with less memory is very interesting.

Thanks,
Sylvain


Le 31/01/2014 10:25, Andrey Lomakin a écrit :
Couple of words about benchmark.

We imported wikipedia data using OrientGraph database, to be sure that we have no duplications unique index by page key was created.

First benchmark that is benchmark which uses 1.6.4 version of OrientDB and second benchmark uses version from https://github.com/orientechnologies/orientdb/tree/rid-set-sbtree branch.




On Fri, Jan 31, 2014 at 11:22 AM, Andrey Lomakin <[email protected] <mailto:[email protected]>> wrote:

    Hi,
    Here is difference in implementations in tx mode, local + mvrbtree
    + unique index (old) and plocal + ridbag + unique index (new).



    On Fri, Jan 31, 2014 at 10:37 AM, Andrey Lomakin
    <[email protected] <mailto:[email protected]>> wrote:

        Hi,
        Connection pool can be used from document database.
        Create document database and pass it in OrientGraph it is a
        bit inconvenient but we did benchmark of import of wikipedia
        data structure it is 10-15 times faster on some data sets.


        On Thu, Jan 30, 2014 at 10:59 PM, Riccardo Tasso
        <[email protected] <mailto:[email protected]>>
        wrote:

            And what about the ConnectionPool? If I remember well it
            was usable only from OGraphDatabase.

            Thanks,
               Riccardo


            2014-01-30 Claudio Tesoriero <[email protected]
            <mailto:[email protected]>>:

                Thanks!

                Il 30/gen/2014 17:33 "Andrey Lomakin"
                <[email protected]
                <mailto:[email protected]>> ha scritto:


                    Hi,
                    To create graph db in such way just use

                    db =
                    
Orient.instance().getDatabaseFactory().createDatabase("graph",
                    "plocal:" + dbPath)
                    if (!db.exists()) {
                    info("DB does not exist, BaasBox will create a new
                    one");
                    db.create();
                    }

                    About the second question, you have several variants.

                    Two of them:
                    1. db.addVertex("class:" + CLASS_VERTEX_NAME);
                    2. db.addVertex(CLASS_VERTEX_NAME, null);



                    On Thu, Jan 30, 2014 at 5:30 PM, Claudio
                    <[email protected]
                    <mailto:[email protected]>> wrote:

                        Hi Luca,
                        we use the old OGraphDatabase API  to create a
                        new fresh graph database if it does not exists
                        when our application starts.
                        db = new OGraphDatabase( "plocal:" + dbPath ) ;
                        if (!db.exists()) {
                        info("DB does not exist, BaasBox will create a
                        new one");
                        db.create();
                        }

                        As far I know the OrientGraph API hasn't got
                        the exists() method, on the contrary, its
                        constructor raises an error if the specified
                        DB  does not exists.
                        Any advice on this?

                        Furthermore we use it to create vertices:
                        ODocument vertex =
                        db.createVertex(CLASS_VERTEX_NAME);

                        Inspecting the OrientGraph API, I cannot find
                        a similar API. I just found the
                        addVertex(iClassName, iClusterName) that
                        accepts two parameters instead of just the
                        class name

                        Thanks,
                        Claudio


                        Il giorno mercoledì 29 gennaio 2014 11:26:21
                        UTC+1, Lvc@ ha scritto:

                            Hi all,
                            we're very close to merge the new storage
                            structure to the 1.7 branch. Andrey has
                            some *awesome numbers *about the
                            performance of the new engine in terms of
                            benchmarks, he will share them with us on
                            this group very soon.

                            But in order to complete the merge, we
                            should *remove the old Graph API:
                            OGraphDatabase*! This is mainly for 2 big
                            reasons:

                             1. it's not compatible with *Lightweight*
                                edges and other improvements we
                                introduced since version 1.4.x
                             2. it heavily uses *MVRB-Tree indexes* so
                                it wouldn't scale on the new storage
                                structure

                            So after a while we deprecated the old
                            Graph API, it's time to removed it from
                            the v1.7 code base. I know some users are
                            still sticked with this API, they can
                            decide to:

                             1. Migrate to the Blueprints API (well
                                documented on OrientDB & TinkerPop sites)
                             2. Stay with old API and remain sticked
                                to last OrientDB v1.6.x.

                            Obviously we strongly suggest 1st solution!

                            For the users want to migrate we will
                            provide a new guide to migrate the old
                            code (very easy, most of the concepts are
                            the same). In this way they could benefits
                            of HUGE improvement with last version of
                            OrientDB, specially with big databases.

                            Any comments are welcome :-)

                            Lvc@

--
                        ---
                        You received this message because you are
                        subscribed to the Google Groups "OrientDB" group.
                        To unsubscribe from this group and stop
                        receiving emails from it, send an email to
                        [email protected]
                        <mailto:orient-database%[email protected]>.
                        For more options, visit
                        https://groups.google.com/groups/opt_out.




-- Best regards,
                    Andrey Lomakin.

                    Orient Technologies
                    the Company behind OrientDB

--
                    ---
                    You received this message because you are
                    subscribed to a topic in the Google Groups
                    "OrientDB" group.
                    To unsubscribe from this topic, visit
                    
https://groups.google.com/d/topic/orient-database/oFYb96sM7Jg/unsubscribe.
                    To unsubscribe from this group and all its topics,
                    send an email to
                    [email protected]
                    <mailto:orient-database%[email protected]>.


                    For more options, visit
                    https://groups.google.com/groups/opt_out.

--
                ---
                You received this message because you are subscribed
                to the Google Groups "OrientDB" group.
                To unsubscribe from this group and stop receiving
                emails from it, send an email to
                [email protected]
                <mailto:orient-database%[email protected]>.
                For more options, visit
                https://groups.google.com/groups/opt_out.


--
            ---
            You received this message because you are subscribed to
            the Google Groups "OrientDB" group.
            To unsubscribe from this group and stop receiving emails
            from it, send an email to
            [email protected]
            <mailto:orient-database%[email protected]>.
            For more options, visit
            https://groups.google.com/groups/opt_out.




-- Best regards,
        Andrey Lomakin.

        Orient Technologies
        the Company behind OrientDB




-- Best regards,
    Andrey Lomakin.

    Orient Technologies
    the Company behind OrientDB




--
Best regards,
Andrey Lomakin.

Orient Technologies
the Company behind OrientDB

--

---
You received this message because you are subscribed to the Google Groups "OrientDB" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.

--

--- You received this message because you are subscribed to the Google Groups "OrientDB" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to