Morning Girl

Web API, Windows, C#, .NET, Dynamics 365/CRM etc..

Azure にHadoopディストーションのHortonworksを構成してみる

検証用にSparkやHadoop・Hive・HDFS等の環境が一式ほしいなー、と思っていたんですが、何やらHortonworksが良いらしいというのをUSのメンバーに聞き、早速試し見てみました。

はじめローカルで環境を構成しようとしたんですが、あまりにも把握するべき情報が多すぎて、心がオレマシタ。

Hortonworksとは?

エンタープライズ企業向けビッグデータ処理のためのHadoopディストーションの一つとのこと。

参考記事

jp.hortonworks.com

分散ファイル管理フレームワークにはHDFS

リソース管理フレームワークにはYARN

DataAccessのためのフレームワークとして、Hadoop Mapreduce、Hive、Sparkが利用できて、しかもそれらを扱うためのToolsとしてZeppelin、

全体の管理用ツールとしてもAmbariがはいっている、まさにオールインワンなビッグデータ処理のためのディストリビューション。ありがたい。

Azureで、Hortonworks Sandboxを使い、Hadoop、Sparkを試してみよう

f:id:sugimomoto:20180602103923p:plain

しかし、あまりにもコンポーネントが多すぎて、何が何やら把握しきれないのも事実。

コンポーネントの説明は、以下のHortonworks チュートリアルの資料がわかりやすいです。

jp.hortonworks.com

必要なもの

Azureでの構成手順

  1. Azure Portlにログインし、「+リソースの追加」から「Hortonworks Sandbox」を選択

f:id:sugimomoto:20180602103114p:plain

  1. 以下のリソースで作成を実行します。

f:id:sugimomoto:20180602103155p:plain

  1. 基本設定の構成では、各種項目を任意の内容で入力します。認証の種類は今回パスワードを選択しました。場所は近いところがいいでしょう。

f:id:sugimomoto:20180602103611p:plain

  1. 仮想マシンのサイズは小さすぎると動かないらしいです。今回はHortonworksの方のQiita記事を参考に、「DS11_V2 Standard 」を選択しました。

f:id:sugimomoto:20180602104259p:plain

  1. オプション機能の構成はデフォルトで進めます。場合によっては、無駄な課金を防ぐために自動シャットダウンを付けるのがいいと思います。

f:id:sugimomoto:20180602104402p:plain

  1. 検証結果を確認の上、作成をクリックします。どうやらマイクロソフト MVPのサブスクリプションでは、マーケットプレイスの料金が別途かかるようですが、Hortonworks Sandboxそのものは無償なので問題はありません。

f:id:sugimomoto:20180602104936p:plain

  1. これで構成が完了しました。

f:id:sugimomoto:20180602115619p:plain

ネットワークの構成

  • 22 ssh
  • 6080 Ranger
  • 8080 Ambari
  • 8888 Dashboard
  • 9995 Zeppelin
  • 10016 SparkThriftServer

Portリストは以下から確認できます。私はSparkも最終的に使用したいので、Sparkポートを開けました。

Chapter 1. Configuring Ports - Hortonworks Data Platform

ちなみに、すごく引っかかったのですが、マニュアル上はSpark Thrift Server Portは10015がdefaultだよと記載されているものの、実際の構成後には10016がPortになっています。要注意。

Customizing the Spark Thrift Server Port - Hortonworks Data Platform

f:id:sugimomoto:20180602115730p:plain

以下のように構成できればOKです。

f:id:sugimomoto:20180602121012p:plain

Hortonworks Dashboardへのアクセス

VMのパブリックIPアドレス:8888」でアクセスできます。

f:id:sugimomoto:20180602121126p:plain

user / password: raj_ops / raj_ops でログイン

f:id:sugimomoto:20180602121259p:plain

Ambariにログインできました。

f:id:sugimomoto:20180602121327p:plain

あまりログインが早すぎるといろいろと起動中になってしまうので、要注意。

さて、次回実際にもう少し触っていきます。

【API Memo】MINIKURA、イントレプレナーに特化して、MNIKURA APIをベースとしたコンサルティング事業を提供開始

APIをベースとしたビジネスアプローチで面白いプレスリリースがありました。

f:id:sugimomoto:20180526155037p:plain

Minikura API を提供する寺田倉庫がイントレプレナー向けに、Minikura APIをベースとしたコンサルティング事業を開始したとのこと。

公式のプレスリリースはこちら。

www.terrada.co.jp

国内最大の物流ニュースサイト、ロジスティクス Todayでも取り上げられています。

寺田倉庫、ミニクラAPIで新規事業立ち上げ支援

Minikuraは今まで、20 社、30 サービスにシステムおよび機能をAPIを通じて、提供してきたとのこと。

代表的なサービスはスーツ販売のAOKI。ユーザーのサイズ・好みに合せた「スーツ・シャツ・ネクタイ」のセットを届けるサブスクリプションサービス「suitsbox」のコンサルティングを実施し、サービスの実現をサポートしているとのことです。

suitsbox.com

このプレスリリースのポイント

MinikuraはAPIが提供する要素を以下の3種類に分類した場合、ビジネスリソースを提供するAPIと捉えることができますが、

f:id:sugimomoto:20180526160624p:plain

そのビジネスリソースを既存のサービスに対して、APIを通じてどのように提供することが可能か? をコンサルティングベースで提供する、というのは面白い試みだと思います。

しかしながら、このアプローチそのものは、Microsoft Azureに代表されるようなクラウドサービス企業では、当たり前の試みかもしれません。

Microsoft でもAzure アプリ コンサルティングという形で、Azureのエンジニアが一対一でAzureの機能をどのように有効活用してもらうべきか? というサービスを提供しています。

azure.microsoft.com

契約書管理のクラウドサービス CloudSignでもパートナーアライアンス専門の担当者を据えるなど、以下に自社のサービスを他社サービス、他社ビジネスプロセスに取り込んでもらうべきか? という取り組みを強めていますので、API公開+ソフト面でのアプローチ・戦略は今後もっと重要なものになっていくものと思います。

Minikura のAPIについて

Minikura APIは仕様書こそ公開されていないようですが、以下のようにAPIの取り組みに関する情報が公開されています。

www.slideshare.net

雑誌日経BP社から販売されている「API革命」でも大きく取り上げられていますね。

Amazon CAPTCHA

ロジスティクス分野では日本でも先駆け的存在で、「LogiTech解放区」というロジスティクス分野のTechアプローチに関するコミュニティサイトも運営しているのが特徴的です。APIロジスティクスに関するレポートも興味深いのが多いので、おすすめです。

minikura-logitech.com

【API Memo】ParabolaはExcelで苦闘している人々を救う――簡単プログラミング・アプリが220万ドルを調達

Techcrunchで気になるニュースがありましたのでメモ。

jp.techcrunch.com

Parabolaという、クラウド上での簡単プログラミングアプリが220万ドル調達したとのことです。

Parabola公式サイトはこちら。

parabola.io

f:id:sugimomoto:20180523175957p:plain

ぱっと見IFTTTやMicrosoft Flowなどといった、クラウドサービスワークフローの一種かな、というのが初見の印象ですが、Parabola自身が想定しているユースケースはもうちょっと違う感じです。

Techcrunchでは以下のように紹介していて

Parabolaが想定しているのは財務や販売の専門家で、Excelのシートを数十枚開き、数百ステップのマクロを実行しなければならないような作業を日常行っているユーザーだ。Parabola上で作業をモデル化すれば、あとは表計算シートの仕様による細部の修正などに煩わされることなく、処理が実行できるという。

ExcelGoogle Spread Sheetのような表計算のデータを扱うのに長けたプログラミングアプリ、らしいです。

基本的には以下のように、入力元、出力先、そして変換処理過程を描いていくのですが

f:id:sugimomoto:20180523181454p:plain

変換用のModuleがとても多いです。(以下、Google日本語翻訳に通したものです。)

f:id:sugimomoto:20180523181022p:plain

ここから察するに、表計算ソフトのデータをベースとした簡易クラウドETL+ワークフローアプリケーションと言った方が馴染みやすいかなと個人的には感じました。

たぶんここのModuleの多さが、このParabolaの強みなのかなと感じます。あとUIが使いやすそう。

なお、データソースとして使用できるものは、現在以下の26種類。まだそんなに多くない印象ですが、APIの口があるので、いろんなアプリと繋ぐベースはある感じです。このあたりのAPIを通じたクラウドサービスコラボレーションはまだまだ広がりを見せますね。

f:id:sugimomoto:20180523180209p:plain

これからに期待なクラウドサービスでした。

【API Memo】エムティーアイ、常陽銀行と更新系APIの利用に関する契約を締結

銀行の更新系APIを使用したアプリに関するプレスリリースがあったのでメモ。

f:id:sugimomoto:20180523184654p:plain

エムティーアイが&PAY(アンドペイ)という決済・送金を可能にするスマートフォンアプリでの利用を想定し、常陽銀行と更新系APIの契約を締結したとのことです。

プレスリリースを見る限り、更新系APIは決済と送金に対応している模様。

記事はPR Timesで見つけました。

prtimes.jp

エムティーアイのプレスリリースはこちら。

www.mti.co.jp

常用銀行も以下のようなプレスリリースを公開中。

http://pdf.irpocket.com/C8333/bGi3/PM21/b51R.pdf

ちなみに、この更新APIを使用する&PAY(アンドペイ)に関しては、5月29日リリースなので、まだちょっと先です。アプリストアにもまだありません。

また、リリース当初も一部加盟店を対象として常陽銀行の従業員向けに提供するだけなので、実際に一般ユーザーが使えるようになるのはまだまだ先のようです。

ただ、プレスリリースには2020年までに国内300の金融機関とAPI連携を進めたいと書かれていますので、今後どれだけ多くの金融機関を巻き込めるかが、気になるプレスリリースですね。

API仕様はどうなっているのか?

こういうプレスリリースを見る度に、API仕様書を探すんですが、残念ながら常陽銀行は見つからず。

他の銀行をざっと探してみると、三菱UFJ銀行はかなりちゃんとしたAPIポータルを展開していますね。認証ヘッダーに --header 'x-ibm-client-id: REPLACE_THIS_KEY' とIBMの文字列が含まれているので、たぶんIBM API Managementを使って生成しているのでしょう。

developer.portal.bk.mufg.jp

三井住友銀行は、とても懐かしい感じのPDF仕様書です。残念ながら私はあまり読む気になれません。

http://www.smbc.co.jp/hojin/eb/web21/api/resources/pdf/web21_api_interface.pdf

常陽銀行も是非APIドキュメントを公開してほしいなと思うばかりです。

【API Memo】Sansan API 情報まとめ

様々なクラウドサービスのAPIについて触れて回るまとめ記事。

今回は名刺管理クラウドサービスのSansanです。

Sansan は最近パブリックなAPI ポータルを公開したので、より親しみやすくなったのではないかと思います。

docs.ap.sansan.com

f:id:sugimomoto:20180518190717p:plain

サービス・API 概要

公式サイトは以下から。

jp.sansan.com

APIに関する概要は以下からどうぞ。

API Check Point

API Check Point
サービスページ https://jp.sansan.com/
サービス提供形態(SaaS/PaaS/OnPremises) SaaS
APIエンドポイント https://api.sansan.com/v1.2
API ポータル / ドキュメント https://docs.ap.sansan.com/ja/openapi
トライアル有無 なし
SDK / Driver なし
サービスカテゴリ 名刺管理
APIプロバイダ Sansan
APIフォーラム/掲示 なし
SNS URL https://twitter.com/SansanJapan
認証モデル Token方式
利用規約のURL https://agreement.sansan.com/ja/rule/api.html
範囲(Public / Internal / Private) Public
API アーキテクチャ REST
サポートされているリクエスト形式 JSON, URI Query String / Read Only
サポートされている応答形式 JSON

所感

Sansan APIは現在以下の7種類のエンドポイントをサポートしています。

  • 名刺Set取得(期間指定)
  • 名刺Set取得(条件指定)
  • 名刺取得
  • 名刺画像取得
  • 名刺のタグSet取得
  • 人物取得
  • タグSet取得

注意したいのはすべてのエンドポイントがReadOnlyである点。

名刺画像を元に調整が加えられたデータであることを考えれば、致し方無い気もしますが、例えばAPIを通じて外部から画像をPostして、名刺データにするなどの使い方はできないので要注意です。

個人的に一番のユースケースとして考えられるのは、やはりCRMマーケティングなど、他のクラウドサービスへのデータ連携でしょうか。名刺という顧客の一次情報はどこのクラウドサービスも欲しいですよね。

認証方式は、管理画面からユーザー単位で発行できるAPI Keyを用いたToken方式です。

公式に展開している他社サービスとの連携はSalesforceとZapiar

jp-help.sansan.com

Salesforceは、Sansanの内部的に自動連携が組み込まれているので、使いやすい印象です。

Salesforce連携とは / ご利用可能な Salesforce エディションについて – Sansanサポートセンター

参考記事

Sansan APIをドライバー化:各種ツール・IDEから接続してみた

【API Memo】freeeがAPIエコノミー形成に向け「オープンプラットフォーム戦略」発表

freeeがAPIエコノミーで攻めていますね。

APIエコノミー形成を目指す新戦略の発表と共に、開発者向けポータルサイトのオープン、API連携の専任チームを発足したとのことです。

f:id:sugimomoto:20180518182843p:plain

公式プレスリリースはこちら。

corp.freee.co.jp

かなりいろんなメディアで取り上げられていますね。

www.nikkei.com

jp.techcrunch.com

なぜ今このような取り組みをfreeeが始めたのか?

なぜ今このような取り組みをfreeeが始めたのか? という点については以下の佐々木大輔代表取締役インタビューコメントからよくわかります。

ascii.jp

>「世界に目を向けると、日本のSaaSだけはほとんどAPIを公開していません。グローバルの流れを見ても、APIの公開まで行なっている初めてクラウドサービスなのではないかなと思います」(佐々木氏)

また、“超高速たこつぼ化”というキーワードはまさにそのとおりで、クラウドサービスを提供している企業は、そのクラウドサービスを導入した企業の中に存在している、多種多様な他社サービスとの共存を目指していかなければ、もはや成り立たないことは自明であるとの理解だと思います。

ただ、コメントの通り、世界に目を向ければそれがもはや当たり前、クラウドサービスの公開=API公開と同意義で、そのエコシステムをどのように作っていくのか? という戦略がどんどん体系化されている状況を見ると、これが大きなニュースとして取り上げられてしまうのは、少し悲しくも感じます。

デベロッパーポータル

デベロッパーポータルはこちら。

freee Developers Community | for freee Developers

今の所APIは「会計freee」と「人事労務freee」が提供されているようです。

現在freeeのサービスは以下の6種類なので 今後も拡張されていく想定なのかなと思います。

デベロッパーポータルはそれぞれのAPIドキュメントだけでなく、スタートガイドとTIPSがあるのが、いいなぁと感じました。

あと、地味にコミュニティもありがたいなぁと思います。MicrosoftSalesforceレベルなら、Stack Overflowやteratailなどでも情報が得られそうですが。

ただ、個人的にはログインしなくてもコミュイニティは見れるようにしてほしいなと思います。検索にひっかからなくなってしまうし、、、。敷居があがってしまう、、、。投稿するのにログインは必要でいいと思いますが。

Tipsはまだ少ないですが、ユースケースを明示化しているのがいいなぁと。

SFA、CRM、販売管理システムから会計freeeへの連携 | freee Developers Community

あと、やはり注目すべきなのはAPI連携専任のチームを置いたところ。こういったプレスリリースは日本ではかなり珍しいですね。

API連携の専任チームを発足 API連携の専任チーム、およびテクニカルサポートの設置を開始します。技術的な問い合わせ以外にも、パートナー企業向けの説明会など、APIを通じたコミュニティ形成にも注力してまいります。

今後の展開にも期待のプレスリリースでした。

【API Memo】MySQLやPostgreSQLへGraphQLインターフェースを提供するPrismaが$4.5Mのシードを獲得

MySQLPostgreSQLからGraphQLインターフェイスを提供するPrismaというサービスが各エンジェル投資家などから、$4.5Mのシードを獲得したとのこと。 jp.techcrunch.com

この記事で初めてPrismaというプロダクトをしりました。

Prismaの公式サイトは以下から。

f:id:sugimomoto:20180519154818p:plain

www.prisma.io

Prismaの公式プレスリリースはこちら。

www.prisma.io

GraphQLといえば、Facebookが主導となって進めている、クライアントサイドとの親和性が高いWeb APIの新しい仕様ですが、そのGraphQLを専門としてビジネスをしているのがとても面白いですね。

製品のGraphQLインターフェース生成機能アプローチとしては2種類

f:id:sugimomoto:20180519165054p:plain

さらにPrismaの大きな特徴としては、対応データベースの種類ですね。

現在の対応データベースはMySQLPostgreSQLですが、今後MongoやDynamo、Cassandraにも対応するらしいです。

(個人的に、まだちゃんとリリースされているものがMySQLPostgreSQLだけにもかかわらず、あたかも多様なデータベースに接続できるよ!と謳っているのが面白い。)

なお、Prismaのベース製品はオープンソースですが、Prisma EnterpriseとPrisma Cloudという製品が有料で提供されているようです。

現状では、従来からのオープンソース製品に加えて、セキュリティを強化したPrisma Enterprise(コンプライアンス、アクセスコントロール、オーディットロギングなど)と、コラボレーションでデータベース管理を容易にするPrisma Cloudがある。

日本でもいくつか触れている記事がありました。

www.moongift.jp

www.appp.la

GraphQLはFacbeookとGithub、日本ではオープンAPIというよりもアプリ内部のAPIとしての利用がぽつぽつと始まってきた印象ですが、こういうプロジェクトが脚光を浴びてくると、今後にいろいろと期待が出てきますね。

一回触ってみないとなー。