コミュニティフォーラム (Japanese)

ようこそLookerの日本語コミュニティへ!リリースノートやイベントのご案内などは「ニュースと告知」、Lookerの製品機能に関するちょっとした疑問・質問は「ヘルプとサポート」、その他TIPsやデータにまつわる話は「コラム」のカテゴリへご投稿ください。みなさまの投稿・コメント、心よりお待ちしています!

137 Topics

Lookerコミュニティサイトが新しくなりました

Looker コミュニティサイトが新しくなりました!! 新コミュニティサイト:https://community.looker.com(日本語フォーラム:https://community.looker.com/japanese-161) 旧コミュニティサイト (Discourse) 上の記事は全て新サイトに移行済みとなり、今後旧サイトの記事にアクセスした場合は自動的に新サイトの該当記事へリダイレクトされます。 旧コミュニティサイト(Discourse)でユーザー登録いただいていたみなさまへのお願い旧サイト(Discourse) でご登録いただいたユーザーにて新しいコミュニティサイト にアクセス&ログインできることをご確認ください。もしログインが成功しない場合、以下手順にてパスワードのリセットをお願いします。これにより、旧サイトのユーザー情報がそのまま新サイトに紐づけられます。TOPページ右上の “Login” をクリック “Reset Password” をクリック、 メールアドレスを入力し、”Post” 入力したメールアドレス宛に届いたパスワードリセットのメールを確認し、記された手順に沿ってアカウントを作成 新しいコミュニティサイトをお楽しみください! 旧コミュニティサイト(Discourse)でユーザー登録されていなかったみなさまへのお願いぜひこの機会にユーザー登録をお願いします 日本語フォーラムも健在です! カテゴリをスクロールダウンしていただくと、日本語フォーラムのカテゴリが見つかります。直接アクセスする場合はこちら今後もリリースノートや便利なTIPSをお届けしていきますので是非ご注目ください。またみなさまからの投稿もお待ちしております!!

新規のユーザーだけを Distinct しながら running_total (累計)を取得する

Lookerではテーブル計算でのrunning_total関数や、Measureでrunning_totalパラメータが準備されていますので、Explore上で簡単に累計値を取ることができます。ですが、例えばユーザーの新規純増分だけを抽出してその累計を出したい、と言うようなケースでは、少し工夫が必要になります。 こちらの記事にあるように、日付でソートし「一つ前の日付」を参照することで、そのユーザーが新規なのかどうかを判断することができます。これを使って、純増分のユーザー数をカウントすることでDISTINCTした累計を算出することができます。 考え方については前述の記事の通りなのですが、これをもう少し具体的に見ていきたいと思います。例えば、次のようなデータがあるとします。 田中 一郎は10-01に初回ログインをしており、10-03に2回目のログインをしています。同様に佐藤 次郎は10-01と10-02にログインをしています。このログインユーザーのUUを日別にとると、次のようなUUおよび累計になります。 ここで、10-01のUUは初日なので2で問題ありません。しかし、10-02の累計値は5になっています。10-02に着目すると佐藤 次郎は確かにログインをしているのですが、この人はすでに10-01にログイン済みなので、当該期間の延べ数としてカウントしたくありません。 そこで、それぞれのログインユーザーの「前回のログイン日」を参照することで、それぞれのユーザーが初めてログインしたのか、それとも以前にログインしたことがあるのかを区別するロジックを作って、これを実現してみます。ここではサブクエリーを書く必要がありますが、Lookerでは、このようなケースではネイティブ派生テーブルを利用すると、すっきりと記述することができます。 まず、先程のログイン日とログインユーザーIDを表示させている画面で、ギアマークから Get LookML をクリックします。 続いて、Derived Tableタブをクリックして、生成されたコードをクリップボードにコピーします。 得られたLookMLのコード(ネイティブ派生テーブルのコード)を、LookMLプロジェクトの中に記述します。このとき、View名をわかりやすいものに変更してください。 得られたネイティブ派生テーブルに二つの変更を追加しま

Looker 7.18 リリースノート

リリース予定スケジュール リリース開始日: 2020/10/18リリース完了およびダウンロード可能: 2020/10/29⚡ 日本のお客様を含む地域は日本時間2020年 10月30日早朝  11月3日(火) 未明のリリースを予定しています⚡⚡ リリース予定日は変更となる可能性があります。予めご了承ください⚡   リリース予定の変更など、リリースに関する重要な通知はLooker Technical Contacts 宛にメール配信されます。Lookerの管理画面よりTechnical Contactsの登録をお願い致します。その他リリースに関する概要はこちらをご参照ください。  過去のリリースノート レガシー機能の終了スケジュール  重要なお知らせ:オリジナルのリリースノート(英語版)は標準のLooker documentation にて掲載されます。以下リンクよりご参照ください。Looker 7.18 Release Highlights Looker 7.18 Changelog   その他日本語のLookerドキュメントリスト  本スレッドへのコメントは公式には追跡されないことにご注意ください。ヘルプ・リクエストや障害報告については、新規トピックを追加いただくかLooker Help Centerからご連絡ください。   リリース・ハイライト New Dashboard Experience - 新ダッシュボード Google Cloud Platform に合わせたリブランディング エクスプローラの Quick Start (クイックスタート) Looker Mobile App 影響のある変更 その他の追加・変更・修正     New Dashboard Experience - 新ダッシュボード!   これまでダッシュボード(ベータ) としてご利用いただいていた新しいダッシュボードが、今回のリリースよりLookerでのデフォルトのダッシュボードとなります。        新しいダッシュボードでは、より高速な読み込み、新しいフィルターコントロール (強力!!)、再設計されたスケジューラー、および折りたたみ可能なフィルターバーがご利用いただけます。   ダッシュボードを作成する際、デフォルトで新しいダッシュボードが使用されるようになります。   ダッシュ

次世代ホスティングインフラストラクチャへの移行について

本記事はこちらのHelp Centerの記事の日本語版となります。 既にTechnical Contactの皆様には別途ご連絡がいっております通り、Lookerは、より優れたスケーラビリティと信頼性をユーザーの皆様に提供するため、2020/11/1より順次 次世代ホスティングインフラへの移行を行っていきます。  こちらの移行に伴い、お客様側の環境設定について一部変更を実施いただく必要がございます。大変お手数をお掛けしますが、下記にて必要な変更点をご確認の上、ご利用中の処理に影響が出ないよう 2020/10/31までに 必要な設定変更を実施いただけますよう宜しくお願い致します。  内容についてのご質問やサポートが必要な場合は、Livechat, help.looker.com または担当のLookerチーム (担当営業・CSM・プロフェッショナルサービス) へご連絡ください。   データベース接続について 3rdパーティーサービスへの接続について Lookerへのアクセス(ブラウザ・API)について PDT (永続的派生テーブル) について     データベース接続について   もし、現状Lookerをデータベースに接続する際に IPアドレスホワイトリスト及びSSHトンネルの設定を実施されている場合、次世代Lookerインスタンスの新しいIPアドレスをご登録いただく必要があります。    Enabling secure database access のページを参考に、Lookerインスタンスがホストされているリージョンに紐づくIPアドレスをご確認ください。新しいIPアドレスは Instances Hosted on Google Cloud Platform (GCP) または Instances Hosted on Amazon Elastic Kubernetes Service (Amazon EKS) の下に記載されています。     日本のお客様につきましては以下のIPアドレスが対象となります。GCP : 日本、東京(asia-northeast1) 34.84.255.194 35.243.85.184AWS (Amazon EKS) : アジア太平洋地域(東京)(ap-northeast-1) 54.250.91.57 13.112.30.110 54

Looker 7.16 リリースノート

リリース予定スケジュール リリース開始日: 2020/9/20 リリース完了およびダウンロード可能: 2020/9/30 ⚡ 日本のお客様を含む地域は日本時間2020年10月1日早朝のリリースを予定しています⚡ ⚡ リリース予定日は変更となる可能性があります。予めご了承ください⚡ リリース予定の変更など、リリースに関する重要な通知はLooker Technical Contacts 宛にメール配信されます。Lookerの管理画面よりTechnical Contactsの登録をお願い致します。 その他リリースに関する概要はこちらをご参照ください。 過去のリリースノート レガシー機能の終了スケジュール 重要なお知らせ: オリジナルのリリースノート(英語版)は標準のLooker documentation にて掲載されます。以下リンクよりご参照ください。 Looker 7.16 Release Highlights Looker 7.16 Changelog その他日本語のLookerドキュメントリスト 本スレッドへのコメントは公式には追跡されないことにご注意ください。ヘルプ・リクエストや障害報告については、新規トピックを追加いただくかLooker Help Centerからご連絡ください。 リリース・ハイライト アラートをSlack (Action Hub) に Aggregate Awareness の機能強化 Breaking Changes (影響のある変更) その他の追加・変更・修正 アラートをSlack (Action Hub) に アラートをSlackに送れるようになります スケジュールアラートの宛先としてSlackが追加されます。 Aggregate Awareness の機能強化 開発者は、Aggregate Table (集計テーブル) の materialization ブロック内で次の永続パラメーターを使用できるようになりました indexes, cluster_keys, partition_keys, distribution, distribution_style これらの機能強化により、ユーザーは日時を要求する代わりに、フィルタの最小粒度の時

一つのフィルターを複数のViewに適用する

複数のViewを結合する際、複数のViewで同じフィルターをかけたいという場面はないでしょうか? 例えば、OrdersビューとUsersビューを結合する際、同じ日付で絞り込みを行いたいというようなケースがあったとします。 これは別々のViewに存在するディメンションなのでExploreではViewごとにそれぞれフィルターを設定してもらうことになると思います。 とはいえこれは面倒なので、一つのフィルターを同時にOrders ViewとUsers Viewに適用する方法はないでしょうか。Filterパラメータを使えばできそうなので、ちょっと考えてみました。 パターン1 orders.view に以下のようなフィルターを作成します filter: date_filter { view_label: "common filter" description: "Please use this filter" type: date } 次に model ファイルに以下の sql_always_where パラメータを設定します。 explore: order_items { always_filter: { filters: [date_filter: "7 days"] } sql_always_where: {% condition order_items.date_filter %} ${order_items.created_raw} {% endcondition %} AND {% condition order_items.date_filter %} ${users.created_raw} {% endcondition %} ;; join: users { type: left_outer sql_on: ${order_items.user_id} = ${users.id} ;; relationship: many_to_one } } 元のDateディメンションをフィルターに使って欲しくない場合は、can_filter: no を追加して明示的にフィルターとして使用できないようにしておくのも良いかと思います。 dimensi

テンプレートフィルターで日付別シャード化テーブルをフィルタ

BigQueryのテーブルが日付別で [PREFIX]_YYYYMMDD のようにシャード化されており、この日付とテーブル内の日付のカラムがUTCになっている場合に、LookerのExploreやダッシュボードではJSTで指定した期間のデータだけを検索したいケースがあります。 <例> log_20200728(UTC)テーブルには以下のtimeカラムがあり、データはUTCで入っている。 この場合、JST 7/29で検索したい場合は、シャード化テーブルはog_20200728とlog_20200729を対象とし、timeカラムはJSTに変換したデータを検索したい。 2020-07-28T04:00:00.000+00:00 (JSTは2020-07-28T13:00:00.000+00:00) 2020-07-28T18:00:00.000+00:00 (JSTは2020-07-29T03:00:00.000+00:00) log_20200729(UTC)テーブルには以下のtimeカラムがあり、データはUTCで入っている 2020-07-29T06:00:00.000+00:00 (JSTは2020-07-29T15:00:00.000+00:00) 2020-07-29T19:00:00.000+00:00 (JSTは2020-07-30T04:00:00.000+00:00) LookMLでは、以下のようにfilterの中でテンプレートフィルターを使うことで、シャード化したテーブルをJSTで検索しつつ、timestampカラムの値もJST変換して検索することができます。 Viewファイル view: ga_sessions { sql_table_name: `test.test.ga_sessions_*` ;; filter: target_date { type: date datatype: date sql: ({% condition target_date %} ${partition_date} {% endcondition %} OR {% condition target_date %} ${partition_date_

Looker 7.14 リリースノート

リリース予定スケジュール リリース開始日: 2020/8/16 リリース完了およびダウンロード可能: 2020/8/27 ⚡ APAC地域は日本時間2020年8月28日早朝のリリースを予定しています⚡ ⚡ リリース予定日は変更となる可能性があります。予めご了承ください⚡ リリース予定の変更など、リリースに関する重要な通知はLooker Technical Contacts 宛にメール配信されます。Lookerの管理画面よりTechnical Contactsの登録をお願い致します。 その他リリースに関する概要はこちらをご参照ください。 過去のリリースノート レガシー機能の終了スケジュール 重要なお知らせ: オリジナルのリリースノート(英語版)は標準のLooker documentation にて掲載されます。以下リンクよりご参照ください。 Looker 7.14 Release Highlights Looker 7.14 Changelog その他日本語のLookerドキュメントリスト 本スレッドへのコメントは公式には追跡されないことにご注意ください。ヘルプ・リクエストや障害報告については、新規トピックを追加いただくかLooker Help Centerからご連絡ください。 リリース・ハイライト Breaking Changes (影響のある変更) ダッシュボード (ベータ): クロスフィルタリング ダッシュボード (ベータ): ドラッグ&ドロップフィルター Lookerマーケットプレイス: 新しい Blocks および ヴィジュアライゼーション その他の追加機能 ⚡ Breaking Changes (影響のある変更) 7.14にてリリースされる既存の設定に影響を与えうる変更についてご確認ください: セキュリティの脆弱性に対処するため、マークダウンのレンダリングライブラリを更新しています。この変更により、タグが無効であるかバランスが取れていない場合に、末尾のHTMLタグがレンダリングされる可能性があります Lookerは、OAuth2の仕様に従い、HexまたはBase64としてエンコードされた pkceのCode Challenge パラメータを受け入れるよう

動的な階層の作り方

階層は値をバケット化するのに最適な方法ですが、LookMLのdimensionのtier:で指定した場合は、バケットのサイズは事前定義された静的な階層となります。時折、バケットサイズを動的に変更可能な階層を作成したい場合があります。これを、Liquidと呼ばれるテンプレート言語と、パラメーターと呼ばれるLookerのフィルターのみのフィールドを使用して実現可能です。 (🇺🇸本記事は、このヘルプ記事を翻訳したものになります) 実現方法 まず、ユーザーが希望するバケットサイズの数値を入力するためのフロントエンドフィルターフィールドとして機能するパラメータ(type: number)を作成します。 次に、さまざまなバケットを決定するために使用されるディメンションにて、Liquid変数{% parameter parameter_name %}で前述のパラメーター値を参照します。 これにより、ユーザーがパラメータに入力した値に応じて、dimensionの出力内容が動的に変更されます。 例 動的階層を構築するために、モジュロ演算を使用するパターンを作成します。そうすると、以下のように、10〜20、20〜30などの階層が連結した状態で表示されます。 数学的アプローチ: 先に述べたように、 剰余演算(modや%)を使用して階層を計算します。このアプローチは、いくつかの簡単な数学で説明できます。 rが、ユーザー定義のバケットサイズを表すとする バケットを割り当てたい値を、nとする まず、次の式でバケットの下限を計算します: n - n % r 次に、次の式で上限を計算します: n - n % r + r 例: r = 5 n = 33 n % r = 33 % 5 = 3 これは以下のことを意味します: 下限境界 = 33 - 3 = 30 上限境界 = 33 - 3 + 5 = 35 次に、これらの2つの値を連結すると、30 - 35 という階層が得られます。 LookMLで実装する場合 最初に、エンドユーザーが希望するバケットサイズを選択できるようにするパラメーターを作成します: parameter: bucket_size { default_value: "10" type: number } 次に、buc

Looker 7.12 リリースノート

リリース予定スケジュール リリース開始日: 2020/7/19 リリース完了およびダウンロード可能: 2020/7/30 ⚡ APAC地域は日本時間2020年7月31日早朝のリリースを予定しています⚡ ⚡ リリース予定日は変更となる可能性があります。予めご了承ください⚡ リリース予定の変更など、リリースに関する重要な通知はLooker Technical Contacts 宛にメール配信されます。Lookerの管理画面よりTechnical Contactsの登録をお願い致します。 その他リリースに関する概要はこちらをご参照ください。 過去のリリースノート レガシー機能の終了スケジュール 重要なお知らせ: オリジナルのリリースノート(英語版)は標準のLooker documentation にて掲載されます。以下リンクよりご参照ください。 Looker 7.12 Release Highlights Looker 7.12 Changelog その他日本語のLookerドキュメントリスト 本スレッドへのコメントは公式には追跡されないことにご注意ください。ヘルプ・リクエストや障害報告については、新規トピックを追加いただくかLooker Help Centerからご連絡ください。 リリース・ハイライト Breaking Changes (影響のある変更) 再設計されたIDE Explore Field Pickerのアップグレード Extension Framework (Beta) その他の追加・変更・修正 ⚡ Breaking Changes (影響のある変更) 7.12にてリリースされる既存の設定に影響を与えうる変更についてご確認ください: レガシー機能 であるIDE Legacy Folders が削除され、新規のLookMLプロジェクトは自動的に IDE folders (フォルダ構造) が有効化されます。現状昔ながらのフラットファイル構造にてご利用いただいている既存のプロジェクトについてはそのままフラットファイル構造が維持されます(その場合もフォルダ構造への移行を推奨致します)。 レガシー機能 である Legacy .strings Files for Lo

Refinementsを使ってLookMLのコードを整理する

本記事はこちらの英語記事🇺🇸 の翻訳です。 Looker 7.6 より LookML に refinements が追加されました。本記事では refinements がどのように動作するのかを説明したいと思います。また、関連するコードを一緒に管理するために、どのようにLookMLコードを整理、または「レイヤー化」すれば良いのかについて書いてみたいと思います。 Refinements とは? Refinementsは、ベースとなるLookMLのオブジェクトに対して変更を加えることができると言う意味で Extends(継承) とよく似ていますが、新しい名前のオブジェクトを新規に作成するのではなく、既存のオブジェクトに対して直接上書きして変更を加える言う点が異なります。 基本的な例を見てみましょう。プラス(+)記号に注意してください。 view: fact { sql_table_name: fact ;; } view: +fact { label: "Facts" dimension: date { type:date } } view: +fact { label: "Quantified Facts" dimension: amount { type:number } } これら3つの独立した宣言は、Extendsと同一のマージ規則にしがって効率的に結合されます。これは、以下の記述と同等です: view: fact { sql_table_name: fact ;; label: "Quantified Facts" dimension: date { type:date } dimension: amount { type:number } } これは非常に小さな変更であると同時に、非常に大きな変更でもあります!Refinementsの使い所はたくさんあるでしょう。例えば、LookML Blocks やプロジェクトをまたいでインポートされたLookMLのモデルなどです。ただ、ここでは、もう少し面白い、かつ広く適用可能な使用方法に着目してみたいと思います:チームで開発しているときに、LookMLプロジェクトをより管理しやすくする方法です。 LookML のレイヤー化 通常、LookMLは

Looker 7.10 リリースノート

リリース予定スケジュール リリース開始日: 2020/6/14 リリース完了およびダウンロード可能: 2020/6/25 ⚡ APAC地域は日本時間2020年6月26日のリリースを予定しています⚡ ⚡ リリース予定日は変更となる可能性があります。予めご了承ください⚡ リリース予定の変更など、リリースに関する重要な通知はLooker Technical Contacts 宛にメール配信されます。Lookerの管理画面よりTechnical Contactsの登録をお願い致します。 その他リリースに関する概要はこちらをご参照ください。 過去のリリースノート レガシー機能の終了スケジュール 重要なお知らせ: オリジナルのリリースノート(英語版)は標準のLooker documentation にて掲載されます。以下リンクよりご参照ください。 Looker 7.10 Release Highlights Looker 7.10 Changelog その他日本語のLookerドキュメントリスト 本スレッドへのコメントは公式には追跡されないことにご注意ください。ヘルプ・リクエストや障害報告については、新規トピックを追加いただくかLooker Help Centerからご連絡ください。 リリース・ハイライト Looker API CORS ダッシュボード (ベータ): フィルターテーマ ダッシュボード (ベータ): 機能拡張 データベース接続プールの向上 その他の追加・変更・修正機能 Looker API CORS 新しい実験的機能(Experimental Labs)として、ブラウザベースのWebアプリケーションから、プロキシサーバーを介さず直接Looker APIをコールできるようになります。 Looker API CORS Labs feature を有効化すると、ブラウザベースのWebアプリケーションがCross-Origin Resource Sharing (CORS) プロトコルを使ってドメインを跨いでLooker APIを呼び出せるようになります。各WebアプリケーションはLookerのインスタンスに登録されている必要があり、かつインスタンスの管理者によって有効化されてい

LookML開発ガイドライン(サンプル)

本トピックは、以下のDiscourseの記事を翻訳したものになります。 🇺🇸 Example LookML Development Guidelines 本投稿は、LookML開発ガイドのサンプルとしてご利用いただけるものです。このリストの目的は、新しく設計を行う際の考慮点を提供し、スケーラビリティとモデル開発を容易にするコンポーネントのいくつかをハイライトすることになります。 開発チームにとって有用なパーツを自由にご利用ください。 すべてのLookML開発者は、開発者間での一貫性を確保し、モデルの可読性を向上させるために、以下ののルールに従う必要があります。 これにより、各開発者は、分析機能とキャパシティを継続的に構築しながら、モデルが稼働し続けるようにすることができます。 サマリー: 作成した各ビューの先頭行に名前、作成日、目的を追加する ビューにsub-organization.viewというタイトルを付け、ファイル形式が次のようになるようにします。sub-organization.view_title.view.lkml 名前、作成日、説明を各新規のフィールドに追加する 一回限りやテストフィールドにフラグをたてる 1回限りのビューファイルで1回限りのExploreを整理して非表示にする 全てのLookML警告とエラーをコミット前に解消する 既存の拡張オブジェクトを拡張することを避ける ビュー, Explore、モデルのオーナーを設定する 新規コードのコミット時に、プルリクエストにおいてフィールド、ビューやExploreのオリジナルの作成者(や責任者)をタグ付けする PDTに関して *新規で作成されたモデル/ビューファイルは週次のコードレビューセッションにおいてディスカッションされる 1. 作成した各ビューの先頭行に名前、作成日、目的を追加する 私達は特定のファイルの内容がうまく理解できない場合などに、誰に質問できるのかを共有してほしいと思っています。新しいビューファイルを作成するときは、次のスクリーンショットに示すように、ビューファイルの上部に名前、作成日、目的を追加してください。 2. ビューにsub-organization.viewというタイトルを付け、ファイル形式が次のようになるようにします。sub-organ

ボードとホームページ機能を使ってLooker 初心者に優しいランディングページを設定する

社内でBIツールを使ったデータ活用を広げていく際のひとつの障壁として、はじめてツールを触る人への教育があるかと思います。Lookerでは機能や操作方法についてのドキュメントを豊富に揃えており、初めてLookerを触る方向けにも多数のドキュメント・チュートリアルをご用意しております。Lookerでのコンテンツの探し方 ※こちらは英語のみ 🙇 Lookerでのダッシュボードの表示 LookerでのLookの表示 などなど…それでもLookerの活用が進んでダッシュボードの数がどんどん増えてくると、初めてLookerにログインした人がどこをみたら良いのか分からない状況に陥ることが容易に想像されます。Looker管理者の視点から、以下の二つの機能を組み合わせ、各ユーザーが見るべきコンテンツに迷うことなく簡単にたどり着けるようにしましょう。boards (ボード) 機能 ホームページ機能1. boards (ボード) を作成する  boards (ボード) はLookerのバージョン6.20から利用可能になった機能です。  Lookやダッシュボードといったコンテンツはフォルダーに格納されています。boards (ボード) 機能は、それらのコンテンツを文字通り「ボード」にピン留めする機能となります。例えば以下のようにチーム毎に共有フォルダが分けられているとします。      Customer Successチームに所属する私が日頃見ている顧客のヘルススコアなどのダッシュボードは当然 Customer Successフォルダに格納されていますが、他にも見ているダッシュボードはたくさんあります。  例えば全社KPIダッシュボード(Company Wide Metricsフォルダ配下)、サポートチケットダッシュボード(DCLフォルダ配下)、オンボーディングプロジェクトのステータスダッシュボード(Professional Serviceフォルダ配下)など、多くのフォルダに業務で必要なダッシュボードが存在している状態です。  都度それぞれのフォルダに移動して開くのも手間ですし、フォルダ構造が複雑になってくるとどこに何が格納されているか分からなくなることも考えられます。  そのようなときはボードを作成し、上記のダッシュボードを全てボード上にピン留めしてしまいましょう。ボードの使い方に関す