Announcement

Collapse
No announcement yet.

PostgreSQL 9.6 Preparing To Release Next Week With Its Parallel Queries Support

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

  • PostgreSQL 9.6 Preparing To Release Next Week With Its Parallel Queries Support

    Phoronix: PostgreSQL 9.6 Preparing To Release Next Week With Its Parallel Queries Support

    PostgreSQL 9.6 is being prepared for release on 29 September as the database system's latest major update...

    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
    The userspace for PostgreSQL is really annoying, because it puts a tons of PostgreSQL-related tools in your /bin or /sbin directory.

    It clutters my bin directory with lots of Postgres binaries. It is not obvious from their names always that they are related to Postgres. Many have diffuse names like adduser or something like that.

    I wish they would just group everything under a "postgres" tool that handles everything Postgres-related.

    Comment


    • #3
      Originally posted by uid313 View Post
      The userspace for PostgreSQL is really annoying, because it puts a tons of PostgreSQL-related tools in your /bin or /sbin directory.

      It clutters my bin directory with lots of Postgres binaries. It is not obvious from their names always that they are related to Postgres. Many have diffuse names like adduser or something like that.

      I wish they would just group everything under a "postgres" tool that handles everything Postgres-related.
      "Tons of"? I counted 15 executables in /usr/bin for the client package and 9 (plus 1 script and 1 symlink) for the server, 8 for the contrib package and 2 for the development package on my machine with 9.5.4. In total, 36 command names.

      PostgreSQL, before that: Postgres95 and even before that Postgres (without SQL, used a pre-SQL custom query language) has about 30 years of legacy, and legacy has a lot of inertia. The PostgreSQL command names certainly will not change.

      The "postgres" binary is the server, so they won't have a tool called "postgres". But you are lucky, there are already at least two such tools, the command line interactive SQL shell called "psql" or a GTK GUI called PgAdmin which also has a Windows port.

      You were thinking about createuser. adduser / useradd is a UNIX/Linux utility to create an OS user. FYI, these are the commands that are not prefixed with pg or pg_: clusterdb, createdb, createlang, createuser, dropdb, droplang, dropuser, reindexdb, vacuumdb. 9 commands not prefixed with "pg". All of which are self-explanatory and shortcuts for SQL commands available from psql or PgAdmin or any custom written tool that connects to a PostgreSQL server. The functions for these shortcut commands are useful in administrator scripts so you don't have to constantly write e.g.:

      psql -c "VACUUM DATABASE;"
      or
      psql -c "CREATE USER $1;"
      and so on.

      In comparison, MariaDB has 54 commands and 22 of them are not prefixed with mysql and none of them has "mariadb" in its name.
      Your comments about "tons of binaries cluttering the bin directory" and "not obvious that they are related to <this database software>" covers MariaDB better.

      Comment


      • #4
        Originally posted by uid313 View Post
        The userspace for PostgreSQL is really annoying, because it puts a tons of PostgreSQL-related tools in your /bin or /sbin directory.
        And this is a problem because?

        Comment


        • #5
          I have complained about createuser in the past but it's not that big a deal. PostgreSQL is still awesome.

          Comment


          • #6
            Originally posted by uid313 View Post
            The userspace for PostgreSQL is really annoying, because it puts a tons of PostgreSQL-related tools in your /bin or /sbin directory.

            It clutters my bin directory with lots of Postgres binaries. It is not obvious from their names always that they are related to Postgres. Many have diffuse names like adduser or something like that.

            I wish they would just group everything under a "postgres" tool that handles everything Postgres-related.
            +1
            I think PosgreSQL is just following Filesystem Hierarchy Standard (FHS).
            I notice that the packages are not relocatable with for example RPM with "--prefix <dir>", but the binaries & libraries are.
            Since the binaries & libraries are relocatable, I normally unpack the packages to /opt/pgsql or /usr/local/pgsql
            I just update my PATH with /opt/pgsql/bin and I'm ready to go.


            Comment


            • #7
              Originally posted by system32 View Post
              +1
              Since the binaries & libraries are relocatable, I normally unpack the packages to /opt/pgsql or /usr/local/pgsql
              I just update my PATH with /opt/pgsql/bin and I'm ready to go.
              Or just use the packages from http://yum.postgresql.org , they can be installed along with the OS-provided version.

              Comment


              • #8
                Originally posted by uid313 View Post
                The userspace for PostgreSQL is really annoying, because it puts a tons of PostgreSQL-related tools in your /bin or /sbin directory.

                It clutters my bin directory with lots of Postgres binaries. It is not obvious from their names always that they are related to Postgres. Many have diffuse names like adduser or something like that.

                I wish they would just group everything under a "postgres" tool that handles everything Postgres-related.
                Apparently you use Debian/Ubuntu Linux pseudo-distribution...

                Comment


                • #9
                  Originally posted by uid313 View Post
                  The userspace for PostgreSQL is really annoying, because it puts a tons of PostgreSQL-related tools in your /bin or /sbin directory.

                  It clutters my bin directory with lots of Postgres binaries. It is not obvious from their names always that they are related to Postgres. Many have diffuse names like adduser or something like that.

                  I wish they would just group everything under a "postgres" tool that handles everything Postgres-related.
                  That is why I prefer to install my tools not from the package manager. Most tools offer distribution independent zip files or installers that let you install into isolated directories. For PostgreSQL I use the EntepriseDB installer (Downloads -> Linux -> Other) and actually install in /opt/postgresql. This way I keep the filesystem organized cleanly and my business environment independent from the actual distribution I may happen to use.

                  Comment


                  • #10
                    Originally posted by zboszor View Post

                    Or just use the packages from http://yum.postgresql.org , they can be installed along with the OS-provided version.
                    yum.postgresql.org is what I use.
                    Unfortunately, these packages / rpms don't support support --prefix.
                    What I do is
                    $ cd /opt/pgsql
                    $ yumdownloader postgresql96.x86_64
                    $ rpm2cpio postgresql96.x86_64 | cpio -icvdumB
                    $ update PATH LD_LIBRARY_PATH
                    etc.

                    Pity it defaults to /usr/bin /usr/share /var/lib/pgsql eyc.
                    I prefer to keep my DB and non OS related apps out of /usr/bin.

                    Anyway - looking forward to the parallel query on PG 9.6 - we have tables with 10b rows...

                    Comment

                    Working...
                    X