並び順

ブックマーク数

期間指定

  • から
  • まで

241 - 280 件 / 951件

新着順 人気順

RDBMSの検索結果241 - 280 件 / 951件

  • Cookpad Lounge #7 世界最大級のモノリスcookpad_allどうする会議 (2021/07/28 20:30〜)

    クックパッドのレシピサービスを支えるシステム(レポジトリ名cookpad_all)は、 かつて稼働コードだけで40万行を越える世界最大級のモノリシックRailsアプリケーションでした。 2017年からの様々な改善により、コンテナ化やアプリケーション構成の整理が行われ、 さらにいくつかの機能はマイクロサービスとして分離されてもいます。 next-cookpadにより一部のページのReact化にも成功しました。 ですが多くの改善を経てもcookpad_allはいまなお30万行以上の超重量級アプリケーションであり、 様々な問題を抱えています。マイクロサービスの問題も見えてきましたが、しかし元に戻すのも得策でない。 Shopifyのようなモジュラモノリスも我々には適切でない。 ならば我々はcookpad_allの問題に対してどのように立ち向かっていくべきなのか、 10年後のcookpad_allが

      Cookpad Lounge #7 世界最大級のモノリスcookpad_allどうする会議 (2021/07/28 20:30〜)
    • 機械学習したデーターを爆速で販売するサービスをDockerで構築してみた - Qiita

      3年くらい前にWEB屋の自分が機械学習株価予想プログラムを開発した結果 | マサムネットって記事を書いたっきり、機械学習にも株にもあんまり手を付けていなかったのですが、この年末年始、思い切っていろいろ進めてみました。 それで、なかなかに良い感じの結果が得られたので、そのままサービスとして稼働するまでに至った技術的経緯を書いていきます。 サービスそのものへのリンクは、有料サービスですので宗教上の理由などでリンクしたら見られない人もいるかと思いますのでここには張りません。個人的な考えとしては、技術者が適切に稼げる仕組みを作っていくことは重要だと思いますが、つまりは有料だろうと成果物であるサービスへの案内くらい張ったらええやんと思うんですがここではそういうことを論じる場ではありませんのでとにかくサービスそのもののリンクは控えておこうと思います。とはいえ、実際のサービスを見ないと判断しようが無いと

        機械学習したデーターを爆速で販売するサービスをDockerで構築してみた - Qiita
      • Dart/FlutterのローカルDBの比較 - のんびり精進

        モバイル以外にも対応したローカル DB を使いたかったので、複数のパッケージを調べてみました。 Hive を特に詳しく調べたため、そこだけ情報量が多めです。 2022年12月補足(結論) 記事を書いたときは Isar に注目していましたが、現在は Drift に落ち着きました。 ややこしそうな印象を受けて試さずにいて、しばらく後に再び気になったときに触って良さに気づいたので、もっと早く使えば良かったと思いました。 イチオシです。 高い機能性、型安全 あらゆる場所で使われている SQLite なので非常に堅牢(参考記事) この一点だけを見ても Isar のような個人開発のデータベースは比較にならない SQLite の最新バージョンを利用できる 既に持っている RDB / SQL の知識を活用できる RDB なので高度な操作も自在にできる Flutter Favorite に選ばれている Fl

          Dart/FlutterのローカルDBの比較 - のんびり精進
        • SRE for single-tiered software applications | Google Cloud Blog

          In cloud operations, we often hear about the benefits of microservices over monolithic architecture. Indeed, microservices help manage hardware being abstracted away and push developers towards resilient, distributed designs. However, many enterprises still have monolithic architectures which they need to maintain. For this post, we’ll use Wikipedia’s definition of a monolith: “A single-tiered sof

            SRE for single-tiered software applications | Google Cloud Blog
          • Relational Databases Explained

            It is often surprising how little is known about how databases operate at a surface level, considering they store almost all of the states in our applications. Yet, it's foundational to the overall success of most systems. So today, I will explain the two most important topics when working with RDBMSs indexes and transactions. So, without fully getting into the weeds on database-specific quirks, I

              Relational Databases Explained
            • 退職のお知らせ

              9月末で2年10ヶ月ほど勤めていたReproを退職することになりました。 やったこと GDPRやAppleの規約に対応するためにさまざまなデータストアからデータを削除する仕事をしていた。RDBに格納される構造化データだけでなく、半構造化データ、画像などの非構造化データまで含めると、削除すべきデータは多岐にわたり、削除作業は非常に複雑になる。データ(特に個人データ)を収集する際には「どの程度保持するか」や「どのように削除するか」も同時に検討すべきだし、保持期限や個人データかどうかといったデータ自体に関するメタデータを管理する仕組みも必要になってくるということを学んだ。 プッシュ通知などの配信履歴と既読情報を収集する仕組みをつくる仕事をした。膨大な量のデータを書き込むためにCassandraを使うことになったが、なじみのあるRDBMSとは似て非なるもので、NoSQLにおけるスキーマ設計やクエリ

              • ISUCON 13 参加記 (白金動物園)

                白金動物園の sorah です。優勝した ISUCON 9 以来 Writer や Admin (アドバイザー), ポータルのメンテナ係として運営に幽閉されていて長いこと選手をやっていませんでしたが、今回ひさびさに選手として参加したのでその参加記。 結果としては 18 位で 103,838 点で終了。10 万点到達の着順ではわりと早かったチームになれたものの、その後伸ばせず、かなり悔しい。 https://isucon.net/archives/57993937.html 一方で Ruby を利用して NameError や NoMethodError による fail を高速に繰り返していたため「ベンチマーク Fail 回数の多い 3 チーム」として 53 回で TVer からスポンサー賞をもらいました。我々より Fail 数が多いチームは Go だと思うんだけど、コンパイラがそこそこ怒

                • SpringのRCE脆弱性(CVE-2022-22965)について

                  はじめに Log4jやStruts2など、Java製ソフトウェアにおいてリモートからの任意のコード実行(RCE)の脆弱性が目立つ時代になってしまっていますが、これにさらにSpringも加わってきました。この記事では特にCVE-2022-22965に焦点を当て、技術的な視点からの解説を行ってみます。 なぜJavaアプリでRCEとなるのか? Javaの(特にウェブアプリケーションで)RCEとなるパターンはいくつか知られており、以前こちらの記事にまとめました。今回のCVE-2022-22965はこの記事の「3. クラスローダを操作できてしまうパターン」のパターンになります。 なぜクラスローダを操作できるのか? そもそも「クラスローダの操作」とは何を意味しているのでしょうか。この文脈では、Javaのプロセス内のクラスローダ系のクラスのインスタンスの、getterやsetterのメソッドを攻撃者が実

                    SpringのRCE脆弱性(CVE-2022-22965)について
                  • 週刊Railsウォッチ(20200427前編)Railsで避けたい8つのミス、ridgepole導入の注意点、RDS ProxyのPostgreSQL対応ほか|TechRacho by BPS株式会社

                    2020.04.27 週刊Railsウォッチ(20200427前編)Railsで避けたい8つのミス、ridgepole導入の注意点、RDS ProxyのPostgreSQL対応ほか こんにちは、hachi8833です。 つっつきボイス:「近所のビアパブに注文しておいたビール取りに行ってた🍺」「お疲れさまです!」「最近酒類の販売免許が飲食店向けに割と簡単な手続きで申請できるようになったじゃないですか」「あ、酒の持ち帰りは居酒屋の免許とは別なのか😳」「持ち帰りだと販売として扱われるので☺️」「なるほど〜」「本来だと酒販免許を取るのはかなり面倒なんですけど、その店は5日ぐらいで取れたって😋」「そういえば都内で店やってる知り合いも2日で取れたって言ってました😋」「都内だと特に早いらしい」「ではつっつき始めましょう〜」 参考: 酒類のテイクアウト販売が可能になる「期限付酒類小売業免許」とは?

                      週刊Railsウォッチ(20200427前編)Railsで避けたい8つのミス、ridgepole導入の注意点、RDS ProxyのPostgreSQL対応ほか|TechRacho by BPS株式会社
                    • 28. 技術選定の審美眼(1) w/ twada | fukabori.fm

                      話したネタ Worse Is Better - 過去を知り、未来に備える。技術選定の審美眼 2019 edition フロントエンド疲れとは? 大筋でのトレンドは変わってないが、目が養われていないと疲れてしまう Gruntとgulp.js、ReactとVue.js イメージ的には選球眼 変わるもの、変わらないものを見極めるモチベーションは何か? 技術の世界は変化が緩やかで手堅い部分と変化が激しい部分がある 振子のように見えていた変化は、角度を変えて見れば螺旋であり、その差分を見るのが大事 ベテランエンジニアの唯一のアドバンテージとは? プログラマとしての可処分時間はどんどん減っていく ベテランプログラマに求められる役割としての、語り部と老害のボーダライン Unix哲学 小さいのは良いことだ(Small is beautiful) 一つのことを上手くやる(Make each program

                        28. 技術選定の審美眼(1) w/ twada | fukabori.fm
                      • FractalDBを内製するに至った背景とサービス設計概要

                        こんにちは。エンジニアの中野です。前回は、私たちが開発している FractalDB: LINEヤフーのオンプレミス・マルチテナンシー型データベースシステムの紹介という記事を公開しました。 今回は続いて、開発に至った背景とそれからどのようなサービス設計を行ったのか、少し具体的な話をさせていただきます。 課題(FractalDB開発の背景) 社内クラウドDBが欲しい 比較的昔から「パブリッククラウドの"クラウドDB"、例えばAWS DynamoDB(以下DynamoDB)やGCP Cloud Spanner、Microsoft Azure CosmosDBのようなデータベースが社内にも欲しいよね」という漠然とした話はありました。 例えば、DynamoDBを使ったアプリケーション作成は、通常のRDBMSを使ったアプリケーション開発と以下のような違いがあります。 普通のRDBMSを使ったアプリDy

                          FractalDBを内製するに至った背景とサービス設計概要
                        • リアーキテクチャをお手伝いするDryRunというツールを作りました - BASEプロダクトチームブログ

                          はじめに Platform Group の久保田( @ykbt13 )です! BASEではリアーキテクチャとしてバックエンドの既存機能を旧リポジトリから新リポジトリへ移行する作業を日々行っています。詳しく知りたい方はぜひこちらを参照してください。 www.youtube.com そんななか、BASEにおけるコア機能の1つである商品の発送機能の移行が行われました。しかしながら、コア機能であるがゆえに様々な改修が繰り返されて複雑化してしまった発送機能では移行前の動作を保証する術がテストのみでは不安があります。 そこで、リアーキテクチャを円滑に進めるべく、本番環境上で移行前後の処理を同時実行しデータベースの結果を比較することで動作の保証を行うツールを開発しました。 この記事では、同様にリアーキテクチャを進めている方々を対象に、そのツール(BASE内では通称DryRunと呼んでいますので以降Dry

                            リアーキテクチャをお手伝いするDryRunというツールを作りました - BASEプロダクトチームブログ
                          • 部内Kubernetesクラスタに部員向けWebサービスを移設しました - KMC活動ブログ

                            はじめに おはもに~。id:utgwkk です。最近の京都は夏のような日もあって、計算機にはつらい季節になりつつありますね。 今日は、部員向けWebサービスを部内Kubernetes (以下、k8s) クラスタに移設した話をします。 部内k8sクラスタについて KMCでは、サークルの部内サーバーでk8sクラスタを運用しています。KMCの部員であれば誰でも自由にアプリケーションをk8sクラスタ上で稼動させることができます。k8sクラスタを構築した経緯や技術的な詳細については、以下の記事をごらんください。 blog.kmc.gr.jp 移設したWebサービスについて 今回移設したWebサービスは、部員向けのイラスト投稿サービス (通称 God Illust Uploader、以下では神ロダと呼びます) です。KMCでは毎年お絵描きプロジェクトという勉強会・練習会を開催しており、課題を提出する場

                              部内Kubernetesクラスタに部員向けWebサービスを移設しました - KMC活動ブログ
                            • 競技プログラミングの問題を自動で解きたい - うさぎ小屋

                              TL;DR 問い「競技プログラミングの問題は自動で解けるか?」 答え「ある程度は自動で解けるだろう。ただし問題の形式化を人間に任せる必要はある」 問い’「競技プログラミングの問題を自動で解くソルバは、具体的にはどのような形になるか?」 答え’「少なくとも初期のソルバは、最適化付きのトランスパイラと呼ばれるものになるだろう」 このような議論に従い、競技プログラミングの問題の実用的なソルバとして、Python から C++ への最適化付きトランスパイラを開発している。 目次 TL;DR 目次 競技プログラミングの問題を解くとはどういうことか 競技プログラミングのソルバは形式化を人間に任せることになるだろう 競技プログラミングの問題を自動で解くことは不可能ではない 具体例 1 具体例 2 競技プログラミングのソルバは (初めは) トランスパイラの形がよいだろう 競技プログラミングのソルバは (近

                              • GWは自作DBをやってた - k-murakami0609の日記

                                年1くらいで低レイヤーとか自作XXにチャレンジすることをやっており、今年のGWは自作DBにチャレンジしていたのでそれについての日記です。(まだ全然終わってないです) WEB+DB PRESS 最初は WEB+DB PRESS の「作って学ぶ RDBMS のしくみ」をやりました。 WEB+DB PRESS Vol.122 | WEB+DB PRESS編集部 | コンピュータ・IT | Kindleストア | Amazon この本はわずか100ページ程度で、情報が適切に取捨選択され、全体像が把握しやすくなっています。文章も読みやすく、約2~3時間でざっと読むことができました。 これを実装しても良いんですけど、GWの時間余りそうだな!と思ったので、別途本格的な本を買ってやることにしました。 Database Design and Implementation 続いて取り組んだのは Databas

                                  GWは自作DBをやってた - k-murakami0609の日記
                                • 採用目的2021 minne編 - Pepabo Tech Portal

                                  はじめに @june29 と申します。2021年5月からminne事業部のシニアエンジニアリングリードを担当しています。 「ペパボの採用目的2021」というムーブメントに乗っかって、この記事ではminne事業部の様子を紹介します。Webアプリケーションやモバイルアプリケーションの開発に携わるソフトウェアエンジニアが主な想定読者です。ペパボやminne事業部でのお仕事がどんなものか、少しでも興味を持ってもらえたらうれしいです。 minneの事業と組織 minne(ミンネ)は、ハンドメイド作品を「買いたい人」と「売りたい人」をつなぐ国内最大のハンドメイドマーケットです。iOSアプリ、Androidアプリ、Webブラウザからご利用いただけます。 すでに多くのみなさんにご利用いただいている状況ですが、今後も老若男女あらゆる立場の人にもっともっと楽しんでいただけるよう、ライフスタイル領域全般の素敵な

                                    採用目的2021 minne編 - Pepabo Tech Portal
                                  • index->lock の競合について 〜ベンチマークはちゃんとチューニングして〜

                                    他に忘れないうちに書きたいこともあったのですが、世に出るまで書けないので、ソースと関係ない一般的なこと(バージョン5.7以降)を書きます。(書かない方のことは書けるようになる頃には忘れてしまうかも…) index->lockの競合を直して欲しい。という人がいまだに居たりするのです。色々試しましたが、多分殆どの場合は理解不足・チューニング不足です。私自身はindex->lockの競合が不可避なベンチマークに結局会っていません。 特にMySQLとその他のRDBMSを比べる場合にはちゃんと最適化した負荷をかけないとMySQLが悪く見えるのでベンチマークをする際には気をつけて欲しいものです。 5.7で更新・参照並列性を高めるために導入された、index->lockのSXロック(Sロックは可能・SX/Xロックは不可)は、基本的にそのindexにpageを追加・削除するような処理をする際に保持されます

                                    • MySQLのtable collationが意図した値になっているかテストするActions Workflowを作った - 風に吹かれても

                                      文字セットと照合順序 MySQLに限らず多くのRDBMSには文字をどのようにバイト列で表現するかを決めるルールである文字セットがあります。 また文字セットに対応して文字同士を比較するときのルールである照合順序*1という概念があります。MySQLの場合、この照合順序は1つの文字セットに対して複数存在する概念です。なのでそれぞれの文字セットに対してデフォルトの照合順序があります。 照合順序が何に設定されているのかを把握していないと思わぬ結果を招くことになり、有名なのが寿司ビール問題と呼ばれるものになります。これは寿司の絵文字とビールの絵文字がMySQLのutf8mb4_general_ciという照合順序の下で等価であると判定されることが原因です。 blog.kamipo.net ここまで照合順序の話をしましたが間違ったことを話している可能性があるので公式ドキュメントを参照してください。 dev

                                        MySQLのtable collationが意図した値になっているかテストするActions Workflowを作った - 風に吹かれても
                                      • 利用状況から見るMackerelで人気のメトリックプラグイン トップ10 - Mackerel ブログ #mackerelio

                                        MackerelチームCREの吉田(id:syou6162)です。Mackerelの特徴の一つに豊富なプラグインの存在がありますが、たくさんあるがゆえに「どれを使うといいんだろう?」と迷われる方もいらっしゃるかと思います。また、「プラグインを導入後、ミドルウェアのメトリックが可視化できるようになった。しかし、どのメトリックを監視すればよいのだろうか?」と悩んでおられる方もいらっしゃるかと思います。 今日はそういった方に向けて Mackerelで利用数の多いメトリックプラグイン、トップ10 ホストメトリックの監視に使われている代表的なメトリックプラグインのメトリック を紹介しようと思います。 なお、Mackerelのプラグインは以下の3種類が存在していますが、今回はメトリックプラグインの利用状況についてのエントリとなります。 メトリックプラグイン ホストに紐付く統計量をカスタムメトリックとし

                                          利用状況から見るMackerelで人気のメトリックプラグイン トップ10 - Mackerel ブログ #mackerelio
                                        • 大コンテナ時代における.gitを使うワークフローの難点を解決するためにGitHubDDLを作った - ぱいぱいにっき

                                          こんにちは、この記事はPerl Advent Calendar 2021の4日目の記事です。 3日目は@yoku0825さんのPerlで作られたMySQL用の何かについてでした。日々お世話になっている、pt-query-digestがPerlで作られているのは知っていたのですが、他にもいろいろPerl製ツールがあるんですね。 さて、最近仕事で発生した課題を解決するためにGitHubDDLというCPANモジュールを作ったので紹介させていただきます。 TL;DR コンテナ環境において、プロジェクトの.gitをコンテナイメージに焼いたり、volume mountを行うのはいくつかの面で望ましくない 仕事ではDBスキーママイグレーションに.gitを用いるGitDDLを使用していた 以上のために、ECSでEFSマウントで.gitをマウントして構成が複雑になったり、.gitをイメージに焼いてpullが

                                            大コンテナ時代における.gitを使うワークフローの難点を解決するためにGitHubDDLを作った - ぱいぱいにっき
                                          • 本当にあったやらかしDB設計③【ロジカルクエリー】 - Qiita

                                            どうも、最近システムエンジニアの出てくる海外映画をよく見る人です 今日は「本当にあったやらかしDB設計②【囚人番号テーブル】」に続いてびっくりしたことを紹介します これ、本当に良く見かけます どういうことかというと、本来アプリケーションで処理するべき機能を無理矢理クエリーに詰め込む、ということです 何が悪いの?? DBというのはデータという商品の入った、ただの倉庫です RDMBSという倉庫番が居るため、倉庫に入れる前に商品を検査することができます 倉庫番(RDBMS)は商品を倉庫に入れたり、取り出したりすることが仕事であり、その道のプロです そこにアプリくんがやってきました アプリくんはレシピを持っていて、こう言いました 「RDBMSくん、このレシピあげるから倉庫に入っている商品を調理して完成品をちょうだい。もちろん、きれいにね」 この後どうなってしまうでしょうか RDBMSくんも商品を調

                                              本当にあったやらかしDB設計③【ロジカルクエリー】 - Qiita
                                            • PHPを使ってEvent Streaming + CQRSをざっくり理解してみよう(Laravel) - ytake blog

                                              これはさりげなく スターフェスティバル Advent Calendar 2020の20日目です。 PHPカンファレンス2020 2019年は登壇などを控えて一休みの期間としていたので一年振りくらいの と登壇となりました。 発表の内容としてはここ3、4年注力しているデータ処理まわりから、 PHPにおけるWebアプリケーションなどでも活用することができる題材を取り上げてお話させていただきました。 要するに事業に関わっている開発は年々要件も複雑になっていき、 問題解決するためにはいろんな手法があるけど、きちんと分析して 開発しやすいよう、フレームワークにべったり依存してつくるのではなく、 数年先を見越してつくったり、改善する方法の一つにCQRSもありますよ、という話です。 お話したように、全てのアプリケーションでペイできるものではありませんし、 ある程度大きな規模だったりある程度複雑な機能だった

                                                PHPを使ってEvent Streaming + CQRSをざっくり理解してみよう(Laravel) - ytake blog
                                              • 10 Things I Hate About PostgreSQL

                                                PostgreSQL performance degrades rapidly with more connections. Credit: brandur.org. Over the last few years, the software development community’s love affair with the popular open-source relational database has reached a bit of a fever pitch. This Hacker News thread covering a piece titled “PostgreSQL is the worlds’ best database”, busting at the seams with fawning sycophants lavishing uncondition

                                                  10 Things I Hate About PostgreSQL
                                                • Data Contractに向けたProtocol Buffersの調査 - yasuhisa's blog

                                                  背景: データ品質を担保するにはデータソースの品質が重要 データソースの品質を担保する手段としてのData Contract Data Contractの表現方法の一つとしてのProtocol Buffers Data ContractとしてProtocol Buffersを使う データの入出力を一箇所に集約、Protocol Buffersで抑えるパターン ストレージのスキーマをProtocol Buffersで抑えるパターン 発展的な話題 & 読書会の案内 参考文献 背景: データ品質を担保するにはデータソースの品質が重要 私はデータエンジニアをしており、DWHやデータマートのデータ品質について考えることが多い。BigQueryなどにデータが取り込まれた後のレイヤリングやテスト、改善に向けたデータ品質の可視化について、以前発表した。 データが取り込まれた後の整理は進んでいるものの、やは

                                                    Data Contractに向けたProtocol Buffersの調査 - yasuhisa's blog
                                                  • 『データ指向プログラミング』読んだ / OOP以前とDOPとの対比と差分などについて - Lambdaカクテル

                                                    先々月あたりに邦訳が出た『データ指向プログラミング』を読んだ。めちゃくちゃざっくり言うとオブジェクト指向における「データと振舞いの一体化」というドグマを手放させるもので、めちゃくちゃざっくり見るとC言語的な構造化プログラミングの世界に回帰するようにも見えることから、世間的には色々な評価があるらしい。 イミュータビリティが良い、みたいな話は重々承知なので適宜飛ばしながら読んだ。また、lodashまわりの話は単なるライブラリ紹介であり、特筆することがないので飛ばした。 こういう感じで言及されている zenn.dev slides.com 自分なりに読んで思ったことをまとめる。面白い本だったし、自分の思想にも近しいものがある。僕は普段ScalaやTSを書いているので、その観点からの感想が多いです。OOPの歴史に詳しいわけではないので、不足があったらすみません。 OOP以前の世界との差異 イミュー

                                                      『データ指向プログラミング』読んだ / OOP以前とDOPとの対比と差分などについて - Lambdaカクテル
                                                    • 「達人が教える Webパフォーマンスチューニング ~ISUCONから学ぶ高速化の実践」レビュー - Qiita

                                                      はじめに この記事は、技術評論社出版の「達人が教える Webパフォーマンスチューニング ~ISUCONから学ぶ高速化の実践」のレビューです。 著者の一人の方から献本を頂きまして、レビューを掲載しています。 それ以外の報酬などはありませんので、思ったことを書いています。 本書のターゲット パフォーマンスチューニングは私が考えるに大きく2つの視点があると思います。 一つ目はマクロな視点でのチューニング、もう一つがミクロな視点でのチューニングです。 本書が扱っているようなWebサービス (Webアプリケーション) は一つのソフトウェア (いわゆるアプリケーション本体) だけでは動作せず、データベース (多くはRDBMS) やその他のミドルウェアの組み合わせによって動いています。 組み合わせで動いているシステムを高速化するには、マクロな視点で観測しチューニングする必要があります。競技で言うとISU

                                                        「達人が教える Webパフォーマンスチューニング ~ISUCONから学ぶ高速化の実践」レビュー - Qiita
                                                      • 論文から垣間見るAmazon Redshiftの進化と深化 2022 #jawsug #bdjaws | DevelopersIO

                                                        データアナリティクス事業本部のコンサルティングチームの石川です。 本日は、2022年5月に発表された論文 「Amazon Redshift re-invented」を実際に読み、難しいところや弊社が実際に検証をした点を補足して解説します。普段はRedshiftの機能や使い方の解説が多く、あまり触れられることの少ないUnder the hoods 的なお話しようと思います。 本エントリはAWS Analytics Advent Calendar 2022の12/24(土)の記事です。 論文の詳細については、2022/12/19のBigData JAWS #22にて、登壇した資料をご覧ください。ブログの中では、紹介した機能についてのブログを紹介しています。 このブログをおすすめする人 オライリーの「データ指向アプリケーションデザイン」や「詳説データベース」とかを読むと、Redshiftの内部が

                                                          論文から垣間見るAmazon Redshiftの進化と深化 2022 #jawsug #bdjaws | DevelopersIO
                                                        • 慣れてきたらチャレンジしてみよう!BigQueryのパフォーマンス最適化 - ABEJA Tech Blog

                                                          自己紹介 I/Oや通信的観点 分割されたクエリを取り除く 過剰なワイルドカード テーブルを避ける テーブルを日付別にシャーディングすることを避ける & テーブルの過度な分割を回避する JOIN を使用する前にデータを削減する コンピューティング的観点 結合パターンを最適化する 結合で INT64 データ型を使用して費用を削減し、比較パフォーマンスを向上させる 同じ共通テーブル式(CTE)を複数回評価するのを避ける クエリのアンチパターン 自己結合 データスキュー 公式にはない項目ですが個人的に気になったので 単一行を更新または挿入する DML ステートメント 非正規化の検討 ネストされて繰り返されているフィールドを使用する 採用情報 自己紹介 こんにちは、真壁(@Takayoshi_ma)です。先日読んだGoogle Cloudの公式ドキュメントが個人的に勉強になったので内容についてまとめ

                                                            慣れてきたらチャレンジしてみよう!BigQueryのパフォーマンス最適化 - ABEJA Tech Blog
                                                          • アーキテクトを目指すなら知っておきたいアーキテクチャ設計のトレンド変遷、そして必要な能力と考え方

                                                            エンジニアからアーキテクトを目指す方や、アーキテクトとして仕事を始めたばかりの方は、アーキテクトの仕事やアーキテクチャ設計のトレンド、さらにどんなスキルが必要なのかをまず理解しておくことが大切です。今回は長年アーキテクトとして活躍されている米久保剛さんの著書『アーキテクトの教科書』(翔泳社)から、アーキテクトの定義や職務、アーキテクチャ設計のトレンド推移、そして米久保さんが考えるアーキテクトとして備えておくべき能力と考え方について解説します。 本記事は『アーキテクトの教科書 価値を生むソフトウェアのアーキテクチャ構築』の「第1章 アーキテクトの仕事」から一部を抜粋したものです。掲載にあたって編集しています。 アーキテクトの定義 複雑な構造物であるソフトウェアにおいて非常に重要なアーキテクチャを適切に設計するには、ソフトウェア開発業務に関わる幅広い知識や経験が必要とされます。そのため、アーキ

                                                              アーキテクトを目指すなら知っておきたいアーキテクチャ設計のトレンド変遷、そして必要な能力と考え方
                                                            • TiKVにおけるトランザクションとMVCCの話

                                                              はじめに PingCAPの小板橋です。はじめまして! TiDBの入門記事から上級者編まで幅広く取り扱う本アカウント第5回目は「TiKVにおけるトランザクションとMVCCの話」についてをまとめていきたいと思います。 TiKVの仕組み まずは、TiKVの仕組みについてを見ていきましょう。 全体のTiDBクラスターのアーキテクチャについては、下記の記事をご覧ください。 TiDBクラスターにおけるデータレイヤーにあるストレージノードとしてTiKVと呼ばれるものがあります。 TiKVは、分散型のキーバリューデータベースになり、ACIDに準拠したトランザクションAPIを提供しています。このTiKVの裏には、RocksDBとRaftコンセンサスアルゴリズムによって動作しています。 Raftコンセンサスアルゴリズムについては、また別の記事で深ぼっていきます。(こちらはこちらでお楽しみに!) RocksDB

                                                                TiKVにおけるトランザクションとMVCCの話
                                                              • データベース管理システム「MySQL」の基礎力を!インストールから解説する『MySQL徹底入門 第4版』

                                                                RDBMS(Relational Database Management System)の1つとして広く利用されているMySQL。その入門書として、CodeZineを運営する翔泳社では日本MySQLユーザ会のメンバーによる『MySQL徹底入門 第4版』を7月6日(月)に発売しました。第3版から9年ぶりの全面的な改定となり、バージョン8.0に対応。8.0を導入しようか気になっている方はもちろん、すでに使っているもののいまいち思いどおりのことができていない方も、ぜひ本書でMySQLの基礎力を高めてください。 『MySQL徹底入門 第4版 MySQL 8.0対応』は、2018年に5.7から8.0へと一気にバージョンアップしたMySQLの基礎を網羅的に解説した入門書です。 データベース管理システムを選ぶとき、MySQLは非常に有力な選択肢です。誰でも無料で利用できるオープンソースライセンスだけでな

                                                                  データベース管理システム「MySQL」の基礎力を!インストールから解説する『MySQL徹底入門 第4版』
                                                                • Amplify for Androidでより直感的になったGraphQLを試した - 怠惰を求めて勤勉に行き着く

                                                                  TL;DR 本エントリはAWS Amplify Advent Calendar 2019の24日目です! 今回は新しくリリースされたAmplify for Androidを使って、前回と同じく下のようなチャットアプリを作るので、興味のある方は前口上を飛ばして後半をお読みください🎄 Amplifyとは 本題に入る前に、Amplifyを最近よく耳にするようになったけど何かよく分かっていないという人向けの説明をします。 Amplifyはモバイルバックエンドを爆速で作るためのサービスです。 https://aws.amazon.com/jp/amplify/ 他のいわゆるモバイルバックエンドとの際立った違いのうち、個人的に強調したいのは以下2点です。 バックエンドはAWSのサービスであり、真の意味でスケールする GraphQLのマネージドサービスを利用できる本日時点で唯一のプラットフォームである

                                                                    Amplify for Androidでより直感的になったGraphQLを試した - 怠惰を求めて勤勉に行き着く
                                                                  • Distributed SQL 101 | Yugabyte

                                                                    What is Distributed SQL?Distributed SQL is a category of relational databases that combines the core features of traditional SQL and NoSQL systems, being strongly consistent while natively providing ACID transactional support across data centers, availability zones, and regions—in the cloud. It provides a single logical relational database deployed across a cluster of network servers. Distributed

                                                                      Distributed SQL 101 | Yugabyte
                                                                    • TSKaigi 2024 参加レポート - ドワンゴ教育サービス開発者ブログ

                                                                      バックエンドエンジニアの松尾です。 2024 年 5 月 11 日に開催された日本最大級の TypeScript をテーマとした技術カンファレンス TSKaigi 2024 に参加しました。 本記事では弊社からの登壇内容やスポンサーブースの様子をお伝えします。 登壇内容まとめ 弊社からは下記の LT で 2 名のエンジニアが登壇しました。 TypeScript で使いやすい OpenAPI の書き方 speakerdeck.com yukimochi さんからは OpenAPI の書き方について紹介しました。 変更に強く、ドメインモデルを正確に表現する書き方にすることで、TypeScript で使いやすいコードを生成できるとのことでした。 筆者は最近 OpenAPI spec を書くことは無いのですが、Union を用いた定義は非常に同意するところであり、今後の開発で活用していきたいと思い

                                                                        TSKaigi 2024 参加レポート - ドワンゴ教育サービス開発者ブログ
                                                                      • entを使った省エネバックエンド開発 | メルカリエンジニアリング

                                                                        こんにちは。メルカリでSoftware Engineerをやっているakkie30です。 この記事は、Mercari Advent Calendar 2021 の5日目の記事です。 私のチームでは半年ほど前からGoのORMライブラリとしてentを採用しています。本記事ではentに関する知見を紹介したいと思います。 entとは 新しいMicroserviceを実装する際に必ず議論になるのが、データベースと、そのデータベースの読み書きを行うライブラリの選定です。メルカリのMicroservicesでは主にGCPを採用しているため、Spanner, CloudSQL, BigTable, Datastoreなどを用いることが多いです。 私のチームでは現在新規サービスを開発しており、サーバ費用を低く抑えつつ機能性も求めた結果CloudSQLを採用しています。Souzohの技術選定にも影響を受け、私

                                                                          entを使った省エネバックエンド開発 | メルカリエンジニアリング
                                                                        • SE 2年目で読んだ技術書45冊+α - Qiita

                                                                          概要 社会人2年目が終わるので、この1年間で読んだ本150冊のうち技術寄りの本から45冊をざっくり紹介します。 1年目はこちら。 ※2024年3月追記 本記事で読んだ書籍は2022年4月から2023年3月までに読んだものです。 最新のトレンドや2023年4月以降に出た書籍は反映されていません。 説明 オススメ度は10段階です。昨年は1年目としての主観難易度も付けていましたが、2年目になるとキャリアプランの方向性によって積み上げがバラバラだと思うので、やめました。 ジャンル内の順序は、「この順で紹介文を見せたい」でフワッとソートしていて、具体的にはオススメ度降順や難度昇順ですが、明確な比較関数はありません。 雑誌や、読了したけど紹介する必要がないと感じた書籍は割愛しがちです。特に良かった特集は時々紹介します。 プログラミング言語 Rust 『手を動かして考えればよくわかる 高効率言語 Rus

                                                                            SE 2年目で読んだ技術書45冊+α - Qiita
                                                                          • ストレージとコンフィグでデータベースのグリッチを探す - Software Transactional Memo

                                                                            AIに描いてもらったストレージで作ったレース会場 はじめに この記事はデータベース・システム系 Advent Calendar 2023の一日目の投稿である。今年読んだ論文(今年書かれた論文とは限らない)の中で驚きや納得があって良かったなぁと思った論文をいくつか紹介していきたいと思う。 論文の本文そのものは機械翻訳なりチャットAIなりに叩き込めば誰でも内容の抽出はできるので、こちらのブログ内では何故これが良いと思ったかについて僕の主観に基づいて書いていく。僕の解釈が厳密に正しいことは一切保障しないし、気になって読んでみたら全然内容違うやんけ!と驚くところまでがセットくらいの気軽なつもりで読んで欲しい。 最初に紹介する論文は「When Database Meets New Storage Devices: Understanding and Exposing Performance Mism

                                                                              ストレージとコンフィグでデータベースのグリッチを探す - Software Transactional Memo
                                                                            • 新規事業への挑戦から挫折まで、その経験をまるっと話します

                                                                              ヤフー株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。LINEヤフー Tech Blog こんにちは、ヤフーでエンジニアをしている大石純平です。 ソフトバンクイノベンチャー という新規事業提案制度を利用して事業化を目指して新規事業を1年半ほどやっていたのですが、残念ながらクローズすることになりました。その経験を後続の方に共有し、失敗した気持ちを供養するために筆を取っています。 以前私が書いたこちらの記事 ヤフーで働きながら新規事業に挑戦している話 - Yahoo! JAPAN Tech Blog の後日譚です。 今回の記事では「新規事業で扱った技術のこと」、「なぜうまくいかなかったのか」についてお話しします。 ソフトバンクイノベンチャーについて ソフトバンクグループ社員なら誰でも新規事業を提案できます。アイデアの実現に

                                                                                新規事業への挑戦から挫折まで、その経験をまるっと話します
                                                                              • インターンの二週間で社内APIを新しく建て本番リリースまで何でもやった話【ソフトウェアエンジニアインターン参戦記】 - エムスリーテックブログ

                                                                                はじめまして。河村 (@KowerKoint2010)です。 この夏、エンジニアリンググループ AI・機械学習チームで2週間の新卒ソフトウェアエンジニアインターンに参加しました。 インターンでは、「Yucca」という内部サービスの改善を担当しました。 当初与えられた課題については設計・開発から本番環境へのリリース、そしてユーザーへの利用法説明まで行い、まだ時間に余裕があったので追加でデータベースの改善も検討しました!*1 ここでは私がやったことを簡単に紹介しつつ、エムスリーという会社で働いてみた感想を伝えます。 エムスリーでのインターンや就職を考えている他の学生の参考になれることを願っています。 最終日にエムスリークリアファイルをプレゼントしたときの様子 Yuccaについて簡単に紹介 BigQueryに特定のフォーマットでデータを置くと、それをクローリングしてきて自動でAPIとして提供する

                                                                                  インターンの二週間で社内APIを新しく建て本番リリースまで何でもやった話【ソフトウェアエンジニアインターン参戦記】 - エムスリーテックブログ
                                                                                • 「ChatGPT」「Gemini」の“得意分野の違い”をプロンプト4種で比較してみた

                                                                                  関連キーワード 人工知能 テキストや画像を自動生成する「生成AI」(ジェネレーティブAI)を、ビジネスの効率化や顧客体験(CX:カスタマーエクスペリエンス)向上に役立てる企業の動きが進む。代表的な生成AIサービスとして、AIベンダーOpenAIの「ChatGPT」とGoogleの「Gemini」がある。それぞれどのような使い方に向いているのか。 本稿は、大規模言語モデル(LLM)「GPT-3.5」をベースにしたChatGTPと、LLM「Gemini Pro」をベースにしたGeminiに4種類のプロンプトを投げ、出力された回答を比較した。プロンプトはアイデア出し、コンテンツ作成、計画策定、開発支援の4つのテーマで作成した。 「ChatGPT」と「Gemini」の回答を4つのプロンプトで比較 併せて読みたいお薦め記事 連載:OpenAIとGoogleの生成AIを比較 第1回:生成AI“2大ツー

                                                                                    「ChatGPT」「Gemini」の“得意分野の違い”をプロンプト4種で比較してみた