ObjectBox聽vs聽PostgreSQL

Need advice about which tool to choose?Ask the StackShare community!

ObjectBox

2
6
+ 1
0
PostgreSQL

57.8K
45.6K
+ 1
3.5K
Add tool

PostgreSQL vs ObjectBox: What are the differences?

What is PostgreSQL? A powerful, open source object-relational database system. PostgreSQL is an advanced object-relational database management system that supports an extended subset of the SQL standard, including transactions, foreign keys, subqueries, triggers, user-defined types and functions.

What is ObjectBox? The fast and easy object-oriented database for small devices. It is for developers who look for performance and ease of use. We are committed to providing you with the easiest APIs for you to keep your code short and maintainable. No SQL under the hood-Simply faster. Unlike other databases, it has been built from the ground up using key-value storage instead of column storage. The resulting performance is 10x faster than the leading alternative, we welcome you to try it yourself. It is fast regardless of the amount of data or operating system you are using.

PostgreSQL and ObjectBox are primarily classified as "Databases" and "Mobile Database" tools respectively.

PostgreSQL is an open source tool with 6.91K GitHub stars and 2.31K GitHub forks. Here's a link to PostgreSQL's open source repository on GitHub.

Advice on ObjectBox and PostgreSQL
Prithvi Singh
Application Developer at Montaigne Smart Business Solutions | 8 upvotes 路 202.3K views
Needs advice
on
PostgreSQL
MySQL
and
MongoDB

I am going to work on a real estate project and have to decide on a database. Now, SQL databases can be very efficient if appropriately designed. More relations between the data and less redundancy. But with a #NoSQL database, the development time is reduced, and it is easy to query. Since this is my first time working on the real estate domain, I would like to pick a database that would be efficient in the long run.

See more
Replies (4)
Aric Fedida
Founder, CTO at ASK Technologies Inc | 15 upvotes 路 194.2K views
Recommends
PostgreSQL

I recommend PostgreSQL as it鈥檚 the most powerful out of the 3 databases you mentioned. It supports JSON objects so you can mimic the MongoDB functionality, but I would also argue that SQL is actually quite powerful and in many cases significantly easier to work with than with NoSQL databases.

Stay away from foreign keys, keep it fast and simple. Define your data structures well in advance. Try to model your data structures based on your system鈥檚 vision; based on where it鈥檚 going and not based solely on what you currently need it to do. This will help you avoid drastic changes to your database after your system is launched. Populate the database with fake data and run tests. PostgreSQL allows you to create Views from multiple tables. Try to create those views and make sure you can easily create useful views from multiple tables. Run an Explain on those view queries to make sure you created your indexes correctly. Make sure it鈥檚 fast!

See more
Matthew Rothstein
Recommends
PostgreSQL

Any of those three databases are going to be efficient, scalable, and reliable in the long term if you configure and use them correctly. They all also have solid hosting solutions.

All things being equal, I would agree with other posters that Postgres is my preference among the three, but there are caveats.

MongoDB and MySQL have better support for mutli-region replication in your big three cloud environments. Azure recently bought Citus Data, which was a best-in-class Postgres replication solution, so they might be the only one I trust to provide cross-region replication at the moment.

If you have a single region deployment and are on AWS, I can't recommend Aurora Postgres highly enough. It's a very good implementation and extremely performant.

See more
Josh Dzielak
Co-Founder & CTO at Orbit | 4 upvotes 路 191.2K views
Recommends
PostgreSQL

I'll second another piece of advice. Postgresql's JSON columns are a dream when it comes to productivity and I use them frequently with our Rails application. In these cases, no migration is required to change schema. We store payloads with dozens or hundreds of keys and performance has not been an issue. We also have a lot of relational tables, so the joins we get with SQL are very important to us and hard to replicate with a NoQL solution.

See more
Danilo Kaltner
Recommends
PostgreSQL

That really depends of where do you see you application in the long run. On any application, any of those choices are excellent. You could argue about good support on JSON binaries, but even MySQL has an excellent support for that on the latest versions.

On the long run, when your application gets hundreds of thousands of requests per second, you might start thinking about how many inputs you will have in the database compared to the outputs. PostgresSQL it鈥檚 excellent at giving you outputs, but table corruption can happen when you start receiving this massive number of inputs (Which was the reason Uber switched from Postgres to MySQL)

On our OPS Platform at CTO.ai , we decided to use Postgres, because we need a reliable and agile way to send the output to our users, so that was out best choice in the long run for our product.

See more
Needs advice
on
PostgreSQL
and
MongoDB

I am one of those who believes that MongoDB can be used for everything, this thanks to the advertising of MongoDB.

We are creating an e-commerce platform, we know that it has many relationships, but with MongoDB we can avoid some, but in the end, some relationships have to exist.

A single developer to create two native applications in Flutter, a web application with React, create the backend with multiple microservices hosted with Google Cloud Run. PostgreSQL can be heavy because it should be used with an ORM, on the contrary, with MongoDB you can avoid some relationships and avoid ORM / ODM.

We need advice from someone who has the experience and has had to choose between these two databases for an e-commerce site.

See more
Replies (4)
Recommends
PostgreSQL

The real question here is not about the technology but rather your real needs and your data. Do you need to manage data that has core concepts and relations ? (such as a family, with parents and children) or do you need to manage a basic collection of similar data (such as blog entries)? PostgreSQL is definitely a relational database for managing entities and their relationships whereas MongoDB (I may be strongly opinionated here ;-) ) is more targeted at managing collection of entities (such as the blog entries). For an e-commerce site (with some products, products categories, user ratings and comments, prices, bundles...) I would go for PostgreSQL as it will support/guide you in creating a structured data set with all your products, organized in categories and with user ratings/comments attached to them. HTH

See more
Valeriy Bykanov
Founder, CEO at X1 Group | 3 upvotes 路 128.7K views
Recommends
at

Had exactly the same question when selecting data storage for our new product. Not e-commerce though, rather interactive and content-focused HR SaaS for SME.

The key arguments for PostgreSQL

  • It gives you the opportunity to use relationships where you really need it and just go with key-value tables where you don't.

  • With Jsonb datatype you can store documents/objects/arrays as JSON then use JSON elements in queries and even indexes.

  • There are more tools/integrations working with PostgreSQL which you can use out of the box, e.g. Hasura

See more
Dami谩n Gil
Advisor at Empresa En Crecimiento | 3 upvotes 路 127.6K views
Recommends
MongoDB

I am in your spot, exactly. A few months ago, I had decided to use Postgres because since its version 9 it showed a lot of progress for being a high-availability database. However, frankly, I didn't want to model statically all data, since I have several distinct schemas (like for different product types) and I wanted some flexibility to add or remove as I saw fit. One of the main challenges with analyzing a NoSQL database being familiar in the SQL ways, is that it's easy to look for "analogies" for what makes SQL useful, like relationship enforcing, transactions and the cascading effect on deletes, updates and inserts, and that limit your vision a lot when analyzing a tool like Mongo, especially in a micro-services pattern. Now-a-days, I really found my solution in Mongo. Not just because of it being NoSQL, but because all of the support I find in the NodeJS community through packages and utilities that make it dead easy to use it for several use-cases. Whatever Postgres offers, Mongo does it a little easier and better, like text search and geo-queries. What you need to see is to model your data in a way that makes sense with Mongo. For instance, I've got a User service that has all auth related information of a user. But then, I have the same user in the Profile service, with the same id, but totally different fields. You have two de facto ways to connect data, by reference and embedding, which in Ecommerce, both have big uses. Like using references to relate a User to a Profile, and an embed to relate a Product to an Order. There's even a third, albeit a little more "manual" implementation here, the graph relationship in which you can model data, in which you can easily model event-driven documents, like a Purchase that goes from "a customer" to "a store", which you can later use for much easier and deep analytics than with the classical SQL stance. MariaDB has it readily available, and also has many improvements over MySQL and Postgres, especially for NoSQL features and scalability. Sadly it is just seen as a MySQL clone, but it offers more than that (although its documentation could be improved). Using Mongo in a micro-service environment is even better because your models can be smaller, meaning less burden on relationships, although you do compensate with a bit of duplication, but a well-designed schema will have minimal impact on that. Whatever tool might do the job, but I want to cheer on the newer generation. Hope it helps.

See more
Needs advice
on
PostgreSQL
MySQL
and
MongoDB

Hello,

I am trying to design an online ordering app similar to Doordash or Uber Eats. I'm having a hard time trying to finalise on what database (or mixture of databases) to use. I'm leaning towards using a relational database like MySQL or PostgreSQL. But, when the application grows, I don't want to join on 20 tables to get a data. Any help would be greatly appreciated. Thank you for your time.

See more
Replies (2)
Rupen Makhecha
Recommends
MySQL

Hello Suhas , We build our product www.voilacabs.com which is in the same lines as yours but we have used a combination of Mysql and MongoDB. When using MySQL, i would recommend doing the following: 1. Use Mysql only for storage only and for realtime updates we recommend MongoDB. 2. Don't try to Join more than 3 tables. ( the moment you reach 3 join stop there and try to un-normalized database. 3. Never or very rarely use Auto-increments. ( we recommend using UUIDS ) . Use UUIDS always for Auto increments for MYSQL. If you using Postgre SQL then i would suggest you to please check this https://instagram-engineering.com/sharding-ids-at-instagram-1cf5a71e5a5c There is a stored procedure that generated unique keys instead of auto-increment keys and that will help you sharding or clustering database without sync errors. 4. Also For MongoDB if you can put a layer of REDIS Cache then that will boost your api performance under large loads. 5. Use Node.js programing language as that function asynchronously .

Let me know if you still need any suggestion's . Thanks & Regards Rupen Makhecha CTO @ Voila Cab's www.voilacabs.com

See more
Rafey Iqbal Rahman
Cofounder at Wanderloop | 1 upvotes 路 137.1K views
Recommends
MySQL
at

I would recommend a mixture of MySQL and MongoDB. Using MongoDB for the Content Distribution Network (CDN) will make it easy to store high volume incoming data. MySQL is recommended to be used for business logic. PostgreSQL is not recommended since you will be faced with inefficient database replication features and constant migration from one PostgreSQL version to another.

See more
Decisions about ObjectBox and PostgreSQL
Daniel Moya
Data Engineer at Dimensigon | 4 upvotes 路 127.2K views

We have chosen Tibero over Oracle because we want to offer a PL/SQL-as-a-Service that the users can deploy in any Cloud without concerns from our website at some standard cost. With Oracle Database, developers would have to worry about what they implement and the related costs of each feature but the licensing model from Tibero is just 1 price and we have all features included, so we don't have to worry and developers using our SQLaaS neither. PostgreSQL would be open source. We have chosen Tibero over Oracle because we want to offer a PL/SQL that you can deploy in any Cloud without concerns. PostgreSQL would be the open source option but we need to offer an SQLaaS with encryption and more enterprise features in the background and best value option we have found, it was Tibero Database for PL/SQL-based applications.

See more
Tom Klein

The Gentlent Tech Team made lots of updates within the past year. The biggest one being our database:

We decided to migrate our #PostgreSQL -based database systems to a custom implementation of #Cassandra . This allows us to integrate our product data perfectly in a system that just makes sense. High availability and scalability are supported out of the box.

See more
Kyle Harrison
Web Application Developer at Fortinet | 11 upvotes 路 254.5K views

MySQL has a lot of strengths working for it. It's simple and easy to set up and use. It's JSON engine is also really good these days. Mongo is also simple to setup and use, and it's speed as a document-object storage engine is first class.

Where Postgres has both beat is in it's combining of all of the features that make both MySQL and Mongo great, while adding on enterprise grade level scalability and replication. It's Postgres' stability and robustness, while still fulfilling the roles of it's contemporaries extremely well that edge Postgre for me.

See more
Get Advice from developers at your company using Private StackShare. Sign up for Private StackShare.
Learn More
Pros of ObjectBox
Pros of PostgreSQL
    Be the first to leave a pro
    • 754
      Relational database
    • 506
      High availability
    • 436
      Enterprise class database
    • 380
      Sql
    • 302
      Sql + nosql
    • 171
      Great community
    • 145
      Easy to setup
    • 129
      Heroku
    • 128
      Secure by default
    • 111
      Postgis
    • 48
      Supports Key-Value
    • 46
      Great JSON support
    • 32
      Cross platform
    • 29
      Extensible
    • 26
      Replication
    • 24
      Triggers
    • 22
      Rollback
    • 21
      Multiversion concurrency control
    • 20
      Open source
    • 17
      Heroku Add-on
    • 14
      Stable, Simple and Good Performance
    • 13
      Powerful
    • 12
      Lets be serious, what other SQL DB would you go for?
    • 9
      Good documentation
    • 7
      Intelligent optimizer
    • 7
      Scalable
    • 6
      Transactional DDL
    • 6
      Modern
    • 6
      Reliable
    • 5
      Free
    • 5
      One stop solution for all things sql no matter the os
    • 4
      Relational database with MVCC
    • 3
      Faster Development
    • 3
      Full-Text Search
    • 3
      Developer friendly
    • 2
      Excellent source code
    • 2
      search
    • 2
      Great DB for Transactional system or Application
    • 1
      Full-text
    • 1
      Free version
    • 1
      Text
    • 1
      Open-source

    Sign up to add or upvote prosMake informed product decisions

    Cons of ObjectBox
    Cons of PostgreSQL
      Be the first to leave a con
      • 9
        Table/index bloatings

      Sign up to add or upvote consMake informed product decisions

      - No public GitHub repository available -

      What is ObjectBox?

      It is for developers who look for performance and ease of use. We are committed to providing you with the easiest APIs for you to keep your code short and maintainable. No SQL under the hood-Simply faster. Unlike other databases, it has been built from the ground up using key-value storage instead of column storage. The resulting performance is 10x faster than the leading alternative, we welcome you to try it yourself. It is fast regardless of the amount of data or operating system you are using.

      What is PostgreSQL?

      PostgreSQL is an advanced object-relational database management system that supports an extended subset of the SQL standard, including transactions, foreign keys, subqueries, triggers, user-defined types and functions.

      Need advice about which tool to choose?Ask the StackShare community!

      What companies use ObjectBox?
      What companies use PostgreSQL?
        No companies found
        See which teams inside your own company are using ObjectBox or PostgreSQL.
        Sign up for Private StackShareLearn More

        Sign up to get full access to all the companiesMake informed product decisions

        What tools integrate with ObjectBox?
        What tools integrate with PostgreSQL?

        Sign up to get full access to all the tool integrationsMake informed product decisions

        Blog Posts

        Dec 8 2020 at 5:50PM

        DigitalOcean

        +11
        2
        1725
        Nov 20 2019 at 3:38AM

        OneSignal

        +8
        7
        3767
        Jul 9 2019 at 7:22PM

        Blue Medora

        +8
        11
        1725
        What are some alternatives to ObjectBox and PostgreSQL?
        MySQL
        The MySQL software delivers a very fast, multi-threaded, multi-user, and robust SQL (Structured Query Language) database server. MySQL Server is intended for mission-critical, heavy-load production systems as well as for embedding into mass-deployed software.
        MongoDB
        MongoDB stores data in JSON-like documents that can vary in structure, offering a dynamic, flexible schema. MongoDB was also designed for high availability and scalability, with built-in replication and auto-sharding.
        Microsoft SQL Server
        Microsoft庐 SQL Server is a database management and analysis system for e-commerce, line-of-business, and data warehousing solutions.
        SQLite
        SQLite is an embedded SQL database engine. Unlike most other SQL databases, SQLite does not have a separate server process. SQLite reads and writes directly to ordinary disk files. A complete SQL database with multiple tables, indices, triggers, and views, is contained in a single disk file.
        MariaDB
        Started by core members of the original MySQL team, MariaDB actively works with outside developers to deliver the most featureful, stable, and sanely licensed open SQL server in the industry. MariaDB is designed as a drop-in replacement of MySQL(R) with more features, new storage engines, fewer bugs, and better performance.
        See all alternatives