The ancients’ practice of publicizing set-in-stone personal records would run anathema to modern data privacy laws. These days, in lieu of using contemporary personally identifiable records, I anonymized a 4,000-year-old tax record from ancient Babylon to describe three principles for effective data anonymization at scale: Embracing rare attributes: values and
Tag: SAS Studio
SAS Viya can allow users and organizations to more easily interface with the LLM application, build better prompts and evaluate systematically which of these prompts leads to the best responses to ensure the best outcomes.
一、背景の紹介 過去のSAS Viya機能紹介のブログで、クラウドネイティブアーキテクチャを採用したSAS Viyaのユーザーのワークロードのリソース管理の仕組みと方法を紹介しました。これらの機能のほとんどはKubernetesの特徴や機能によって実現されていますが、実は、SAS Viyaにはワークロードの管理を強化する特別な機能が搭載されています。この機能のおかげで、ユーザーは従来に比べてさらに高度で柔軟な負荷管理が可能となり、これによりクラウドのコストを節約し、業務プロセスをより効率的に運用することができます。この記事では、まずこの新しい機能の主な特徴や基本的な動き方を紹介します。 二、機能の特長と価値 ビジネス上の分析業務は、その実行部門や目的、優先順位、データの規模、そして使用される分析手法によって異なる性質を持っています。多様な分析タスクを一つの環境で実行する際、さまざまな問題が生じることが知られています。例えば、低優先度のタスクが計算リソースを占めてしまうこと、あるいはシステム全体に影響するようなエラー、そして計算リソースの不足や無駄などです。 このような問題に答えを提供するのがSAS Viyaの「SAS Workload Orchestrator」という機能です。ここでは、その機能の特長と価値について解説します。 1. コストとアジリティのバランスを最適化 ・キューの優先順位付け: さまざまなワークロードの優先度を定義し、重要なタスクが最初に実行されることを保証します。 ・負荷分散: リソースの使用を最適化し、タスクの適切な分散を実現。 ・Kubernetesでの実行: 現代のクラウド環境に最適化された実行環境。 ・ユーザーの中断を最小限に: 重要な作業の妨げとなる中断を避けます。 2. スループット、可用性、生産性の向上 ・最適な実行順序: 作業の効率とスピードを最大化。 ・並列処理: 複数のタスクを同時に高速で処理。 ・ワークロードの事前中断と自動再開: エラーが生じた場合でも自動でジョブを再開し、データサイエンティストの作業が中断されることなく最良のモデルの構築を続けられる。 3. 管理の簡素化 ・SASのワークロードの集中管理: ポリシーやプログラム、キュー、優先度を一元管理。 ・リアルタイムモニタリング: ジョブの進行状況やリソースの使用状況をリアルタイムで確認。 ・オンプレミスまたはクラウドでの実行: 用途や環境に合わせて選択可能。 結論として、SAS Workload Orchestratorは、高度なビジネスの要件に応じて分析タスクの実行を効率的に行うための強力なツールです。そのグラフィカルなインターフェースを通じて、リソースの一元的な管理が可能となり、ビジネスの生産性と価値を最大限に引き出すことができます。 三、「SAS Workload Orchestrator」の画面と用語定義 それでは、「SAS Workload Orchestrator」の魅力的な機能とその価値を理解したところで、具体的に「SAS Workload Orchestrator」の操作画面や用語について詳しく解説していきましょう。ぜひ参考にしてください。 1.用語定義 SAS
一、背景の紹介 "データアナリストのようなヘビーユーザと利用頻度が低いユーザや参照系のユーザなど、さまざまなユーザがおり、SASプログラムを実行する際に利用するCPUとメモリなどの計算リソースを、ユーザタイプごとに割り当てる設定をしたい"。これは、多くのViya4ユーザ様が持つ課題です。これを実現するためには、次の2つのステップが必要です 1.異なるタイプのユーザごとに利用できる計算リソースを設定します。 2.異なるタイプのユーザに対して、権限を個別に割り当てる必要があります。 前回の記事では、Viyaのシステム管理者に向けて、ユーザが利用できる計算リソースの上限値の変更方法を紹介していきます。本記事では、異なるタイプのユーザに対して、利用できる計算リソースを個別に設定する方法と権限を個別に割り当てる方法を紹介します。 二、準備 ユーザがSAS Studioを使用しているときにSAS Viyaがどのように計算リソースを呼び出すかは、前回の記事で説明したとおりですので、ここで割愛します。 興味のある方は、こちらのリンク先のブログをご参照ください。 以下の紹介内容は、基本的に一回目の記事と同じくデプロイメントファイルとK8sクラスターに変更を加える必要があるため、以下を準備する必要があります。基本的にViyaをデプロイ時に必要なものと同じですので、もし下記に対して不明なところがある場合、ご利用のViya環境のデプロイ担当者にお問い合わせください。 ・k8sクラスターのAPIサーバーに接続できる作業用のサーバー、OSはLinux系がおすすめです。 ・k8sクラスターに接続用コンフィグファイル(管理者権限が必要)。~/.kube/configとして保存します。 ・k8sのコマンドラインツール:kubectl ・Viyaデプロイメントアセットのコンパイル用ツール:kutomize ・Viyaをデプロイ時に使ったkustomization.yamlやsite-configフォルダを含めたファイルアセット また、ユーザの権限を設定するには、ViyaのGUI上での操作が必要のため、以下の準備も必要です。 ・管理者権限を持つViyaアカウント 三、ユーザごとに計算リソースの上限値を設定する方法 この章の項目は多いので、読者は以下のリンクを使って興味のあるセクションに直接ジャンプすることができます。 1.シナリオの紹介 2.ユーザグループの作成 3.SAS Viyaのデプロイメントファイルの修正 4.ヘビーユーザ用ポッドテンプレートを作成 5.ユーザ権限の設定 6.ユーザ権限設定の検証 1.シナリオの紹介 こちらの章の内容は、下記のシナリオに基づいて、ヘビーユーザとライトユーザ二種類のタイプのユーザに対して、それぞれ異なる計算リソースの上限を設定するシナリオを紹介します。 ・ユーザタイプA:ヘビーユーザ 利用する最大CPU:8CPU 利用する最大メモリ:8Gi ・ユーザタイプB:ライトユーザ 利用する最大CPU:2CPU 利用する最大メモリ:2Gi 2.ユーザグループの作成 まず、Viyaにヘビーユーザとライトユーザの2つの独立したユーザグループを作成する必要があります。この部分の作業はSAS ViyaのGUI上で実施します。 ①SAS Viyaへログインし、左側のメニューから「環境の管理」を選択します。 ②環境管理の画面に切り替わったら、左のメニューから「ユーザ」を選択します。 ③そして、画面上部の「ビュー」をクリックし、「カスタムグループ」を選択し、「新規作成」ボタンをクリックします。 ④ヘビーユーザ用グループを作成しますので、グループ新規作成の画面に、名前とID、説明を下記の図のように入力し、「保存」ボタンをクリックします。 ⑤そして、ライトユーザに対しても、同様の方法でグループを作成します。 ⑥次は、作ったユーザグループにユーザを追加しますので、作ったグループ名を選択し、右側の編集アイコンをクリックします。 ⑦ユーザ追加画面で、追加するユーザを選択し、追加アイコンで追加し、終わったら「OK」ボタンをクリックします。同様な操作でもう一つのヘビーユーザ用グループに対しても実施します。これで、ユーザグループの作成は完了しまた。 3.ライトユーザ用ポッドテンプレートを作成 ユーザグループごとに使用する計算リソースが異なるため、ユーザグループを作成した後に、ユーザグループごとに個別のポッドテンプレートを定義する必要があります。この部分の作業は、kubernetes側で実施します。 ①まず、ライトユーザ向けのポッドテンプレートを作成してみましょう。下記のコマンドで既存のポッドテンプレートをファイルとして、ローカルに保存します。 kubectl
一、背景の紹介 "データアナリストのようなヘビーユーザと利用頻度が低いユーザや参照系のユーザなど、さまざまなユーザがおり、SASプログラムを実行する際に利用するCPUとメモリなどの計算リソースを、ユーザタイプごとに割り当てる設定をしたい"。これは、多くのViyaユーザ様が持つ課題です。これを実現するためには、次の2つのステップが必要です 1.異なるタイプのユーザごとに利用できる計算リソースを設定します。 2.異なるタイプのユーザに対して、権限を個別に割り当てる必要があります。 本記事では、まずViyaのシステム管理者に向けて、ユーザが利用できる計算リソースの上限値の変更方法を紹介していきます。 二、準備 設定方法を紹介する前に、まずViyaでSASプログラムを実行時に計算リソースを調達する方法を説明します。ここでは、viyaのアーキテクチャとk8sの知識が必要になるので、なるべくわかりやすく解説していきたいと思います。 まず、ユーザがSAS Studioを使用する際、Viyaはそのユーザのみが使用できるセッションを作成します。 ユーザは、実行が必要なSASアプリケーションごとに個別のセッションを作成することができ、各セッションはバックグラウンドでk8sクラスタ上に対応するポッドを持ちます。 各ポッドには使用できるCPUとメモリの上限があり、デフォルトでは2vcpusと2Giのメモリが使用できます。Viyaがユーザのセッションのためにポッドを生成するとき、ポッドテンプレート(podTemplate)と呼ばれるものを参照します。ポッドテンプレートはviyaがデプロイされるときにyamlファイルで定義されるものです。そのため、ユーザセッションが利用できる計算リソースを変更したい場合は、viyaのデプロイに使用するポッドテンプレートのyamlファイルを変更する必要があります。また、ユーザの種類によって異なる計算リソースの制限を設定したい場合は、既存のポッドテンプレートをコピーして、名前と数値を変更するだけです。 デプロイメントファイルとK8sクラスターに変更を加える必要があるため、以下を準備する必要があります。基本的にViyaをデプロイ時に必要なものと同じですので、もし下記に対して不明なところがある場合、ご利用のViya環境のデプロイ担当者にお問い合わせください。 ・k8sクラスターのAPIサーバーに接続できる作業用のサーバー、OSはLinux系がおすすめです。 ・k8sクラスターに接続用コンフィグファイル(管理者権限が必要)。~/.kube/configとして保存します。 ・k8sのコマンドラインツール:kubectl ・Viyaデプロイメントアセットのコンパイル用ツール:kutomize ・Viyaをデプロイ時に使ったkustomization.yamlやsite-configフォルダを含めたファイルアセット 三、計算リソース上限値の修正方法 計算リソースの調達方法を簡単に紹介した後、次は、そのリソースを変更する方法について説明します。ここでは、主に以下の2つの方式を採用しています。以下はLinux OSを使用することを前提に説明します。 以下はこの章の項目の一覧です。読者は以下のリンクを使って興味のあるセクションに直接ジャンプすることができます。 1.デプロイ用ポッドテンプレートファイルを修正し、再デプロイでリソースの設定を更新する方法 2.K8sクラスター内にデプロイされたポッドテンプレートをそのまま修正する方法 3.設定後の検証方法 1.デプロイ用ポッドテンプレートファイルを修正し、再デプロイでリソースの設定を更新する方法 この方法のメリットは、デプロイメントファイルに対して変更を加えるため、後にViya環境のバージョンアップや設定変更があった場合でも、計算リソースの設定の変更が保持されることです。 デメリットは、設定時にデプロイメント手順を再実行する必要があるため、比較的面倒ではあるが、長期的には管理しやすいので、おすすめです。 ①まず、Viya のデプロイメントアセットを含むパスの一番下に移動する必要があります。 このパスを/opt/viyainstallと仮定して、以下のコマンドを実行する必要があります。 deploy=/opt/viyainstall cd $deploy パス$deployの下の構造は、おおよそ次のようになっているはずです。下記のファイルやフォルダが含まれていない場合、パスが正しいか、Viyaのデプロイに使用するファイルが欠落していないかを確認することが重要です。 ②次に、ポッドテンプレート内で定義されているcpuとmemoryの制限を変更するために、site-configフォルダに以下のファイルを作成する必要があります。実際には、設定したいCPUやメモリの上限値に合わせて、下記のコマンド内のvalueの値を変更する必要があります。下記のコマンドの例では、ユーザが利用できる計算リソースの上限を31vcpu/240Giに設定しました。 cat <<EOF > $deploy/site-config/modify-podtemplate.yaml #メモリの上限値を修正 - op: add path: "/metadata/annotations/launcher.sas.com~1default-memory-limit" value: 240Gi #利用できるメモリの上限値 - op:
Wouldn’t it be cool if we establish a mechanism that provides more data scientists easy access to SAS Reinforcement Learning capabilities, from a centralized location and using a standardized approach?
Have you ever heard the phrase “beggars can’t be choosers”? Basically, it means that if you ask for something, be grateful for what you get, especially if you don’t have the means to acquire it yourself. This phrase can be widely applicable to most areas of our lives, but when
The Proc Python procedure, Python code editor & Python code step facilitate low-code analytics calling Python and SAS from a common interface. Data scientists also appreciate the connection to Python & R through the Model Studio Open-source Code node. Older methods of interaction include the swat and sas_kernel packages running on Python clients.
The CMS-HCC Risk Adjustment models are used to reimburse Medicare Advantage plans based on the health status of the plans’ members. CMS-HCC Risk Adjustment is the practice of assigning a risk score based on demographics and diagnoses to an individual beneficiary of Medicare for the purpose of calculating an expected cost of care, relative to the average beneficiary. Accurate risk adjustment requires an accurate diagnostic profile of an individual on an annual basis, documenting diagnoses via submitted claims or within a provider's medical record.
Welcome to this blog series on how to install SAS Analytics Pro on Viya on your personal MacBook. In this first post, we introduce what SAS Analytics Pro on Viya is and how to install the software.
背景の紹介 これまでのSAS製品は、SAS 9でもSAS Viya 3.5でも、ほとんどがWindowsやLinuxのプラットフォームで動作していました。 そのため、Windowsクライアントを持つユーザーは、SMBサービスやWindowsのファイル共有機能を介して、これらのプラットフォームに保存されたファイルに簡単にアクセスすることができていたのです。 SASが開発した最新のクラウドネイティブ・データアナリティクス・プラットフォーム「SAS Viya」は、WindowsやLinuxなどのOS上で直接動作するのではなく、コンテナ/ポッドの形でKubernetes(以下、K8s)上で動作し、従来の製品とはアーキテクチャが大きく変わっています。K8s上で動作するサービスのコンテナ内のデータは一時的なものなので消えてしまう特徴があります。この点に対して、お客様は最新の製品を使用する際に、K8sに保存したデータをローカルのWindowsシステムからどのようにアクセスするのか、SASで作成したレポートなどのデータをどこに保存するのかという疑問を持つことが多いようです。 今回は、下記の図の構造のような、K8sに保存されているファイルを、比較的簡単な方法でWindowsクライアントと共有する方法をご紹介したいと思います。 本記事の内容は、Microsoft Azure上にデプロイされたSAS Viya Stable 2021.2.3に基づいています。centos 7.9上で、kubectl、kustomization、azure cliなどのコマンドラインツールを利用する作業が含まれているので、Linux、Kubernetes、SAS ViyaのデプロイメントとAzureに関する一定の知識が必要です。また、お使いのクラウドベンダーや製品のバージョンによって、設定方法が異なる場合もありますので、詳細は各ドキュメントをご確認ください。 SAS Viya on Kubernetesが利用するストレージの紹介 まず、K8s上にデプロイされたSAS Viyaサービスを使用した場合のデータの保存方法について簡単に説明します。 例えば、SAS Studioを利用する場合、ユーザーがセッションを作成するたびに、SAS ViyaはK8s上に一つのコンテナを作成します。これは、ユーザーがセッションで実行したすべてのコードや操作がこのコンテナに入っているミニLinux内で実行されます。 ご存知のように、コンテナの最大の利点は、インストール作業や設定などが一切いらず、配置したらすぐに使えることです。コンテナが提供するサービスや機能を使用するために設定を行う必要はありませんが、同時に、コンテナ内のデータに加えた変更も保存されず、新しいセッションを作成するたびに、まったく同じ設定を持つまったく新しいコンテナが作成されます。 そのため、SAS Studioで作成した新しいデータを保存したい場合は、コンテナの外部にあるストレージに保存する必要があります。K8sではこの外部ストレージは永続ボリュームと呼びます。 永続ボリュームを利用することにより、SAS Studioのセッションが終了しても、作業中にユーザーが作成した新しいデータはちゃんと保存されています。次にユーザーが新しいセッションを作成する時、以前使用していた永続ボリュームが新しいセッションに自動的にマウントされ、ユーザーが永続ボリュームに保存されていたデータを使って引き続き作業できます。この記事で紹介するデータ共有方法も、こちらの永続ボリュームを利用しています。 データ共有するための設定方法 次に、K8sで作成したファイルをWindowsと共有する方法を紹介します。前述したように、作業中に発生したデータを永続ボリュームに保存することができるので、永続ボリュームをWindowsにマウントするだけで、作業用PCとK8sの間でデータを共有することができますが、実現方法は使用する永続ボリュームの外部ストレージの種類によって異なります。 AzureのK8sサービス上でSAS Viyaを利用する場合、使用する外部ストレージは、大体以下の3種類です。Azure Fileを共有ストレージとして使用する場合、追加のサーバは必要なく、使い方も比較的簡単なので、本記事ではAzure Fileを外部ストレージとして使用する場合の共有方法を紹介します。 - ネットワークファイルシステム(以下NFS) - Azure Disk - Azure File(本記事で紹介する方法) データを共有するためには、次のような手順が必要です。 これらの手順には、AzureとK8sの管理者権限と関連する知識が必要なため、一般的にはサーバ管理者やSAS Viya導入の担当者が行うことになることに注意してください。 1.ストレージクラスの作成 2.永続ボリューム要求の作成
[Editor's note: this post was co-authored by Marinela Profi and Wilbram Hazejager] Data science teams are multidisciplinary, each with different skills and technologies of choice. Some of them use SAS, others may have analytical assets already built in Python or R. Let's just say each team is unique. As part
This post demonstrates how to rank data and how to place these ranks into roughly equal groups. There are certain variables, such as annual salary, that are highly skewed. There are many who earn between $50,00 and $150,000, but some who earn millions or hundreds of millions of dollars a
In SAS Studio, the ordering of rows and columns in the Table Analysis task are, by default, arranged by the internal ordering of the values used in the table. The table arranges the variables alphabetically or numerically by increasing value. For example, traditional coding uses 1 for Yes and 0
The more I use SAS Studio in the cloud via SAS OnDemand for Academics, the more I like it. To demonstrate how useful the Files tab is, I'm going to show you what happens when you drag a text file, a SAS data set, and a SAS program into the
SAS Studio Taskの紹介 仕事の中で、このような状況に遭遇したことはないでしょうか?普段Enterprise Guide或いはSAS Studioを利用している分析チームの中には、コーディングユーザとSAS言語ができないGUIユーザがいます。ある分析プロジェクトにおいて、特定のモデルを活用する場合に、そのモデルはSASコードを書くことで利用することはできますが、EGのGUI操作やSAS Studio のTaskだけでは活用することができません。この場合に、GUIユーザがコーディングユーザと同じような分析を行うためには、コーディングユーザが作ったSASコードを利用し、入出力情報やパラメータなどを修正した上で使用することになります。しかし、このようなやり方では、たとえば、修正を間違えることによって、エラーを起こし、コードを書いた人に助けてもらわないといけないことも時々発生していました。 この状況に置いて、SAS言語ができないユーザでも、コードを書かずにGUI上の簡単なマウス操作で実施できるような便利な機能をご紹介します。 SAS Studioには、SAS Studioカスタムタスクという機能が組み込まれています。必要な機能が既存のタスクとして用意されていなくても、プロシジャーがあれば自らタスクを簡単に作成できるインターフェースです。XML形式で必要な入出力箇所やオプションを定義することによって、GUI画面を持つタスクが簡単に作れます。そのタスクをSAS Studio上では勿論、SAS Enterprise Guide上でも使うことができます。非常に便利な機能です。この便利なSAS Studioカスタムタスクには以下のような特徴があります。 ・タスクを作る際にはSAS以外のプログラミング知識は必要ありません。 ・SAS Studioで作る場合は、XMLを書きながら、作成途中のGUIの画面を常に確認できます。 ・タスクを使う人は簡単なマウス操作で利用可能です ・そして、SAS StudioとEnterprise Guide両方での利用が可能です。 ・XMLベースなのでタスクの修正は簡単です。 ・テキストボックス、チェックボックスなど多様なコントロールを定義可能です。 SAS Studio Taskの作り方 今回は混合正規モデルを例にSAS Studio Taskの作成方法を紹介します。SAS Studio Taskを作るには二つの方法があります。 一つ目は新規で一からタスクを作成する方法です。 二つ目は既存のタスクをテンプレートとして使い、内容を修正しながらタスクを作る方法です。 今回の記事は一つ目の方法をメインとして紹介しますが、記事の最後に二つ目の方法に関しても簡単に紹介します。作成ツール(XMLエディタ)としては、SAS Studioや任意のエディターのいずれかを使用しても構いませんが、この記事では最新のSAS Studio 5.2を使用しています。操作方法などは使っているSAS Studioのバージョンによって変わる場合はありますが、定義の書き方に相違はありません。 SAS Studioを開いて、メニューから新規作成をクリックし、タスクと選択します。そして下の図のようなタスクテンプレートの画面が表示され、この画面内でSAS Studio Taskの定義を行います。まずSAS Studio Taskの定義の構造を紹介します。 最初の2行はシステムにより生成されたタスクのエンコーディングとスキーマバージョンの定義です。この部分を修正する必要はありません。 <?xml version="1.0" encoding="UTF-16"?> <Task schemaVersion="7.2">
If you're a SAS Enterprise Guide user who is looking to move to SAS Studio, there is a lot to like about your new coding environment.
前回のブログでは、Microsoft AzureストレージサービスのブロックBlobストレージについて軽く紹介し、SASからBlobストレージ中の特定の一つのファイルにアクセスする方法を紹介しました。 第1回リンク:https://blogs.sas.com/content/sasjapan/2020/10/01/sas-azure-blob-1/ しかし、実際のビジネスシーンでは、特定の一つのファイルにだけアクセスする運用はやはり割合的には少ないと考えています。 そこで、今回のブログでは、より効率的に、複数データに同時にアクセスできる方法を紹介します。そしてこれは、Microsoft AzureのBlobストレージをファイルシステムとしてSASサーバにマウントし、SASサーバから便利にアクセスする方法です。 前回と同じように、下記の方法を使うためには、前提条件として、SAS ViyaサーバとBlobストレージがあるAzure間でネットワーク通信ができる必要がありますので、ネットワークセキュリティ条件を確認してから、下記の方法をお試しください。 方法②: BlobストレージをファイルシステムとしてSASサーバにマウントし、SASサーバからアクセスする方法。 Microsoft Azure側: 1.まず、Azureポータルに入り、「ストレージアカウント」をクリックします。(図2-1) 図2-1 2.その配下で、使用されている対象Blob用のストレージアカウントをクリックします。(図2-2) 図2-2 3.そして、表示された左ペインの中で、「アクセスキー」というメニューをクリックします。(図2-3) 図2-3 4.該当ページでは、このストレージアカウントにアクセスするためのキーの情報が含まれているので、その中の、「ストレージアカウント名」と「キー」をメモしてください。あとで接続設定情報を作る時に使用します。(図2-4) 図2-4 5.一層上に戻り、同じくストレージアカウントの左ペインで、Blobサービスの中の「コンテナー」をクリックします。(図2-5)アクセス先のコンテナー名前(例:folderfirst)をメモしてください。あとで接続設定情報を作る時に使用します。 図2-5 以上で、Azure側の準備作業が終わります。次は、SASサーバ側の準備作業を進めていきます。 SAS Viyaサーバ側: 今回、Blobストレージをファイルシステムとしてマウントするには、Blobfuseという仮想ファイルシステムドライバー機能を使います。そのため、事前にSAS ViyaがインストールされているLinuxサーバ側に、そのツールをインストールする必要があります。 このブログで使用しているSAS ViyaサーバはRHEL/CentOS 7.x系のLinuxサーバであるため、Blobfuseのインストールを含めた手順は下記となります。 6.使用するSASユーザで、SASサーバ側にMicrosoftパッケージリポジトリをインストールします。 sudo rpm -Uvh https://packages.microsoft.com/config/rhel/7/packages-microsoft-prod.rpm 7.BlobfuseをSASサーバ側にインストールします。 sudo yum install blobfuse 8.Azureでは、低いレイテンシーとパフォーマンスのため、SSDが提供され、今回はそれを使って、ディレクトリーを作成します。(SSD使わないことも可能ですので、その場合、別ディレクトリーで作成して頂いてかまいません。) sudo mkdir /mnt/resource/blobfusetmp -p sudo chown #YourUserName#:sas /mnt/resource/blobfusetmp
近年、クラウドベンダーが提供するサービスが充実し、より多くのクラウドサービスが誕生してきました。しかし、一つのニーズに対して、複数のサービスを選択できるようになってきているものの、どのサービスが最適なのかを判断することは逆に難しくなってきていると考えられます。最近、SASを活用しているお客様から、「Microsoft社のAzureを使っていますが、これからクラウドにデータを移行して、安くて使い勝手なストレージサービスは何かありませんか」と聞かれたこともありました。 このブログシリーズでは、クラウド上のストレージサービスの一種であるMicrosoft Azure CloudのBlobストレージサービスの概要を紹介した上で、SAS ViyaからそのBlock Blobストレージに格納されているデータへアクセスする方法をご紹介させていただきます。 このブログシリーズは合計2回です。今回のブログでは、まず特定の一つファイルへのアクセス方法をご紹介します。次回のブログでは、より汎用的なアクセス方法、つまり、Blobストレージを一つのファイルシステムとして、SASサーバと連携し、一度に複数のデータにアクセスする方法をご紹介します。ぜひ最後まで、お付き合いいただければと思います。 第1回:https://blogs.sas.com/content/sasjapan/2020/10/01/sas-azure-blob-1/ 第2回:https://blogs.sas.com/content/sasjapan/2020/10/05/sas-azure-blob-2/ Blobストレージとは何か? まず、Blobストレージとは何かを紹介する前に、Blobって何でしょうか、から始めます。聞きなれない方もいらっしゃるかと思いますので。実際、BlobはBinary Large OBjectの略称です。本来はデータベースで用いられているデータタイプの種類で、メディアファイルや、圧縮ファイル、実行ファイルなどのデータを格納する時に使用されているものです。 では、Blobストレージとは何か?Microsoft社の紹介では、こう書かれています。 「Blob Storage は、テキスト・データやバイナリ・データなどの大量の非構造化データを格納するために最適化されています。非構造化データとは、特定のデータ・モデルや定義に従っていないデータであり、テキスト・データやバイナリ・データなどがあります。」 少し言い換えますと、Blobストレージは、ログファイルから、画像ファイルやビデオ・オーディオファイルまで格納できます。もちろん、通常目的でのデータ利用にも対応しているため、データの格納場所として使っても問題ありません。(Microsoft Azureの資料によりますと、4.75 TiBまで可能です。) なぜBlobストレージなのか 前文で少し申し上げたSASのお客様から頂いた質問の中で、「安くて使い勝手の良いストレージサービスは」と聞かれた事に関して、安いというポイントに関しては、下記の図をご覧ください。 ソース:https://azure.microsoft.com/ja-jp/pricing/details/storage/(2020/09/09アクセス時点) ご覧のように、ブロックBlobのストレージサービスは、安価で、かつ非構造化データに対応し、一般目的でのデータストレージとして、非常に向いています。 もちろん、ビジネスケースによっては、様々考慮すべき点(既存環境にHadoop環境があるかどうか、スループット、ビッグデータ等々)もありますが、今回は、主にこのブロックBlobストレージを例として紹介します。 SAS ViyaからBlobストレージにアクセスする方法 ここからは、SAS ViyaからBlobストレージにアクセスする方法をご紹介します。下記の方法を使うために、前提条件として、SAS ViyaサーバとBlobストレージがあるAzure間でネットワーク通信ができる必要がありますので、ネットワークセキュリティ条件を確認してから、下記の方法をお試しください。 方法①: SASのPROC HTTPプロシージャを使って、Blobストレージ内の特定の一つのデータにアクセスする方法。 Microsoft Azure側: 1.まず、Azureポータルに入り、「すべてのリソース」をクリックします。(図1-1) 図1-1 2.その配下で、利用されているストレージアカウントをクリックします。(図1-2) 図1-2 3.次に、表示された左側のメニューの中で、「Blob Service」配下のコンテナーをクリックします。(図1-3) 図1-3 *豆知識: ここで、いきなりコンテナーが出てくることに関して、混乱している方もいらっしゃるかもしれないので、少し解説します。こちらのコンテナーとは、Dockerコンテナーの意味ではありません。Blobストレージサービス配下のデータ格納用のサブ階層のことであり、フォルダーのようなものとイメージしてください。(図1-4) 図1-4 4.上記図1-3のように、その中に一つ「folderfirst」というコンテナーが存在しており、それをクリックすると、中に保管されているデータが見えるようになります。(図1-5) 図1-5 5.ここからが重要なポイントです。特定のデータ、例えば、「sas7bdat」データにSAS Viyaからアクセスしたい場合は、該当ファイルの名前をクリックして、下記のようなプロパティ情報を表示させます。(図1-6) 図1-6
While working at the Rutgers Robert Wood Johnson Medical School, I had access to data on over ten million visits to emergency departments in central New Jersey, including ICD-9 (International Classification of Disease – 9th edition) codes along with some patient demographic data. I also had the ozone level from
The t-test is a very useful test that compares one variable (perhaps blood pressure) between two groups. T-tests are called t-tests because the test results are all based on t-values. T-values are an example of what statisticians call test statistics. A test statistic is a standardized value that is calculated
Learn about best-selling SAS author Ron Cody's programming standards.
SAS supports direct integration for Git from Base SAS (via functions), SAS Enterprise Guide, SAS Studio, and SAS Data Integration Studio. Read this article to learn how to use Git more effectively in your SAS processes.
Using relative file paths in your SAS programs? Use the new DLGCDIR function to manage your SAS working directory -- even in SAS Enterprise Guide or SAS Studio -- to ensure your programs are working the way they ought to.
When making a new piece of code, I like to use the smallest font I can read. This lets me fit more text on the screen at once. When presenting code to others, especially in a classroom setting, I like to make the font large enough to see from the back of the room. Here’s how I change font size in SAS in our three programming interfaces.
SAS Studio is the latest way you can access SAS. This newer interface allows users to reach SAS through a web browser, offering a number of unique ways that SAS can be optimized. At SAS Global Forum 2018, Lora Delwiche and Susan J Slaughter gave the presentation, “SAS Studio: A New Way to Program in SAS.” This post reviews the paper, offering you insights of how to enhance your SAS Studio programming performance.
The title of this blog says what you really need to know: SAS Enterprise Guide does have a future, and it's a bright one. Ever since SAS Studio debuted in 2014, onlookers have speculated about its impact on the development of SAS Enterprise Guide. I think that we have been
Generating HTML output might be something that you do daily. After all, HTML is now the default format for Display Manager SAS output, and it is one of the available formats for SAS® Enterprise Guide®. In addition, SAS® Studio generates HTML 5.0 output as a default. The many faces of
SAS' tag line is The Power to Know©, But what makes SAS so powerful? Ask our users and they'll tell you -- it's because SAS allows them to answer questions which previously could not be answered. How does SAS do this? SAS built a 4th generation programming language which makes
I've been a SAS programmer for 26 years and counting. I started with the Display Management System (DMS) interface into SAS, which today is referred to as the window environment (and yes, I have used the command line interface as well, which is still available today). DMS consisted of three initial