Alternatives to JSON logo

Alternatives to JSON

YAML, Protobuf, Avro, MongoDB, and OData are the most popular alternatives and competitors to JSON.
1.7K
1.5K
+ 1
9

What is JSON and what are its top alternatives?

JavaScript Object Notation is a lightweight data-interchange format. It is easy for humans to read and write. It is easy for machines to parse and generate. It is based on a subset of the JavaScript Programming Language.
JSON is a tool in the Languages category of a tech stack.

Top Alternatives to JSON

  • YAML
    YAML

    A human-readable data-serialization language. It is commonly used for configuration files, but could be used in many applications where data is being stored or transmitted. ...

  • Protobuf
    Protobuf

    Protocol buffers are Google's language-neutral, platform-neutral, extensible mechanism for serializing structured data – think XML, but smaller, faster, and simpler. ...

  • Avro
    Avro

    It is a row-oriented remote procedure call and data serialization framework developed within Apache's Hadoop project. It uses JSON for defining data types and protocols, and serializes data in a compact binary format. ...

  • MongoDB
    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. ...

  • OData
    OData

    It is an ISO/IEC approved, OASIS standard that defines a set of best practices for building and consuming RESTful APIs. It helps you focus on your business logic while building RESTful APIs without having to worry about the various approaches to define request and response headers, status codes, HTTP methods, URL conventions, media types, payload formats, query options, etc. ...

  • MessagePack
    MessagePack

    It is an efficient binary serialization format. It lets you exchange data among multiple languages like JSON. But it's faster and smaller. Small integers are encoded into a single byte, and typical short strings require only one extra byte in addition to the strings themselves. ...

  • JavaScript
    JavaScript

    JavaScript is most known as the scripting language for Web pages, but used in many non-browser environments as well such as node.js or Apache CouchDB. It is a prototype-based, multi-paradigm scripting language that is dynamic,and supports object-oriented, imperative, and functional programming styles. ...

  • Python
    Python

    Python is a general purpose programming language created by Guido Van Rossum. Python is most praised for its elegant syntax and readable code, if you are just beginning your programming career python suits you best. ...

JSON alternatives & related posts

YAML logo

YAML

337
239
0
A straightforward machine parsable data serialization format designed for human readability and interaction
337
239
+ 1
0
PROS OF YAML
    Be the first to leave a pro
    CONS OF YAML
      Be the first to leave a con

      related YAML posts

      Protobuf logo

      Protobuf

      541
      356
      0
      Google's data interchange format
      541
      356
      + 1
      0
      PROS OF PROTOBUF
        Be the first to leave a pro
        CONS OF PROTOBUF
          Be the first to leave a con

          related Protobuf posts

          Avro logo

          Avro

          128
          169
          0
          A data serialization framework
          128
          169
          + 1
          0
          PROS OF AVRO
            Be the first to leave a pro
            CONS OF AVRO
              Be the first to leave a con

              related Avro posts

              MongoDB logo

              MongoDB

              82.2K
              71.4K
              4.1K
              The database for giant ideas
              82.2K
              71.4K
              + 1
              4.1K
              PROS OF MONGODB
              • 829
                Document-oriented storage
              • 594
                No sql
              • 553
                Ease of use
              • 465
                Fast
              • 410
                High performance
              • 257
                Free
              • 218
                Open source
              • 180
                Flexible
              • 145
                Replication & high availability
              • 112
                Easy to maintain
              • 42
                Querying
              • 39
                Easy scalability
              • 38
                Auto-sharding
              • 37
                High availability
              • 31
                Map/reduce
              • 27
                Document database
              • 25
                Easy setup
              • 25
                Full index support
              • 16
                Reliable
              • 15
                Fast in-place updates
              • 14
                Agile programming, flexible, fast
              • 12
                No database migrations
              • 8
                Easy integration with Node.Js
              • 8
                Enterprise
              • 6
                Enterprise Support
              • 5
                Great NoSQL DB
              • 4
                Support for many languages through different drivers
              • 3
                Drivers support is good
              • 3
                Schemaless
              • 3
                Aggregation Framework
              • 2
                Fast
              • 2
                Managed service
              • 2
                Easy to Scale
              • 2
                Awesome
              • 2
                Consistent
              • 1
                Good GUI
              • 1
                Acid Compliant
              CONS OF MONGODB
              • 6
                Very slowly for connected models that require joins
              • 3
                Not acid compliant
              • 1
                Proprietary query language

              related MongoDB posts

              Jeyabalaji Subramanian

              Recently we were looking at a few robust and cost-effective ways of replicating the data that resides in our production MongoDB to a PostgreSQL database for data warehousing and business intelligence.

              We set ourselves the following criteria for the optimal tool that would do this job: - The data replication must be near real-time, yet it should NOT impact the production database - The data replication must be horizontally scalable (based on the load), asynchronous & crash-resilient

              Based on the above criteria, we selected the following tools to perform the end to end data replication:

              We chose MongoDB Stitch for picking up the changes in the source database. It is the serverless platform from MongoDB. One of the services offered by MongoDB Stitch is Stitch Triggers. Using stitch triggers, you can execute a serverless function (in Node.js) in real time in response to changes in the database. When there are a lot of database changes, Stitch automatically "feeds forward" these changes through an asynchronous queue.

              We chose Amazon SQS as the pipe / message backbone for communicating the changes from MongoDB to our own replication service. Interestingly enough, MongoDB stitch offers integration with AWS services.

              In the Node.js function, we wrote minimal functionality to communicate the database changes (insert / update / delete / replace) to Amazon SQS.

              Next we wrote a minimal micro-service in Python to listen to the message events on SQS, pickup the data payload & mirror the DB changes on to the target Data warehouse. We implemented source data to target data translation by modelling target table structures through SQLAlchemy . We deployed this micro-service as AWS Lambda with Zappa. With Zappa, deploying your services as event-driven & horizontally scalable Lambda service is dumb-easy.

              In the end, we got to implement a highly scalable near realtime Change Data Replication service that "works" and deployed to production in a matter of few days!

              See more
              Robert Zuber

              We use MongoDB as our primary #datastore. Mongo's approach to replica sets enables some fantastic patterns for operations like maintenance, backups, and #ETL.

              As we pull #microservices from our #monolith, we are taking the opportunity to build them with their own datastores using PostgreSQL. We also use Redis to cache data we’d never store permanently, and to rate-limit our requests to partners’ APIs (like GitHub).

              When we’re dealing with large blobs of immutable data (logs, artifacts, and test results), we store them in Amazon S3. We handle any side-effects of S3’s eventual consistency model within our own code. This ensures that we deal with user requests correctly while writes are in process.

              See more
              OData logo

              OData

              50
              125
              34
              A REST-based protocol for querying and updating data
              50
              125
              + 1
              34
              PROS OF ODATA
              • 7
                Patterns for paging, sorting, filtering
              • 5
                ISO Standard
              • 3
                RESTful
              • 3
                Query Language
              • 3
                No overfetching, no underfetching
              • 2
                Batch requests
              • 2
                Get many resources in a single request
              • 2
                Ask for what you need, get exactly that
              • 2
                Self-documenting
              • 2
                Bulk requests ("array upsert")
              • 1
                Resource Modification Language
              • 1
                Resource model defines conventional operations
              • 1
                Evolve your API by following the compatibility rules
              CONS OF ODATA
              • 1
                Overwhelming, no "baby steps" documentation

              related OData posts

              MessagePack logo

              MessagePack

              21
              77
              1
              A binary serialization format
              21
              77
              + 1
              1
              PROS OF MESSAGEPACK
              • 1
                Lightweight
              CONS OF MESSAGEPACK
                Be the first to leave a con

                related MessagePack posts

                JavaScript logo

                JavaScript

                285.4K
                237.8K
                8K
                Lightweight, interpreted, object-oriented language with first-class functions
                285.4K
                237.8K
                + 1
                8K
                PROS OF JAVASCRIPT
                • 1.6K
                  Can be used on frontend/backend
                • 1.5K
                  It's everywhere
                • 1.2K
                  Lots of great frameworks
                • 894
                  Fast
                • 741
                  Light weight
                • 424
                  Flexible
                • 391
                  You can't get a device today that doesn't run js
                • 286
                  Non-blocking i/o
                • 235
                  Ubiquitousness
                • 190
                  Expressive
                • 54
                  Extended functionality to web pages
                • 48
                  Relatively easy language
                • 45
                  Executed on the client side
                • 29
                  Relatively fast to the end user
                • 24
                  Pure Javascript
                • 20
                  Functional programming
                • 14
                  Async
                • 11
                  Its everywhere
                • 11
                  Full-stack
                • 11
                  Setup is easy
                • 10
                  Because I love functions
                • 9
                  Like it or not, JS is part of the web standard
                • 9
                  JavaScript is the New PHP
                • 8
                  Expansive community
                • 8
                  Can be used in backend, frontend and DB
                • 8
                  Easy
                • 7
                  Most Popular Language in the World
                • 7
                  For the good parts
                • 7
                  No need to use PHP
                • 7
                  Future Language of The Web
                • 7
                  Everyone use it
                • 7
                  Easy to hire developers
                • 7
                  Can be used both as frontend and backend as well
                • 6
                  Supports lambdas and closures
                • 6
                  Photoshop has 3 JS runtimes built in
                • 6
                  Powerful
                • 6
                  Love-hate relationship
                • 6
                  Popularized Class-Less Architecture & Lambdas
                • 6
                  Agile, packages simple to use
                • 6
                  Evolution of C
                • 5
                  It's fun
                • 5
                  Its fun and fast
                • 5
                  Hard not to use
                • 5
                  1.6K Can be used on frontend/backend
                • 5
                  Client side JS uses the visitors CPU to save Server Res
                • 5
                  It let's me use Babel & Typescript
                • 5
                  Can be used on frontend/backend/Mobile/create PRO Ui
                • 5
                  Easy to make something
                • 5
                  Nice
                • 5
                  Versitile
                • 4
                  Scope manipulation
                • 4
                  Stockholm Syndrome
                • 4
                  Client processing
                • 4
                  What to add
                • 4
                  Clojurescript
                • 4
                  Function expressions are useful for callbacks
                • 4
                  Everywhere
                • 4
                  Promise relationship
                • 3
                  Only Programming language on browser
                • 3
                  Because it is so simple and lightweight
                • 0
                  Tenant
                • 0
                  Easy to understand
                CONS OF JAVASCRIPT
                • 22
                  A constant moving target, too much churn
                • 20
                  Horribly inconsistent
                • 15
                  Javascript is the New PHP
                • 8
                  No ability to monitor memory utilitization
                • 7
                  Shows Zero output in case of ANY error
                • 6
                  Can be ugly
                • 6
                  Thinks strange results are better than errors
                • 3
                  No GitHub
                • 2
                  Slow

                related JavaScript posts

                Zach Holman

                Oof. I have truly hated JavaScript for a long time. Like, for over twenty years now. Like, since the Clinton administration. It's always been a nightmare to deal with all of the aspects of that silly language.

                But wowza, things have changed. Tooling is just way, way better. I'm primarily web-oriented, and using React and Apollo together the past few years really opened my eyes to building rich apps. And I deeply apologize for using the phrase rich apps; I don't think I've ever said such Enterprisey words before.

                But yeah, things are different now. I still love Rails, and still use it for a lot of apps I build. But it's that silly rich apps phrase that's the problem. Users have way more comprehensive expectations than they did even five years ago, and the JS community does a good job at building tools and tech that tackle the problems of making heavy, complicated UI and frontend work.

                Obviously there's a lot of things happening here, so just saying "JavaScript isn't terrible" might encompass a huge amount of libraries and frameworks. But if you're like me, yeah, give things another shot- I'm somehow not hating on JavaScript anymore and... gulp... I kinda love it.

                See more
                Conor Myhrvold
                Tech Brand Mgr, Office of CTO at Uber · | 41 upvotes · 5.9M views

                How Uber developed the open source, end-to-end distributed tracing Jaeger , now a CNCF project:

                Distributed tracing is quickly becoming a must-have component in the tools that organizations use to monitor their complex, microservice-based architectures. At Uber, our open source distributed tracing system Jaeger saw large-scale internal adoption throughout 2016, integrated into hundreds of microservices and now recording thousands of traces every second.

                Here is the story of how we got here, from investigating off-the-shelf solutions like Zipkin, to why we switched from pull to push architecture, and how distributed tracing will continue to evolve:

                https://eng.uber.com/distributed-tracing/

                (GitHub Pages : https://www.jaegertracing.io/, GitHub: https://github.com/jaegertracing/jaeger)

                Bindings/Operator: Python Java Node.js Go C++ Kubernetes JavaScript OpenShift C# Apache Spark

                See more
                Python logo

                Python

                199.5K
                173.1K
                6.7K
                A clear and powerful object-oriented programming language, comparable to Perl, Ruby, Scheme, or Java.
                199.5K
                173.1K
                + 1
                6.7K
                PROS OF PYTHON
                • 1.2K
                  Great libraries
                • 948
                  Readable code
                • 835
                  Beautiful code
                • 780
                  Rapid development
                • 682
                  Large community
                • 426
                  Open source
                • 385
                  Elegant
                • 278
                  Great community
                • 268
                  Object oriented
                • 214
                  Dynamic typing
                • 75
                  Great standard library
                • 56
                  Very fast
                • 51
                  Functional programming
                • 43
                  Scientific computing
                • 43
                  Easy to learn
                • 33
                  Great documentation
                • 26
                  Matlab alternative
                • 25
                  Easy to read
                • 25
                  Productivity
                • 21
                  Simple is better than complex
                • 18
                  It's the way I think
                • 17
                  Imperative
                • 15
                  Very programmer and non-programmer friendly
                • 15
                  Free
                • 14
                  Powerful
                • 14
                  Powerfull language
                • 14
                  Machine learning support
                • 13
                  Fast and simple
                • 12
                  Scripting
                • 9
                  Explicit is better than implicit
                • 8
                  Unlimited power
                • 8
                  Ease of development
                • 8
                  Clear and easy and powerfull
                • 7
                  Import antigravity
                • 6
                  Print "life is short, use python"
                • 6
                  It's lean and fun to code
                • 5
                  I love snakes
                • 5
                  High Documented language
                • 5
                  Great for tooling
                • 5
                  Fast coding and good for competitions
                • 5
                  Python has great libraries for data processing
                • 5
                  Flat is better than nested
                • 5
                  Although practicality beats purity
                • 5
                  There should be one-- and preferably only one --obvious
                • 4
                  Rapid Prototyping
                • 4
                  Readability counts
                • 3
                  Plotting
                • 3
                  Web scraping
                • 3
                  Now is better than never
                • 3
                  Great for analytics
                • 3
                  Lists, tuples, dictionaries
                • 3
                  Socially engaged community
                • 3
                  Complex is better than complicated
                • 3
                  Multiple Inheritence
                • 3
                  Beautiful is better than ugly
                • 3
                  CG industry needs
                • 2
                  Pip install everything
                • 2
                  Easy to learn and use
                • 2
                  Special cases aren't special enough to break the rules
                • 2
                  If the implementation is hard to explain, it's a bad id
                • 2
                  If the implementation is easy to explain, it may be a g
                • 2
                  List comprehensions
                • 2
                  Generators
                • 2
                  Simple and easy to learn
                • 2
                  No cruft
                • 2
                  Easy to setup and run smooth
                • 2
                  Many types of collections
                • 2
                  Import this
                • 1
                  Powerful language for AI
                • 1
                  Good for hacking
                • 1
                  Because of Netflix
                • 1
                  A-to-Z
                • 1
                  Only one way to do it
                • 1
                  Can understand easily who are new to programming
                • 1
                  Flexible and easy
                • 1
                  Batteries included
                • 1
                  Should START with this but not STICK with This
                • 1
                  Better outcome
                • 1
                  It is Very easy , simple and will you be love programmi
                • 0
                  Powerful
                CONS OF PYTHON
                • 51
                  Still divided between python 2 and python 3
                • 28
                  Performance impact
                • 26
                  Poor syntax for anonymous functions
                • 21
                  GIL
                • 19
                  Package management is a mess
                • 14
                  Too imperative-oriented
                • 12
                  Hard to understand
                • 12
                  Dynamic typing
                • 10
                  Very slow
                • 8
                  Not everything is expression
                • 7
                  Explicit self parameter in methods
                • 7
                  Indentations matter a lot
                • 6
                  Poor DSL capabilities
                • 6
                  Incredibly slow
                • 6
                  No anonymous functions
                • 6
                  Requires C functions for dynamic modules
                • 5
                  Hard to obfuscate
                • 5
                  Threading
                • 5
                  Fake object-oriented programming
                • 5
                  The "lisp style" whitespaces
                • 4
                  Official documentation is unclear.
                • 4
                  Circular import
                • 4
                  Lack of Syntax Sugar leads to "the pyramid of doom"
                • 4
                  Not suitable for autocomplete
                • 4
                  The benevolent-dictator-for-life quit
                • 2
                  Meta classes
                • 1
                  Training wheels (forced indentation)

                related Python posts

                Conor Myhrvold
                Tech Brand Mgr, Office of CTO at Uber · | 41 upvotes · 5.9M views

                How Uber developed the open source, end-to-end distributed tracing Jaeger , now a CNCF project:

                Distributed tracing is quickly becoming a must-have component in the tools that organizations use to monitor their complex, microservice-based architectures. At Uber, our open source distributed tracing system Jaeger saw large-scale internal adoption throughout 2016, integrated into hundreds of microservices and now recording thousands of traces every second.

                Here is the story of how we got here, from investigating off-the-shelf solutions like Zipkin, to why we switched from pull to push architecture, and how distributed tracing will continue to evolve:

                https://eng.uber.com/distributed-tracing/

                (GitHub Pages : https://www.jaegertracing.io/, GitHub: https://github.com/jaegertracing/jaeger)

                Bindings/Operator: Python Java Node.js Go C++ Kubernetes JavaScript OpenShift C# Apache Spark

                See more
                Nick Parsons
                Building cool things on the internet 🛠️ at Stream · | 35 upvotes · 1.8M views

                Winds 2.0 is an open source Podcast/RSS reader developed by Stream with a core goal to enable a wide range of developers to contribute.

                We chose JavaScript because nearly every developer knows or can, at the very least, read JavaScript. With ES6 and Node.js v10.x.x, it’s become a very capable language. Async/Await is powerful and easy to use (Async/Await vs Promises). Babel allows us to experiment with next-generation JavaScript (features that are not in the official JavaScript spec yet). Yarn allows us to consistently install packages quickly (and is filled with tons of new tricks)

                We’re using JavaScript for everything – both front and backend. Most of our team is experienced with Go and Python, so Node was not an obvious choice for this app.

                Sure... there will be haters who refuse to acknowledge that there is anything remotely positive about JavaScript (there are even rants on Hacker News about Node.js); however, without writing completely in JavaScript, we would not have seen the results we did.

                #FrameworksFullStack #Languages

                See more