{"id":31445,"date":"2024-02-28T16:14:00","date_gmt":"2024-02-28T15:14:00","guid":{"rendered":"https:\/\/www.dbi-services.com\/blog\/?p=31445"},"modified":"2024-02-28T16:14:00","modified_gmt":"2024-02-28T15:14:00","slug":"getting-started-with-greenplum-1-installation","status":"publish","type":"post","link":"https:\/\/www.dbi-services.com\/blog\/getting-started-with-greenplum-1-installation\/","title":{"rendered":"Getting started with Greenplum &#8211; 1 &#8211; Installation"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Because PostgreSQL is fully open source there are many forks of it. One of them is called <a href=\"https:\/\/github.com\/greenplum-db\/gpdb\" target=\"_blank\" rel=\"noreferrer noopener\">Greenplum<\/a> which describes itself as &#8220;an advanced, fully featured, open source data warehouse, based on PostgreSQL&#8221;.  Sounds interesting, so lets give it a try. This will be a series of blog posts and in this first one we&#8217;re going to prepare the operating system, install the software and verify the installation afterwards.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">What follows is basically a short version of the installation guide which you can find <a href=\"https:\/\/docs.vmware.com\/en\/VMware-Greenplum\/7\/greenplum-database\/landing-index.html\">here<\/a>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">One of the requirements is either to disable <a href=\"https:\/\/en.wikipedia.org\/wiki\/Security-Enhanced_Linux\" target=\"_blank\" rel=\"noreferrer noopener\">SELinux<\/a> or to configure it properly for the Greenplum installation. As this is only a playground, let&#8217;s do it the easy way and just disable it. This can be done by setting SELinux to &#8220;disabled&#8221; in \/etc\/sysconfig\/selinux and reboot the system (I am using <a href=\"https:\/\/rockylinux.org\/\" target=\"_blank\" rel=\"noreferrer noopener\">Rocky Linux<\/a> 9 here):<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: bash; highlight: [1,5,6]; title: ; notranslate\" title=\"\">\n&#x5B;gpadmin@rocky9-gp7-master ~]$ grep -w SELINUX \/etc\/sysconfig\/selinux \n# SELINUX= can take one of these three values:\n# NOTE: Up to RHEL 8 release included, SELINUX=disabled would also\nSELINUX=disabled\n&#x5B;root@rocky9-gp7-master ~]$ reboot\n&#x5B;root@rocky9-gp7-master ~]$ getenforce \nDisabled\n<\/pre><\/div>\n\n\n<p class=\"wp-block-paragraph\">The same for the local firewall, either disable it or configure it properly:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: bash; highlight: [1,2]; title: ; notranslate\" title=\"\">\n&#x5B;root@rocky9-gp7-master ~]$ systemctl stop firewalld\n&#x5B;root@rocky9-gp7-master ~]$ systemctl disable firewalld\nRemoved &quot;\/etc\/systemd\/system\/multi-user.target.wants\/firewalld.service&quot;.\nRemoved &quot;\/etc\/systemd\/system\/dbus-org.fedoraproject.FirewallD1.service&quot;.\n<\/pre><\/div>\n\n\n<p class=\"wp-block-paragraph\">To avoid DNS the hosts file on all my three nodes looks like this:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: bash; highlight: [1,5,6,7]; title: ; notranslate\" title=\"\">\n&#x5B;root@rocky9-gp7-master ~]$ cat \/etc\/hosts\n127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4\n::1         localhost localhost.localdomain localhost6 localhost6.localdomain6\n\n192.168.122.200 rocky9-gp7-master rocky9-gp7-master.it.dbi-services.com\n192.168.122.201 rocky9-gp7-segment1 rocky9-gp7-segment1.it.dbi-services.com\n192.168.122.202 rocky9-gp7-segment2 rocky9-gp7-segment2.it.dbi-services.com\n<\/pre><\/div>\n\n\n<p class=\"wp-block-paragraph\">The first node is the so called &#8220;Coordinator Host&#8221;. This one will receive all the client requests and route them to one of the so called &#8220;Segment Hosts&#8221;. In this case there are two segment nodes and those will host the actual data.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">For the kernel &amp; system requirements this are the recommended settings:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: bash; highlight: [1,37]; title: ; notranslate\" title=\"\">\n&#x5B;root@rocky9-gp7-master ~]$ cat \/etc\/sysctl.conf\n# kernel.shmall = _PHYS_PAGES \/ 2 # See Shared Memory Pages\nkernel.shmall = 197951838\n# kernel.shmmax = kernel.shmall * PAGE_SIZE \nkernel.shmmax = 810810728448\nkernel.shmmni = 4096\nvm.overcommit_memory = 2 # See Segment Host Memory\nvm.overcommit_ratio = 95 # See Segment Host Memory\n\nnet.ipv4.ip_local_port_range = 10000 65535 # See Port Settings\nkernel.sem = 250 2048000 200 8192\nkernel.sysrq = 1\nkernel.core_uses_pid = 1\nkernel.msgmnb = 65536\nkernel.msgmax = 65536\nkernel.msgmni = 2048\nkernel.core_pattern=\/var\/core\/core.%h.%t\nnet.ipv4.tcp_syncookies = 1\nnet.ipv4.conf.default.accept_source_route = 0\nnet.ipv4.tcp_max_syn_backlog = 4096\nnet.ipv4.conf.all.arp_filter = 1\nnet.ipv4.ipfrag_high_thresh = 41943040\nnet.ipv4.ipfrag_low_thresh = 31457280\nnet.ipv4.ipfrag_time = 60\nnet.core.netdev_max_backlog = 10000\nnet.core.rmem_max = 2097152\nnet.core.wmem_max = 2097152\nvm.swappiness = 10\nvm.zone_reclaim_mode = 0\nvm.dirty_expire_centisecs = 500\nvm.dirty_writeback_centisecs = 100\nvm.dirty_background_ratio = 0 # See System Memory\nvm.dirty_ratio = 0\nvm.dirty_background_bytes = 1610612736\nvm.dirty_bytes = 4294967296\n&#x5B;root@rocky9-gp7-master ~]$ sysctl -p\n&#x5B;root@rocky9-gp7-master ~]$ egrep &quot;^\\*&quot; \/etc\/security\/limits.conf\n* soft nofile 524288\n* hard nofile 524288\n* soft nproc 131072\n* hard nproc 131072\n* soft  core unlimited\n<\/pre><\/div>\n\n\n<p class=\"wp-block-paragraph\">Another requirement is, that <a href=\"https:\/\/en.wikipedia.org\/wiki\/Init\" target=\"_blank\" rel=\"noreferrer noopener\">rc.local<\/a> needs to be enabled or, in other words, it needs to be executable when the systems are starting up:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: bash; highlight: [1,2]; title: ; notranslate\" title=\"\">\n&#x5B;root@rocky9-gp7-master ~]$ chmod +x \/etc\/rc.d\/rc.local\n&#x5B;root@rocky9-gp7-master ~]$ reboot\n<\/pre><\/div>\n\n\n<p class=\"wp-block-paragraph\">As usual on system swhich host a database it is recommended to disable <a href=\"https:\/\/www.kernel.org\/doc\/html\/next\/admin-guide\/mm\/transhuge.html\" target=\"_blank\" rel=\"noreferrer noopener\">transparent huge pages<\/a> (this required a reboot as well):<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: bash; highlight: [1]; title: ; notranslate\" title=\"\">\n&#x5B;root@rocky9-gp7-master ~]$ grubby --update-kernel=ALL --args=&quot;transparent_hugepage=never&quot;\n<\/pre><\/div>\n\n\n<p class=\"wp-block-paragraph\">Deactivate <a href=\"https:\/\/www.freedesktop.org\/software\/systemd\/man\/latest\/systemd.exec.html\" target=\"_blank\" rel=\"noreferrer noopener\">systemd&#8217;s IPC object removal<\/a> (this is already the default on Rocky Linux 9, but anyway): <\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: bash; highlight: [1,2]; title: ; notranslate\" title=\"\">\n&#x5B;root@rocky9-gp7-master ~]$ sed -i &#039;s\/#RemoveIPC=no\/RemoveIPC=no\/g&#039; \/etc\/systemd\/logind.conf \n&#x5B;root@rocky9-gp7-master ~]$ systemctl restart systemd-logind.service\n<\/pre><\/div>\n\n\n<p class=\"wp-block-paragraph\">As Greenplum should run under a dedicated user, let&#8217;s create it:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: bash; highlight: [1,2,3]; title: ; notranslate\" title=\"\">\n&#x5B;root@rocky9-gp7-master ~]$ groupadd gpadmin\n&#x5B;root@rocky9-gp7-master ~]$ useradd -g gpadmin -m gpadmin\n&#x5B;root@rocky9-gp7-master ~]$ passwd gpadmin\nChanging password for user gpadmin.\nNew password: \nBAD PASSWORD: The password fails the dictionary check - it is based on a dictionary word\nRetype new password: \npasswd: all authentication tokens updated successfully.\n<\/pre><\/div>\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https:\/\/en.wikipedia.org\/wiki\/Sudo\" target=\"_blank\" rel=\"noreferrer noopener\">sudo<\/a> configuration is optional, but as it makes life a lot easier, lets configure this as well for the gpadmin user:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: bash; highlight: [1]; title: ; notranslate\" title=\"\">\n&#x5B;root@rocky9-gp7-master ~]$ grep gpadmin \/etc\/sudoers\ngpadmin ALL=(ALL)       NOPASSWD: ALL\n<\/pre><\/div>\n\n\n<p class=\"wp-block-paragraph\">The installation of Greenplum is just a matter of installing the rpm, which can be downloaded from the <a href=\"https:\/\/github.com\/greenplum-db\/gpdb\/releases\" target=\"_blank\" rel=\"noreferrer noopener\">project&#8217;s Github repository<\/a>:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: bash; highlight: [1,3,6,30]; title: ; notranslate\" title=\"\">\n&#x5B;root@rocky9-gp7-master ~]$ su - gpadmin\nLast login: Wed Feb 28 14:48:01 CET 2024 on pts\/0\n&#x5B;gpadmin@rocky9-gp7-master ~]$ ls -l\ntotal 50320\n-rw-r--r-- 1 gpadmin gpadmin 51527129 Feb 28 14:50 open-source-greenplum-db-7.1.0-el9-x86_64.rpm\n&#x5B;gpadmin@rocky9-gp7-master ~]$ sudo dnf localinstall .\/open-source-greenplum-db-7.1.0-el9-x86_64.rpm \nRocky Linux 9 - BaseOS                                                                                14 kB\/s | 4.1 kB     00:00    \nRocky Linux 9 - BaseOS                                                                               5.6 MB\/s | 2.2 MB     00:00    \nRocky Linux 9 - AppStream                                                                             22 kB\/s | 4.5 kB     00:00    \nRocky Linux 9 - AppStream                                                                             12 MB\/s | 7.4 MB     00:00    \nRocky Linux 9 - Extras                                                                               6.7 kB\/s | 2.9 kB     00:00    \nRocky Linux 9 - Extras                                                                                24 kB\/s |  14 kB     00:00    \nDependencies resolved.\n=====================================================================================================================================\n Package                                  Architecture       Version                                  Repository                Size\n=====================================================================================================================================\nInstalling:\n open-source-greenplum-db-7               x86_64             7.1.0-1.el9                              @commandline              49 M\nInstalling dependencies:\n annobin                                  x86_64             12.12-1.el9                              appstream                977 k\n apr                                      x86_64             1.7.0-12.el9_3                           appstream                122 k\n apr-util                                 x86_64             1.6.1-23.el9                             appstream                 94 k\n apr-util-bdb                             x86_64             1.6.1-23.el9                             appstream                 12 k\n...\n  tar-2:1.34-6.el9_1.x86_64                                       unzip-6.0-56.el9.x86_64                                           \n  zip-3.0-35.el9.x86_64                                          \n\nComplete!\n\n&#x5B;gpadmin@rocky9-gp7-master ~]$ sudo chown -R gpadmin:gpadmin \/usr\/local\/greenplum-db*\n<\/pre><\/div>\n\n\n<p class=\"wp-block-paragraph\">(the last step could also be done automatically by the package, but as it is not and the documentation recommends doing it, lets do so)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">As password-less ssh is a requirement as well, let&#8217;s generate ssh keys on the coordinator node, create the authorized_keys file and then copy over the whole &#8220;.ssh&#8221; directory to the other nodes. Once this is done, password-less SSH connections should already work between the nodes:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: bash; highlight: [1]; title: ; notranslate\" title=\"\">\n&#x5B;gpadmin@rocky9-gp7-master ~]$ ssh-keygen \nGenerating public\/private rsa key pair.\nEnter file in which to save the key (\/home\/gpadmin\/.ssh\/id_rsa): \nCreated directory &#039;\/home\/gpadmin\/.ssh&#039;.\nEnter passphrase (empty for no passphrase): \nEnter same passphrase again: \nYour identification has been saved in \/home\/gpadmin\/.ssh\/id_rsa\nYour public key has been saved in \/home\/gpadmin\/.ssh\/id_rsa.pub\nThe key fingerprint is:\nSHA256:+8uzanzyzxWSPhvtEHQiZ3s5+qSM9\/YdUshPjEz4ojg gpadmin@rocky9-gp7-master.it.dbi-services.com\nThe key&#039;s randomart image is:\n+---&#x5B;RSA 3072]----+\n|                 |\n|            .    |\n|          ..=..  |\n|           ===+. |\n|        S  .=*=+ |\n|        .....*+o |\n|       E..  *.+o |\n|        =oo+.@o o|\n|       ..=B**o+.o|\n+----&#x5B;SHA256]-----+\n\n&#x5B;gpadmin@rocky9-gp7-master ~]$ ssh-keygen \n&#x5B;gpadmin@rocky9-gp7-master ~]$ scp -r .ssh\/ rocky9-gp7-segment1:\/home\/gpadmin\/\n&#x5B;gpadmin@rocky9-gp7-master ~]$ scp -r .ssh\/ rocky9-gp7-segment2:\/home\/gpadmin\/\n&#x5B;gpadmin@rocky9-gp7-master ~]$ ssh rocky9-gp7-segment1\nLast login: Wed Feb 28 15:04:18 2024 from 192.168.122.200\n&#x5B;gpadmin@rocky9-gp7-segment1 ~]$ \nlogout\nConnection to rocky9-gp7-segment1 closed.\n&#x5B;gpadmin@rocky9-gp7-master ~]$ ssh rocky9-gp7-segment2\nLast login: Wed Feb 28 14:50:50 2024\n&#x5B;gpadmin@rocky9-gp7-segment2 ~]$ \nlogout\nConnection to rocky9-gp7-segment2 closed.\n<\/pre><\/div>\n\n\n<p class=\"wp-block-paragraph\">To verify the SSH setup there is utility called &#8220;gpssh&#8221;. Before using this create a file called &#8220;hostfile_exkeys&#8221; and add all the host names which will be part of the cluster:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\n&#x5B;gpadmin@rocky9-gp7-master ~]$ echo &quot;rocky9-gp7-master\nrocky9-gp7-segment1\nrocky9-gp7-segment2&quot; &amp;gt; \/home\/gpadmin\/hostfile_exkeys\n<\/pre><\/div>\n\n\n<p class=\"wp-block-paragraph\">Testing the SSH setup can then be done by asking &#8220;gpssh&#8221; to execute commands on all the nodes like this:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: bash; highlight: [1]; title: ; notranslate\" title=\"\">\n&#x5B;gpadmin@rocky9-gp7-master ~]$ \/usr\/local\/greenplum-db\/bin\/gpssh -f \/home\/gpadmin\/hostfile_exkeys -e &#039;ls -l \/usr\/local\/greenplum-db&#039;\nTraceback (most recent call last):\n  File &quot;\/usr\/local\/greenplum-db\/bin\/gpssh&quot;, line 32, in &lt;module&gt;\n    from gppylib.util import ssh_utils\nModuleNotFoundError: No module named &#039;gppylib&#039;\n<\/pre><\/div>\n\n\n<p class=\"wp-block-paragraph\">&#8230; and this fails. The reason is that the Greenplum environment is not yet set properly. This can be done by sourcing &#8220;greenplum_path.sh&#8221; into the gpadmin user&#8217;s environment:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: plain; highlight: [1,3]; title: ; notranslate\" title=\"\">\n&#x5B;gpadmin@rocky9-gp7-master ~]$ tail -1 .bash_profile \n. \/usr\/local\/greenplum-db\/greenplum_path.sh\n&#x5B;gpadmin@rocky9-gp7-master ~]$ \/usr\/local\/greenplum-db\/bin\/gpssh -f \/home\/gpadmin\/hostfile_exkeys -e &#039;ls -l \/usr\/local\/greenplum-db&#039;\n<\/pre><\/div>\n\n\n<p class=\"wp-block-paragraph\">This fails again with:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: bash; title: ; notranslate\" title=\"\">\nTraceback (most recent call last):\n  File &quot;\/usr\/local\/greenplum-db\/bin\/gpssh&quot;, line 32, in &lt;module&gt;\n    from gppylib.util import ssh_utils\n  File &quot;\/usr\/local\/greenplum-db-7.1.0\/lib\/python\/gppylib\/util\/ssh_utils.py&quot;, line 13, in &lt;module&gt;\n    from gppylib.commands.unix import Hostname, Echo\n  File &quot;\/usr\/local\/greenplum-db-7.1.0\/lib\/python\/gppylib\/commands\/unix.py&quot;, line 18, in &lt;module&gt;\n    from pkg_resources import parse_version\nModuleNotFoundError: No module named &#039;pkg_resources&#039;\n<\/pre><\/div>\n\n\n<p class=\"wp-block-paragraph\">The reason is, that the python3-setuptools package is not installed on the system. So, lets do this and try again:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: plain; highlight: [1,2]; title: ; notranslate\" title=\"\">\n&#x5B;gpadmin@rocky9-gp7-master ~]$ sudo dnf install -y python3-setuptools\n&#x5B;gpadmin@rocky9-gp7-master ~]$ \/usr\/local\/greenplum-db\/bin\/gpssh -f \/home\/gpadmin\/hostfile_exkeys -e &#039;ls -l \/usr\/local\/greenplum-db&#039;\n&#x5B;rocky9-gp7-segment1] ls -l \/usr\/local\/greenplum-db\n&#x5B;rocky9-gp7-segment1] lrwxrwxrwx 1 gpadmin gpadmin 29 Feb 28 14:53 \/usr\/local\/greenplum-db -&amp;gt; \/usr\/local\/greenplum-db-7.1.0\n&#x5B;  rocky9-gp7-master] ls -l \/usr\/local\/greenplum-db\n&#x5B;  rocky9-gp7-master] lrwxrwxrwx 1 gpadmin gpadmin 29 Feb 28 14:52 \/usr\/local\/greenplum-db -&amp;gt; \/usr\/local\/greenplum-db-7.1.0\n&#x5B;rocky9-gp7-segment2] ls -l \/usr\/local\/greenplum-db\n&#x5B;rocky9-gp7-segment2] lrwxrwxrwx 1 gpadmin gpadmin 29 Feb 28 14:53 \/usr\/local\/greenplum-db -&amp;gt; \/usr\/local\/greenplum-db-7.1.0\n<\/pre><\/div>\n\n\n<p class=\"wp-block-paragraph\">Now everything looks fine and we can proceed with creating the &#8220;Data Storage Areas&#8221;, but this will be the topic of the next post.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Because PostgreSQL is fully open source there are many forks of it. One of them is called Greenplum which describes itself as &#8220;an advanced, fully featured, open source data warehouse, based on PostgreSQL&#8221;. Sounds interesting, so lets give it a try. This will be a series of blog posts and in this first one we&#8217;re&hellip;&nbsp;<\/p>\n","protected":false},"author":28,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"neve_meta_sidebar":"","neve_meta_container":"","neve_meta_enable_content_width":"","neve_meta_content_width":0,"neve_meta_title_alignment":"","neve_meta_author_avatar":"","neve_post_elements_order":"","neve_meta_disable_header":"","neve_meta_disable_footer":"","neve_meta_disable_title":"","neve_meta_reading_time":"","_themeisle_gutenberg_block_has_review":false,"footnotes":""},"categories":[4133],"tags":[3276],"class_list":["post-31445","post","type-post","status-publish","format-standard","hentry","category-database","tag-greenplum"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v28.8 (Yoast SEO v28.8) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Getting started with Greenplum - 1 - Installation - dbi services | Blog<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.dbi-services.com\/blog\/getting-started-with-greenplum-1-installation\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Getting started with Greenplum - 1 - Installation\" \/>\n<meta property=\"og:description\" content=\"Because PostgreSQL is fully open source there are many forks of it. One of them is called Greenplum which describes itself as &#8220;an advanced, fully featured, open source data warehouse, based on PostgreSQL&#8221;. Sounds interesting, so lets give it a try. This will be a series of blog posts and in this first one we&#8217;re&hellip;&nbsp;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.dbi-services.com\/blog\/getting-started-with-greenplum-1-installation\/\" \/>\n<meta property=\"og:site_name\" content=\"dbi services | Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/dbiservices\/\" \/>\n<meta property=\"article:published_time\" content=\"2024-02-28T15:14:00+00:00\" \/>\n<meta name=\"author\" content=\"Open source Team\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@dbiservices\" \/>\n<meta name=\"twitter:site\" content=\"@dbiservices\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Open source Team\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/getting-started-with-greenplum-1-installation\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/getting-started-with-greenplum-1-installation\\\/\"},\"author\":{\"name\":\"Open source Team\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#\\\/schema\\\/person\\\/0b4548362cac3eeff8b3eaf329e3530a\"},\"headline\":\"Getting started with Greenplum &#8211; 1 &#8211; Installation\",\"datePublished\":\"2024-02-28T15:14:00+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/getting-started-with-greenplum-1-installation\\\/\"},\"wordCount\":553,\"commentCount\":2,\"publisher\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#organization\"},\"keywords\":[\"Greenplum\"],\"articleSection\":[\"Database\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/getting-started-with-greenplum-1-installation\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/getting-started-with-greenplum-1-installation\\\/\",\"url\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/getting-started-with-greenplum-1-installation\\\/\",\"name\":\"Getting started with Greenplum - 1 - Installation - dbi services | Blog\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#website\"},\"datePublished\":\"2024-02-28T15:14:00+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/getting-started-with-greenplum-1-installation\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/getting-started-with-greenplum-1-installation\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/getting-started-with-greenplum-1-installation\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Getting started with Greenplum &#8211; 1 &#8211; Installation\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/\",\"name\":\"dbi services Blog\",\"description\":\"#BeSharing\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#organization\"},\"alternateName\":\"dbi Blog\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#organization\",\"name\":\"dbi services\",\"alternateName\":\"dbi\",\"url\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/dbi-services-logo.png\",\"contentUrl\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/dbi-services-logo.png\",\"width\":512,\"height\":512,\"caption\":\"dbi services\"},\"image\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/dbiservices\\\/\",\"https:\\\/\\\/x.com\\\/dbiservices\",\"https:\\\/\\\/www.linkedin.com\\\/company\\\/dbi-services\\\/\",\"https:\\\/\\\/www.youtube.com\\\/user\\\/dbiservices\"],\"description\":\"Swiss IT consulting and services company specialised in efficient data infrastructures and platforms: databases, application servers, cloud, DevOps, digitalization, analytics, data quality and monitoring. Headquartered in Del\u00e9mont with offices in Nyon, Basel, Bern and Zurich.\",\"email\":\"info@dbi-services.com\",\"telephone\":\"+41 32 422 96 00\",\"legalName\":\"dbi services SA\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#\\\/schema\\\/person\\\/0b4548362cac3eeff8b3eaf329e3530a\",\"name\":\"Open source Team\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wp-content\\\/uploads\\\/2022\\\/05\\\/open-source-author.png\",\"url\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wp-content\\\/uploads\\\/2022\\\/05\\\/open-source-author.png\",\"contentUrl\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wp-content\\\/uploads\\\/2022\\\/05\\\/open-source-author.png\",\"caption\":\"Open source Team\"},\"description\":\"Posts published under the Open source Team account are collective contributions by the dbi services open infrastructure consultants. The practice covers open-source databases and platforms, PostgreSQL first of all, along with MySQL, MariaDB, and Linux, from architecture, replication, and high availability to performance tuning and operations under service level agreements, and contributes actively to the PostgreSQL community.\",\"url\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/author\\\/open-source-team\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Getting started with Greenplum - 1 - Installation - dbi services | Blog","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.dbi-services.com\/blog\/getting-started-with-greenplum-1-installation\/","og_locale":"en_US","og_type":"article","og_title":"Getting started with Greenplum - 1 - Installation","og_description":"Because PostgreSQL is fully open source there are many forks of it. One of them is called Greenplum which describes itself as &#8220;an advanced, fully featured, open source data warehouse, based on PostgreSQL&#8221;. Sounds interesting, so lets give it a try. This will be a series of blog posts and in this first one we&#8217;re&hellip;&nbsp;","og_url":"https:\/\/www.dbi-services.com\/blog\/getting-started-with-greenplum-1-installation\/","og_site_name":"dbi services | Blog","article_publisher":"https:\/\/www.facebook.com\/dbiservices\/","article_published_time":"2024-02-28T15:14:00+00:00","author":"Open source Team","twitter_card":"summary_large_image","twitter_creator":"@dbiservices","twitter_site":"@dbiservices","twitter_misc":{"Written by":"Open source Team","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.dbi-services.com\/blog\/getting-started-with-greenplum-1-installation\/#article","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/getting-started-with-greenplum-1-installation\/"},"author":{"name":"Open source Team","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/0b4548362cac3eeff8b3eaf329e3530a"},"headline":"Getting started with Greenplum &#8211; 1 &#8211; Installation","datePublished":"2024-02-28T15:14:00+00:00","mainEntityOfPage":{"@id":"https:\/\/www.dbi-services.com\/blog\/getting-started-with-greenplum-1-installation\/"},"wordCount":553,"commentCount":2,"publisher":{"@id":"https:\/\/www.dbi-services.com\/blog\/#organization"},"keywords":["Greenplum"],"articleSection":["Database"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.dbi-services.com\/blog\/getting-started-with-greenplum-1-installation\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.dbi-services.com\/blog\/getting-started-with-greenplum-1-installation\/","url":"https:\/\/www.dbi-services.com\/blog\/getting-started-with-greenplum-1-installation\/","name":"Getting started with Greenplum - 1 - Installation - dbi services | Blog","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/#website"},"datePublished":"2024-02-28T15:14:00+00:00","breadcrumb":{"@id":"https:\/\/www.dbi-services.com\/blog\/getting-started-with-greenplum-1-installation\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.dbi-services.com\/blog\/getting-started-with-greenplum-1-installation\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.dbi-services.com\/blog\/getting-started-with-greenplum-1-installation\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Accueil","item":"https:\/\/www.dbi-services.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Getting started with Greenplum &#8211; 1 &#8211; Installation"}]},{"@type":"WebSite","@id":"https:\/\/www.dbi-services.com\/blog\/#website","url":"https:\/\/www.dbi-services.com\/blog\/","name":"dbi services Blog","description":"#BeSharing","publisher":{"@id":"https:\/\/www.dbi-services.com\/blog\/#organization"},"alternateName":"dbi Blog","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.dbi-services.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.dbi-services.com\/blog\/#organization","name":"dbi services","alternateName":"dbi","url":"https:\/\/www.dbi-services.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/2026\/09\/dbi-services-logo.png","contentUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/2026\/09\/dbi-services-logo.png","width":512,"height":512,"caption":"dbi services"},"image":{"@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/dbiservices\/","https:\/\/x.com\/dbiservices","https:\/\/www.linkedin.com\/company\/dbi-services\/","https:\/\/www.youtube.com\/user\/dbiservices"],"description":"Swiss IT consulting and services company specialised in efficient data infrastructures and platforms: databases, application servers, cloud, DevOps, digitalization, analytics, data quality and monitoring. Headquartered in Del\u00e9mont with offices in Nyon, Basel, Bern and Zurich.","email":"info@dbi-services.com","telephone":"+41 32 422 96 00","legalName":"dbi services SA"},{"@type":"Person","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/0b4548362cac3eeff8b3eaf329e3530a","name":"Open source Team","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/2022\/05\/open-source-author.png","url":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/2022\/05\/open-source-author.png","contentUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/2022\/05\/open-source-author.png","caption":"Open source Team"},"description":"Posts published under the Open source Team account are collective contributions by the dbi services open infrastructure consultants. The practice covers open-source databases and platforms, PostgreSQL first of all, along with MySQL, MariaDB, and Linux, from architecture, replication, and high availability to performance tuning and operations under service level agreements, and contributes actively to the PostgreSQL community.","url":"https:\/\/www.dbi-services.com\/blog\/author\/open-source-team\/"}]}},"_links":{"self":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/31445","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/users\/28"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/comments?post=31445"}],"version-history":[{"count":0,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/31445\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/media?parent=31445"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/categories?post=31445"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/tags?post=31445"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}