Rancher Meetup #06 in Osakaでデータ分析基盤とk8s・Rancher絡めてLTしました
活動拠点は京都なのですが、大阪のコアメンバ不在もあって、神戸方面のメンバと一緒になって大阪で開催しました。
一緒にやってくれる人募集してます。
最初は、 去年のアドカレネタを膨らまして発表する予定だったんですが、どうしても気になってしまって結局、直前で変更。
発表スライドは以下です。
www.slideshare.net
ホントは動かしたりもしたかったのですが、調査するのに時間がかかって、掘っても掘っても色々出てくる。。。
ただ、自分の仕事もそうだけど、興味のある分野もあってどんどん調べていくのでまとまらないこと。。。
データエンジニア方面からのCloudNative方面へのフォローの何かの足しになれば良いかなぁ思います。
後、同じ境遇の人とつながって色々話がしたい!
他の方はこちら。
www.slideshare.net speakerdeck.com
京都もやるのでお楽しみ?に。
HiveとImpalaのネストしたカラムのpushdown(行や列方向のフィルタ)に関するまとめ
- 結論
- きっかけ
- Pushdownについて
- HiveでのネストしたカラムのPushdwonについて ~Complex型(Struct型)の要素のPushdown~
- ImpalaでのネストしたカラムのPushdwonについて ~Complex型(Struct型)の要素のPushdown~
- まとめ
結論
2019/01/07時点で Hive または Impala において、ネストしたカラムに対するpushdownは対応が済んでいない。
きっかけ
CDH5.14にて、Hiveのクエリが激遅いって事で、実行計画見て、これpushdown出来てないんじゃね?って事で調べる事にした。
複雑型に対するSELECT句(projection)のpushdownはまだ未対応ですね(なのでまるととってパースしてる)https://t.co/tUGEJpdwY7
— あさぬー (@hayanige) December 13, 2018
WHERE句(predicate)のpushdownは最近できるようになったかも・・・?https://t.co/FHMgBZby9H
っと、ありがたい事に回答頂いていたのですが、この辺きっかけで自分でも調べてみた。
Pushdownについて
HDFS上からSQLライクにデータを取り出すには、HiveやImpalaを使うのですが(他にも PrestoとかDrillとかもあるけど)、
でかいテーブルでフルスキャンするとデータ量が半端なくなるので、特定のカラムだけとか、特定の行だけと、フィルタして取り出します。
その辺りのフィルタの事をPushdownと言います。
Pushdownについては、以下のスライド及びBlogが参考になります。
また、Hive及びImpalaには、1カラムに複数の値を保持できる Complex型と呼ばれる型が存在します。
そして、Complex型には、Array、Struct、Mapがあります。
cf. Hive - Complex Types
cf. Impala - Complex Types
今回は、PostgreSQLやMySQLで言うところのJSON型の様に扱える Struct型に絞った話。 Struct型を使うことで、アプリログなど後から要素の数を柔軟に増減出来るようになります。さらに、Struct型のカラムにさらにStruct型を入れ込む事も出来きます。
Struct型のメリットとしては、「複数のテーブルを結合してまとめておいて、それをStruct型のカラムとしておくことで、結合コストを減らす事が出来る」という事。
ただし、その場合、pushdownに対応していないと、不要なカラムまでStrcut型に含めるのでデータが冗長になる、つまり、データサイズが増えてパースする時間が生じる(結合しなくても良いカラムまで含むので)。
なので、クエリ内で使える事とpushdown出来るかは別の話。 select句やWhere句・Group by句で、Struct型の要素を指定してクエリを書いた場合、その要素だけを取り出せている(pushdown出来ている)と期待しますが、実は違います。
クエリの実行計画は大事。必ず見て欲しいです。
クエリの頭に EXPLAIN
または EXPLAIN EXTENDED
を付けると確認出来ます。
Projection Pushdown または Predicate Pushdown に未対応な場合、select句(Projection) または where句(Predicate)にて、ネストしたカラムを1個、2個と要素を増やしても取得するデータサイズが変わっていない事が分かります。
それでは前置き長くなったので本題。
以下、前提として、2019/01/07時点のCDHにおけるHiveまたはImpalaを調査した結果に基づいています。
HiveでのネストしたカラムのPushdwonについて ~Complex型(Struct型)の要素のPushdown~
前提: Hiveで対応している 列指向なデータフォーマット ORCかParquet を対象にしています
結論: ネストしたカラム Complex型に対する pushdownはまだ未対応(なのでまるととってパースしてる)
実際にはこの事は、HiveのJIRAにも以下の様に ORCは HIVE-19103
、 Parquetは HIVE-14826
から現状の状況が確認出来ます。
[HIVE-19103] Nested structure Projection Push Down in Hive with ORC - ASF JIRA
[HIVE-14826] Support vectorization for Parquet - ASF JIRA
ただし、Where句(predicate)なら、今後、新しいVer.ので行けるようになるかも。
[ORC-323] Predicate push down for nested fields - ASF JIRA
ImpalaでのネストしたカラムのPushdwonについて ~Complex型(Struct型)の要素のPushdown~
前提: Impalaで対応している 列指向なデータフォーマット ORCかParquet を対象にしています
結論: ネストしたカラム Complex型に対する pushdownはまだ未対応(なのでまるととってパースしてる)
Impalaの公式ドキュメントには、Complex型に対する記載が以下のようにあります。
Complex Types (Impala 2.3 or higher only)
Impalaについては、基本的にParquetによる対応は進んでいますが、ORCについてはまだまだな状況です。
IMPALA-5717
にて対応はしたように見えますが、同Issueのコメントを見ると以下のようにまだまだ課題が残っています。
[IMPALA-5717] Support for ORC format files - ASF JIRA
更に、以下の IMPALA-6503
の通り、 Complex型への対応がまだ残っているようです。
[IMPALA-6503] Support reading complex types from ORC format files - ASF JIRA
まとめ
CDHの場合、パッチが適用されるので実際の本家のバージョンと対応状況が異なるかもです。
最新のCDH6系でHive及びImpalaで実行計画を試してみた訳ではないので、「いやいや対応してるよ」というものがあれば教えてください。
以上です。
DockerライクなUXでCloud Nativeな体験が出来るらしいRioを試してみる
遅れてしまいましたが、この記事は、 MicroAd Advent Calendar 2018 の16日目の記事です。
はじめに
本当は、 Rancher Labsの RKE を試す記事にしようかなぁと思っていたが、すでに他社の別の人 1 がやっているのを観測してしまったので、どうせなら、 同じく気になっていた Rio に変更しました。
とは言え、
febc-yamamoto.hatenablog.jp
上記の記事とも被りますが、そんな事を言いだしたら永久に何も出来ないので、まずは、 「個人的な興味として」 触りたい(大事)。
って事で続きます。
Rioって何?
Rancher Labsの新しい開発プロジェクトで、開発には、 Rancher LabsのChief Architect & Co-founder の Darren Shepherd(@ibuildthecloud)さん が関わっています。
Rioのコンセプトは
- Simple, fun, end-to-end container experience
- Cloud Native Container Distribution
Rio is a user-oriented end-to-end container solution with a focus on keeping containers simple and combating the current trend of complexity. It's kept fun and simple though it's familiar and opinionated user experience. Additionally, Rio is a "Cloud Native Container Distribution" meaning it includes built-in Cloud Native technologies such as Kubernetes, Istio, Containerd, etc. so that the user need not be an expert in installing, using, and maintaining these systems.
という事で、利用者が使いやすく、シンプルで楽しいCloud Nativeなコンテナソリューションだそうで、
今後は、ストレージに Rancher Labsの Longhorn も予定しているとの事で気になります。
また、Rioのコマンドは、昔のdockerコマンドのようなもの2が多く見受けられ、取っつきやすい感じはあります。
ただ、まだ、 Early Preview
なので、未実装なところも多く残っています。
コンセプト
Rioのコンセプトは Concepts にある通り、 Service
、Stack
、Project
で構成されています。
まず、個々のコンテナを組み合わせて1つのService
を構成し、
その複数をまとめたStack
があります。Service
はStack
が異なれば名前が被ってもOK。
また、Stack
単位にアクセス出来る・出来ないを制御するのがProject
(最初はWorkspace
と呼んでいました)となります。
例えば、下図の様な使い方が考えられます。
Service
やStack
など端々に、Rancher v1系の面影を感じますね。
実際にお試ししてみる
インストールには、スタンドアローンとk8s上で使う、2つモードがありますが、今回は、スタンドアローンを選択します。
実行環境は、GCPを利用し、以下の構成で行いました。
GCEでインスタンスの用意
GCE3のインスタンスを「vCPU x 4、メモリ 15 GB」のスペックで用意。 OSは「Ubuntu 18.04 LTS」
※お試しなので、お安く上げるために、「可用性ポリシー」の項目を「プリエンプティブ ON」にします。
これで、約$0.044/hour(us-east1)となります(お小遣い制の私にも優しい)。
Rioのインストール
Releases · rancher/rio より、実行ファイルをダウンロードして、展開し、PATHの通ったところに展開したものをコピー
# Rioをダウンロード curl -L -o rio.tar.gz https://github.com/rancher/rio/releases/download/v0.0.3/rio-v0.0.3-linux-amd64.tar.gz # 展開 tar xvf rio.tar.gz # PATHの通った場所にコピー sudo cp rio-v0.0.3-linux-amd64/rio /usr/local/bin/
Rio Serverの起動
yassan@rio01:~$ sudo rio server INFO[0000] Starting Rio v0.0.3 INFO[0006] Creating CRD gateways.networking.istio.io INFO[0006] Creating CRD virtualservices.networking.istio.io INFO[0006] Waiting for CRD virtualservices.networking.istio.io to become available INFO[0007] Done waiting for CRD virtualservices.networking.istio.io to become available INFO[0007] Waiting for CRD gateways.networking.istio.io to become available INFO[0007] Done waiting for CRD gateways.networking.istio.io to become available INFO[0007] Creating CRD listenconfigs.space.cattle.io INFO[0007] Creating CRD services.rio.cattle.io INFO[0007] Creating CRD configs.rio.cattle.io INFO[0007] Waiting for CRD listenconfigs.space.cattle.io to become available INFO[0007] Creating CRD routesets.rio.cattle.io INFO[0007] Creating CRD volumes.rio.cattle.io INFO[0007] Creating CRD stacks.rio.cattle.io INFO[0008] Done waiting for CRD listenconfigs.space.cattle.io to become available INFO[0008] Listening on :7443 INFO[0008] Listening on :7080 INFO[0008] Client token is available at /var/lib/rancher/rio/server/client-token INFO[0008] Node token is available at /var/lib/rancher/rio/server/node-token INFO[0008] To use CLI: rio login -s https://XXXX:7443 -t XXXX::admin:XXXX INFO[0008] To join node to cluster: rio agent -s https://XXXX:7443 -t XXXX::node:XXXX INFO[0009] Agent starting, logging to /var/lib/rancher/rio/agent/agent.log
これで起動。
起動ログに http: TLS handshake error from 127.0.0.1:44334: remote error: tls: bad certificate
なんて出てますが、そっ閉じ。。。
Rio Serverに接続
今回は、スタンドアローンモードで実行するので、Agentのインストールはせずに、直接、起動中のServerへ接続します。 まずは、Serverへ接続しないと何もコマンドを受け付けません(rootでは別)。
接続の方法は、上記のRio Serverへアクセスした際に出ていたログ
: INFO[0008] Node token is available at /var/lib/rancher/rio/server/node-token INFO[0008] To use CLI: rio login -s https://XXXX:7443 -t XXXX::admin:XXXX ←←←← ※コレ! INFO[0008] To join node to cluster: rio agent -s https://XXXX:7443 -t XXXX::node:XXXX :
rio login -s https://XXXX:7443 -t XXXX::admin:XXXX
の部分を使います。
別のターミナルを開いて以下を実行。
$ rio login -s https://XXXX:7443 -t XXXX::admin:XXXX INFO[0000] Log in successful :
カナリアリリースを試してみる
RioのREADMEにある Service Mesh をそのまま試してみます。 デプロイするアプリは、curlで叩くとHollo world返してくれる ibuildthecloud/demo を利用しています。
v1のdemoを3つのコンテナでScaleした状態にデプロイします。
yassan@rio01:~$ rio run -p 80/http --name test/svc --scale=3 ibuildthecloud/demo:v1 test-124a4837:svc
状態の確認
yassan@rio01:~$ rio ps NAME IMAGE CREATED SCALE STATE ENDPOINT DETAIL test/svc ibuildthecloud/demo:v1 8 seconds ago (3/0/0)/3 pending http://svc.test.g50yg5.lb.rancher.cloud
と直後ではなっていますが、しばらくすると以下のようになります。
yassan@rio01:~$ rio ps NAME IMAGE CREATED SCALE STATE ENDPOINT DETAIL test/svc ibuildthecloud/demo:v1 About a minute ago 3 active http://svc.test.g50yg5.lb.rancher.cloud
ENDPOINTにcurlして状態を見てみます。
yassan@rio01:~$ curl http://svc.test.g50yg5.lb.rancher.cloud Hello World
次にv3でデプロイしてみます。
yassan@rio01:~$ rio stage --image=ibuildthecloud/demo:v3 test/svc:v3 test-124a4837:svc # Serviceの状態を確認(v1とv3の両方が存在しています) yassan@rio01:~$ rio ps NAME IMAGE CREATED SCALE STATE ENDPOINT DETAIL test/svc ibuildthecloud/demo:v1 2 minutes ago 3 active http://svc.test.g50yg5.lb.rancher.cloud test/svc:v3 ibuildthecloud/demo:v3 2 minutes ago 3 active http://svc-v3.test.g50yg5.lb.rancher.cloud
# Serviceの設定を確認 yassan@rio01:~$ rio export test services: svc: image: ibuildthecloud/demo:v1 ports: - 80/http revisions: v3: image: ibuildthecloud/demo:v3 scale: 3 scale: 3
# v3を確認 yassan@rio01:~$ curl http://svc-v3.test.g50yg5.lb.rancher.cloud Hello World v3
では、準備が出来たところで、カナリア試します。 v1とv3を半々にしてみますます。
yassan@rio01:~$ rio weight test/svc:v3=50% test-124a4837:svc
実際にcurlして確認してみます。
yassan@rio01:~$ curl http://svc.test.g50yg5.lb.rancher.cloud Hello World yassan@rio01:~$ curl http://svc.test.g50yg5.lb.rancher.cloud Hello World v3 yassan@rio01:~$ curl http://svc.test.g50yg5.lb.rancher.cloud Hello World yassan@rio01:~$ curl http://svc.test.g50yg5.lb.rancher.cloud Hello World yassan@rio01:~$ curl http://svc.test.g50yg5.lb.rancher.cloud Hello World v3
まぁおおよそ、半々出てますね!
では、v3を完全に反映させます。
yassan@rio01:~$ rio promote test/svc:v3 test-124a4837:svc # Serviceの状態の確認(v3のENDPOINTがv1のときのものに変わってますね) yassan@rio01:~$ rio ps NAME IMAGE CREATED SCALE STATE ENDPOINT DETAIL test/svc ibuildthecloud/demo:v3 5 minutes ago 3 active http://svc.test.g50yg5.lb.rancher.cloud
では、curlでも確認してみます。
yassan@rio01:~$ curl http://svc.test.g50yg5.lb.rancher.cloud Hello World v3 yassan@rio01:~$ curl http://svc.test.g50yg5.lb.rancher.cloud Hello World v3 yassan@rio01:~$ curl http://svc.test.g50yg5.lb.rancher.cloud Hello World v3
ちゃんと反映出来ています。
如何でしたでしょうか。簡単なコマンドで実行が可能になっています。
本当なら、上図に描いたような構成を作ってみて、アクセス制御などもお試ししたいところですが、今回はここまで。
最後に
Rioは如何でしたでしょうか?
実は、Rio自体は内部にk8sを利用しています4
また、rio/vendor.confからも分かるように、k8s以外にも様々なものを内包しており、単体でここまで出来るのは面白い試みだと思います。
まだまだ、実装途中ではありますが、今後が楽しみです。
以上、16日目の記事でした。
CloudGarageを使ってお手軽にRedmineのModern UX化プロジェクト「Project Opal」を試してみる
この記事は
#CloudGarage Advent Calendar 2018 - Adventar の 9日目 及び
Redmine Advent Calendar 2018 の 10日目
の記事です!
Redmine大阪 という、Redmine勉強会でコアスタッフをしている やっさん🍶(@yassan168) です。
また、NHNテコラス株式会社が提供する定額型パブリッククラウド CloudGarage で、 開発者支援プログラム(Dev Assist Program) を受けています。
DAPは、無償で、メモリ:1GB / CPU:1コア / SSD:50GBのインスタンスを3個利用出来るありがたい制度になっています。
一見、ちょっと足りないかなぁと思いますが、DiskがSSDでDiskアクセスも速く、ネットワークもとても速くパッケージのupdateもあっという間なので十分に使えます(とは言え、K8sなどは厳しいですが。。)
なので、簡単な検証や小規模なサイトならこれで十分まかなえるのでとてもありがたいです。
前置きはこの辺にして、CloudGarageを使って、RedmineのUXをModern化しようとするProjectである「Project Opal」をお試ししてみます。
実行環境
CloudGarageのインスタンス
インスタン上にdocker-compose使って起動
- 利用しているdocker-imageは sameersbn/redmine - Docker Hub 及び sameersbn/postgresql - Docker Hub となります。 利用方法は、以下の記事が参考になります yassan.hatenablog.jp
project-opalのthemeは、 redmine-cp/project-opal からCSSを生成したものを上記のDockerから参照して利用
Opalのテーマの用意
現状、そのままでは利用できません。 テーマをcloneして、CSSを生成する必要があります。
色やフォントの設定元となる stylesheets/global/#config-map.sass
を必要に応じて変更後、 stylesheets/application.sass
からCSSを生成する必要があります。
SASS→CSSの生成は、 説明にあった通り、 Koala を使いました。
KoalaをDLってGUIを起動後、cloneしたproject-opalのディレクトリをKoalaへD&DすればOK。
その後、 stylesheets/application.sass
を選択して、コンパイルすると、CSSが生成されます。
また、Koalaを利用するとディレクトリのトップに koala-config.json
を生成するので、 下図のように、 dest
にパスを指定するとそこに生成したCSSを生成します。
そこに、 favicon
や fonts
、 images
をコピーし、そのフォルダごと、 Redmineのthemeディレクトリに配置すればOK。
Project Opal について
@m4xiJo さんが立ち上げ、有志で構成される Redmineの外観のモダン化を目的としたプロジェクトで、フロントエンドの機能を用いて拡張しやすく、FlatでCleanな外観にする事をゴールにしています。
主に、 Discordの Redmineサーバ で議論されています。
今回、このProjectに参加することになったので紹介します(とは言え、フロントエンドはからっきしなのですが)。
まだまだなところはありますが、これからどんどんブラッシュアップしていくと思います!
また、参加してくれる人を募集しているので、 Discordの Redmineサーバ までよろしくお願いします。
特徴
- トップバーの固定に変更
- ナビゲーションタブをSticky Navigationに変更 → How To Create a Sticky Navbar
- 検索バーをSticky Navbarの用に張り付きするよう変更
- SideBarをSticky Navbarの用に張り付きするよう変更
- Day mode と Night modeの切り替えボタンの導入
- 外部リンクの通知
- 外部リンクを開く場合に、警告のポップアップを出す
- 絵文字のサポートと(試験的に)クイックサーチを追加
- トップバーにクイック検索を配置
上記を踏まえて、詳細を以下に挙げていきます。
Sticky Navigationへ変更
twitterなどにもありますが、見たほうが早いです。
Project Opalのテーマの場合、スクロールするとトップバーとナビゲーションタブ、サイドバーが消えずに残っている事が分かります。
これは、チケット一覧だけで無くすべてのUIで同様の動きします。
なので、チケットをスクロールさせた後に、簡単に機能の切り替えが可能なのでとても便利です。
また、トップバー下にあったクイックサーチがトップバーに移管しているので、どれだけチケットスクロールしてもすぐに検索が可能です。
現行のテーマ
Project Opal
外部リンクへの移動
下のスクリーンキャストから分かるように、外部リンクを踏むと警告のポップアップが出ます。 ただし、現状、jsに直書きになってるので、i18n対応が出来ていません。
サイドバーの表示切り替え
Hide Sidebar - Plugins - Redmine で実装しているこの機能が、テーマ側で実現しています。
絵文字の導入
こちらは、まだまだ、未完成な点が多いですが、チケットの作成などのタイミングで、Emojiに対応しようとしているようです。
最後に
まだまだ、荒削りですが機能としては、今まで欲しかったStickyなUIはとても便利に感じました。 これからが楽しみです。
また、今回試した環境は、 yassan/docker-project-opal に置いているので、実際に試したい方はどうぞ。
今年飲んで印象に残っている日本酒を挙げていく〜2018年編〜
日本酒 Advent Calendar 2018 - Adventar の10本目(10日目)の記事です。
nowinowi822さん に続き、出来るなら酔わずに美味しい日本酒だけを無限に飲みたい id:yassan0627 でお送りします。
- 陸奥八仙 新春祝酒 純米吟醸@八戸酒造
- 不動 一度火入れ 無炭素濾過 雄町 純米吟醸@鍋店
- 道灌 吟吹雪 特別純米生原酒 無ろ過直汲み@太田酒造
- 遊穂 花さかゆうほ 純米吟醸 生原酒うすにごり@御祖酒造(みおや)
- 純米にごり酒 さくらいろ@鮎正宗酒造
上の画像は、今年飲んだ日本酒の一部です。 今年もやっぱり振り返りたくなる。
今年の3月までは単身赴任中でお酒のシーズンになると「日本の美味しい井戸水を頂く会」を同僚数人でやっていたのは良い思い出。
去年は42種類でしたが、体重の増加が著しいので制限掛けた結果、30種類程まで減ってます。 とはいえ、撮っていない酒やリピートした酒は除外しているのでこれよりはもっとあるので酒量が減ってるかは謎。
それでは挙げていきます。
陸奥八仙 新春祝酒 純米吟醸@八戸酒造
まずは、 陸奥八仙 新春祝酒 純米吟醸 から。
今年、1番に飲んだお祝い用に買ったお酒。 陸奥八仙らしいお酒なんだけど、適度な甘さの中に良いキレがあってあっという間になくなった。とても美味しい。
不動 一度火入れ 無炭素濾過 雄町 純米吟醸@鍋店
続いて 不動 一度火入れ 無炭素濾過 雄町 純米吟醸 。
備前雄町という有名な酒米で造ったお酒。 ちゃんとパンチもあるけど、香りもよく、とても美味しい。
道灌 吟吹雪 特別純米生原酒 無ろ過直汲み@太田酒造
地元の酒米 吟吹雪 で造ったお酒。 吟醸香がとても良い。味もとてもよくお米の味もちゃんとあってとにかく美味い。
遊穂 花さかゆうほ 純米吟醸 生原酒うすにごり@御祖酒造(みおや)
春のお酒。うすにごり特有のシュワッと感がとても心地よいです。 甘すぎずフルーティーでとても美味しい。
純米にごり酒 さくらいろ@鮎正宗酒造
最後は、ちょっと変わった 純米にごり酒 さくらいろ 。
桜色のにごり酒で張る限定の春のお酒。 赤色清酒酵母というピンク色の酵母で着色料を使ったわけではない。 甘口ではあるもののスッと消えるのでなかなか美味しい。辛口苦手な女性にはぴったりなお酒。
来年も美味しい酒を飲んで過ごしたいものです。 とは言え、まだだま、今年もいろいろ飲みますがw
以上、今年飲んで印象に残っている日本酒を挙げていく でした。
12本目は、 sapi_kawaharaさん です!
単身赴任が終了して京都に帰ることになりました
東京での単身赴任生活が3月終了し、4月から家族のいる京都にある事業部へ戻ることになりました。
ちょうど丸3年間でしたが、その間、自分だけの時間を沢山使えるチート状態で、その期間を自分の成長にひたすら注いで来ました。
右も左も分からない状態から、 吉祥寺.pm で外部の勉強会の楽しさを知って、色々、関連する勉強会やTech系カンファレンスに参加してきました。
やはり、東京は様々なTech系イベントがあり、キャッチアップしていくには非常に良い環境でした。
最初は、なんとかデータ基盤を立て直せないものかと情報収集の為に、データ分析についてなんにも知らない状態で dots. で行われた ビッグデータオールスターズ では、知らない単語だらけで単語だけメモってちょっとでも理解出来るよう必死に聴いていたのを思い出しました(-_-;)
大きなイベントでは、Developers Summit や Hadoop / Spark Conference Japan 2016 や PGConf.ASIA 2017 や は楽しかったし、デブサミで当たった de:code 2017とか、その他にも YAP(achimon)C::Asia Hachioji 2016mid など、どれもとても楽しかった。
勉強会は、データ分析やHadoopエコシステム関連だけでなく、PerlやPython、Go、Scala、RDB、MongoDB、Docker、k8s、Rancher、Redmine、redash、Product Management(or Project Management)、Azure、GCP、など様々参加してきました。
色々なイベントで、様々な方と直接お話出来る機会もあり、そこから、新しいつながりが増えたりと本当に良い出会いに恵まれた3年間でした。
キャッチーな肩書な名刺も使えなくなるのでそこは勿体無いなぁと。あれは便利だった。
そのまま、東京に家族を呼んで住む事も考えましたが、家族としては妻の実家があり子ども達のサポートも可能だったり、生活のし易さから京都に戻る事を優先しました。
4月からは引き続き、データ分析に関わる仕事をやっていく事になります。
今後も、 Rancher JP では大阪を中心に活動して、ゆくゆくは京都でもやりたいなぁと考えていて、 Redmineは、 redmine.tokyo から、 Redmine大阪 の方でお手伝いして行こうかと考えています。
後、全然、動けていませんが、 吉祥寺.pm の様な雰囲気で、 kyoto.pmをやってみたいなぁと。
ただ、すでに、 kyotopm's blog / Kyoto Perl Mongers として存在していて、今は殆ど活動していないみたいですが、参加メンバの面々が豪華なので、どうにか再開出来ないかなぁと考えてますが、どうしたら良いものか🤔
今年は、4月から英会話始めてみたり、これまで以上に色々な事にチャレンジして行くので、引き続き、よろしくお願いします。
Kichijojipm-mini #012 でLTしてきました
日が空いてしまいましたが、3/14 に Kichijojipm-mini #012 でLTしてきました。
吉祥寺.pm は、Perlのイベントではありますが、「吉祥寺.pm」は概念なので、割と何でもありのイベントです。
雰囲気が温かいので初心者でも快く受け入れてくれる懐の深い場所です。
つまり、*.pmとは、「PostgreSQLのP」でも良いし、「MetricsのM」でも、「ManagementのM」良いのです。
Perl以外にも、GoやScalaの話なんて事もあります。
なので、話のネタもバリエーションだけでなく、面白いものから興味深いものまで幅が広くとても楽しいイベントです。
kichijojipm.connpass.com
ハッシュタグは、 #kichijojipm
です。
「吉祥寺.pm」は、レギュラーイベントの「Kichijoji.pm #000」と今回参加した「Kichijojipm-mini #000」の2つあり、 miniの方はこじんまりと少数でワイワイやる感じです。
今回のテーマは「設計」で、私は、特殊なインフラ環境下での自分のETLやデータ分析で扱うスクリプトなどに関する設計に関する話をしました。
続きを読む