Explorar o código

[blog] localize blog posts into Japanese (Aug, Sep 2020) (#1274) (#1281)

Tatsuo Kawasaki %!s(int64=5) %!d(string=hai) anos
pai
achega
2bebc7832c

+ 173 - 0
docs/gethue/content/jp/posts/2020-08-15-automated-checking-python-style-lint-git-commit-messages-continuous-integration.md

@@ -0,0 +1,173 @@
+---
+title: Git コミットでの Python のスタイルとタイトル形式を自動的にチェックする
+author: Romain
+type: post
+date: 2020-08-15T00:00:00+00:00
+url: /automated-checking-python-style-and-title-format-of-git-commits-continuous-integration/
+sf_thumbnail_type:
+  - none
+sf_thumbnail_link_type:
+  - link_to_post
+sf_detail_type:
+  - none
+sf_page_title:
+  - 1
+sf_page_title_style:
+  - standard
+sf_no_breadcrumbs:
+  - 1
+sf_page_title_bg:
+  - none
+sf_page_title_text_style:
+  - light
+sf_background_image_size:
+  - cover
+sf_social_sharing:
+  - 1
+sf_related_articles:
+  - 1
+sf_sidebar_config:
+  - left-sidebar
+sf_left_sidebar:
+  - Sidebar-2
+sf_right_sidebar:
+  - Sidebar-1
+sf_caption_position:
+  - caption-right
+ampforwp-amp-on-off:
+  - default
+categories:
+  - Administration
+  - Version 4.8
+
+---
+
+クエリエンジニアの皆さん、こんにちは。
+
+継続的インテグレーション (CI) と自動化への投資は、Hue プロジェクトのリソースと品質を拡大を支援するために続けられています。この1年では次のような大きな改善が見られました。
+
+* [Circle CI](https://circleci.com/gh/cloudera/hue) によって自動的に実行される[コミットフロー](https://gethue.com/improving-the-developer-productivity-with-some-continuous-integration/) 
+* gethue.com と demo.gethue.com ウェブサイトの[リンクのチェック](https://gethue.com/checking-dead-links-automatically-continuous-integration/)
+* JavaScript のスタイルとアーティファクトの[ライセンスチェック](/automated-checking-javascript-licenses-absolute-paths-continuous-integration/)
+
+ここでは、**Python API のコーディング規約**が全員に守られているかどうかを確認する方法や、**git commitのタイトルの形式**についての最新情報をお知らせします。
+
+## Python のリント
+
+Hue は、コーディング標準をチェックするためのオープンソースプログラムである [Pylint](https://www.pylint.org/) を活用しています。これには `.pylintrc` ファイルで選択してカスタマイズ可能な一連のルールが付属しています。
+
+コミットの変更が規約に従っているかどうかを早期に発見するために、ほとんどのコードエディタでは、いくつかのプラグインで Pylint の設定を理解することができます。これは、ほとんどの時間を修正に費やしているあなたのためにも、エディタで早期にエラーを直接見ることができて便利です。
+
+![Pylint indentation visual check](https://cdn.gethue.com/uploads/2020/08/pylint-indent.png)
+
+## 一歩ずつ進める
+
+Hue は10年以上の成熟したプロジェクトであり、コードベースのサイズのほとんどが、50%のPythonで構成されています。そのため、すぐに全てのコードのスタイルの問題を修正するのは負担が大きすぎるかもしれません。そのため、インクリメント戦略が採用されました。
+
+* 新しいローカルでのコミットで更新されたファイルのみをリントする (差分だけでなく、ファイルの内容全体をリントする)
+* 最小限のスタイル規約のみで開始する (基本的なルールのみ。基本が完了したら後から追加するルールを増やす)
+  * C0326 (bad-whitespace)
+  * W0311 (bad-indentation)
+  * C0301 (line-too-long)
+
+
+[check_for_python_lint.sh](https://github.com/cloudera/hue/blob/master/tools/ci/check_for_python_lint.sh) を実行する次のコマンドは、
+
+    tools/ci/check_for_python_lint.sh
+
+チェックに失敗した行をローカルに出力します。
+
+    [10/Aug/2020 16`:22:17 -0700] runpylint    INFO     Running pylint with args: /home/romain/projects/hue/build/env/bin/pylint --rcfile=/home/romain/projects/hue/desktop/.pylintrc --disable=all --enable=C0301,C0326,W0311 --load-plugins=pylint_django -f parseable apps/beeswax/src/beeswax/api.py desktop/core/src/desktop/management/commands/runpylint.py
+    ************* Module beeswax.api
+    apps/beeswax/src/beeswax/api.py:144: [C0326(bad-whitespace), ] Exactly one space required after :
+          {1:1}
+            ^
+    apps/beeswax/src/beeswax/api.py:236: [C0326(bad-whitespace), ] Exactly one space required before assignment
+        response['status']= 0
+                          ^
+    apps/beeswax/src/beeswax/api.py:239: [C0326(bad-whitespace), ] Exactly one space required before assignment
+        response['status']= 0
+                          ^
+    apps/beeswax/src/beeswax/api.py:436: [C0326(bad-whitespace), ] Exactly one space required before assignment
+        response['message']= str(e)
+                          ^
+    apps/beeswax/src/beeswax/api.py:678: [C0301(line-too-long), ] Line too long (156/150)
+    ************* Module desktop.management.commands.runpylint
+    desktop/core/src/desktop/management/commands/runpylint.py:66: [C0301(line-too-long), ] Line too long (255/150)
+    desktop/core/src/desktop/management/commands/runpylint.py:70: [C0326(bad-whitespace), ] Exactly one space required around assignment
+        a={1:   3}
+        ^
+    desktop/core/src/desktop/management/commands/runpylint.py:70: [C0326(bad-whitespace), ] Exactly one space required after :
+        a={1:   3}
+            ^
+    desktop/core/src/desktop/management/commands/runpylint.py:72: [W0311(bad-indentation), ] Bad indentation. Found 8 spaces, expected 6
+
+    ------------------------------------------------------------------
+    Your code has been rated at 9.86/10 (previous run: 9.88/10, -0.02)
+
+
+スタイルの設定は [.pylintrc](https://github.com/cloudera/hue/blob/master/.pylintrc) に保存されます。
+
+その後、全ての新しい変更に対して自動的に利用できるようにするには、CircleCi の [config.yml](https://github.com/cloudera/hue/blob/master/.circleci/config.yml#L109) の `run python lints` セクションにフックして、Hue の CI に簡単に統合します。
+
+    - run:
+        name: run python lints
+        command: |
+          cd ~/repo
+
+          ./tools/ci/check_for_python_lint.sh /usr/share/hue
+
+
+![ci pyling success no change](https://cdn.gethue.com/uploads/2020/08/ci-pylint-success.png)
+
+## Git Commit のフォーマットチェック
+
+コーディング規約と同様に、コミットのタイトルについても全員が同じ言語を使うことで、長期的には時間を節約することができます。
+
+物事をシンプルに保つために2つの形式だけを選択しました。
+* Jira 番号を含む従来のHueの形式
+* 最後に標準のIDを含む GitHub のプルリクエスト
+
+両方とも、変更の主な領域を記述するため、カッコ内にカテゴリを持つ必要があります。一例としてこのような形式です [docs], [hive], [docker], [ui]...
+
+有効なメッセージの例は次の通りです:
+
+    HUE-9374 [impala] Use 26000 as default for thrift-over-http
+    [livy] Add numExecutors options (#1238)
+
+いくつかの無効なものもあります (無効な組み合わせが多くなりやすいです):
+
+    [impala] Use 26000 as default for thrift-over-http
+    Use 26000 as default for thrift-over-http (#1238)
+    HUE-9374 Use 26000 as default for thrift-over-http
+    Add numExecutors options
+
+
+チェックロジックは `commit-msg` [Git hooks](https://github.com/cloudera/hue/blob/master/tools/githooks) の一部です。
+
+ローカルで自動的に git commit メッセージをチェックするには、フックをコピーするだけです。
+
+    cp tools/githooks/* .git/hooks
+    chmod +x .git/hooks/*
+
+そして、まだマスターブランチにフックされていない新しいコミットに対してのみチェックを行うスクリプトを以下に示します。
+
+    ./tools/ci/check_for_commit_message.sh
+
+そして 100% 自動化するために CI に追加します。
+
+    - run:
+      name: run commit title format check
+      command: |
+          cd ~/repo
+
+          ./tools/ci/check_for_commit_message.sh
+
+![ci git title format fail](https://cdn.gethue.com/uploads/2020/08/ci-commit-format-check-fail.png)
+
+
+これで、今後の開発時間がより短縮されました!
+
+あなたのお気に入りの CI プロセスは何ですか?フィードバックがあれば、このページまたは [@gethue](https://twitter.com/gethue) で気軽にコメント下さい!
+
+Romain from the Hue Team

+ 125 - 0
docs/gethue/content/jp/posts/2020-08-19-quick-hue-in-docker.md

@@ -0,0 +1,125 @@
+---
+title: Docker で Hue をクイックスタートして任意のデータベースにクエリを行う
+author: admin
+type: post
+date: 2020-08-19T00:00:00+00:00
+url: /quickstart-hue-in-docker/
+ampforwp-amp-on-off:
+  - default
+sf_thumbnail_type:
+  - none
+sf_thumbnail_link_type:
+  - link_to_post
+sf_detail_type:
+  - none
+sf_page_title:
+  - 1
+sf_page_title_style:
+  - standard
+sf_no_breadcrumbs:
+  - 1
+sf_page_title_bg:
+  - none
+sf_page_title_text_style:
+  - light
+sf_background_image_size:
+  - cover
+sf_author_info:
+  - 1
+sf_social_sharing:
+  - 1
+sf_related_articles:
+  - 1
+sf_sidebar_config:
+  - left-sidebar
+sf_left_sidebar:
+  - Sidebar-2
+sf_right_sidebar:
+  - Sidebar-1
+sf_caption_position:
+  - caption-right
+sf_remove_promo_bar:
+  - 1
+categories:
+  - Administration
+  - Version 4.8
+tags:
+  - cloud
+  - container
+  - docker
+
+---
+
+あらゆるデータウェアハウスに数分でクエリを実行します!
+
+このチュートリアルでは既存の MySQL データベースを使用して、クエリを実行する [Apache Hive](https://hive.apache.org/) データウェアハウスを指すように Hue を設定します。
+
+![Autocomplete and context assist](https://cdn.gethue.com/uploads/2017/07/hue_4_assistant_2.gif)
+
+**注記** Hive とは別のウェアハウスを探している場合は、すべての[他のコネクタ](https://docs.gethue.com/administrator/configuration/connectors/) をご確認下さい。
+
+2つの重要な概念があります。
+
+* 永続性: Hue は、同時リクエストをサポートする MySQL のようなトランザクションを持つ既存のデータベースを必要とし、サーバー停止時に登録されたユーザー、保存されたクエリ、権限の共有を失わない必要があります。
+* 計算: これはコンテナ内でサーバーイメージを実行することにより行われます。これは、負荷や高可用性の要件に応じて、起動、停止、複数回のレプリケーションを行うことができます。
+
+最新の Hue のコンテナをプルして、その中でシェルを開いてみましょう。
+
+    docker run -it -p 8888:8888 gethue/hue:latest /bin/bash
+
+これにより、Hue のインストールのホームディレクトリである `/usr/share/hue` に入ります。では設定ファイルを開いてみましょう。
+
+    apt-get install -y vim
+
+    vim desktop/conf/hue.ini
+
+まず、Hue が MySQL、PostgreSQL、あるいは Oracle のようなトランザクションをサポートするリレーショナルデータベースを背後に持つことを確認します。ここでは MySQL を使用し、`[[database]]` セクションに資格情報を設定します。
+
+    [desktop]
+    [[database]]
+    host=demo.gethue.com  # Use 127.0.0.1 and not localhost if on the same host
+    engine=mysql
+    user=hue
+    password=password
+    name=hue
+
+**注記** ご自身の MySQL データベースを使用して本番環境に対応した Hue を起動する別の方法として、[Docker compose](https://github.com/cloudera/hue/tree/master/tools/docker/hue#docker-compose) を使用する方法があります。
+
+次に`[beeswax]` と `[notebook]` セクションに次のブロックを追加して、アクセス可能なサーバーで実行している Apache Hive インスタンスにクエリを実行できるようにします。実行している HiveServer2 をお持ちでない場合は、開発用のクイックスタート(Docker を使用し[素早く開始する方法](https://docs.gethue.com/developer/development/#first-sql-queries) をチェックしてみてください。
+
+    [beeswax]
+    hive_server_host=demo.gethue.com
+
+    [notebook]
+    [[interpreters]]
+    [[[hive]]]
+    name=Hive
+    interface=hiveserver2
+
+**注記** ボーナスとして、Hue のデータベースを指す MySQL インタープリタを自由に追加してみてください。問題なく自身をクエリすることができます。
+
+    [[[mysql]]]
+    name=MySQL
+    interface=sqlalchemy
+    options='{"url": "mysql://hue:password@demo.gethue.com:3306/hue"}'
+
+ここで別の端末から `docker ps` を使用して Hue のコンテナのIDを識別し、その状態をコミットして停止後も設定を記憶させます。
+
+    docker ps
+
+    docker commit 368f0d568a5f hue-hive
+
+**注記** `docker commit` を使用する別の方法としては、Docker イメージの外部に hue.ini 設定ファイルを保持し、コンテナを起動する際にシンプルに内部にマウントする方法があります。これは [Docker How-to](https://github.com/cloudera/hue/tree/master/tools/docker/hue#configuration) に記載されています。
+
+これで、保存したコンテナを起動して、[localhost:8888](localhost:8888) の Hue インターフェースを公開することができます。
+
+    docker run -it -p 8888:8888 hue-hive ./startup.sh
+
+
+これでいよいよ[SQL クエリ](https://docs.gethue.com/user/querying/) を実行する時が来ました!
+
+![Hue login page](https://cdn.gethue.com/uploads/2017/12/Screen-Shot-2017-11-15-at-3.34.20-PM.png)
+
+フィードバックはありますか?コメントはこのページまたは [@gethue](https://twitter.com/gethue) までお気軽に!
+
+Romain from the Hue Team

+ 257 - 0
docs/gethue/content/jp/posts/2020-09-14-rest-api-querying.md

@@ -0,0 +1,257 @@
+---
+title: SQL クエリの送信とファイルをブラウジングするためのREST API
+author: Hue Team
+type: post
+date: 2020-09-14T00:00:00+00:00
+url: /blog/rest-api-execute-sql-queries-browse-files/
+sf_thumbnail_type:
+  - none
+sf_thumbnail_link_type:
+  - link_to_post
+sf_detail_type:
+  - none
+sf_page_title:
+  - 1
+sf_page_title_style:
+  - standard
+sf_no_breadcrumbs:
+  - 1
+sf_page_title_bg:
+  - none
+sf_page_title_text_style:
+  - light
+sf_background_image_size:
+  - cover
+sf_social_sharing:
+  - 1
+sf_related_articles:
+  - 1
+sf_sidebar_config:
+  - left-sidebar
+sf_left_sidebar:
+  - Sidebar-2
+sf_right_sidebar:
+  - Sidebar-1
+sf_caption_position:
+  - caption-right
+sf_remove_promo_bar:
+  - 1
+ampforwp-amp-on-off:
+  - default
+categories:
+  - Version 4.8
+  - Development
+
+---
+データアプリビルダーの皆さん、こんにちは。
+
+プログラム的に S3 ファイルをブラウジングする、何らかのSQLクエリを探していますか? (例えば自動化できるように)
+
+![Curling Hue API](https://cdn.gethue.com/uploads/2020/09/hue-curl.png)
+
+Hue の開発フローは成熟を続けており ([Docker Quick Start](https://gethue.com/quickstart-hue-in-docker/), [改善された CI](https://gethue.com/automated-checking-python-style-and-title-format-of-git-commits-continuous-integration/), 公開可能な [Web コンポーネント](https://docs.gethue.com/developer/components/)...) 、現在は API を再利用する方法についてのヘルプが増えてきています。
+
+## コンセプト
+
+REST API はまだ正式に公開されていませんが、現在進行中の [HUE-1450](https://issues.cloudera.org/browse/HUE-1450) で簡素化されるようになります。
+
+Hue は Ajax ベースで、ブラウザがリモートサービスを使用した操作を行うために、Hue サーバーと通信するために使用するREST API を持っています。(例: SQL クエリの投入, S3 バケットのファイルの一覧など...)。現在、この API は非公開で変更される可能性がありますが、正式に公開 API がリリースされるまでの間、コンセプトを実証するために再利用できます。
+
+一般的にはユーザー名とパスワードで認証し、Cookieと[CSRF](https://docs.djangoproject.com/en/3.1/ref/csrf/) トークンを取得して、以降の呼び出しにそれらを提供することで、Hue はあなたが誰かを知り、ブロックしないようにしたいと考えています。
+
+[API ドキュメント](https://docs.gethue.com/developer/api/) はリフレッシュされ、新しいエンドポイントをリストアップしています。
+
+## Login
+
+CSRF トークンを取得するには `/accounts/login` ページを GET して`username` と `password` を一緒に POST し、次回の呼び出しでセッションIDクッキーとCSRFトークンを再利用する必要があります。
+
+ここでは、ヘッダでトークンを取得するためにページを要求しています。
+
+    curl -i -X GET https://demo.gethue.com/hue/accounts/login/?fromModal=true -o /dev/null -D -
+      % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
+                                    Dload  Upload   Total   Spent    Left  Speed
+      0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0HTTP/2 200
+    server: nginx/1.19.0
+    date: Mon, 14 Sep 2020 20:43:47 GMT
+    content-type: text/html; charset=utf-8
+    content-length: 115010
+    vary: Accept-Encoding
+    set-cookie: hue-balancer=1600116228.241.36.408868; Expires=Wed, 16-Sep-20 20:43:47 GMT; Max-Age=172800; Path=/; Secure; HttpOnly
+    x-xss-protection: 1; mode=block
+    content-security-policy: script-src 'self' 'unsafe-inline' 'unsafe-eval' *.google-analytics.com *.doubleclick.net data:;img-src 'self' *.google-analytics.com *.doubleclick.net http://*.tile.osm.org *.tile.osm.org *.gstatic.com data:;style-src 'self' 'unsafe-inline' fonts.googleapis.com;connect-src 'self';frame-src *;child-src 'self' data: *.vimeo.com;object-src 'none'
+    x-content-type-options: nosniff
+    content-language: en-us
+    vary: Cookie, Accept-Language
+    etag: "c5801a9442bf6e3aaecb597b1640a119"
+    x-frame-options: SAMEORIGIN
+    set-cookie: csrftoken=XUFgN1WPZNlaJtBeBDtBvwzrOFqRXIaMlNJv4mdvsS2bIE2Lb8LRmCh5cPUBnBdk; expires=Mon, 13-Sep-2021 20:43:47 GMT; httponly; Max-Age=31449600; Path=/
+    set-cookie: sessionid=9cdltfee1q1zmt8b7slsjcomtxzgvgfz; expires=Mon, 14-Sep-2020 21:43:47 GMT; httponly; Max-Age=3600; Path=/
+    set-cookie: ROUTEID=; expires=Thu, 01-Jan-1970 00:00:00 GMT; Max-Age=0; Path=/
+    strict-transport-security: max-age=15724800; includeSubDomains
+
+    100  112k  100  112k    0     0   218k      0 --:--:-- --:--:-- --:--:--  218k
+
+応答から `csrftoken` と `sessionid` の値を記録しておくことが重要です。
+
+    set-cookie: csrftoken=XUFgN1WPZNlaJtBeBDtBvwzrOFqRXIaMlNJv4mdvsS2bIE2Lb8LRmCh5cPUBnBdk; expires=Mon, 13-Sep-2021 20:43:47 GMT; httponly; Max-Age=31449600; Path=/
+    set-cookie: sessionid=9cdltfee1q1zmt8b7slsjcomtxzgvgfz; expires=Mon, 14-Sep-2020 21:43:47 GMT; httponly; Max-Age=3600; Path=/
+
+その後、ユーザー名とパスワードの資格情報 `demo` / `demo` で実際に認証することができます。
+
+    curl -i -X POST https://demo.gethue.com/hue/accounts/login/?fromModal=true -d 'username=demo&password=demo' -o /dev/null -D - --cookie "csrftoken=Jfd8BoJGQVYLZsBJkcw1TCXPPgkKHMtdDmRx7n3KGMQevXmmHTpn3pcnoLkzo9mD;sessionid=c4j5ewhvu1dm9f8jojbh049zyitse72j" -H "X-CSRFToken: Jfd8BoJGQVYLZsBJkcw1TCXPPgkKHMtdDmRx7n3KGMQevXmmHTpn3pcnoLkzo9mD"
+      % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
+                                    Dload  Upload   Total   Spent    Left  Speed
+      0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0HTTP/2 200
+    server: nginx/1.19.0
+    date: Mon, 14 Sep 2020 20:53:59 GMT
+    content-type: application/json
+    content-length: 14
+    set-cookie: hue-balancer=1600116840.493.37.925584; Expires=Wed, 16-Sep-20 20:53:59 GMT; Max-Age=172800; Path=/; Secure; HttpOnly
+    x-xss-protection: 1; mode=block
+    content-security-policy: script-src 'self' 'unsafe-inline' 'unsafe-eval' *.google-analytics.com *.doubleclick.net data:;img-src 'self' *.google-analytics.com *.doubleclick.net http://*.tile.osm.org *.tile.osm.org *.gstatic.com data:;style-src 'self' 'unsafe-inline' fonts.googleapis.com;connect-src 'self';frame-src *;child-src 'self' data: *.vimeo.com;object-src 'none'
+    x-content-type-options: nosniff
+    content-language: en-us
+    vary: Cookie, Accept-Language
+    x-frame-options: SAMEORIGIN
+    set-cookie: csrftoken=C5vyqWODpIZi1oCyeIWNrrdMimejy4KXDI3R22qq4Bc6emCzLRakqQ1KYwNbOH0q; expires=Mon, 13-Sep-2021 20:53:59 GMT; httponly; Max-Age=31449600; Path=/
+    set-cookie: sessionid=0ein2dkwb1g5fz29o2d75vx9t7uv33os; expires=Mon, 14-Sep-2020 21:53:59 GMT; httponly; Max-Age=3600; Path=/
+    strict-transport-security: max-age=15724800; includeSubDomains
+
+    100    41  100    14  100    27     38     74 --:--:-- --:--:-- --:--:--   112
+
+今回の `cookie` と `CSRF` トークンは API で実際のアクションを行うために必要なものです。ここでは例として、`hive` コネクタの全てのデータベースを一覧します。
+
+    curl -X POST https://demo.gethue.com/notebook/api/autocomplete/ --data 'snippet={"type":"hive"}' --cookie "csrftoken=C5vyqWODpIZi1oCyeIWNrrdMimejy4KXDI3R22qq4Bc6emCzLRakqQ1KYwNbOH0q;sessionid=0ein2dkwb1g5fz29o2d75vx9t7uv33os" -H "X-CSRFToken: C5vyqWODpIZi1oCyeIWNrrdMimejy4KXDI3R22qq4Bc6emCzLRakqQ1KYwNbOH0q"
+
+    {"status": 0, "databases": ["a0817", "arunso", "ath", "athlete", "beingdatum_db", "bharath_practice", "chungu", "darth", "default", "demo", "diwakar", "emp", "hadooptest", "hebe", "hello", "hivedataset", "hivemap", "hivetesting", "hr_db", "icedb", "lib", "libdemo", "lti", "m", "m1", "movie", "movie1", "movielens", "mscda", "my_database", "mydb", "mydemo", "noo", "prizesh", "rajeev", "ram", "retail", "ruban", "sept9", "sept9_2020", "student", "test", "test21", "test123", "ticktick", "userdb", "vidu"]}
+
+
+**注** 現在不正な認証に関するエラーは発生していませんが、代わりにログインページへの 302 リダイレクトが発生します。
+
+    [12/Sep/2020 10:12:44 -0700] middleware   INFO     Redirecting to login page: /hue/useradmin/users/edit/romain
+    [12/Sep/2020 10:12:44 -0700] access       INFO     127.0.0.1 -anon- - "POST /hue/useradmin/users/edit/romain HTTP/1.1" - (mem: 169mb)-- login redirection
+    [12/Sep/2020 10:12:44 -0700] access       INFO     127.0.0.1 -anon- - "POST /hue/useradmin/users/edit/romain HTTP/1.1" returned in 0ms 302 0 (mem: 169mb)
+
+**注** 公開 API は1つの POST コールのみを使用するシンプルなものにするべきであり、1つのトークンのみを返します。
+
+## SQL クエリ
+
+ログインしたので、`hive` コネクターを使って `SHOW TABLES` SQL クエリを実行する方法を紹介します。例えば `SELECT * FROM web_logs LIMIT 100` のように、好きなクエリを繰り返し実行できます。
+
+[HUE-8768](https://issues.cloudera.org/browse/HUE-8768) のエディタv2 が利用可能になるまで API は複雑ですが、機能的には問題ありません。
+
+`SHOW TABLES` の場合、最初にクエリ文を送信します。
+
+    curl -X POST https://demo.gethue.com/notebook/api/execute/hive --data 'executable={"statement":"SHOW TABLES","database":"default"}&notebook={"type":"query","snippets":[{"id":1,"statement_raw":"SHOW TABLES","type":"hive","variables":[]}],"name":"","isSaved":false,"sessions":[]}&snippet={"id":1,"type":"hive","result":{},"statement":"SHOW TABLES","properties":{}}' --cookie "csrftoken=lFpBt6uaa8isgjIthEFZdUbofKPI7wJaXpWS0q54YKORs8zWvKgvrKzwUnTjsFt3;sessionid=5msr9s45o4emem1zt009kw64ni6uso3e" -H "X-CSRFToken: lFpBt6uaa8isgjIthEFZdUbofKPI7wJaXpWS0q54YKORs8zWvKgvrKzwUnTjsFt3"
+
+    {"status": 0, "history_id": 17880, "handle": {"statement_id": 0, "session_type": "hive", "has_more_statements": false, "guid": "EUI32vrfTkSOBXET6Eaa+A==\n", "previous_statement_hash": "3070952e55d733fb5bef249277fb8674989e40b6f86c5cc8b39cc415", "log_context": null, "statements_count": 1, "end": {"column": 10, "row": 0}, "session_id": 63, "start": {"column": 0, "row": 0}, "secret": "RuiF0LEkRn+Yok/gjXWSqg==\n", "has_result_set": true, "session_guid": "c845bb7688dca140:859a5024fb284ba2", "statement": "SHOW TABLES", "operation_type": 0, "modified_row_count": null}, "history_uuid": "63ce87ba-ca0f-4653-8aeb-e9f5c1781b78"}
+
+そして、その状態をフェッチすることが利用可能になるまで操作の状態をチェックします。
+
+    curl -X POST https://demo.gethue.com/notebook/api/check_status --data 'notebook={"type":"hive"}&snippet={"history_id": 17886,"type":"hive","result":{"handle":{"guid": "0J6PwGcSQaCJjagzYUBHzA==\n","secret": "uiP3IS4fR/mxkLJER5wRCg==\n","has_result_set": true}},"status":""}' --cookie "csrftoken=lFpBt6uaa8isgjIthEFZdUbofKPI7wJaXpWS0q54YKORs8zWvKgvrKzwUnTjsFt3;sessionid=5msr9s45o4emem1zt009kw64ni6uso3e" -H "X-CSRFToken: lFpBt6uaa8isgjIthEFZdUbofKPI7wJaXpWS0q54YKORs8zWvKgvrKzwUnTjsFt3"
+
+    {"status": 0, "query_status": {"status": "available", "has_result_set": true}}
+
+そして、ここでステートメントの結果セットを要求します。
+
+    curl -X POST https://demo.gethue.com/notebook/api/fetch_result_data --data 'notebook={"type":"hive"}&snippet={"history_id": 17886,"type":"hive","result":{"handle":{"guid": "0J6PwGcSQaCJjagzYUBHzA==\n","secret": "uiP3IS4fR/mxkLJER5wRCg==\n","has_result_set": true}},"status":""}' --cookie "csrftoken=lFpBt6uaa8isgjIthEFZdUbofKPI7wJaXpWS0q54YKORs8zWvKgvrKzwUnTjsFt3;sessionid=5msr9s45o4emem1zt009kw64ni6uso3e" -H "X-CSRFToken: lFpBt6uaa8isgjIthEFZdUbofKPI7wJaXpWS0q54YKORs8zWvKgvrKzwUnTjsFt3"
+
+    {"status": 0, "result": {"has_more": true, "type": "table", "meta": [{"comment": "from deserializer", "type": "STRING_TYPE", "name": "tab_name"}], "data": [["adavi"], ["adavi1"], ["adavi2"], ["ambs_feed"], ["apx_adv_deduction_data_process_total"], ["avro_table"], ["avro_table1"], ["bb"], ["bharath_info1"], ["bucknew"], ["bucknew1"], ["chungu"], ["cricket3"], ["cricket4"], ["cricket5_view"], ["cricketer"], ["cricketer_view"], ["cricketer_view1"], ["demo1"], ["demo12345"], ["dummy"], ["embedded"], ["emp"], ["emp1_sept9"], ["emp_details"], ["emp_sept"], ["emp_tbl1"], ["emp_tbl2"], ["empdtls"], ["empdtls_ext"], ["empdtls_ext_v2"], ["employee"], ["employee1"], ["employee_ins"], ["empppp"], ["events"], ["final"], ["flight_data"], ["gopalbhar"], ["guruhive_internaltable"], ["hell"], ["info1"], ["lost_messages"], ["mnewmyak"], ["mortality"], ["mscda"], ["myak"], ["mysample"], ["mysample1"], ["mysample2"], ["network"], ["ods_t_exch_recv_rel_wfz_stat_szy"], ["olympicdata"], ["p_table"], ["partition_cricket"], ["partitioned_user"], ["s"], ["sample"], ["sample_07"], ["sample_08"], ["score"], ["stg_t_exch_recv_rel_wfz_stat_szy"], ["stocks"], ["students"], ["studentscores"], ["studentscores2"], ["t1"], ["table_name"], ["tablex"], ["tabley"], ["temp"], ["test1"], ["test2"], ["test21"], ["test_info"], ["topage"], ["txnrecords"], ["u_data"], ["udata"], ["user_session"], ["user_test"], ["v_empdtls"], ["v_empdtls_ext"], ["v_empdtls_ext_v2"], ["web_logs"]], "isEscaped": true}}
+
+ステートメントの実行ログを取得したい場合はこのようにします。
+
+    curl -X POST https://demo.gethue.com/notebook/api/get_logs --data 'notebook={"type":"hive","sessions":[]}&snippet={"history_id": 17886,"type":"hive","result":{"handle":{"guid": "0J6PwGcSQaCJjagzYUBHzA==\n","secret": "uiP3IS4fR/mxkLJER5wRCg==\n","has_result_set": true}},"status":"","properties":{},"sessions":[]}' --cookie "csrftoken=lFpBt6uaa8isgjIthEFZdUbofKPI7wJaXpWS0q54YKORs8zWvKgvrKzwUnTjsFt3;sessionid=5msr9s45o4emem1zt009kw64ni6uso3e" -H "X-CSRFToken: lFpBt6uaa8isgjIthEFZdUbofKPI7wJaXpWS0q54YKORs8zWvKgvrKzwUnTjsFt3"
+
+    {"status": 0, "progress": 5, "jobs": [], "logs": "", "isFullLogs": false}
+
+## ファイルのブラウジング
+
+Hue の [File Browser](https://docs.gethue.com/user/browsing/#data) は、HDFS、S3、ADLSストレージへの、データのアップロード、ダウンロード一覧を提供します。
+
+これはパスの内容を一覧する方法です。この例は S3 バケットの `S3A://gethue-demo` です。
+
+    curl -X GET "https://demo.gethue.com/filebrowser/view=S3A://gethue-demo?pagesize=45&pagenum=1&filter=&sortby=name&descending=false&format=json" --cookie "csrftoken=oT8C5cQCbmpuoKcUZ2YaxybfLhtRShEO9UcvRWetx4HVatLuf6qicgJnbEHxfJNI;sessionid=nkblu68xfofabfsjctdwseaubfbkiwlg" -H "X-CSRFToken: oT8C5cQCbmpuoKcUZ2YaxybfLhtRShEO9UcvRWetx4HVatLuf6qicgJnbEHxfJNI"
+
+    {
+      ...........
+      "files": [
+      {
+      "humansize": "0\u00a0bytes",
+      "url": "/filebrowser/view=s3a%3A%2F%2Fdemo-hue",
+      "stats": {
+      "size": 0,
+      "aclBit": false,
+      "group": "",
+      "user": "",
+      "mtime": null,
+      "path": "s3a://demo-hue",
+      "atime": null,
+      "mode": 16895
+      },
+      "name": "demo-hue",
+      "mtime": "",
+      "rwx": "drwxrwxrwx",
+      "path": "s3a://demo-hue",
+      "is_sentry_managed": false,
+      "type": "dir",
+      "mode": "40777"
+      },
+      {
+      "humansize": "0\u00a0bytes",
+      "url": "/filebrowser/view=S3A%3A%2F%2F",
+      "stats": {
+      "size": 0,
+      "aclBit": false,
+      "group": "",
+      "user": "",
+      "mtime": null,
+      "path": "S3A://",
+      "atime": null,
+      "mode": 16895
+      },
+      "name": ".",
+      "mtime": "",
+      "rwx": "drwxrwxrwx",
+      "path": "S3A://",
+      "is_sentry_managed": false,
+      "type": "dir",
+      "mode": "40777"
+      }
+      ],
+      ...........
+    }
+
+これはファイルの内容とメタデータを取得する方法です。この例は demo.gethue.com [s3a://demo-hue/web_log_data/index_data.csv](https://demo.gethue.com/hue/filebrowser/view=s3a%3A%2F%2Fdemo-hue%2Fweb_log_data%2Findex_data.csv) の公開ファイルです。
+
+**注意** JSON でデータを返すには `XMLHttpRequest` ヘッダが必要です。
+
+    curl  -X GET "https://demo.gethue.com/filebrowser/view=s3a://demo-hue/web_log_data/index_data.csv?offset=0&length=204800&compression=none&mode=text" --cookie "csrftoken=oT8C5cQCbmpuoKcUZ2YaxybfLhtRShEO9UcvRWetx4HVatLuf6qicgJnbEHxfJNI;sessionid=nkblu68xfofabfsjctdwseaubfbkiwlg" -H "X-CSRFToken: oT8C5cQCbmpuoKcUZ2YaxybfLhtRShEO9UcvRWetx4HVatLuf6qicgJnbEHxfJNI" -H "X-requested-with: XMLHttpRequest"
+
+    {
+      "show_download_button": true,
+      "is_embeddable": false,
+      "editable": false,
+      "mtime": "October 31, 2016 03:34 PM",
+      "rwx": "-rw-rw-rw-",
+      "path": "s3a://demo-hue/web_log_data/index_data.csv",
+      "stats": {
+      "size": 6199593,
+      "aclBit": false,
+      ...............
+      "contents": "code,protocol,request,app,user_agent_major,region_code,country_code,id,city,subapp,latitude,method,client_ip,  user_agent_family,bytes,referer,country_name,extension,url,os_major,longitude,device_family,record,user_agent,time,os_family,country_code3
+        200,HTTP/1.1,GET /metastore/table/default/sample_07 HTTP/1.1,metastore,,00,SG,8836e6ce-9a21-449f-a372-9e57641389b3,Singapore,table,1.2931000000000097,GET,128.199.234.236,Other,1041,-,Singapore,,/metastore/table/default/sample_07,,103.85579999999999,Other,"demo.gethue.com:80 128.199.234.236 - - [04/May/2014:06:35:49 +0000] ""GET /metastore/table/default/sample_07 HTTP/1.1"" 200 1041 ""-"" ""Mozilla/5.0 (compatible; phpservermon/3.0.1; +http://www.phpservermonitor.org)""
+        ",Mozilla/5.0 (compatible; phpservermon/3.0.1; +http://www.phpservermonitor.org),2014-05-04T06:35:49Z,Other,SGP
+        200,HTTP/1.1,GET /metastore/table/default/sample_07 HTTP/1.1,metastore,,00,SG,6ddf6e38-7b83-423c-8873-39842dca2dbb,Singapore,table,1.2931000000000097,GET,128.199.234.236,Other,1041,-,Singapore,,/metastore/table/default/sample_07,,103.85579999999999,Other,"demo.gethue.com:80 128.199.234.236 - - [04/May/2014:06:35:50 +0000] ""GET /metastore/table/default/sample_07 HTTP/1.1"" 200 1041 ""-"" ""Mozilla/5.0 (compatible; phpservermon/3.0.1; +http://www.phpservermonitor.org)""
+        ",Mozilla/5.0 (compatible; phpservermon/3.0.1; +http://www.phpservermonitor.org),2014-05-04T06:35:50Z,Other,SGP
+      ...............
+    }
+
+
+これで完了です!次のイテレーションでは、より少ないパラメータとバージョニングを使用して、APIをよりシンプルにする予定です。
+
+フィードバックや質問はありますか?このページや <a href="https://discourse.gethue.com/">Forum</a> にコメントください。<a href="https://docs.gethue.com/quickstart/">quick start</a> すぐに SQL のクエリを始められます!
+
+
+その先へ!
+
+Romain from the Hue Team

+ 236 - 0
docs/gethue/content/jp/posts/2020-09-15-sql-querying-improvements-phoenix-flink-sparksql-erd.md

@@ -0,0 +1,236 @@
+---
+title: "SQL クエリの改良:Phoenix, Flink, SparkSql, ERD テーブル..."
+author: Hue Team
+type: post
+date: 2020-09-15T00:00:00+00:00
+url: /blog/sql-querying-improvements-phoenix-flink-sparksql-erd-table/
+sf_thumbnail_type:
+  - none
+sf_thumbnail_link_type:
+  - link_to_post
+sf_detail_type:
+  - none
+sf_page_title:
+  - 1
+sf_page_title_style:
+  - standard
+sf_no_breadcrumbs:
+  - 1
+sf_page_title_bg:
+  - none
+sf_page_title_text_style:
+  - light
+sf_background_image_size:
+  - cover
+sf_social_sharing:
+  - 1
+sf_related_articles:
+  - 1
+sf_sidebar_config:
+  - left-sidebar
+sf_left_sidebar:
+  - Sidebar-2
+sf_right_sidebar:
+  - Sidebar-1
+sf_caption_position:
+  - caption-right
+sf_remove_promo_bar:
+  - 1
+ampforwp-amp-on-off:
+  - default
+categories:
+  - Version 4.8
+  - Querying
+
+---
+データクランチャーズの皆さん、こんにちは
+
+SQL クエリをもっと簡単に実行したいと思っていませんか?ここでは、次の Hue のリリースで予定されている様々なクエリの改善点を紹介します!
+
+## 新しいデータベース
+
+Hue は、[Apache Phoenix](https://phoenix.apache.org/), [Apacke Flink](https://flink.apache.org/) SQL、 および [Apache Spark](https://spark.apache.org/) SQL ([Apache Livy](https://livy.apache.org/) 経由) により、より洗練された経験を積んでいます。
+
+{{< youtube fKHD-fOdDY0 >}}
+
+### Apache Phoenix
+
+Apache Phoenix は、SQL を介して [Apache HBase](https://hbase.apache.org/) データベースに簡単にクエリができるようにします。現在、この[統合](/sql-querying-apache-hbase-with-apache-phoenix/)は完全に動作しており、いくつかのコーナーケース(例えば、デフォルトの Phoenix データベースの扱い、左側のアシストでのテーブルと列の一覧、なりすましのサポートなど...) が修正されています。
+
+### Apache Flink SQL
+
+データストリームへの[SQL クエリ](https://ci.apache.org/projects/flink/flink-docs-stable/dev/table/sql/) のための Apache Flink のサポートは成熟してきており、エディタとの最初の統合も行われています。
+
+**注** [KsqlDB](https://docs.gethue.com/administrator/configuration/connectors/#ksqldb) のサポートも同様の機能を共有(ライブクエリと結果グリッド)しているため、進展しています。
+
+### Apache SparkSql
+
+SparkSql は非常に人気があり、Apache Livy を介して SQL クエリを実行する際の[改善](/blog/quick-task-sql-editor-for-apache-spark-sql-with-livy/)がなされています。従来の SqlAlchemy [コネクタ](https://docs.gethue.com/administrator/configuration/connectors/#apache-spark-sql) や HiveServer Thrift も動作していることにご注意ください。
+
+## UDF / 関数
+
+**動的一覧**
+
+エディタには全ての関数が一覧されているわけではありません。(セッションや企業レベルで登録されているもの、Hue のリリース後に作成されたもの、不足しており[追加可能](https://docs.gethue.com/developer/parsers/)なものなど...)
+
+現在、エディタはデータベースに関数の完全なリストを問い合わせ、不足している関数を `General` セクションに追加します。
+
+![UDF Assist](https://cdn.gethue.com/uploads/2020/09/right-assist-udf.png)
+![UDF Dynamic Assist](https://cdn.gethue.com/uploads/2020/09/assist-udf-dynamic.png)
+
+**引数**
+
+引数の位置関係が理解できるようになり、人気のある関数の定数の引数も利用できるようになりました。例えば、引数の2番目の位置の日付変換のためのフォーマットがユーザーに提示されるようになりました。
+
+![UDF argument positions](https://cdn.gethue.com/uploads/2020/09/udf-trunc-args.png)
+
+## 自動補完
+
+**独自のパーサーを開発**
+
+パーサーは [Apache Calcite](https://calcite.apache.org/) SQL サブセットをサポートすることを第一の目標とし、より小さな再利用可能なピース [structure.json](https://github.com/cloudera/hue/blob/master/desktop/core/src/desktop/js/parse/jison/sql/generic/structure.json) で抽出されています。[Parser SDK](https://docs.gethue.com/developer/parsers/#structure) にはより詳細な情報があります。
+
+例えば、`structure.json` は SQL パーサー全体で再利用可能な一般的な文法と特殊な文法のピースで構成されています。
+
+structure.json
+
+    [...],
+    "../generic/select/select.jison",
+    "../generic/select/select_conditions.jison",
+    "select/select_stream.jison",
+    "../generic/select/union_clause.jison",
+    "../generic/select/where_clause.jison",
+    [...]
+
+select_stream.jison
+
+    SelectStatement
+    : 'SELECT' 'STREAM' OptionalAllOrDistinct SelectList
+    ;
+
+    SelectStatement_EDIT
+    : 'SELECT' 'STREAM' OptionalAllOrDistinct 'CURSOR'
+    {
+      if (!$3) {
+        parser.suggestKeywords(['ALL', 'DISTINCT']);
+      }
+    }
+    ;
+
+独立した大きなパーサーを構築するというスケーラブルではないという戦略から、文法操作を共有するパーサーを構築するという戦略へと移行しています。
+
+![Parser Evolution v2 Beta](https://cdn.gethue.com/uploads/2020/09/parser_evolution.png)
+
+**スケジュールされた Hive クエリ**
+
+Hive 4 は SQL 構文による[スケジューリングクエリ](https://cwiki.apache.org/confluence/display/Hive/Scheduled+Queries)をネイティブにサポートしています。
+
+    * create
+    create scheduled query Q1 executed as joe scheduled '1 1 * * *' as update t set a=1;
+    * change schedule
+    alter scheduled query Q1 cron '2 2 * * *'
+    * change query
+    alter scheduled query Q1 defined as select 2
+    * disable
+    alter scheduled query Q1 set disabled
+    * enable
+    alter scheduled query Q1 set enabled
+    * list status
+    select * from sysdb.scheduled_queries;
+    * drop
+    drop scheduled query Q1
+
+なお [HUE-3797](https://issues.cloudera.org/browse/HUE-3797) にはミニ UI が付属しており、クエリの監視やスケジューリングが2回クリックするだけでできるようになります。(右のアシストパネルを参照)
+
+![Integrated Scheduling](https://cdn.gethue.com/uploads/2020/09/scheduled_queries.png)
+
+**Limit Nの自動補完**
+
+自動補完の際に 'LIMIT' を追加すると、実際のサイズも提案されるようになりました。
+
+![UDF argument positions](https://cdn.gethue.com/uploads/2020/09/sql-limit-n.png)
+
+**列キーのアイコン**
+
+列の値が別のテーブルの別の列を指している場合、[外部キー](https://gethue.com/2019-11-13-sql-column-assist-icons/)を表示するための追加アイコンが利用できます。
+
+![Assist Foreign Keys](https://cdn.gethue.com/uploads/2020/03/assist_foreign_keys_icons.png)
+
+    CREATE TABLE person (
+      id INT NOT NULL,
+      name STRING NOT NULL,
+      age INT,
+      creator STRING DEFAULT CURRENT_USER(),
+      created_date DATE DEFAULT CURRENT_DATE(),
+
+      PRIMARY KEY (id) DISABLE NOVALIDATE
+    );
+
+    CREATE TABLE business_unit (
+      id INT NOT NULL,
+      head INT NOT NULL,
+      creator STRING DEFAULT CURRENT_USER(),
+      created_date DATE DEFAULT CURRENT_DATE(),
+
+      PRIMARY KEY (id) DISABLE NOVALIDATE,
+      CONSTRAINT fk FOREIGN KEY (head) REFERENCES person(id) DISABLE NOVALIDATE
+    );
+
+サンプルのポップアップでは、リレーションシップのナビゲートもサポートされるようになりました。
+
+{{< youtube 4xgjvM51Rnw >}}
+
+## ERD テーブル
+
+列と外部キーのリンクを視覚的に一覧表示することで、SQL クエリを作成する際のスキーマと関係をより早く理解することができます。[ドキュメントページ](https://docs.gethue.com/developer/components/er-diagram/)のライブデモをぜひご覧ください。
+
+![ERD Table Components](https://cdn.gethue.com/uploads/2020/09/erd_table_viz.png)
+
+**注** 新しい共有可能なコンポーネントシステムについては、今後のブログ記事で詳しく紹介する予定です。
+
+## スマートな提案
+
+ローカルアシスタントは、JOIN の自動補完の提案や、単純なリスクアラート(例えば LIMIT 節の欠落など)を提供します。
+
+![Popular joins suggestion](https://cdn.gethue.com/uploads/2017/07/hue_4_query_joins.png)
+
+これはベータ機能です。有効にするには `hue.ini` で次のようにします。
+
+    [medatata]
+    [[optimizer]]
+    # Requires Editor v2
+    mode=local
+
+## インポーター
+
+新しい SQL テーブルの作成が簡単になるように、データインポートウィザードでいくつかの修正を行いました。以前の[記事](https://gethue.com/querying-exploring-the-instacart-dataset-part-1-ingesting-the-data/)で詳しくご覧いただけます。
+
+![Table Create Wizard](https://cdn.gethue.com/uploads/2019/03/insta_importer_step1.png)
+
+## コネクタ付きエディタv2 
+
+これらはベータ版の機能であり、まだかなりの量の研鑽が必要ですが、十分に安定しているので多くのユーザーに試していただきフィードバックを送っていただきたいと考えています。
+
+クエリの事項はより良い安定性と複数のクエリを同時に実行できるように置き換えられています。新しいバージョンの詳細はベータ後に公開予定です。
+
+![Editor v2 Beta](https://cdn.gethue.com/uploads/2020/09/editor-v2-beta.png)
+
+`hue.ini` で有効にする方法は次のとおりです。
+
+    [notebook]
+    enable_notebook_2=true
+
+    [desktop]
+    enable_connectors=true
+
+**注** [https://demo.gethue.com/](https://demo.gethue.com/) では新しいエディタが有効になっています。
+
+
+
+
+フィードバックや質問はありますか?このページや <a href="https://discourse.gethue.com/">Forum</a> にコメントください。<a href="https://docs.gethue.com/quickstart/">quick start</a> すぐに SQL のクエリを始められます!
+
+
+その先へ!
+
+Romain from the Hue Team

+ 101 - 0
docs/gethue/content/jp/posts/2020-09-23-release-hue-4-8.md

@@ -0,0 +1,101 @@
+---
+title: Hue 4.8 とその改善点が公開されました!
+author: Hue Team
+type: post
+date: 2020-09-23T00:00:00+00:00
+url: /blog/hue-4-8-phoenix-flink-sparksql-components/
+sf_thumbnail_type:
+  - none
+sf_thumbnail_link_type:
+  - link_to_post
+sf_detail_type:
+  - none
+sf_page_title:
+  - 1
+sf_page_title_style:
+  - standard
+sf_no_breadcrumbs:
+  - 1
+sf_page_title_bg:
+  - none
+sf_page_title_text_style:
+  - light
+sf_background_image_size:
+  - cover
+sf_social_sharing:
+  - 1
+sf_related_articles:
+  - 1
+sf_sidebar_config:
+  - left-sidebar
+sf_left_sidebar:
+  - Sidebar-2
+sf_right_sidebar:
+  - Sidebar-1
+sf_caption_position:
+  - caption-right
+sf_remove_promo_bar:
+  - 1
+ampforwp-amp-on-off:
+  - default
+categories:
+  - Version 4.8
+  - Release
+
+---
+データ探検家の皆さん、こんにちは。
+
+Hue チームは全ての貢献者に感謝し、Hue 4.8 がリリースできたことを喜ばしく思っています。
+
+<a href="https://cdn.gethue.com/uploads/2020/09/hue-4.8.png">
+  <img src="https://cdn.gethue.com/uploads/2020/09/hue-4.8.png" />
+</a>
+
+&nbsp;
+
+子のリリースでは、[4.7](/hue-4-7-and-its-improvements-are-out/) に加えて以下の改良が行われています。
+
+* [SQL Editor](/blog/sql-querying-improvements-phoenix-flink-sparksql-erd-table/)
+  * Apache [Flink](/blog/sql-editor-for-apache-flink-sql/), [Phoenix](/sql-querying-apache-hbase-with-apache-phoenix/), [SparkSql](/blog/quick-task-sql-editor-for-apache-spark-sql-with-livy/) SQL 派生言語の初期サポート
+  * Apache Calcite の文法の改善を簡単にするためのパーサーのリファクタリング
+  * 外部キーを他のテーブルへのリンクとして持つ SQL テーブルのエンティティ関係図
+  * [クエリ共有とSQL Gist](/blog/2020-03-04-datawarehouse-database-sql-collaboration-and-sharing-with-link-and-gist/) の連携を強化
+* API
+  * 新しい[コンポーネントフレームワーク](https://docs.gethue.com/developer/components/)でピースをクリーンかつ再利用可能なものに
+    * SQL テーブルのERD図
+    * パーサー: SQL クエリをトーカナイズするために JavaScript を再利用
+  * [REST API](/blog/rest-api-execute-sql-queries-browse-files/): 'SQL クエリの実行', 'S3 のファイルの一覧やダウンロード' のようなアクションを呼び出す
+  * セキュアクラスターで Apache Knox でログインする方法
+* 開発
+  * [Docker](/quickstart-hue-in-docker/) / Kubernetes / Grafana の設定を更新
+  * 継続的インテグレーション: Python lint, コミットメッセージのチェック, JavaScript のライセンス
+  * 簡素化されたオンボードの体験
+* プレビュー
+  * エディターv2, コネクター、Python3 がベータ版に
+
+
+
+600以上のコミットと200以上のバグフィックスがあります。全ての変更点の詳細について[リリースノート](https://docs.gethue.com/releases/release-notes-4.8.0/)をご確認ください。
+
+ぜひ手に取って試してみて下さい!
+
+* Docker
+    ```
+    docker run -it -p 8888:8888 gethue/4.8.0
+    ```
+* Kubernetes :
+    ```
+    helm repo add gethue https://helm.gethue.com
+    helm repo update
+    helm install gethue/hue
+    ```
+* [demo.gethue.com](demo.gethue.com)
+* [Tarball](https://cdn.gethue.com/downloads/hue-4.8.0.tgz) または [source](https://github.com/cloudera/hue/archive/release-4.8.0.zip)
+
+</br>
+</br>
+
+フィードバックや質問はありますか?このページや <a href="https://discourse.gethue.com/">Forum</a> にコメントください。<a href="https://docs.gethue.com/quickstart/">quick start</a> すぐに SQL のクエリを始められます!
+
+
+Onwards!