米谷昂@FastAPIガチ勢 @yoneya_fastapi 0からのプロジェクト設計が得意。FastAPIスポンサー。実務用FastAPIテンプレート公開中。エンジニア歴 14年 フリーランス5年目Python8年|FastAPI4年|React.js(ts)3年|AWS3年|Elasticsearch4年。仕事依頼はDMまで github.com/takashi-yoneya
情報検索・検索エンジン Advent Calendar 2019 の5日目の記事です。このAdvent Calendarを作った@takuya_aさんより、お誘いいただきました。 @minoru_osuka もし余裕あれば12/5の記事お願いします! https://t.co/YIA9tIB4Gj — takuya-a (@takuya_b) December 1, 2019 ということで、仕事とは別で個人的に始めたプロジェクトについて紹介できたらと思います。 私自身はApache Solrを好んで利用しています。 ただ、最近のサーバサイドの技術の移り変わりや、新しい開発言語の登場など、取り巻く環境が変化してきています。それらの習得も踏まえ、使ったことのない開発言語を用いて軽量な全文検索サーバを作り始めるという内容です。 開発した経緯 インフラの変化 ここ数年でインフラは大きく変化しました
表紙は親密度の上がった笑いあう二人。尊い…(違) 技術同人誌の『りあクト!』3部作と続編も読んだので、5作目を読みました。 今回はこれまでのReact開発の知見を活かし、BaaSあるいはmBaaSの代表格Firebaseにバックエンドをお任せし、世の中に公開していく実際のサービスをサーバーレスで開発していく本となっています。今回もまたまた本文は会話形式で読みやすいです。 表紙は親密度の上がった笑いあう二人。尊い…(違) 第1章 プロジェクトの作成と環境構築 第2章 Seed データ投入スクリプトを作る 第3章 Cloud Functions でバックエンド処理 第4章 Firestore を本気で使いこなす 第5章 React でフロントエンドを構築する 第6章 Firebase Authentication によるユーザー認証 まとめ:Firebaseを使ったサーバーレス開発がわかる本
こんにちは。エンジニアの佐々木です。 先日12/6、弊社イベントにてカヤックの藤原さんを交えてクラシコムのSREについてお話をさせていただきました。 当日は96名と多くの方にお申し込みいただきありがとうございました。1時間半があっという間で、時間の関係でお話できなかったことも多々ありました。改めてではありますが、記事にて当日の内容含め話せなかったこともご紹介したいと思います。 当日のテーマは「インフラ強化に向けた具体的な取り組み」と「一人に頼らないチーム体制づくりを目指して」という2つでした。 この記事では前半の「インフラ強化に向けた具体的な取り組み」について紹介します。北欧、暮らしの道具店のインフラ構成の変遷を追いつつ、その時々の課題や実際の取組みについて説明していきます。 5年前(2017年5月頃)のインフラ構成エンジニア3人で作った月間1600万PVのECサイト 「北欧、暮らしの道具
あすかです。 最近kmyblueという同人向けMastodonサーバーを運営してみてます。 最近何かと悪い方向で話題になっているTwitterですが、Twitter脱出先としてMastodon、Misskey、インスタなど検討する人は多いかと思います。 ここではMastodonにある程度慣れてきた人として、MastodonはTwitterと比べてどうなのか、使ってみて感じたことを書いてみます。「分散型SNSって何なの」とかいう一般的な疑問は他のサイトに譲ることにして、それ以外の、実際にMastodonというSNSを使うにあたって感じる日常的な事柄に絞って書きます。 Mastodonを実際に運営してきた立場もあり、多少専門的なことも多いです。。 登録人数はTwitterのほうが圧倒的Mastodon全体の利用者は約650万人(2023年3月時点)といわれています。 Twitterの月間アクテ
こんにちは、バックエンドエンジニアの夏(なつ)です。今回はMirrativのバックエンドで使っているライブラリをご紹介します。 これらの記事のバックエンド版になります!(2年越し) tech.mirrativ.stream tech.mirrativ.stream ライブラリ一覧 https://pkg.go.dev/ オリジナルの The Go gopher(Gopherくん) は Renée French によるデザイン cloud.google.com/go/bigquery 分析チームが生成したユーザの特徴量などがBigQuery上に存在しているため、それらをバッチ処理でMySQL上に取得する際に利用しています。 tech.mirrativ.stream cloud.google.com/go/compute/metadata 開発環境などでしか動いてほしくない処理が本番環境上で動
Developers.IO 2021 Decadeという弊社オンラインイベントにて、「Cloudflare + OpenSearch + Lambdaで始める全文検索開発入門」というテーマでお話させていただきましたので、紹介します。 セッション概要 現在開発に携わっているプロフィールビュアーサービスProfllyでは、検索エンジンとしてAmazon OpenSearch Serviceを採用しています。 サーバーレス環境において、コストを抑えつつ快適にOpenSearchを利用できる開発環境を準備すべく、Cloudflareを利用したOpenSearch + Lambdaの構築方法を解説します。 動画 スライド アジェンダ Amazon OpenSearch Service + Lambdaを組み合わせた全文検索 開発のためのローカル環境OpenSearch構築 Cloudflareを利用
こんにちは。ZOZOテクノロジーズZOZOTOWN部 検索チーム 兼 ECプラットフォーム部 検索基盤チームの有村です。 ZOZOTOWNでは先日公開した記事の通り、すべての検索をElasticsearchへ置き換えました。置き換え直後は順調に見えたのですが、実際に数%ずつリリースしていく中で一部時間帯、一部リクエストでレスポンス速度の低下がみられました。 本記事ではその解決のために行ったパフォーマンス調査、チューニング方法についてご紹介します。なお、一般的に行われるであろうElasticsearch本体のパラメータチューニングの話ではなく、クエリやmapping、setting面の話がメインとなります。 改善前後の速度について 詳細な内容の前に、本改善によるレスポンス速度の最終的な改善結果を示します。 今回の計測では、一定パターンのリクエストを10秒間繰り返し、95%tileのレスポンス
みなさんこんにちは。フジサワです。前回の記事でお伝えしていたElasticsearchの検証がひと段落しましたので、検証結果をレポートいたします。 連載目次 『全文検索 〜 Elasticsearchとデータ匿名化手法』 『全文検索の探求 Elasticsearch(1) 』: プロジェクト方針およびElasticsearch概要 大量データを検索するサービスでElasticsearchはRDBの代替候補になりうるか?(Elasticsearch vs pg_bigm)』 ←今読んでいる記事 データ匿名化 第1回:匿名化された個人情報とは何なのか データ匿名化 第2回:個人情報は匿名化しても意味がないのではないか? データ匿名化 第3回:個人情報を匿名化するプロセス データ匿名化 第4回:匿名化のために行うデータ項目の一般化とは データ匿名化 第5回:データ匿名化の指標 データ匿名化 第6
ある公開データベースから、Amazonの偽の商品レビュー詐欺に関与したとみられる20万人以上の個人情報が明らかになった。 SafetyDetectivesの研究者らは米国時間5月6日、オンラインに公開されているサーバーに、広く蔓延する偽レビュー詐欺に関連するとみられる、7GBにのぼる1300万件以上の記録が含まれていたことを明らかにした。 サーバーの所有者は不明だが、流出したメッセージが中国語で書かれていたことから、その組織が中国を拠点としている可能性ある。 データベースには、約20万~25万人分のユーザーとAmazonマーケットプレイス出品者のユーザー名、電子メールアドレス、PayPalアドレス、Amazonプロフィールへのリンク、「WhatsApp」と「Telegram」の番号などの記録に加えて、偽レビューの投稿を引き受ける顧客とそれに対して謝礼を支払う出品者の間のダイレクトメッセージ
こんにちは、@shin0higuchiです😊 業務では、Elasticsearchに関するコンサルティングを担当しています。 最近すっかり春らしく、暖かくなってきました。 新年を迎えたばかりの感覚でしたが、あっという間に時が経ちますね。 さて、今回の記事では、Elasticsearchの検索を根本的に変える可能性を秘めたセマンティック検索に関して書かせていただきます。 概要 Elasticsearchは元々、キーワードベースのアプローチを主に取っており、クエリで指定されたキーワードを対象のドキュメント内で検索し、それらの出現頻度や位置に基づいて結果をランク付けしています。この方法では、文脈や意図に関係なく、単純にキーワードの一致度に基づいて検索結果が返されます。 一方、セマンティック検索とは、ユーザーのクエリの背後にある文脈と意図を理解しようとする検索手法で、キーワードだけに頼るのではな
こんにちは。 クラシル開発部、バックエンドエンジニアの松嶋です。 delyに入社してから約3年間、私はSREチームに所属していましたが、昨年10月にバックエンドに転向しました。バックエンドに転向してからは、主にクラシルアプリの公式レシピおよびCGMコンテンツの検索機能に関する開発・改善に取り組んでいます。 クラシルは、2016年2月にサービスを開始してから、管理栄養士監修の「誰でも安全に・おいしい料理を作ることができるレシピ動画」を5万件以上提供してきました。 昨年12月には、クラシルのブランドリニューアルを行い、今後はシェフや料理研究家を中心としたクリエイターとともに多様化したユーザーの食の好みや課題解決に応えられるよう、幅広い食のコンテンツを提供するプラットフォームを目指しています。 ブランドリニューアルの詳細に関しては、こちらを御覧ください。 www.kurashiru.com この
中山です trivyのv0.31.0でAWSアカウントのセキュリティスキャンができるようになりました。 feat: Add AWS Cloud scanning (#2493) Releases / v0.31.0 なお、v0.31.0でスキャンを実行するとクラッシュするバグがあり、すぐにv0.31.2がリリースされました。 Releases / v0.31.2 どんな感じか気になったので、軽く触っておこうと思います。 ドキュメントを確認 まずはドキュメントを確認します。 Amazon Web Services ポイントになると思った点をまとめます。 CIS AWS Foundations Benchmark standardに準拠したチェックが可能 認証方法はAWS CLIと同じ すべてのAWSリソースに対する参照権限が必要 (ReadOnlyAccess) サービス・リージョン・リソー
セキュリティチームでリーダーを務めている藤田です。普段はプロダクトセキュリティの施策を中心に担当しています。 この投稿は、現在進行中の案件に関するものですが、世間で DMARC への対応が話題になっているにも関わらず、業務分担が進んでいる組織や複数のサービスで会社共通のドメインを用いてメールを送信しているような場合になぜ対応が進まないのか、それに対し私たちがどのようにアプローチしているかを示すものです。まだ完璧とはいえる状況ではありませんが、ある程度目処が見えてきたため、ノウハウを共有します。 タイトルの通り技術的なトピックも取り扱いますが、社内での調整や進め方を中心に解説しています。 ステークホルダーが多く、調整に苦労している方や、DMARC 対応を始めたもののレポートの分析に着手できていない方が一歩を踏み出すための助力となれば幸いです。 結論 外部の分析サービスに頼ることなく、AWS
はじめに こんにちは。データサイエンスチームYAMALEXのSsk1029Takashiです。 最近はOpenAIに日本支社が出来て、日本語対応が加速するというニュースにわくわくしています。 今回はそんなOpenAIから発表されたBatch APIという機能が便利、かつお得な機能だったのでどのように使えるのか試してみます。 Introducing the Batch API: save costs and get higher rate limits on async tasks (such as summarization, translation, and image classification). Just upload a file of bulk requests, receive results within 24 hours, and get 50% off API pri
「Elastic Cloud on Kubernetes」が正式版に。ElasticsearchやKibanaなどをKubernetes環境にデプロイ、Operatorにより運用も容易に Elasticは、ElasticsearchやKibanaなどをKubernetes対応としてパッケージングした「Elastic Cloud on Kubernetes」を正式版としてリリースしたことを発表しました。 We're proud to announce that #ElasticCloud on #Kubernetes (ECK) is now generally available! With ECK, users have a seamless way to deploy, manage, and operate the #ElasticStack on Kubernetes. Learn
はじめに Developer Roadmapsの内容が興味深く、自分の経験を元に日本のインフラエンジニア向けの学習ロードマップを作ってみました。 これからキャリアをスタートする駆け出しエンジニアの参考になれば幸いです。 ※私自身の限られた経験のもとに作成した学習ロードマップです。偏った内容や、時代の流れで主流が変わってしまった部分もあると思うので、色々な方のご意見コメントを頂けると嬉しいです! [2020/8/12追記] 図中の技術選定や学習順序について解説を追記しました。 前提条件 以下の前提条件で作っています。自身の置かれている環境に合わせて、学習内容は適宜取捨選択することをお勧めします。 1〜3年目の新人エンジニア向け SI業界で使われるエンタープライズ系技術を想定 オンプレとクラウドはどちらも扱う オンプレ機器は経験上よく見かける製品を代表して記載 ファシリティ、アプリケーションの
最近、社内でよく話をする内容についてまとめました。 企業がOSS化するといろいろメリットがあると思っていて、社内でもそこのコンセンサスはうちの技術横断部門のメンバー間では取れていたりするのですが、自社以外の人とかと話をする時もあるので、いろいろまとめておきます。 なお、この文章では本業をOSSにしつつビジネスを回そうみたいなElasticsearchとかMongoDBとかMySQLみたいな話題はとりあげず、本業が別にある会社がOSS化する、という部分に特化した話です。 9/13に追記 よく言われるメリットとデメリット メリットは、公開することで開発が自然と進み、コスト削減になる。一方でノウハウの流出などのデメリットがある、みたいなトレードオフ、という理解をしている人が多いようです。 コストは削減にならない OSS化したら多くの人に使ってもらいたいですよね?というのは考えるわけですが、その「
参加しているプロジェクトで、RailsアプリのCIの高速化を行った。 まだ進行中の部分も幾つかあるが、結果から言うと、元々8分前後だったテストが3分半程度に短縮された。行った作業を幾つかの観点に分け、どのように高速化を行ったか、どの程度高速化されたか等を記述する。 プロセス数とマシン性能の調整 元々は2コア1プロセス4マシンで8分程度掛かっていたが、8コア8プロセス1マシンに変更することで5分程度に短縮された。 このプロジェクトではCIにGitHub Actionsを利用している。GitHub Actionsではデフォルトで2コアのマシンが利用されるが、Large runnerを利用して8コアに変更した。費用は変わらない。 また同時に、8プロセスで並列実行するためにparallel_testsを導入した。このプロジェクトではMySQLとElasticsearchを利用しており、またファイル
Twitterフォロー&条件付きツイートで「バリーくんぬいぐるみ」を抽選で20名にプレゼント! 応募期間は2019/11/29~2019/12/31まで。詳細はこちらをご覧ください。 今すぐツイートするならこちら→ フォローもお忘れなく! 【IIJ 2019 TECHアドベントカレンダー 12/12(木)の記事です】 久しぶりに書きました。 どうもこんばんわ。九州支社で働くとみです。お久しぶりです。 実は2016年に一つ記事を投稿したのですが、実に3年半経過した今になってアドベントカレンダーの話が聞こえてきたので、久方ぶりに書いてみることにしました。 当時はこんな記事なんかを書いてたわけですが、この記事を書いてから3年間色々あったので、その中の一つを書いてみようかなと思います。 3年間で覚えたことを並べてみる 2016年当時はTHE ON-PREMISEと言われてもおかしくないような、どイ
はじめに こんにちは。SRE部BtoBチームの蔭山です。Fulfillment by ZOZO(以下FBZ)で提供しているAPIシステムの運用及び監視を担当しております。 FBZではAWS Lambdaを主軸としてAWSが提供しているフルマネージドサービスのみを利用するサーバーレスアーキテクチャを採用し、構築・運用してきました。今回は実際にどのようにサーバーレスアーキテクチャを活用してサービスを構築・運用・監視しているかご紹介します。 これからサーバーレスアーキテクチャを活用してサービスを構築されようとしている方の参考になれば幸いです。 なぜサーバーレスを採用したのか FBZはZOZOTOWNとブランド様が運営されている自社ECサイト間でリアルタイムに在庫情報を連携し、ZOZOTOWNと自社ECサイトでの在庫の一元管理を実現するAPIサービスです。そのため、マスタであるZOZOTOWNの在
こんにちは。BASE BANK 株式会社 Dev Division にて、 Software Developer をしている東口(@hgsgtk)です。 BASE BANK Dev での開発では、クラウドインフラの構成管理に、 Terraform を利用しています。 世の情報をたくさんキュレーションしている CTO の@dmnlkさんに、手軽に CI に組み込めそうなセキュリティチェックツールがあることを教えてもらったので、導入してみました。 CTO氏のキュレーションメディアで紹介された tfsec を早速試して良さそうだったhttps://t.co/bl67dlW2Ub https://t.co/vAkTOVagec— Kazuki Higashiguchi (@hgsgtk) August 21, 2020 このブログの公開日は 2020/10/30 ですので、導入してから約 2 ヶ月
こんにちは。技術部セキュリティグループの水谷(@m_mizutani )です。最近はFGOで一番好きな話がアニメ化され、毎週感涙に咽びながら視聴しています。 TL;DR これまでセキュリティログ検索にGraylogを使っていたが、主に費用対効果の改善のため新しいセキュリティログ検索基盤を検討した 自分たちの要件を整理し、Amazon Athenaを利用した独自のセキュリティログ検索基盤を構築した まだ完全に移行はできていないが対象ログを1ヶ月間分(約7.5TB1)保持してもコストは1/10以下である3万円に収まる見込み はじめに セキュリティグループでは日頃、社内ネットワークやPC環境、クラウドサービスに関連するセキュリティアラートに対応するセキュリティ監視業務を継続しておこなっています。アラートに対応する時に頼りになるのはやはり様々なサービスやシステムのログで、そのアラートに関連したログ
こんにちは、ぐるなびのインフラを担当している飯田です。 私の所属するグループでは、ぐるなび全体のサイトインフラの構築や運用を行っています。 私自身は、新卒で入社して今年で四年目となります。現在は、ぐるなび全体の仮想基盤やコンテナ基盤の運用、IaCなどを主に担当しています 。 今回は、我々が開発し提供している社内システムをコンテナ化し、そこでどういう技術に取り組んでいるかという話をしたいと思います。 インフラが提供する社内システムとは ぐるなびでは、サーバの払い出しやミドルウェアの設定変更などが発生する度にインフラへ依頼し、それに対してインフラが対応するフローをとっています。 このフローだと間接工数が増え、サービスの開発スピードが遅くなるなどの課題がありました。 そのため、開発効率やスピードの向上のため一部のオペレーションに対してGUI化やAPI化を実施し、社内システムとして提供しています。
バックエンドエンジニアのクラシマです。 2021/08/25(水)に、本番サーバのPHPを7.4.21 -> 7.4.22にバージョンアップしました。 renovateでプルリクエストが作られるので、追っかけるだけです。 tech.torana.co.jp AMIは前日に作ってあり、当日はLaunchTemplateの向き先を変更するためにterraform applyして、AutoScalingGroupからインスタンスの更新をするだけ。 や~便利になったなぁ、なんて作業してたらSlackが大騒ぎに・・・ 大惨事の一コマ 切り戻し! 急いで切り戻し!と判断したのは良いものの、まさかPHPのバージョンアップ起因だとはその時は思いもよらず。 当日deployしたアプリケーションや、Aurora MySQLの設定変更などを順次戻していきますが、一向に回復せず。 stg環境でも動作が同じだったの
いやー、まいったね。 入社して三ヶ月が経ちました @metalunk です。この三ヶ月は検索インフラの改善に取り組み、検索速度 10x, インフラコスト 80% 減の成果が出ました。この記事では検索インフラ改善でやったことを説明します。 ところで、検索インフラの改善ができるということは、先人たちが検索機能を作り、PMF してサービスが利用されるようになったおかげです。感謝して改善しましょう。 2021年12月の Stailer の検索 10X は開発不要でネットスーパーアプリを立ち上げられるシステムである Stailer を開発しております。Stailer での購入のうち 35% が検索経由で行われており、検索はとても重要な機能です。 しかし、2021年12月、増加するリクエストによるサーバー負荷の増大、速度の低下に悩まされておりました。一時的にサーバーを増やし、スケールアウトをすることで
AWS Open Source Blog Stepping up for a truly open source Elasticsearch Last week, Elastic announced they will change their software licensing strategy, and will not release new versions of Elasticsearch and Kibana under the Apache License, Version 2.0 (ALv2). Instead, new versions of the software will be offered under the Elastic License (which limits how it can be used) or the Server Side Public
2019年7月31日、検索技術研究会が主催するイベント「Search Engineering Tech Talk 2019 Summer」が開催されました。「検索」や「検索システム」にまつわる技術や手法を共有する本イベント。第3回となる今回は、3人のエンジニアが、現場の経験を通して学んだノウハウや、検索にまつわる知見を語ります。プレゼンテーション「Elasticsearch における類似度ベクトル検索のベストプラクティスを求めて 」に登壇したのは、伊藤敬彦氏。講演資料はこちら Elasticserchにおける類似度ベクトル検索のベストプラクティスを求めて 伊藤敬彦(@takahi_i) 氏(以下、伊藤):「Elasticserchにおける類似度ベクトル検索のベストプラクティスを求めて」ということで、いろいろ調査をしてみましてとりあえずまとめてみましたというお話です。 シュッとやると最初は書
こんにちは。ABEJAのインフラ管理してる村主 @rwle1221 です。 本ブログは Datadog Advent Calendar 2019 の8日目です。 今日は ABEJA Platform というプロダクトで、なぜ Prometheus から Datadog に変えたのか。というお話したいと思います。 一人の方でも採用基準の参考になればと思います。 第一フェーズ:実は元々Datadogを使っていた 実は Prometheus の前は Datadog を使っていました。 なぜ Datadog を使っていたかというと、Za○bix や Na○ios などは古い思想なので使う気になれなかったという単純な理由です。 ただ、 Datadog は $18/host という値段で 当初は数十台だったので数万円ほど発生していました。やはり少し高いなという印象です。 第二フェーズ:Promethe
サーバーレス連載の3回目は検索エンジンを作ってみたお話です。 クラウドサービスが充実してくるにつれて、サーバーレスではいろいろなことができるようになっています。HTTPサーバーは動きますし、RDBやNoSQLなストレージも使えますし、PubSubみたいなサービスも利用できます。これらを駆使するとそこそこ複雑な処理も記述できます。 一方で、上から下までサーバーレスにしようとするとできないものもいくつかあります。例えば、RDBも使えるといっても制約があり、LambdaやCloud FunctionsからRDSやCloudSQLを雑に使うとコネクションを張りすぎる問題があります。LambdaにはRDS Proxyが出始めています。あと、RDBそのものは基本的に常駐型なのでサーバーレスではないです。一応サーバーレスなのもありますが、起動時間が結構かかるらしい(自分ではまだ試してないです)。それ以外
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く