{"id":46635,"date":"2021-04-16T00:00:00","date_gmt":"2021-04-16T07:00:00","guid":{"rendered":"https:\/\/griddb-linux-hte8hndjf8cka8ht.westus-01.azurewebsites.net\/blog\/griddb-community-edition-v4-6-new-features\/"},"modified":"2025-11-13T12:55:13","modified_gmt":"2025-11-13T20:55:13","slug":"griddb-community-edition-v4-6-new-features","status":"publish","type":"post","link":"https:\/\/griddb.net\/en\/blog\/griddb-community-edition-v4-6-new-features\/","title":{"rendered":"GridDB Community Edition v4.6 New Features"},"content":{"rendered":"<h2> Introduction <\/h2>\n<p>With the fresh release of the GridDB Community Edition version 4.6, we would like to share with our readers the new features that we are most excited about. We will focus our efforts in highlighting the new SQL aggregate functions as well as the new command line interface (CLI) tool. <\/p>\n<p>As usual, the new release is available for free on <a href=\"https:\/\/github.com\/griddb\/griddb\/releases\"> GitHub.com <\/a>. To install, simply download and follow standard procedures found here: <a href=\"https:\/\/docs.griddb.net\/gettingstarted\/using-rpmyum\/#install-with-rpm\"> Getting Started: Using RPM\/YUM <\/a>. <\/p>\n<p>To take full advantage of v4.6&#8217;s new features, you will also need to install the <a href=\"https:\/\/github.com\/griddb\/cli\">GridDB CLI tool<\/a>. The command line tool is a cluster operation control command interpreter, but we will simply refer to it as <code>gs_sh<\/code>. The main purpose of this tool is to provide developers a means to manage their GridDB&#8217;s cluster and data operations.<\/p>\n<p>There have also been new SQL Aggregation functions added. They won&#8217;t be covered here, but you can read about them here in our docs: <a href=\"https:\/\/docs.griddb.net\/sqlreference\/sql-commands-supported\/#aggregate-functions\">https:\/\/docs.griddb.net\/sqlreference\/sql-commands-supported\/#aggregate-functions<\/a><\/p>\n<h2> Installation <\/h2>\n<p>Installing <code> gs_sh<\/code> is extremely easy as it comes packaged with an RPM. <\/p>\n<div class=\"clipboard\">\n<pre><code class=\"language-shell\">$ wget https:\/\/github.com\/griddb\/cli\/releases\/download\/v4.6.0\/griddb-ce-cli-4.6.0-linux.x86_64.rpm\n$ sudo rpm -ivh griddb-ce-cli-X.X.X-linux.x86_64.rpm <\/code><\/pre>\n<\/div>\n<p>You will also need to have a <code>griddb-jdbc.jar<\/code> set up in your <code>\/usr\/share\/java\/<\/code> directory. You can find info about that here: <a href=\"https:\/\/griddb.net\/en\/blog\/connecting-to-griddb-via-jdbc-with-sqlworkbench-j\/\">https:\/\/griddb.net\/en\/blog\/connecting-to-griddb-via-jdbc-with-sqlworkbench-j\/<\/a>. <\/p>\n<p>Here is a quick summary though: <\/p>\n<div class=\"clipboard\">\n<pre><code class=\"language-shell\">$ wget https:\/\/repo1.maven.org\/maven2\/com\/github\/griddb\/gridstore-jdbc\/4.5.0\/gridstore-jdbc-4.5.0.jar\n<\/code><\/pre>\n<\/div>\n<p>You can make sure you&#8217;re using the latest version of the jdbc file by checking <a href=\"https:\/\/github.com\/griddb\/jdbc\/releases\">GitHub<\/a>.<\/p>\n<p>That should be about it on the installation side. <\/p>\n<h2> Cluster Operation Control Command Interpreter  (gs_sh) <\/h2>\n<h3> Features <\/h3>\n<p>As stated earlier, the tool exists to provide developers a means to manage their GridDB cluster and data operations. This means that using this tool will allow <\/p>\n<ul>\n<li> Displaying cluster status <\/li>\n<li> Database and user management <\/li>\n<li> Displaying collections and triggers <\/li>\n<li> Index setting, deleting index <\/li>\n<li> Search using TQL\/SQL <\/li>\n<\/ul>\n<h3> Usage <\/h3>\n<h4> Basics<\/h4>\n<p>Let&#8217;s just dive right in. To do so, just type directly into your shell: <\/p>\n<div class=\"clipboard\">\n<pre><code class=\"language-shell\">$ gs_sh\ngs> version\n\ngs_sh-ce version 4.6.0<\/code><\/pre>\n<\/div>\n<p>Now that you&#8217;ve confirmed it works, let us first tackle some prerequisite steps to using this feature. For this section you will need to create a new gs user, one other than the default <code>gsadm<\/code> user and communicate to your tool your GridDB cluster definitions. <\/p>\n<h4> Defining GridDB Cluster <\/h4>\n<h5> Method One: Sync <\/h5>\n<p>There are a couple of ways to define your nodes and cluster. If you are coming into v4.6 with a previously used GridDB instance, this first method will be easier as it uses your already defined GridDB Cluster. This method will have you simply sync over your <code>conf\/gs_cluster.json<\/code> configuration. So, drop into the shell, and after you set your username and password, you can <code>sync<\/code> your config:  <\/p>\n<p><code> sync &lt;IP Address&gt; &lt;Port Number&gt;  &lt;Cluster var name&gt;  &lt;node variables&gt; <\/code><\/p>\n<div class=\"clipboard\">\n<pre><code class=\"language-shell\">gs> setuser admin admin\ngs> sync 127.0.0.1 10040 defaultCluster node0<\/code><\/pre>\n<\/div>\n<p>And then you can run the <code>show<\/code> command to make sure the details are correct: <\/p>\n<div class=\"clipboard\">\n<pre><code class=\"language-shell\">gs> show<\/code><\/pre>\n<\/div>\n<div class=\"clipboard\">\n<pre><code class=\"language-shell\">Node variable:\n  node01=Node[10.0.1.6:10040,ssh=22]\nCluster variable:\n  defaultCluster=Cluster[name=defaultCluster,mode=MULTICAST,transaction=239.0.0.1:31999,sql=239.0.0.1:41999,nodes=($node01)]\nOther variables:\n  user=admin\n  password=*****\n  ospassword=<\/code><\/pre>\n<\/div>\n<p><b>Note:<\/b> these above settings are the &#8220;default&#8221; settings indicated by the guides over at <a href=\"https:\/\/docs.griddb.net\/gettingstarted\/using-source-code\/#build-a-server-and-client-java\">https:\/\/docs.griddb.net<\/a>.<\/p>\n<h5> Method Two: Start from Scratch <\/h5>\n<p>The 2nd method is more involved as it allows you to set all configurations prior to starting up your cluster. Instructions to follow: <\/p>\n<p>First we will need to explicitly define our current cluster&#8217;s configuration. So after dropping into the gs shell, define your nodes like so: <\/p>\n<p><code> setnode \t&lt;Node variable&gt; &lt;IP address&gt; &lt;Port no.&gt; [&lt;SSH port no.&gt;] <\/code><\/p>\n<p>And a specific example:<\/p>\n<div class=\"clipboard\">\n<pre><code class=\"language-shell\">gs> setnode node0 192.168.0.1 10000\ngs> setnode node1 192.168.0.2 10000<\/code><\/pre>\n<\/div>\n<p>Once done there, we can set any of the following cluster config: multicast, <a href=\"https:\/\/griddb.net\/en\/blog\/griddb-using-fixed-list-or-multicast-clustering\/\">fixed list<\/a>, or provider method. In this example, we will set it to multicast.<\/p>\n<p>The full command looks like this: <\/p>\n<p><code> setcluster &lt;Cluster variable&gt; &lt;Cluster name&gt; &lt;Multicast address&gt; &lt;Port no.&gt; [&lt;Node variable&gt; ...] <\/code><\/p>\n<p>Full example: <\/p>\n<div class=\"clipboard\">\n<pre><code class=\"language-shell\">gs> setcluster cluster0 name 200.0.0.1 1000 $node0\n<\/code><\/pre>\n<\/div>\n<p>If you want to add\/remove nodes: <\/p>\n<div class=\"clipboard\">\n<pre><code class=\"language-shell\">gs> modcluster cluster0 add $node1\ngs> modcluster cluster0 remove $node1<\/code><\/pre>\n<\/div>\n<p>You need a new user to be able to connect to each GridDB node environment (explained below) as a user other than the admin user <code> gsadm <\/code>. To do so:<\/p>\n<p><code> setuser &lt;Username&gt; &lt;Password&gt; <\/code><\/p>\n<div class=\"clipboard\">\n<pre><code class=\"language-shell\">gs> setuser admin admin<\/code><\/pre>\n<\/div>\n<p>And please note, only one user can be set at a time. If you wish to change the user\/password, simply rerun the above command.<\/p>\n<h5> Other Commands\/Uses <\/h5>\n<p>You can set your own variables to keep valuable information handy, such as declaring your <code>GS_PORT<\/code><\/p>\n<div class=\"clipboard\">\n<pre><code class=\"language-shell\">gs> set GS_PORT 10000<\/code><\/pre>\n<\/div>\n<p>And then you can show all variables and other useful items with <code>show<\/code><\/p>\n<div class=\"clipboard\">\n<pre><code class=\"language-shell\">gs> show<\/code><\/pre>\n<\/div>\n<div class=\"clipboard\">\n<pre><code class=\"language-shell\">Node variable:\n  node0=Node[192.168.0.1:10000,ssh=22]\n  node1=Node[192.168.0.2:10000,ssh=22]\nCluster variable:\n  cluster0=Cluster[name=name,mode=MULTICAST,transaction=200.0.0.1:1000,nodes=($node0)]\nOther variables:\n  user=admin\n  password=*****\n  ospassword=\n  GS_PORT=10000<\/code><\/pre>\n<\/div>\n<p>Once you are happy with your cluster definition, you can save your settings into a script: <\/p>\n<div class=\"clipboard\">\n<pre><code class=\"language-shell\">gs> save test.gsh<\/code><\/pre>\n<\/div>\n<p>And then of course, to load: <\/p>\n<div class=\"clipboard\">\n<pre><code class=\"language-shell\">gs> load test.gsh<\/code><\/pre>\n<\/div>\n<p>And as a small note, make sure when you run the <code>gs_sh<\/code> command, you have proper admin rights. If you get privilege errors about not being able to write to the log, the saving and loading of <code>.gsh<\/code> files will not work.<\/p>\n<p>Once you&#8217;ve got your script file saved, the next time you launch into the shell, you can simply add it as one of the options to run when beginning the process: <\/p>\n<div class=\"clipboard\">\n<pre><code class=\"language-shell\">$ gs_sh test.gsh<\/code><\/pre>\n<\/div>\n<h4> Cluster Operation Controls <\/h4>\n<p>Here is a generalized list of what can be done with these controls: <\/p>\n<ul>\n<li>  Displaying SQL processing under execution (<code>showsql<\/code>)<\/li>\n<li> Displaying executing event (<code>showevent<\/code>)<\/li>\n<li> Displaying connection (<code>showconnection<\/code>)<\/li>\n<li> SQL cancellation (<code>killsql &lt;query ID&gt; <\/code>) <\/li>\n<\/ul>\n<h5> Basics<\/h5>\n<p>For example, if you&#8217;ve got a query currently being executed, you can show it by simply typing: <\/p>\n<div class=\"clipboard\">\n<pre><code class=\"language-shell\">gs> showsql<\/code><\/pre>\n<\/div>\n<p>an example output: <\/p>\n<pre><code>  =======================================================================\n  query id: e6bf24f5-d811-4b45-95cb-ecc643922149:3\n  start time: 2019-04-02T06:02:36.93900\n  elapsed time: 53\n  database name: public\n  application name: gs_admin\n  node: 192.168.56.101:10040\n  sql: INSERT INTO TAB_711_0101 SELECT a.id, b.longval FROM TAB_711_0001 a LEFT OU\n    job id: e6bf24f5-d811-4b45-95cb-ecc643922149:3:5:0\n    node: 192.168.56.101:10040\n  #---------------------------<\/code><\/pre>\n<h4> Data Operation in a Database <\/h4>\n<p>For the purposes of this blog, I am using the dataset from this other <a href=\"https:\/\/griddb.net\/en\/blog\/tracking-air-quality-in-los-angeles-with-griddb-tableau\/\">blog.<\/a><\/p>\n<p>To begin, you will need to connect to the cluster which you intend to operate.<\/p>\n<div class=\"clipboard\">\n<pre><code class=\"language-shell\">gs> connect $cluster0<\/code><\/pre>\n<\/div>\n<p>Note here that the cluster name <i>does <\/i> matter, so in my specific case (following the sync instructions above), I ran : <\/p>\n<div class=\"clipboard\">\n<pre><code class=\"language-shell\">gs> connect $defaultCluster<\/code><\/pre>\n<\/div>\n<pre><code>The connection attempt was successful(NoSQL).\nThe connection attempt was successful(NewSQL).<\/code><\/pre>\n<p>Now that we are connected, we can try running some queries.<\/p>\n<p>To run a TQL Command via shell: <\/p>\n<div class=\"clipboard\">\n<pre><code class=\"language-shell\">gs[public]> tql LosAngelesNO2 select *;\n\n4,344 results. (0 ms)\n\ngs[public]> get 1\n\ntimestamp,notwo\n2019-01-01T00:00:00.000Z,1.4\nThe 1 results had been acquired.<\/code><\/pre>\n<\/div>\n<p>And for SQL: <\/p>\n<div class=\"clipboard\">\n<pre><code class=\"language-shell\">gs[public]> sql select * from LosAngelesNO2;\n\n4,344 results. (1 ms)\n\ngs[public]> get 10\n\ntimestamp,notwo\n2019-01-01T00:00:00.000Z,1.4\n2019-01-01T01:00:00.000Z,1.6\n2019-01-01T02:00:00.000Z,3.5\n2019-01-01T03:00:00.000Z,1.3\n2019-01-01T04:00:00.000Z,1.3\n2019-01-01T05:00:00.000Z,1.0\n2019-01-01T06:00:00.000Z,1.9\n2019-01-01T07:00:00.000Z,3.0\n2019-01-01T08:00:00.000Z,3.4\n2019-01-01T09:00:00.000Z,1.5\nThe 10 results had been acquired.<\/code><\/pre>\n<\/div>\n<p>The first command is a search, and the second actually produces the results.<\/p>\n<p>You can also save your queries into a CSV file: <\/p>\n<div class=\"clipboard\">\n<pre><code class=\"language-shell\">gs[public]> getcsv test.csv 1000\n\nThe 1,000 results had been acquired.\nThe 1,000 results had been acquired.<\/code><\/pre>\n<\/div>\n<p>And when finished, you can just close all dangling connections: <\/p>\n<div class=\"clipboard\">\n<pre><code class=\"language-shell\">gs[public]> tqlclose\ngs[public]> queryclose<\/code><\/pre>\n<\/div>\n<div class=\"clipboard\">\n<pre><code class=\"language-shell\">gs[public]> disconnect\nDisconnected connection attempt was successful.<\/code><\/pre>\n<\/div>\n<h5> Container Management<\/h5>\n<p>You can also create\/delete\/update your containers via the shell.<\/p>\n<p>To create a collection container: <\/p>\n<p><code>createcollection &lt;Container name&gt; &lt;Column name&gt; &lt;Column type&gt; [&lt;Column name&gt; &lt;Column type&gt; ...]<\/code><\/p>\n<div class=\"clipboard\">\n<pre><code class=\"language-shell\">gs[public]> createcollection test col01 string<\/code><\/pre>\n<\/p><\/div>\n<p>And a timeseries collection: <\/p>\n<p><code>createtimeseries &lt;Container name&gt; &lt;Compression method&gt; &lt;Column name&gt; &lt;Column type&gt; [&lt;Column name&gt; &lt;Column type&gt; ...]<\/code><\/p>\n<div class=\"clipboard\">\n<pre><code class=\"language-shell\">gs[public]> createtimeseries testTS NO colTS timestamp<\/code><\/pre>\n<\/div>\n<p>and then to drop a container: <\/p>\n<div class=\"clipboard\">\n<pre><code class=\"language-shell\">gs[public]> dropcontainer col01<\/code><\/pre>\n<\/div>\n<p>Another useful container feature is the <code>showcontainer command<\/code><\/p>\n<div class=\"clipboard\">\n<pre><code class=\"language-shell\">gs[public]> showcontainer\n\n        Database    : public\n        Name        : LosAngelesNO2\n        Type        : TIME_SERIES\n        Partition ID: 24\n        DataAffinity: -\n        \n        Compression Method : NO\n        Compression Window : -\n        Row Expiration Time: -\n        Row Expiration Division Count: -\n        \n        Columns:\n        No  Name                  Type            CSTR  RowKey   Compression\n        ------------------------------------------------------------------------------\n         0  timestamp             TIMESTAMP       NN    [RowKey]\n         1  notwo                 DOUBLE\n    <\/code><\/pre>\n<\/div>\n<p>To search through your containers and find them: <\/p>\n<div class=\"clipboard\">\n<pre><code class=\"language-shell\">gs[public]> searchcontainer LosAngelesNO2\n\n        LosAngelesNO2\n\n        gs[public]> searchcontainer LosAngeles%\n\n        LosAngelesNO2\n        LosAngelesCO\n    <\/code><\/pre>\n<\/div>\n<p><i>Note:<\/i> similar commands exist for rows: <code>putrow<\/code> and <code>removerow<\/code>.<\/p>\n<h6>Indexes<\/h6>\n<p>Creating indexes is simple: <\/p>\n<p><code>createindex &lt;Container name&gt; &lt;Column name&gt; &lt;Index type&gt; ...<\/code><\/p>\n<div class=\"clipboard\">\n<pre><code class=\"language-shell\">gs[public]> createindex LosAngelesNO2 notwo tree\n        gs[public]> showcontainer LosAngelesNO2\n        Database    : public\n        Name        : LosAngelesNO2\n        Type        : TIME_SERIES\n        Partition ID: 24\n        DataAffinity: -\n        \n        Compression Method : NO\n        Compression Window : -\n        Row Expiration Time: -\n        Row Expiration Division Count: -\n        \n        Columns:\n        No  Name                  Type            CSTR  RowKey   Compression\n        ------------------------------------------------------------------------------\n         0  timestamp             TIMESTAMP       NN    [RowKey]\n         1  notwo                 DOUBLE\n        \n        Indexes:\n        Name        :\n        Type        : TREE\n        Columns:\n        No  Name\n        --------------------------\n         0  notwo<\/code><\/pre>\n<\/div>\n<p>And then to delete an index: <\/p>\n<div class=\"clipboard\">\n<pre><code class=\"language-shell\">gs[public]> dropindex LosAngelesNO2 notwo tree\n        gs[public]> showcontainer LosAngelesNO2\n        Database    : public\n        Name        : LosAngelesNO2\n        Type        : TIME_SERIES\n        Partition ID: 24\n        DataAffinity: -\n        \n        Compression Method : NO\n        Compression Window : -\n        Row Expiration Time: -\n        Row Expiration Division Count: -\n        \n        Columns:\n        No  Name                  Type            CSTR  RowKey   Compression\n        ------------------------------------------------------------------------------\n         0  timestamp             TIMESTAMP       NN    [RowKey]\n         1  notwo                 DOUBLE<\/code><\/pre>\n<\/div>\n<h2> Conclusion <\/h2>\n<p>Though there are a few more features which did not make it to this blog, this will give you enough information to be excited to use all of the new features included with the latest release. To read more about the full feature list, you can check out the full specification list on <a href=\"https:\/\/github.com\/griddb\/cli\/blob\/main\/Specification_en.md\">GitHub<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Introduction With the fresh release of the GridDB Community Edition version 4.6, we would like to share with our readers the new features that we are most excited about. We will focus our efforts in highlighting the new SQL aggregate functions as well as the new command line interface (CLI) tool. As usual, the new [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":22063,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[121],"tags":[],"class_list":["post-46635","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-blog"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.1.1 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>GridDB Community Edition v4.6 New Features | GridDB: Open Source Time Series Database for IoT<\/title>\n<meta name=\"description\" content=\"Introduction With the fresh release of the GridDB Community Edition version 4.6, we would like to share with our readers the new features that we are most\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/griddb.net\/en\/blog\/griddb-community-edition-v4-6-new-features\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"GridDB Community Edition v4.6 New Features | GridDB: Open Source Time Series Database for IoT\" \/>\n<meta property=\"og:description\" content=\"Introduction With the fresh release of the GridDB Community Edition version 4.6, we would like to share with our readers the new features that we are most\" \/>\n<meta property=\"og:url\" content=\"https:\/\/griddb.net\/en\/blog\/griddb-community-edition-v4-6-new-features\/\" \/>\n<meta property=\"og:site_name\" content=\"GridDB: Open Source Time Series Database for IoT\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/griddbcommunity\/\" \/>\n<meta property=\"article:published_time\" content=\"2021-04-16T07:00:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-11-13T20:55:13+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/griddb.net\/wp-content\/uploads\/2018\/02\/blog_title_21.png\" \/>\n\t<meta property=\"og:image:width\" content=\"870\" \/>\n\t<meta property=\"og:image:height\" content=\"490\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Israel\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@GridDBCommunity\" \/>\n<meta name=\"twitter:site\" content=\"@GridDBCommunity\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Israel\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"8 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/griddb.net\/en\/blog\/griddb-community-edition-v4-6-new-features\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/griddb.net\/en\/blog\/griddb-community-edition-v4-6-new-features\/\"},\"author\":{\"name\":\"Israel\",\"@id\":\"https:\/\/griddb-linux-hte8hndjf8cka8ht.westus-01.azurewebsites.net\/en\/#\/schema\/person\/c8a430e7156a9e10af73b1fbb46c2740\"},\"headline\":\"GridDB Community Edition v4.6 New Features\",\"datePublished\":\"2021-04-16T07:00:00+00:00\",\"dateModified\":\"2025-11-13T20:55:13+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/griddb.net\/en\/blog\/griddb-community-edition-v4-6-new-features\/\"},\"wordCount\":1011,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/griddb-linux-hte8hndjf8cka8ht.westus-01.azurewebsites.net\/en\/#organization\"},\"image\":{\"@id\":\"https:\/\/griddb.net\/en\/blog\/griddb-community-edition-v4-6-new-features\/#primaryimage\"},\"thumbnailUrl\":\"\/wp-content\/uploads\/2018\/02\/blog_title_21.png\",\"articleSection\":[\"Blog\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/griddb.net\/en\/blog\/griddb-community-edition-v4-6-new-features\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/griddb.net\/en\/blog\/griddb-community-edition-v4-6-new-features\/\",\"url\":\"https:\/\/griddb.net\/en\/blog\/griddb-community-edition-v4-6-new-features\/\",\"name\":\"GridDB Community Edition v4.6 New Features | GridDB: Open Source Time Series Database for IoT\",\"isPartOf\":{\"@id\":\"https:\/\/griddb-linux-hte8hndjf8cka8ht.westus-01.azurewebsites.net\/en\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/griddb.net\/en\/blog\/griddb-community-edition-v4-6-new-features\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/griddb.net\/en\/blog\/griddb-community-edition-v4-6-new-features\/#primaryimage\"},\"thumbnailUrl\":\"\/wp-content\/uploads\/2018\/02\/blog_title_21.png\",\"datePublished\":\"2021-04-16T07:00:00+00:00\",\"dateModified\":\"2025-11-13T20:55:13+00:00\",\"description\":\"Introduction With the fresh release of the GridDB Community Edition version 4.6, we would like to share with our readers the new features that we are most\",\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/griddb.net\/en\/blog\/griddb-community-edition-v4-6-new-features\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/griddb.net\/en\/blog\/griddb-community-edition-v4-6-new-features\/#primaryimage\",\"url\":\"\/wp-content\/uploads\/2018\/02\/blog_title_21.png\",\"contentUrl\":\"\/wp-content\/uploads\/2018\/02\/blog_title_21.png\",\"width\":870,\"height\":490},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/griddb-linux-hte8hndjf8cka8ht.westus-01.azurewebsites.net\/en\/#website\",\"url\":\"https:\/\/griddb-linux-hte8hndjf8cka8ht.westus-01.azurewebsites.net\/en\/\",\"name\":\"GridDB: Open Source Time Series Database for IoT\",\"description\":\"GridDB is an open source time-series database with the performance of NoSQL and convenience of SQL\",\"publisher\":{\"@id\":\"https:\/\/griddb-linux-hte8hndjf8cka8ht.westus-01.azurewebsites.net\/en\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/griddb-linux-hte8hndjf8cka8ht.westus-01.azurewebsites.net\/en\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/griddb-linux-hte8hndjf8cka8ht.westus-01.azurewebsites.net\/en\/#organization\",\"name\":\"Fixstars\",\"url\":\"https:\/\/griddb-linux-hte8hndjf8cka8ht.westus-01.azurewebsites.net\/en\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/griddb-linux-hte8hndjf8cka8ht.westus-01.azurewebsites.net\/en\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/griddb.net\/wp-content\/uploads\/2019\/04\/fixstars_logo_web_tagline.png\",\"contentUrl\":\"https:\/\/griddb.net\/wp-content\/uploads\/2019\/04\/fixstars_logo_web_tagline.png\",\"width\":200,\"height\":83,\"caption\":\"Fixstars\"},\"image\":{\"@id\":\"https:\/\/griddb-linux-hte8hndjf8cka8ht.westus-01.azurewebsites.net\/en\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/griddbcommunity\/\",\"https:\/\/x.com\/GridDBCommunity\",\"https:\/\/www.linkedin.com\/company\/griddb-by-toshiba\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/griddb-linux-hte8hndjf8cka8ht.westus-01.azurewebsites.net\/en\/#\/schema\/person\/c8a430e7156a9e10af73b1fbb46c2740\",\"name\":\"Israel\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/griddb-linux-hte8hndjf8cka8ht.westus-01.azurewebsites.net\/en\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/4df8cfc155402a2928d11f80b0220037b8bd26c4f1b19c4598d826e0306e6307?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/4df8cfc155402a2928d11f80b0220037b8bd26c4f1b19c4598d826e0306e6307?s=96&d=mm&r=g\",\"caption\":\"Israel\"},\"url\":\"https:\/\/griddb.net\/en\/author\/israel\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"GridDB Community Edition v4.6 New Features | GridDB: Open Source Time Series Database for IoT","description":"Introduction With the fresh release of the GridDB Community Edition version 4.6, we would like to share with our readers the new features that we are most","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:\/\/griddb.net\/en\/blog\/griddb-community-edition-v4-6-new-features\/","og_locale":"en_US","og_type":"article","og_title":"GridDB Community Edition v4.6 New Features | GridDB: Open Source Time Series Database for IoT","og_description":"Introduction With the fresh release of the GridDB Community Edition version 4.6, we would like to share with our readers the new features that we are most","og_url":"https:\/\/griddb.net\/en\/blog\/griddb-community-edition-v4-6-new-features\/","og_site_name":"GridDB: Open Source Time Series Database for IoT","article_publisher":"https:\/\/www.facebook.com\/griddbcommunity\/","article_published_time":"2021-04-16T07:00:00+00:00","article_modified_time":"2025-11-13T20:55:13+00:00","og_image":[{"width":870,"height":490,"url":"https:\/\/griddb.net\/wp-content\/uploads\/2018\/02\/blog_title_21.png","type":"image\/png"}],"author":"Israel","twitter_card":"summary_large_image","twitter_creator":"@GridDBCommunity","twitter_site":"@GridDBCommunity","twitter_misc":{"Written by":"Israel","Est. reading time":"8 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/griddb.net\/en\/blog\/griddb-community-edition-v4-6-new-features\/#article","isPartOf":{"@id":"https:\/\/griddb.net\/en\/blog\/griddb-community-edition-v4-6-new-features\/"},"author":{"name":"Israel","@id":"https:\/\/griddb-linux-hte8hndjf8cka8ht.westus-01.azurewebsites.net\/en\/#\/schema\/person\/c8a430e7156a9e10af73b1fbb46c2740"},"headline":"GridDB Community Edition v4.6 New Features","datePublished":"2021-04-16T07:00:00+00:00","dateModified":"2025-11-13T20:55:13+00:00","mainEntityOfPage":{"@id":"https:\/\/griddb.net\/en\/blog\/griddb-community-edition-v4-6-new-features\/"},"wordCount":1011,"commentCount":0,"publisher":{"@id":"https:\/\/griddb-linux-hte8hndjf8cka8ht.westus-01.azurewebsites.net\/en\/#organization"},"image":{"@id":"https:\/\/griddb.net\/en\/blog\/griddb-community-edition-v4-6-new-features\/#primaryimage"},"thumbnailUrl":"\/wp-content\/uploads\/2018\/02\/blog_title_21.png","articleSection":["Blog"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/griddb.net\/en\/blog\/griddb-community-edition-v4-6-new-features\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/griddb.net\/en\/blog\/griddb-community-edition-v4-6-new-features\/","url":"https:\/\/griddb.net\/en\/blog\/griddb-community-edition-v4-6-new-features\/","name":"GridDB Community Edition v4.6 New Features | GridDB: Open Source Time Series Database for IoT","isPartOf":{"@id":"https:\/\/griddb-linux-hte8hndjf8cka8ht.westus-01.azurewebsites.net\/en\/#website"},"primaryImageOfPage":{"@id":"https:\/\/griddb.net\/en\/blog\/griddb-community-edition-v4-6-new-features\/#primaryimage"},"image":{"@id":"https:\/\/griddb.net\/en\/blog\/griddb-community-edition-v4-6-new-features\/#primaryimage"},"thumbnailUrl":"\/wp-content\/uploads\/2018\/02\/blog_title_21.png","datePublished":"2021-04-16T07:00:00+00:00","dateModified":"2025-11-13T20:55:13+00:00","description":"Introduction With the fresh release of the GridDB Community Edition version 4.6, we would like to share with our readers the new features that we are most","inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/griddb.net\/en\/blog\/griddb-community-edition-v4-6-new-features\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/griddb.net\/en\/blog\/griddb-community-edition-v4-6-new-features\/#primaryimage","url":"\/wp-content\/uploads\/2018\/02\/blog_title_21.png","contentUrl":"\/wp-content\/uploads\/2018\/02\/blog_title_21.png","width":870,"height":490},{"@type":"WebSite","@id":"https:\/\/griddb-linux-hte8hndjf8cka8ht.westus-01.azurewebsites.net\/en\/#website","url":"https:\/\/griddb-linux-hte8hndjf8cka8ht.westus-01.azurewebsites.net\/en\/","name":"GridDB: Open Source Time Series Database for IoT","description":"GridDB is an open source time-series database with the performance of NoSQL and convenience of SQL","publisher":{"@id":"https:\/\/griddb-linux-hte8hndjf8cka8ht.westus-01.azurewebsites.net\/en\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/griddb-linux-hte8hndjf8cka8ht.westus-01.azurewebsites.net\/en\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/griddb-linux-hte8hndjf8cka8ht.westus-01.azurewebsites.net\/en\/#organization","name":"Fixstars","url":"https:\/\/griddb-linux-hte8hndjf8cka8ht.westus-01.azurewebsites.net\/en\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/griddb-linux-hte8hndjf8cka8ht.westus-01.azurewebsites.net\/en\/#\/schema\/logo\/image\/","url":"https:\/\/griddb.net\/wp-content\/uploads\/2019\/04\/fixstars_logo_web_tagline.png","contentUrl":"https:\/\/griddb.net\/wp-content\/uploads\/2019\/04\/fixstars_logo_web_tagline.png","width":200,"height":83,"caption":"Fixstars"},"image":{"@id":"https:\/\/griddb-linux-hte8hndjf8cka8ht.westus-01.azurewebsites.net\/en\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/griddbcommunity\/","https:\/\/x.com\/GridDBCommunity","https:\/\/www.linkedin.com\/company\/griddb-by-toshiba"]},{"@type":"Person","@id":"https:\/\/griddb-linux-hte8hndjf8cka8ht.westus-01.azurewebsites.net\/en\/#\/schema\/person\/c8a430e7156a9e10af73b1fbb46c2740","name":"Israel","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/griddb-linux-hte8hndjf8cka8ht.westus-01.azurewebsites.net\/en\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/4df8cfc155402a2928d11f80b0220037b8bd26c4f1b19c4598d826e0306e6307?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/4df8cfc155402a2928d11f80b0220037b8bd26c4f1b19c4598d826e0306e6307?s=96&d=mm&r=g","caption":"Israel"},"url":"https:\/\/griddb.net\/en\/author\/israel\/"}]}},"_links":{"self":[{"href":"https:\/\/griddb.net\/en\/wp-json\/wp\/v2\/posts\/46635","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/griddb.net\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/griddb.net\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/griddb.net\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/griddb.net\/en\/wp-json\/wp\/v2\/comments?post=46635"}],"version-history":[{"count":1,"href":"https:\/\/griddb.net\/en\/wp-json\/wp\/v2\/posts\/46635\/revisions"}],"predecessor-version":[{"id":51311,"href":"https:\/\/griddb.net\/en\/wp-json\/wp\/v2\/posts\/46635\/revisions\/51311"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/griddb.net\/en\/wp-json\/wp\/v2\/media\/22063"}],"wp:attachment":[{"href":"https:\/\/griddb.net\/en\/wp-json\/wp\/v2\/media?parent=46635"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/griddb.net\/en\/wp-json\/wp\/v2\/categories?post=46635"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/griddb.net\/en\/wp-json\/wp\/v2\/tags?post=46635"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}