並び順

ブックマーク数

期間指定

  • から
  • まで

321 - 360 件 / 1134件

新着順 人気順

RDBMSの検索結果321 - 360 件 / 1134件

  • Webシステム開発で関わる技術のまとめ(2022年に知った物) - Qiita

    はじめに Webシステムの開発に携わりたくて転職して9か月,知らない事ばかりで日々勉強しております。 自分の勉強用メモとして知っておくべき技術をまとめようと思いました。 (こちらの記事にインスパイアされたものです) 技術用語について,なるべく2~3行で概要を説明できる事を目指しています。 情報が多過ぎるので,主流な技術は見出しを赤字にしています。(主観強め) また,今後需要が増えそうな技術は青字にしています。(かなり主観強め) とはいえ,新しい技術が登場すれば,数年でトレンドが変わってしまう事も多々あると思います。 ほとんどはあくまでも初心者がネットで情報をかき集めた程度のものです。 誤りがあればご指摘,ご意見など頂きたいです。 ※2023/2/6追記 不正確・不十分だと思った記載はひっそりと随時修正しています。 また,「そういえばこんなんあったな」という項目も追記しています。 あと,自分

      Webシステム開発で関わる技術のまとめ(2022年に知った物) - Qiita
    • 「LAPRASのDB設計についてそーだいさんに相談してみた」イベントレポート | LAPRAS株式会社

      こんにちは!LAPRAS でエンジニアをしていますモロズミ (@Chanmoro) です。 約3ヶ月前になりますが、今年の6月9日に LAPRAS 公開設計レビュー「LAPRAS の DB 設計について」そーだいさんに相談してみた というオンラインイベントを開催しました。 事前収録した動画を参加者の方にご覧いただく形式でしたが、イベント公開から本日まではイベント参加者の方のみに限定公開としていました。しかし、とても参考になる内容をお聞きできたのでより多くのエンジニアの方の参考になればという思いと、イベントに参加ができなかった方から「ぜひ内容を知りたい」というお声を多くいただいていたことから、この度イベントの動画を全ての方にご覧いただけるように一般公開しました。 動画を頭から最後まで全部見ていただける方がイベント中のそーだいさんと私たちの会話の文脈がよりわかるのでオススメではあるものの、全部

        「LAPRASのDB設計についてそーだいさんに相談してみた」イベントレポート | LAPRAS株式会社
      • クリーンアーキテクチャーでスマホアプリ開発した感想(勉強会用) - Qiita

        はじめに 昨年からの大きな案件でClean Architectureを使った Platforms: Android/iOS Languages: Kotlin/Swift はじめに 勉強会向け資料なので、クリーンアーキテクチャー自体の解説もある程度含まれます。 逆に、時間の都合上、歴史背景や細かい部分までは行き届いていません。 もし間違いがあればご指摘ください。 オススメ書籍 アーキテクチャーを選定する目的 求められるシステムを構築・保守するために必要な人材を最小限に抑えるため 「アーキテクチャーは上位レベル、設計は下位レベル」のように区別されることがあるが、両者の間に明確な境界はなく、上位から下位に至るまで、決定の連続である スマホアプリ開発で代表的なアーキテクチャー AndroidはMVVM(Googleが推奨) iOSはMVC(AppleがCocoa applicationに採用)

          クリーンアーキテクチャーでスマホアプリ開発した感想(勉強会用) - Qiita
        • [#JTF2020 解説版]理解して拡げる 分散システムの基礎知識 - Qiita

          はじめに July Tech Festa 2020において、「マイクロサービスの今だからこそ!理解して拡げる 分散システムの基礎知識」のタイトルで登壇をしてきました。スライドはこちらにありますが、資料内や当日のトークで話せていない部分を含めて、こちらでblogとして解説をしておきたいと思います。 1. セッションの導入 - 新たなムチャブリ - 今回は昨年の#JTF2019で私が話した、「Cloud Native開発者のためのDatabase with Kubernetes」からの続編という形にしてみました。 昨年は、 「せっかくKubernetesを使うのにアプリケーションだけじゃもったいない。 DB、そしてステートフルなワークロードにも適用していきましょう」 という話をしましたが、Kubernetes-native Testbedなど、そうした取り組みが増えつつある傾向にはとても興味を

            [#JTF2020 解説版]理解して拡げる 分散システムの基礎知識 - Qiita
          • Auroraのような設計のRDBMSにおいて,LSNの発行はmaster nodeで行わないといけないがために書き込みnodeは一台に制限される(DB管理者が手動でシャーディングするケースは別と指定)という理解は正確ですか? | mond

            Auroraのような設計のRDBMSにおいて,LSNの発行はmaster nodeで行わないといけないがために書き込みnodeは一台に制限される(DB管理者が手動でシャーディングするケースは別と指定)という理解は正確ですか? データベースを専門としない人からパワポ絵の解像度でこの質問がされたなら「はい大体そんな感じです」と答えるのですが、わざわざ僕宛に質問をしている時点で質問者はただものではないので詳しく説明します。 まず「LSNをmaster nodeが発行する」の所から正しくないのではないかと思います。手元でRDBMSを作った時の知見ですが、ログデータはリカバリのために任意のLSNからそのログの実体までを高速に索引できる必要があり、その際の一番合理的な実装は「ログのオフセットをそのままLSNにする」という方法です。そして、ログのオフセットを取得する一番簡単な方法は「エンキューが成功した

              Auroraのような設計のRDBMSにおいて,LSNの発行はmaster nodeで行わないといけないがために書き込みnodeは一台に制限される(DB管理者が手動でシャーディングするケースは別と指定)という理解は正確ですか? | mond
            • Oracle Database 21c正式版が登場。データベース内でJavaScript実行可能、改ざんできないブロックチェーンテーブルなど新機能

              Oracle Database 21c正式版が登場。データベース内でJavaScript実行可能、改ざんできないブロックチェーンテーブルなど新機能 米オラクルは、最新のデータベースソフトウェアとなる「Oracle Database 21c」正式版を発表しました。 Oracle Databaseのバージョン番号は、2017年に発表された「Oracle Database 18c」から西暦を基にしたバージョン番号となりました。つまり今回発表された「Oracle Database 21c」の21は来年2021年の21から、cはクラウドのcから取られています。 オラクルはOracle Databaseにおいて、マルチデータモデルへの対応やマルチテナントへの対応など、さまざまな機能を集約したコンバージドデータベース(Converged Database)と呼ばれる方針で開発を進めています。 すでにOL

                Oracle Database 21c正式版が登場。データベース内でJavaScript実行可能、改ざんできないブロックチェーンテーブルなど新機能
              • せや、AWS LambdaのハンドラをSQLにしたろ

                SELECTしたキーとバリューを構造に持つJSON文字列がアウトプットされました。 JSON形式で返せるということは、イベントソースにAPI Gatewayを設定すれば簡単なWEB APIを作れるといっても過言ではありません。 これにより『SQLは書けるがプログラミング言語は利用できない』といった方でも簡単なLambda関数を作成できるようになり、求められるハードルがまた一つ低くなったのではないでしょうか。 なお、この記事が投稿されたのは4月1日であり、実際にはAWS LambdaにハンドラーをSQLで記述するといった機能は存在しません.......................... といったエイプリルフールネタを投稿したかった 昨年、2021年のエイプリルフールネタで『時代に即したMySQレの新機能:PLEASE句』というブログを拝見しました。 当時の私は上記ブログにとても関心を示し

                  せや、AWS LambdaのハンドラをSQLにしたろ
                • DBLog: A Generic Change-Data-Capture Framework

                  Andreas Andreakis, Ioannis Papapanagiotou OverviewChange-Data-Capture (CDC) allows capturing committed changes from a database in real-time and propagating those changes to downstream consumers [1][2]. CDC is becoming increasingly popular for use cases that require keeping multiple heterogeneous datastores in sync (like MySQL and ElasticSearch) and addresses challenges that exist with traditional

                    DBLog: A Generic Change-Data-Capture Framework
                  • Cysharpの河合様をゲスト講師にお招きしてゲームサーバーに関する社内勉強会を開催しました! | DevelopersIO

                    データアナリティクス事業本部の貞松です。 今回はデータ分析でも機械学習でもない話です。 細かい経緯はさておき、ゲーム開発におけるクライアントサイド(主にUnityを想定)だけでなく、サーバーサイドまで一貫してC#で開発することを想定した場合の知見を蓄積する為の社内タスクフォースが発足しました。 その活動の一環でCysharpの河合様とコンタクトを取らせていただき、ゲームサーバーに関する勉強会を実施していただくことになりました。 本記事は、上記勉強会のまとめ的な内容と個人的に重要だと感じたポイント、またゲームサーバーの開発を加速するCysharp製のライブラリについて記載します。 2020.9.16更新 : 当日のスライドをシェアいただいたので追加しました! 株式会社Cysharpについて 今回の勉強会で講師をしていただきました河合様が代表取締役を務められているCysharpのコーポーレート

                      Cysharpの河合様をゲスト講師にお招きしてゲームサーバーに関する社内勉強会を開催しました! | DevelopersIO
                    • DBeaverでデータベースからのCSVエクスポートをお手軽に自動化する | DevelopersIO

                      こんにちは。データアナリティクス事業本部の松村です。ジョインブログを投稿してから2ヶ月以上経ってしまいましたが、ようやく2本目に漕ぎ着けました。これからはもう少しペースを上げていきたいです! 今回はデータベースからのCSVエクスポートを自動化する方法を紹介します。 ツールとしてDBeaverを使用します。Windows/Mac/Linuxと、主要なデスクトップOSで動作し、機能も多彩です。以前も弊社ブログでご紹介したことがあります。 DBeaver Community | Free Universal Database Tool 複数のデータソース(Redshiftや主要RDBMS等)及びOS(Mac/Windows/Linux)対応の無償SQLクライアントツール『DBeaver』 DBeaverにはTaskというDBに対する定形作業を自動化する機能があり、これを使います。実際の運用におい

                        DBeaverでデータベースからのCSVエクスポートをお手軽に自動化する | DevelopersIO
                      • Laravel.shibuya #4に参加して超PHPerになるための手掛かりを得た #laravelshibuya - 超PHPerになろう

                        Laravel.shibuyaは渋谷の5人のイカしたLaravelギャングどもが今年の5月から定期開催するミートアップです。 laravel-shibuya.connpass.com よくあるセッション中心の技術勉強会とは異なり、Laravel.shibuyaはIRT(Interactive Round Table)、つまり座談会による参加者同士の議論が主体の構成です。参加者は複数の会議室に分かれて、それぞれ少人数で議論を行います。今回は「PHP IRT」「Laravel IRT」「PHP Beginner IRT」「Laravel Beginner IRT」の4つに分かれ、20分のターンを3回繰り返す構成です。参加者は休憩時間に別の部屋に移動することができます。 PHP Track 私はLaravel JP Conference 2019の当日スタッフを請け負って懇親会LTまで引き受けて

                          Laravel.shibuya #4に参加して超PHPerになるための手掛かりを得た #laravelshibuya - 超PHPerになろう
                        • GCPでマイクロサービス Sagaパターン編

                          この記事は Google Cloud Japan Customer Engineer Advent Calendar 2020 の 22 日目の記事です。 こんにちわ。今日はマイクロサービスの設計パターンの一つ Saga パターン と GCP での実装例を紹介します。マイクロサービス入門者の方に向けた記事として、できるだけわかりやすく書いてみたいと思います。 TL;DRSaga パターンはマイクロサービスでトランザクショナルな処理を実現するアーキテクチャ パターンGCP では、Cloud Run や Cloud Workflows などのサーバーレス サービスを利用して、マイクロサービスを効率よく構成可能GitHub にすぐに試せるサンプルコードがあります マイクロサービス アーキテクチャの課題 マイクロサービスの概念は以前からありますが、最近では Kubernetes やサービスメッシュ

                            GCPでマイクロサービス Sagaパターン編
                          • パタン・ランゲージとオブジェクト指向の関係、あるいは分析と総合の動的平衡 - assertInstanceOf('Engineer', $a_suenami)

                            ここ数日、こまどさん(@koma_koma_d) が Twiter でクリストファー・アレグザンダーのパタン・ランゲージやそれを参考にしたデザインパターンやアジャイルプロセスなどについて話していて、それにつられて僕もいろいろ考えてみたりしたのでブログにまとめておこうと思う。 ちなみにこまどさんもブログにまとめられており、その記事がこちら。 ky-yk-d.hatenablog.com まあ、僕はあまり大それたことを言うつもりはないのだけど、全体と部分、分析と総合、デザインの民主化、遅延結合などをキーワードに思ったことを徒然なるままに書いていく。Twitterで述べたことをまとめておくかっていう程度のゆるい動機なので、ツイートの引用が多くなること、図を書いたり出典を丁寧に引用したりはできないかもしれないんだけど、そこはあらかじめご容赦願いたい。 パタン・ランゲージとは 読者にどの程度の知識を

                              パタン・ランゲージとオブジェクト指向の関係、あるいは分析と総合の動的平衡 - assertInstanceOf('Engineer', $a_suenami)
                            • Go で RDBMS のいろんな Utility を作ってみた

                              技術ネタ中心にその他雑多なことを

                                Go で RDBMS のいろんな Utility を作ってみた
                              • IoTデータ処理の考え方 - めもおきば

                                世の中いろいろな「IoT」がありますが、突き詰めればデバイスから上がってくるデータを処理して何かを実現するのがIoTです。IoTにおけるデータ処理を考える上で、ネットワークプロトコルの設計指針を参考にするとうまく整理できます。 シンタックス、セマンティクス、そしてコンテキスト ネットワークプロトコルを設計するときにはシンタックス(Syntax; 文法)とセマンティクス(Semantics; 意味)に分けて考えます。そしてネットワークプロトコルの外側にあるコンテキスト(Context; 文脈)に基づいて処理が行われます。 それぞれ掘り下げていきます。 シンタックス:どのようにデータをやりとりするか どのようにデータを送り、受け取るかという「文法」を決めるのがシンタックスです。 たとえばHTTPであれば、HTTPクライアントがHTTPサーバにTCPで接続し、以下のフォーマットでリクエストを送り

                                  IoTデータ処理の考え方 - めもおきば
                                • 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〜)
                                  • 2004年稼働の「ZOZOTOWN」を5年越しで刷新中、AWS上でマイクロサービスを推進

                                    年間1000万人超が買い物をする衣料品EC(電子商取引)モール「ZOZOTOWN(ゾゾタウン)」。運営元のZOZOは現在、同社初となるZOZOTOWNのシステム刷新を5年越しで進めている。オンプレミス環境で2004年に構築したシステムをつくり替え、処理能力の引き上げと合わせて、アプリケーションの開発効率を向上させる狙いがある。 「開発とビジネス部門を密に連携する『BizDevOps』という方針の下、ユーザーに対して本質的な価値を素早く提供できるようにしたい」。プロジェクトを率いる瀬尾直利技術本部本部長兼VPoEはシステム刷新の背景をこう語る。 ストアドプロシージャーをJavaに書き換えるも性能出ず システム刷新は現在も続いており、目指す姿までの進捗率は50%程度という。これまでの取り組みを振り返ると大きく2つのフェーズに分かれる。第1期に当たる2017年から2019年にかけては、オンプレミ

                                      2004年稼働の「ZOZOTOWN」を5年越しで刷新中、AWS上でマイクロサービスを推進
                                    • STIとautoloadingとRails 7 - Money Forward Developers Blog

                                      こんにちは。マネーフォワード クラウド会計Plus (以下会計Plus)でエンジニアをしているぽっけです。 しばらく前に、会計PlusのRails 7へのアップグレードが完了しました。その中では様々な対応を行いましたが、この記事では特に印象的だったSTIとautoloadingの対応についてご紹介しようと思います。 STIとautoloadingは相性が悪いです。Rails 7以前は簡単な修正でこれらが共存して動いていましたが、Rails 7ではそのコードが動かなくなってしまいました。この問題は最終的には修正されましたが、それまでに紆余曲折あり修正までに何回ものPull Requestが必要になりました。 ⁠対象読者 Ruby on Railsを使用した開発経験があることを前提としています。また、STIやautoloadingについて詳細な説明はしません。それらを知らない場合は、該当するR

                                        STIとautoloadingとRails 7 - Money Forward Developers Blog
                                      • plant_erd - ER図をPlantUML用にエクスポート

                                        UMLをテキストベースで記述できるPlantUMLを使っている方は多いのではないでしょうか。クラス図を流用する形でER図も描くことができます。そして、データベースはすでにあり、そこからPlantUML用に出力できればいいのに、と考えている方もまた多いでしょう。 そんな方にお勧めなのがplant_erdです。各種データベースに対応したER図エクスポートソフトウェアです。 plant_erdの使い方 出力した内容をPlantUMLで表示しています。 plant_erdはSQLite3、MySQLそしてPostgreSQLに対応しています。各データベースの内容をそのままPlantUML向けに出力が可能です。特定のテーブルだけを出力対象にもできます。リレーションも再現され、データベース構造をドキュメントに書き出すのにぴったりです。 plant_erdはGo製のオープンソース・ソフトウェア(MIT

                                          plant_erd - ER図をPlantUML用にエクスポート
                                        • 機械学習したデーターを爆速で販売するサービスを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の比較 - のんびり精進
                                            • 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
                                              • 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
                                                • 退職のお知らせ

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

                                                  • 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株式会社
                                                      • 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 だと思うんだけど、コンパイラがそこそこ怒

                                                        • 「RDB生みの親」の提言から50年、データの泥沼から出られない日本企業

                                                          「将来、大規模なデータバンクにおいては、データがマシン内でどのように編成されているか(内部表現)について、ユーザーが意識しなくて済むようにしなければならない」 これはリレーショナルデータベース(RDB)の生みの親、エドガー・フランク・コッド博士が1970年に発表した、いわゆる「コッド論文」の冒頭にある言葉である。原文は次の通りで筆者が訳した。 “Future users of large data banks must be protected from having to know how the data is organized in the machine(the internal representation).” コッド博士の提言を実現するには、ビジネスの現場を担うユーザーが理解でき、場合によっては自ら記述できるデータの定義と、定義に沿ったデータをつくり出し、処理する情報システ

                                                            「RDB生みの親」の提言から50年、データの泥沼から出られない日本企業
                                                          • 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
                                                            • 部内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活動ブログ
                                                              • Apache Sparkコミッターが教える、Spark SQLの詳しい仕組みとパフォーマンスチューニング Part1

                                                                2019年3月19日、Data Engineering Meetupが主催するイベント「Data Engineering Meetup #1」が開催されました。データの収集や管理、処理、可視化など、データエンジニアリングに関する技術の情報を共有する本イベント。データエンジニアリングの最前線で活躍するエンジニアたちが集い、自身の知見を共有します。プレゼンテーション「Deep Dive into Spark SQL with Advanced Performance Tuning」に登壇したのは、Databricks Inc.の上新卓也氏。講演資料はこちら Spark SQLの仕組みとパフォーマンスチューニング 上新卓也氏:それでは発表を始めます。『Deep Dive into Spark SQL with Advanced Performance Tuning』ということで、Spark SQ

                                                                  Apache Sparkコミッターが教える、Spark SQLの詳しい仕組みとパフォーマンスチューニング Part1
                                                                • 競技プログラミングの問題を自動で解きたい - うさぎ小屋

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

                                                                  • 採用目的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
                                                                          • 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の日記
                                                                            • 大コンテナ時代における.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