Announcement

Collapse
No announcement yet.

Redis 5.0 Nearing Release With New Streams Data Type

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Redis 5.0 Nearing Release With New Streams Data Type

    Phoronix: Redis 5.0 Nearing Release With New Streams Data Type

    For users of the Redis in-memory key-value database, the Redis 5.0 release candidate is out today for testing...

    Phoronix, Linux Hardware Reviews, Linux hardware benchmarks, Linux server benchmarks, Linux benchmarking, Desktop Linux, Linux performance, Open Source graphics, Linux How To, Ubuntu benchmarks, Ubuntu hardware, Phoronix Test Suite

  • #2
    Voldemort, Riak, Redis, Cassanda, CouchDB, VoltDB, MongoDB, RethinkDB, etc. There are so many NoSQL database. Hard to know how they compare, which are good and which are better. Maybe all are good. Then there is the CAP theorem so they are good at different things.

    Then there is the SQL databases like MySQL, PostgreSQL, Microsoft SQL Server, Oracle Database that now all have support for JSON.

    After the NoSQL hype, maybe people are moving back to SQL databases again, this time with JSON support.
    JSON support in SQL databases is weird to me, since I mostly end up using the database through a ORM anyway.

    Comment


    • #3
      Originally posted by uid313 View Post
      Voldemort, Riak, Redis, Cassanda, CouchDB, VoltDB, MongoDB, RethinkDB, etc. There are so many NoSQL database. Hard to know how they compare, which are good and which are better. Maybe all are good. Then there is the CAP theorem so they are good at different things.

      Then there is the SQL databases like MySQL, PostgreSQL, Microsoft SQL Server, Oracle Database that now all have support for JSON.

      After the NoSQL hype, maybe people are moving back to SQL databases again, this time with JSON support.
      JSON support in SQL databases is weird to me, since I mostly end up using the database through a ORM anyway.
      Yeah, that's the nature of our careers. If you aren't using databases directly in your role very often, then it makes sense that you might not know the particulars of use cases. In general, the noSQL databases have been overused and have popped up in places where they aren't appropriate, but they also all offer some things that are more appropriate for certain situations. A relational database with JSON support may or may not be able to provide the benefits of a NoSQL database. I think in a lot of cases, Postgres is going to be far superior to MongoDB and even have better performance in NoSQL for JSONB. However, it comes at the cost of some complexity that a developer will need to understand. Redis is most useful for caching and is hard to compare to a relational db, and Cassandra is for entirely different problems. Personally, I think you'll either be just fine with any mainstream solution OR you'll have a big enough dev team that you'll have someone that can figure it out for your particular use case.

      I work on a project that does a lot of reporting, and we use SQL Server, which is great for that. However, we also have a lot of linked data, so an individual page load can sometimes be 600+ requests, which means a LOT of queries. A NoSQL solution would have meant more work for the reporting parts of what we do but would have saved some on the performance and resource cost end. Is ralational correct for us? Maybe... it's really hard to say. (shrug)

      Comment


      • #4
        Redis is very simple and very fast in what it does. While still being a bit more featured than Memcached.
        its mostly intended as an in-memory "database" that stores data that can typically be reconstructed from other locations such as MySQL or PostgreSQL.

        In addition it also has a persistent storage backend. But this should be seen as a way to get your cache objects back online quickly after a restart and not as a way to keep your data safe!

        Typical usecase, A web application gets an incoming request:
        - Your favorite programming language ( php, python, etc ) checks Redis if an (cached) object is available for usage for this request.
        - If this is not the case the data is looked up by your program in MySQL or PostgreSQL or some other database you use.
        - The result is then stored in Redis for future requests.

        Since websites contain a lot of static content that is shown on every page this can safe quite a lot of cycles to your database server. ( that has a lot more trouble handling huge amounts of requests )

        Comment


        • #5
          After trying to setup Nodebb with MongoDb after several failed attempts I switched it to Redis and it worked. Out of the box Redis default settings are less secure than MongoDb. That's pobably why it was easier for a noob like me to setup.

          Comment


          • #6
            Originally posted by Palu Macil View Post
            I think in a lot of cases, Postgres is going to be far superior to MongoDB and even have better performance in NoSQL for JSONB. However, it comes at the cost of some complexity that a developer will need to understand
            Any citations? I am genuinely curious why you would think this.

            I use Redis, PostgreSQL and MongoDB frequently. OracleDB and MSSQL occasionally.

            Comment


            • #7
              Redis is simple, relatively fast and good at what it does. If you need to throw in a fast cache for your web service to speed a few things up this is as good as it gets.

              Comment


              • #8
                Originally posted by PackRat View Post
                After trying to setup Nodebb with MongoDb after several failed attempts I switched it to Redis and it worked. Out of the box Redis default settings are less secure than MongoDb. That's pobably why it was easier for a noob like me to setup.
                Mongo and Redis have rather different purposes...

                Comment


                • #9
                  The biggest problem with Redis is the rocketing price of RAM, because everything else about it is awesome, and I've been waiting for streams with great enthusiasm since they were announced last year.

                  But buying the necessary RAM means I can't plonk down Redis wherever I'd like to. Timeseries are notorious memory hogs. I'm turning to timescaleDB (built on Postgres) as a (slower) alternative.

                  Comment


                  • #10
                    Originally posted by vegabook View Post
                    The biggest problem with Redis is the rocketing price of RAM, because everything else about it is awesome, and I've been waiting for streams with great enthusiasm since they were announced last year.

                    But buying the necessary RAM means I can't plonk down Redis wherever I'd like to. Timeseries are notorious memory hogs. I'm turning to timescaleDB (built on Postgres) as a (slower) alternative.
                    I'm assuming InfluxDB isn't suitable?

                    Comment

                    Working...
                    X