2024/6/25 Kyoto Tech Talk #5 #kyototechtalk
https://gyazo.com/906da3a8703a43f8e1f93b713537b1b4
【オフライン開催】Kyoto Tech Talk #5 - connpass
イベント驅動とドメインの完全性を意識したアーキテクチャ設計
資料 : ?
イベント駆動とドメインモデルの完全性を意識したアーキテクチャ設計
出前館
機能 domain 每の microservice
の內のクーポンサービス
component
Api : 同期處理
Batch
Subscriber : Kafka を介して非同期處理
同じ DB を讀み書きしてる→component 閒で不整合
どうする
monorepo
domain model
集約 (aggregation)
例 : Coupon
constructor で validation
きちっと domain 驅動設計 (DDD)をやったと云ふ話だなne-sachirou.icon
deadlockとlockwait timeoutに立ち向かい、外部キー制約削除にいたった話
資料 : ?
大量の bulk 處理
1 つの DB transaction 內で行ふ
deadlock が發生し易い
log から調査する
可觀測性 (o11y) の準備が大事
外部 key 制約
參照元 table を更新する時に、參照先 table の column に共有 lock が掛けられる
外部 key 制約を削除した
代はりに application の code 上 (ActiveRecord の association) で表現する
Active Record の関連付け - Railsガイド
OCR開發の續け方
資料 : ?
Sansan Innovation Lab
OCR + 人
GEES (2013〜)
NineOCR
新しい OCR
名刺に特化
課題 : 不確實性の伴ふ長期開發にどう向き合ふか
段階的に成果を出す
期待效果の高いところからやる
E-mail 等。既存の cost の高いところ
段階的に難易度を上げる
各 step で事業貢献を出す
課題 : 既存の安定した system にどう新しい ORC を導入するか
讀み取り結果の揺れを感じさせたくない
組み込み方
期待效果の高い部分は、GEES に NineOCR を組み込む
NineOCR で決定できないものを GEES にまはす
データのマスタが變はっても繼續的に分析したい!
資料 : データのマスタが変わっても継続的に分析したい! - Speaker Deck
ジャンプ+ リニューアル
data を移行した
前後では data の設計が異なる
RDB と BigQueryBigQuery.icon の聯繋
Google Cloud Datastream
自動復舊が便利
Datastreamのバックフィルを高速化する - ぴょこぴょこブログ
他の案
EmbulkEmbulk.icon
Amazon AuroraAmazon Aurora.icon の snapshot
時閒かかり過ぎ
data の再現
分析の query を書き換へるのは大變
BigQueryBigQuery.iconの data mart に以前の table を再現する
以前の全ての table を齒を⻝ひ縛ってやる
dbt (data building tool)dbt (data building tool).icon
再現後の check
新しい分析
data schema を分析者が理解する
k1LoW/tblsk1LoW/tbls.icon
GitHub Pages
Home | Just the Docs
いまAI組織が求める企劃開發エンジニアとは?
資料 : いまAI組織が求める企画開発エンジニアとは? - Speaker Deck
AI 硏究組織
resercher + engineer
社會實裝
1. 硏究開發
2. prototyping
3. 檢證
4. 製品化
5. 導入
硏究所と product 組織の分擔は?
多くは
硏究所 (resercher) : 1
product 組織 (engineer) : 4, 5
2, 3 が落ちがち
2, 3 をやる企劃開發 engineer を求めてゐる
GKE上でのMLバッチ運用のコツ
資料 : GKEでのMLバッチ運用のコツ - Speaker Deck
GKEでMLバッチ運用のコツ - エムスリーテックブログ
300 個の batch on GKE (Google Kubernetes Engine)GKE (Google Kubernetes Engine).icon
Node Pool
機械學習 の batch で、eviction されて scale down されるのは致命的
stateful だから
sate-to-eviction で eviction を防ぐ
でかい pod が動いてゐたでかい node に、小さい pod が紛れ込んだ時、でかい pod が終了しても小さい pod がでかい node で動き續け、金の無駄
でかい node でかい pod 向けの Node pool と、小さい node の小さい pod 向けの Node Pool に分ける
どっちに割り振るか事前に判斷しなくちゃいけなくて面倒だね
いいチームでゐるためにやってゐること
資料 : いいチームでいるためにやっていること/Things we are doing to remain a good team - Speaker Deck
1 チーム 10 人くらい
御互ひの理解
チームの Slack channel にほぼ何でも書く
times は餘り使はない
積極的に相談する、相談に乘る
「◯◯を考へるスレ」
週次でふりかへる
KPT
ドメインキャッチアップ會
Q に 1 囘はみんなで顏を合はせる
なんでも LT 會
Q に 1 囘
月 1 プチ開發合宿
プログラミングサークルの新歡を支へる技術
資料 : プログラミングサークルの新歓を支える技術 - Speaker Deck
KMC (京大マイコンクラブ)
新歡
講座やハンヅオン
環境構築が課題
GitHub Codespeces は金がかかるし、GitHub アカウントが要る
coder/code-server
coder/code-server: VS Code in the browser
code-server-operator
walnuts1018/code-server-operator: Running multiple code server instances in k8s cluster
kubebuilder で CRD を作った
快適でお手輕アウトプット環境を求めて
資料 : お手軽アウトプット環境を求めて - Speaker Deck
Markdown で書く記事に畫像を簡單に插入したい
GitHub の issue でいいのでは
rokuosan/github-issue-cms: GitHub Issue-based Headless CMS for Hugo
label→tag
milestones→category
先頭の code block→frontmatter
Firebase GenkitでAI機能開發を加速する
資料 : ?
Firebase Genkit | 強力な AI 機能の構築、テスト、デプロイ
Firebase Genkit
firebase/genkit: An open source framework for building AI-powered apps with familiar code-centric patterns. Genkit makes it easy to integrate, test, and deploy sophisticated AI features to Firebase or Google Cloud.
多數の model、1 つの interface
Zod schema
colinhacks/zod: TypeScript-first schema validation with static type inference
function calling を簡單に實裝
local 實行
今は npm でしか使へない
yarn 等は不可
2024/6/25 #kyototechtalk #event_報