MySQL

1/8ページ

Laravel:5億越えのレコードをEloquentで消費メモリを抑えながら処理する方法

Laravel:5億越えのレコードをEloquentで消費メモリを抑えながら処理する方法 私の作成したアプリにて不具合発生の連絡がありました。 結論を先に言ってしまえば、レコード数が多すぎて私の書いたコードではTimeOut 起こして終了してました。 TimeOut時間を伸ばす。 その方法もあるのですが、今回は処理時間を早くして解決するアプローチを記載していきます。 止まっていたのはLaravel […]

MySQLをDynamoDBにリプレイスしたい時に考えるべき事

MySQLをDynamoDBにリプレイスしたい時に考えるべき事 MVCモデルなフレームワークが開発の中心に座っている現在、チョコチョコと話に上がるのがSQLをNonSQLにリプレイスする話です。 具体的にはMySQLをDynamoDBにしようとかAzureが使えないかとか。 今回はDynamoDBに特化してリプレイスが可能なシーンとDBの構造設計についてまとめてみます。 MySQLなどのリレーショ […]

MySQL データは「縦持ち」「横持ち」どっちがいいの?

MySQL データは「縦持ち」「横持ち」どっちがいいの? 今入っている現場で、私は上流工程から関わって動いています。 そんな中、議論になった事案があったのでメモしておこうと思います。 議題はタイトルの通り【縦持ちVS横持ち】です。 今回の(仮)想定環境 データベース:MySQL フレームワーク:Laravel(ログイン機能付き) 1ユーザーに関連する情報として、約200のカラムが存在する 200の […]

Django:DataFrameを配列(リスト)にしてDBに格納する時の注意事項

Django:DataFrameを配列(リスト)にしてDBに格納する時の注意事項 CSVデータをDBに取り込む時どうしてますか。 CSVの構造をそのまま(計算処理と化しないで)DBに持っていくのであれば、DataFrameに格納して【to_sql】で投げてしまうのが一番簡単です。が、今回はDataFrame化した値をリストで引き取って計算して統制してDBにSaveするという面倒な段取りを踏んだ時の […]

Django:ReportLabによるPDFデータ作成で苦戦したところ

Django:ReportLabによるPDFデータ作成で苦戦したところ 『ReportLab』はDjangoでPDF出力をしようとしたときによく選択されるライブラリなのだそうです。 最近、抱えていたプログラムの方の案件がひと段落したので「他を探そう」と思ったのですが「新しいポートフォリオをくれ」と言われます。 毎回Excelで書きだすのも大変なので「仕事履歴をDB化して常に最新を出力できるように仕 […]

Python:Pandasの日付処理はクセが凄いので迷わない為の備忘録

Python:Pandasの日付処理はクセが凄いので迷わない為の備忘録 最近調べる回数が多いPandasの日付処理。 毎回違う事で悩んでいるのですが「こんな悩みを生む仕組みってある意味凄い」と思っています。 と言う事で、Pandasでの日付処理について迷わない為の基本事項をまとめておきます。 まず頭に入れておかないといけないのはコレです。 DataFrameに格納するとカラムの値はSeriesにな […]

Django:QuerySetを使ってリレーション先のカラムにfilterし抽出する方法

Django:QuerySetを使ってリレーション先のカラムにfilterし抽出する方法 Laravel のEloquentではコレがなかなか面倒だったりするけど、DjangoのQuerySetこの処理がとても簡単です。 __でテーブル名をつなぐだけでカラムまでたどり着ける 具体的にはこんなコードで処理できます。 [crayon-616aa0a1e68e4391676745/] リレーション先の値 […]

Django:The Model名 could not be changed because the data didn’t validate.エラーの原因と対策

Django:The Model名 could not be changed because the data didn’t validate.エラーの原因と対策 これは私がCRUD作成の一番最初に苦しめられたエラーです。 POSTされた値のカラム名がForm / ModelFormと合致していないときに発生します。 エラー発生原は様々ですが、私の場合は下の組合せが原因でした。 Mod […]

Django:this querydict instance is immutable request.data エラーの原因と対策

Django:this querydict instance is immutable request.data エラーの原因と対策 これが出てくるのは、POSTされた値を変更しようとしたときです。 request.POSTはQueryDictというオブジェクトで、書き換え不可になっている だからエラーが発生するんですね。 querydict instance is immutableエラーの原因 […]

Django:CRUDを実装する【create】DBへのレコード新規登録

Django:CRUDを実装する【create】DBへのレコード新規登録 updateよりも難易度は低いです。 save関数の標準動作がInsertであるため、特に工夫を凝らさなくても新規追加してくれます。 プリセットクラスを利用したレコードの新規追加方法 【CreateView】という汎用ビューが存在しています。 このクラスを利用すると新規追加のViewはたった3行の中身で終わります。 [cra […]

1 8