tl;dr はじめに DuckDB とは DuckDB では何が読めるのか 使ってみる S3 上のJSON を読んでみる リレーショナルデータベース 他ツールではなく DuckDB を使うメリット しくじりポイント (特にリリースされたばかりの)バージョンには気をつける S3 のオブジェクト数が多い場合不都合がありがち スレッドの調整が必要な場合も Redshift には未対応 終わりに 付録MySQL のデータを読み込む例のMySQL 側の準備 tl;dr DuckDB 便利だよ。分析以外でも使えるよ 色々な場所のデータを閲覧・結合できるよ。標準SQLも使えるよ ただし、細かい落とし穴は色々あるので気をつけてね はじめに2023年4月にデータエンジニアとして入社したmin(@not_rogue)です。暖かくなるにつれ、YouTube で見た南伊豆ロングトレイル | 松崎町に行く機運が
毎朝、デザイン系の英語記事を10件ほどおすすめしてくれるSlackボットです。このボットは現在も問題なく稼働し続けていますが、毎朝のニュースは文字で読むよりも音声として聞いたほうが負担が少なく続けられそうです。 そこで、このSlackボットを拡張して、毎朝デザインニュースのポッドキャストを自動生成する仕組みを作ることにしました。 成果物はじめに成果物について。完成したポッドキャストは毎朝SpotifyとApplePodcastで配信しています。 おおまかな処理の流れ開発前に想定した処理の流れは以下の通りです。 毎朝ポッドキャストが自動で配信される理想的なフロー自分はコンテンツ制作者ではなく、あくまでリスナーというスタンスを取りたいため、ワークフローに自分が介在しない完全自動化が理想です。 ところが、Sound CloudAPIの利用に必要なアプリケーション登録の受付が現在停止しているこ
[電話予約の無人化]Amazon Connect + GPT-4 JSONモード +Whisperで、1回の発話から予約情報(日付,時間など)を抽出 はじめにAmazon Connect + GPT-4 JSONモード +Whisperで、1回の発話から予約情報(電話番号,日時,名前,人数)を正しく抽出できるか検証しました。 コールセンターでは、有人対応から無人対応に変更したいニーズが増えているように思います。 電話予約の無人対応を想定し、1回の発話で、下記の5つの予約情報を抽出できるか確認します。 お名前 電話番号 予約日 予約時間 人数 発話で予約情報を抽出する方法として、GPT-4 Turbo のJSONモードを利用します。 JSONモードの詳細は、下記を参照ください。 例えば、「名前はクラスメソッドで、電話番号は09011111111。来週の火曜日の19時に4名で予約できます
みなさんこんにちは、電通総研コーポーレート本部システム推進部の佐藤太一です。 この記事では、VS CodeのDev Containerを使ってOSに依存しないPythonの開発環境を構築する方法をステップバイステップで丁寧に説明します。 VS Codeの利用経験があり、またPythonによるアプリケーション開発に興味のある方を想定読者として記述しています。Pythonの初心者から中級者向けを意識して書いていますので、意図して冗長な説明をしています。 すでにPythonによるアプリケーション開発に十分に詳しい方は、まずはまとめだけ読んでみてください。私自身それほどPythonのエコシステムに詳しいわけではありませんので、知識の抜け漏れは恐らくあるでしょう。そういった事に気が付いたら、XなどのSNSでこの記事のURLを付けてコメントをしていただけると幸いです。 はじめに 事前の準備 最小限のD
はじめに 皆様こんにちは。イノベーションセンター SkyWay DevOpsプロジェクト所属の @sublimer です。 私達のチームは、1月31日に新しいSkyWayをリリースしました。 skyway.ntt.com 新しいSkyWayでは、公式サイトや、アプリケーションを管理するコンソールも全く新しいものとなっています。 今回は、新しいSkyWayの公式サイトやコンソールの死活監視に利用している、Google Cloudの「稼働時間チェック」機能についてご紹介します。 稼働時間チェックとは 稼働時間チェックは、Google CloudのCloud Monitoringが提供している機能の1つです。 予め設定したエンドポイントに対して、HTTP・HTTPS・TCPのいずれかのプロトコルで定期的にリクエストを送り、そのレスポンスがアラート条件を満たした場合に通知してくれるサービスです。
jq(https://stedolan.github.io/jq/)の紹介では、「JSON処理のワンライナー〈一行野郎〉としてめちゃくちゃ便利!」とアピールするのが定番です。もちろんそれは本当で、「めちゃくちゃ便利!」です。が、実は jq は、ワンライナー記述にとどまらない、かなり本格的なプログラミング言語です。 JSON処理のためのDSL〈Domain Specific Language | 領域特化言語〉なので、汎用言語ではありません。しかし、汎用言語が備えている言語機能の一部(関数定義、モジュールシステムなど)を jq も持っています。また jq は、独特で楽しいプログラミング・パラダイム -- “パイプライン指向”に基づいて設計されています。 この記事では、ワンライナーを超えた jq の使い方と、プログラミング言語としての jq の特徴を紹介します。長い記事になってしまったので、一
ANDPAD バックエンド担当の原田(@tomtwinkle)です。 普段はGolangでモリモリコードを書いていますがDevOps関連の記事ばかり書いてます。 お察しの通りなんですが、今回もDevOps関連の記事だったりします。 やり方だけ知りたい人は Motivation の部分は読み飛ばして貰っても問題ないです。 MotivationAWS CodeBuild側の準備GithubのPrivate Access Tokenを発行するAWS Systems ManagerのParameter StoreにDBとGithubへのアクセス情報を記述 CodeBuildを作成Github Repository側の用意Buildspecの記載 動作結果 謝辞 さいごに Motivation 私が担当しているANDPADボードではRDS(MySQL)を利用しています。 そして、DBのsc
「SBOM(Software Bill Of Materials:ソフトウェア部品表)」という概念があります。これはあるソフトウェアを構築する上で利用しているライブラリの一覧をまとめたものです。また、システムにインストールされているソフトウェア一覧を示す場合もあります。今回は手元のUbuntuにインストールされているソフトウェア一覧を簡易的にまとめる方法を紹介しましょう。SBOMの必要性 昨今のソフトウェアは多種多様なライブラリに依存しながら構築されています。太古のC言語のプログラムなら、シンプルなものならlibcだけ、そこそこ複雑なものでも2、3個のライブラリに依存するだけで済むことが大半でした。それが今風のプログラミング言語になると、特定の便利そうなライブラリに依存するだけで、「だったら俺も僕も私もミーも」といくつものライブラリがバンドルされてしまうのです。 結果的に広く使われてい
こんにちは。 メディアサービス開発部バックエンド開発グループのフサギコ(髙﨑)です。Ruby onRailsによるバックエンドの実装運用と、AWSによるサービスインフラの設計構築を中心とした、いわゆるテックリードのような立ち位置で働いています。本記事では株式会社一迅社さまの公式漫画連載サイトであり、ブックウォーカーが開発保守運用を担当している一迅プラスのサービスインフラの概要についてご紹介したいと思います。 もしよければ、前記事のニコニコ漫画のインフラ構成についてならびに読書メーターのインフラ構成についてもご覧ください。 一迅プラスについて 一迅プラスは株式会社一迅社さまが運営する公式漫画連載サービスです。 冒頭試し読みから連載まで、2022/06/10現在で150を超える作品が掲載されています。 一迅プラスのトップページ この一迅プラスにおいてブックウォーカーは開発保守運用を担当し
こんにちは。先日発売された『プロを目指す人のためのTypeScript入門』は、発売日の最新バージョンであるTypeScript 4.6に対応しています。 そこで、この記事では読者に向けたアフターサポートとして、本の発売時から現在までに増えた機能や変わったところをご紹介します。 現在のTypeScript最新版は4.9です。TypeScript 4.7での更新 公式アナウンス: https://devblogs.microsoft.com/typescript/announcing-typescript-4-7/ Node.js向けES Modulesサポートの追加TypeScript 4.7最大の話題はこちらです。本書の第1章では、tsconfig.jsonの設定項目について次のように説明しました。 現在のところnode16とnodenextには違いがありません。将来のNode.js
その他 OS の方はGitHub のrelease ページから DL することができます。 使い方 tv はミニマムな CLI として作ったのでテーブル表示の機能とそれに付随したオプションのみを提供しています。 配列になっている JSON をテーブル表示する キーを指定することでそのキーを使ってソートできる いくつかのスタイルでテーブルを表示できる 以上が主の機能です。 Table 表示 ユースケースとして JSON が帰ってくるAPI を想定します。API の例として jsonplaceholder を利用します。 今回は https://jsonplaceholder.typicode.com/users を使います。 このAPI は以下のようなデータが返ってきます。 $curl -s https://jsonplaceholder.typicode.com/users [
TL;DR VS Code 前提になってしまいますが、VS Code Remote Containers 拡張最強です、という話。実際にどういう風に作れば良いかは参考リポジトリ作ったので見て下さい。 はじめに 背景ぼかしのような推論結果を使ってカメラ画像にフィルタを入れる処理を書くとき、今だと選択肢は大きく分けて 2 つあります。 tfjs を使うWasm 経由で tflite やその他ライブラリを使う この記事では後者のWasm を使う方に注目して、その開発環境について記載します。 先行例 w-okadaさんのリポジトリには複数のWasm を使った事例が紹介されています。 例を挙げるとTFLiteWasm forGoogle Meet SegmentationやTFLiteWasm for ESPCNなどがWasm です。 これらのビルド環境はどうなっているかというと、Do
Terraformで予防的ガードレールを実装したい!「Terraform-Compliance」のご紹介 7月7日はクラスメソッドの創立記念日です。今日は次々にブログ記事があがってくることでしょう! また、わたくしゴトですが 18 期からコンサルティング部の部長を務めさせていただくことになりました。「あいつ、部長になったらブログ書かなくなったよな」と後ろ指さされないように、ブログの書ける部長として頑張っていきたいと思います。 ここからAWS が一般的に利用されるようになった昨今最近では単にAWS を使いたいという相談よりも、どうやってAWS 環境をうまく運用するべきか?というご相談が多くなっているように感じます。よくある相談の 1 つが「ガバナンス」です。 ある程度ユーザーに権限をもたせ自由にリソースを作成できるようにした結果、 「パブリックアクセスで S3 を公開してました、、」
この記事はMackerel Advent Calendar 2020 2日目の記事です。 はじめに 皆さんはmackerel-plugin-jsonを使っていますか? 個人的にはかなり好きなプラグインなのですが、2017年に書かれたMackerel プラグインアドベントカレンダー以外ではあまり解説されていませんでした。 soudai.hatenablog.com この記事よりも後に追加された機能を紹介している記事も見当たらなかったので、今回はそれらに絞って紹介していきます。 前回実行したときの結果との差分を投稿する-diffオプション -diff オプションの後に正規表現を書くと、その正規表現にマッチしたメトリックに対して前回の実行時からの差分をMackerelに投稿することができます。 アプリケーション内に単調増加するカウンターとその値をJSONで返すエンドポイントを実装しておくことで
タダです.はてな社の「Mackerel」を業務利用することになりました.使い始めなこともあり画面から設定をいじっていたのですが, CLI ツールである「mkr」の存在を知ったので,導入と監視設定を取得したりしていきます.github.com mkr 導入 現状の監視設定を取得する まとめ mkr 導入 「mkr」の導入を行ってきます.なお,導入環境はmacOS X Catalina です. sw_vers ProductName:Mac OS X ProductVersion: 10.15.6BuildVersion: 19G2021mackerel.iomacOS の場合は brew で完結します. インストールコマンド $ brew tapmackerelio/mackerel-agent $ brew install mkr インストール完了後,バージョンを確認して
Ruby の CI 維持業というのはこんな感じという事例紹介。 CIを観察するRubyのCIがときどき次のように失敗していました。 1)Error: TestM17N#test_object_inspect_external: Encoding::CompatibilityError: incompatible character encodings:UTF-8 and UTF-16BE /tmp/ruby/v2/src/trunk-test-random/test/ruby/test_m17n.rb:311:in `encode' /tmp/ruby/v2/src/trunk-test-random/test/ruby/test_m17n.rb:311:in `inspect' /tmp/ruby/v2/src/trunk-test-random/test/ruby/test_m1
Series: ASTJavaScriptAST Understand the grammar Implementing the parser Handling the unexpected input Unexpected token Unexpected end of stringGoing the extra mileError code and standarderror message A better view of what went wrong Suggestions forerror recovery Summary The interview question of the week for this week on Cassidoo's weekly newsletter is, Write a function that takes in a string
本記事は、リクルートライフスタイルアドベントカレンダー10日目の記事です。 リクルートテクノロジーズ兼リクルートライフスタイルのASGチームに所属している渡邉です。 最近は新規開発をやっていて、日々プロジェクトの package.json の更新に追われています。本記事ではその更新タスクを大いに助けてくれたRenovate について紹介します。Renovate とはRenovate はプロジェクトの依存関係 (Dependency) の更新を自動化するツールです。似たようなツールとしては、Dependabot やGreenkeeper があります。プロダクションレベルのプロジェクトでは、明示している Dependency だけでも 20~30 程度あるのではないでしょうか。それらの Dependency は日々更新されており、最新版に追従していくだけでも時間と手間がかかります。Re
最近GoでCLIツールを作っていますが、JSONが良いとなんとなく思っています。 続編も公開しました(追記:2019年10月2日)。 CUEを試して見る 設定ファイルフォーマット近年、設定ファイルを書くプレーンテキストのフォーマットとしては次のようなものが多いかと思われます。 XML 多くのプログラミング言語において標準ライブラリで扱える(ただしNode.jsにはない) XMLスキーマ、XSLTなどの周辺ツールも揃っているが、記述が冗長になりがちで、敬遠されがち。 ini QtやPythonの標準ライブラリで扱える 深い階層や配列を扱うのが苦手 JSON ほとんどのプログラミング言語で標準ライブラリに入っている 特にフロントエンドのJavaScriptでは追加のライブラリを利用する必要がなく、速度も早く、gzipすればファイルサイズもかなり小さくなる。T 閉じかっこが必要、コメントがつけら
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く