Commitfest 2020-09 - psql関連
はじめに
先週にPostgreSQL 13.0リリースされたってこともあるけど、久々にCommitfestを見てみようと思った。 commitfest.postgresql.org とりあえず、自分にとって興味のあるpsqlについて、まず見てみようかと。
psql関連の項目
とりあえず"psql"でCommitfestページ内を引っ掛けると、以下の8項目があった。
- psql - add SHOW_ALL_RESULTS option
- psql - possibility to specify where status row should be displayed
- allow to set a pager for psql's watch command
- Confusing list foreign table options in psql - Fixing slash usage text
- list of extended statistics on psql
- document that psql's FETCH_COUNT does not work with combined (\;) queries
- psql: add \si, \sm, \st and \sr functions to show CREATE commands for indexes, matviews, triggers and tables
- psql: Include access method in listTables output
とりあえず、議論の発端となったメールの概要くらいは見ておこう。
psql - add SHOW_ALL_RESULTS option
これはざっくりいうと、連結されたクエリの最後のクエリだけでなく、途中のクエリの結果も表示する、というものらしい。 現在は、連結したクエリをpsqlで実行すると、最後のクエリの結果のみが表示される。
psql - possibility to specify where status row should be displayed
\h 出力のようにコマンドタグを毎回stdoutにリダイレクトできないか、という提案なんだろうか。 で、この提案機能の使い途って何?という質疑が続く。
このパッチの作成者のPavel Stehuleさんが言うには(ML投稿の雑翻訳) 、
このパッチの主な動機は、クエリを記述および編集するためにpsqlを使用し、pspgまたは他の同様のツール(tail, ...)を使用して結果を2番目のターミナルで参照することです。 この設定の利点は、SQLとクエリの結果を一緒に表示できることです。
ということらしい。pspgってツールは知らなかったので、ちょっと調べてみた。 github.com
pspgというのは、どうやらページャのようだ。psql変数PAGERにpspgというのを指定すると使えるようだ。ヘッダ行を固定したままスクロールとかできるようなので、ちょっと便利そう。
allow to set a pager for psql's watch command
\watch
メタコマンド専用のぺージャを設定する、psql環境変数PSQL_WATCH_PAGER
の提案っぽい。
提案者は一つ上の項目と同じPavel Stehuleさん。
Confusing list foreign table options in psql - Fixing slash usage text
psqlの外部表に関するメタコマンド
\dE[S+] [PATTERN] list foreign tables \det[+] [PATTERN] list foreign tables
の説明が同じで混乱するから改善したいという話かな?詳細は追ってない。
list of extended statistics on psql
拡張統計情報に関するリストを表示するメタコマンドdz
の提案かな?
document that psql's FETCH_COUNT does not work with combined (\;) queries
連結されたクエリ(DECLARE ... <first select>; <second select>
)の挙動(2番目がSELECTでない場合、1番目のSELECTの内容がカーソル定義として適用されるけど、それに関する文書の説明の改善提案なのかな。詳細は追ってない。
psql: add \si, \sm, \st and \sr functions to show CREATE commands for indexes, matviews, triggers and tables
psqlに新しいメタコマンドを追加して、インデックス、マテリアライズド・ビュー、トリガ、テーブルのCREATE文を表示させようという提案かな。 今でも、ビューについては、
pgbench=# \d+ accounts_v View "public.accounts_v" Column | Type | Collation | Nullable | Default | Storage | Description ----------+---------------+-----------+----------+---------+----------+------------- aid | integer | | | | plain | bid | integer | | | | plain | abalance | integer | | | | plain | filler | character(84) | | | | extended | View definition: SELECT pgbench_accounts.aid, pgbench_accounts.bid, pgbench_accounts.abalance, pgbench_accounts.filler FROM pgbench_accounts;
みたいな定義を表示するので、それと同じようなことがやりたいのかな?
psql: Include access method in listTables output
これは、テーブル一覧を表示する\dメタコマンドの詳細モード(\d+)を引数なしで実行したときに、各テーブルのアクセスメソッドを表示するもの。これは既にcommitされているので、最新のソースを入手すると挙動が確認できる。
$ ~/pgsql/master/bin/psql -p 10014 pgbench psql (14devel) Type "help" for help. pgbench=# \d List of relations Schema | Name | Type | Owner --------+------------------+-------+---------- public | pgbench_accounts | table | postgres public | pgbench_branches | table | postgres public | pgbench_history | table | postgres public | pgbench_tellers | table | postgres (4 rows) pgbench=# \d+ List of relations Schema | Name | Type | Owner | Persistence | Access Method | Size | Description --------+------------------+-------+----------+-------------+---------------+---------+------------- public | pgbench_accounts | table | postgres | permanent | heap | 13 MB | public | pgbench_branches | table | postgres | permanent | heap | 40 kB | public | pgbench_history | table | postgres | permanent | heap | 0 bytes | public | pgbench_tellers | table | postgres | permanent | heap | 40 kB | (4 rows)
現状は、コア機能にはheapアクセスメソッドしかないけど、zheapやZedstoreのような別のアクセスメソッドが組み込めるようになったら、こういう機能があると便利なのは確か。
思うところあって復活
数年ぶりにはてなブログを再開しようと思う。
Qiitaだと調査途中の記事を投下しずらいというのもあるので、調査途中のメモをこっちに残すような使い方にしようと思う。
MongoDB最新動向
ということで、Database Lounge Tokyo #1 に落選したのですが、幸か不幸か同日・ほぼ同ロケーションの恵比寿でMongoDB最新動向が開催されていたので、そっちを聞きに行くことにしましたよ。
MongoDBは2年くらい前にPostgreSQL JSONB型との比較ということで、MongoDB 2.4/2.6くらいを使ったんだけど、それ以降、あまり追っていなかったから、最新動向を聞いてみることにした。
MongoDB World 2016 キーノート報告
講師は鈴木いっぺいさん
CEOからのふわっとした話
- MongoDB World、3000人くらい来場する。
- 今年のキーワード "Giant Ideas" 大きなアイディア
- スピード重視。いろんなデータを集めて早く分析し、AI/Deep Learningにかけたい。
- MongoDBコンセプト
- データベース設計、運用の工数を以下に少なくするか。
- 事例紹介
- Mapit ナイジェリアの会社の事例。
- Nanopore 4,5分でDNA解析
- MongoDB使われているよーという話。
- MongoDBのユーザ数は増加。既に2000万DLされている。
- 開発者数も増えている。アクティブ。
- NoSQL内ではMongoDBが過半数のシェア
MongoDB 3.2の話
- WiredTigerを取り込んだMongoDB 3.2の話。
- Replica Set Election 1.7秒で投票完了。
- ドキュメントバリデーションの追加
- JOIN相当の$lookup, pipeline, 複数ストレージエンジンの採用。インメモリストレージなど。
MongoDB 3.4の話
- 今年の後半にリリース?
- Initial Sync、同期のパラレル化、途中再開を可能に。
- Collation Per Operation
- BI-Connector, Tableau等可視化ツールとの間の性能向上。
- Compass:スキーマ可視化
- Read-Only View:データのマスキングもできる?
- なんとグラフ検索ができるようになる! $Lookup の拡張(recursive lookup)
- あれかなー、PostgreSQLでいうところのCTEっぽいやつ?非循環グラフとか限定されるのかしらん。
- #facet 1つのクエリ内で複数のクエリを含められる?うーん、MongoDBそのものというより可視化の話なのか・・・?
- Zones Sharding
- 複数データを利用者近くに集中させるケース
- 新しいデータと古いデータを分けるケース。
Compassの話
Atlasの話
MongoDBは迷走気味?
本題に入る前に、まさかの MongoDB World 2016 キーノート報告 をDisるとかw
- 米国と日本で使い方違う説。
- 日本ではアジャイル開発・半構造データ
- そもそもMongoDBは分析用途ではない!
- Mongoは小さいCRUDを大量に処理するのに向いているのでは?
本題:MongoDB 最新情報
API
- ドキュメントバリデーション
- 部分的インデックス
- ある値の条件によってインデックスに追加。
- PostgreSQLの部分インデックスと同じ考え方かな。デモでもインデックスサイズ削減を例にしていたし。
- ある値の条件によってインデックスに追加。
$lookup
- Left outer join相当ができる。
- 他のコレクションにクエリを投げつけているだけ。
- ACIDないし、RDBの感覚で使うと痛い目見るかも。
アグリゲーションの性能改善
- プライマリシャードに負荷集中というのを解消したらしい。
- PoistgreSQLで言えばインデックスオンリースキャンっぽい動作の追加?
高可用化の改善
- レプリカセット構成の変更
Read Concern
ストレージ(WiredTiger)
- MMAP v1とは
- ディスクにあるファイルをそのままメモリに乗せるというか、OSに任せている。
- 更新は in place ⇒ 書き込みロックが必要。
- V2.x系はデータベース全体、V3.0 ではコレクション全体のロック。
- ディスク再配置時が問題。処理が重い。
- WiredTiger
- MVCC採用
- 書き込み中に読み込みが待たされない。
- ドキュメントレベルロックを実現
- きちんとMongoDBでストレージを管理。
- チェックポイント時(ファイルへの書き戻しタイミング)にVACUUM相当の処理を行う。
- ジャーナル有効化でWAL相当の永続化を行う。
- インデックスとデータファイル間の同期のためにトランザクション処理。複数コレクション対応ではない。
- MVCC採用
他のストレージ
- インメモリ
- 暗号化対応のWiredTiger
- 有償版のみ。
その他
- 運用改善
- fsyncでロック
- 32bitが非推奨
QA.
- MMAP v1 から WiredTigerへの切り替え⇒レプリカセット+ローリングを有効に使う。
- V3.0⇒V3.2の性能改善効果って?
- 書き込み性能構造、マルチコアに対応
- セキュリティ関連は?
- 暗号化くらい?
- バリデーションの記述はどの程度できる?
- レンジやリストは可能。MongoQueryと同じ書き方と同じものができる。
最後に
- はじめてのMongoDB の紹介。
- アプリ開発者向けの本だよー。DBA向きではないっぽい。
- じゃんけん大会で2冊デリバリ。残念ながらGetできず。
DB Online Day 2016 データベースの「自由な選択」
ということで、どういうわけか今週も大崎に来てしまいました。
先週(OSSコンソーシアム総会)は大崎駅直結のゲートシティでしたが、今日は駅からちょっと歩いた場所にある大崎ブライトコアへ。
- 今日、参加したのはDB Online Day 2016 データベースの「自由な選択」企業で使う、PostgreSQLのいまというイベント。
- テーマ的に当たり前ではありますがスーツな人が多いですね。エンタープライズな感じ。
きちんとまとめになってないので、ちょい長いですが以下、時間があれば見てくださいませ。
「DBMSの市場の現状と今後」〜このままOracleを使い続けるのか〜
- 講師はiTRの生熊さん。
- iTRは調査&コンサル会社。調査会社の立場からみた市場動向がテーマっぽい。
IT予算の傾向
- IT予算比率は3%に満たない程度で横ばい。
- ITの新規投資比率は低下傾向
- IT戦略=売上増への直接的な貢献。コスト削減ではない。
ITの動向の重要度と伸び率
ビッグデータって本当?
- 2014年のデータ流通量=14.5 EB.
- 9年間で9倍以上に。
- 今後は非構造化データが増えるのか?
- センサ・画像データのような非構造化データが増えているのは事実。
- しかし顧客データや経理データのような構造化データも増加はしている。
企業ITの現状
- 増えないIT予算、増やせない新規投資、増加するシステムとデータ
- 要するにIT部門はつらぽよ。
利用しているDBMSの種類と要望
DBMSに対する投資
- 基本的には横ばい。しかし、半数近くは投資増加を考えている。
- 企業規模が大きければ投資を増加しようと考える傾向がある。
- 用途の主な3本柱。顧客管理、販売支援/営業支援、データ分析
ためらっていませんか?PostgreSQLの適用 −押さえておきたいポイントと適用事例
- 講師は富士通の佐野氏
OSS DBMSの活用状況
- OSS導入済みの企業は30%超。
- コスト削減だけなくビジネス・イノベーション適用
- PostgreSQLとMySQLの比較
- 歴史
- PostgreSQLは一貫してコミュニティで開発
- MySQLは企業提携と買収による発展
- 富士通はビジネス・イノベーション活用のためにはPostgreSQLが最適と考えている。
- ライセンス。PostgreSQLとMySQLの説明。BSD vs GPL
- PostgreSQLもMySQLの性能
- (このへんはベンチマークモデル次第だしなあ・・・)
- 歴史
PostgreSQLですすめるビジネス・イノベーション
- 「データのオープン化」が肝である。
- レガシーデータを新システムにETL等で変換しなければならない。
- レガシーデータを直接PostgreSQLデータ化。
- ETLの代わりにPostgreSQL化する。
- (DBLINKなの・・・FDWじゃないの・・・?)
- 富士通とPostgreSQL
- Powergres Plus, 自社開発DBにPostgreSQL, PostgreSQLアプライアンス開発, コミュニティ活動
適用事例1
- PostgreSQLを速やかに導入したい
- もともと商用DBMSを使っていた。コスト面の課題。
- 対応
- 段階的なPostgreSQLの適用
- PostgreSQL化でコスト削減
- 富士通版PostgreSQLによるメインフレーム連携
適用事例2
- マイグレーションを起点とした適用領域の拡大
- 信頼性の確保
- ディザスタリカバリ
- データの暗号化
- 最終的に集約したい。運用コストの最適化。
- 運用負荷の軽減。仮想化も併用。
- 意思決定の迅速化
- 信頼性の確保
- Step1 信頼性向上
- データベースの二重化(Streaming Replicationの利用)
- コストも高くならない。
- 透過的暗号化の適用
- SRによるディザスタリカバリ(暗号化したまま、がポイント)
- データベースの二重化(Streaming Replicationの利用)
- Step2 データ集約
- サーバ集約
- Step3 分析
- 待機系を利用したデータ分析
- インメモリカラムナ
- 並列SQL処理
- 移行の取り組み
- 移行コストの見積もり
- 他DBMS互換機能の相談
- 移行ツールや移行ガイド
- 顧客へのPostgreSQL教育。これが一番重要と言っていた。
- Symfoware Server(富士通版PostgreSQL)のポイント
- NCHAR対応
- WAL二重化
- 透過的暗号化
- 並列SQL処理
- インメモリカラムナ
適用時のポイント
- 移行の進め方
- サポート期間(PostgreSQLの頻繁なバージョンアップ対応含む)
- 販売終了後5年+延長サポートあり
- PostgreSQL自体のEOLは5年
- OSS製品組み合わせの担保
- Symfoware Serverは周辺ツールもセットで担保している。
企業で使えるPostgresとは?EDB Postgresはなぜ企業で導入されるのか?
- 前半の講師はEDB社の高鶴さん
- (もしかして、今年の4月に問い合わせに対応してくれた人かな・・・)
- まだEDBはシェアはそれほど高くはないが、今年になって引き合いが多くなってきた。
- 某商用DBMSのライセンス形態変更の影響か?と。
EnterpriseDBの紹介。
- PostgreSQL、関連製品(EDB Postgres)の販売、サポート。
- 運用ツール、連携ツールも開発、XAコネクタも予定。
- PostgreSQL開発コミュニティへの参加も多数。
- Amit, Bruce, Robert...
- 製品ロードマップの公開
- 24h365dサポート
- Fixパッチの提供
- Private Cloud, Public Cloudにも対応
- OpenStack準拠のPrivate Cloud構築
- EDB Postgres はPostgreSQLメジャーバージョンリリースから数ヶ月で対応。
PGDGとの関連
- 性能改善等はコミュニティへ還元
- Oracle互換などはEDB独自で
EDB Postgresの売り
- 後半はアシストでの事例紹介
- 講師は徳原さん。
採用傾向
- EDB Postgres導入は成長傾向にはある。
- Oracle DB EEかからの移行が主力。
- 稼働環境は半分は仮想環境。
- ポイントは割当CPUコアライセンス。ソケット数ではない。
- 利用CPUコア数は半分が4コア。8コア〜36コアもそれなりに利用。
移行事例時の選定ポイント
OracleDBからの移行
- 1400本のストアド・プロシージャ→97%互換
- 新バージョンになればOracle互換機能は増えていく。
EDB Postgres採用にむけて
- EDB Migration Toolkit
- 移行成否、移行エラーを確認可能。
- 移行体験サービス(有償)もある。
- 移行アセスメント
- 移行の難易度判定、コスト効果のレポート提示。
製品の組み込みDB も PostgreSQL で!製品での PostgreSQL/PowerGres 採用事例のご紹介
- 講師はSRA OSSの佐藤さん
- あれ、以前と雰囲気が違う気が・・・
PostgreSQLへの取り組み
- PostgreSQL Windows化
- pgpool-II
- 8.4 再帰SQL
- 9.0 Windows版64bit対応
- 9.3 ラージオブジェクト64bit対応
組み込みDB(パッケージ製品用組み込みDB)
組み込みDBの要件
- インストールが楽
- DBのインストールを意識させないのがベスト
- PostgreSQLは△:インストーラメッセージが英語しかない
- PowerGresは○:日本語対応
- メンテナンスが楽
- PostgreSQLは△:オンライン・バックアップ
- PowerGresは○:オンラインバックアップGUI設定
- サポート体制
- 古いバージョンのサポート
- PostgreSQLはX:自己責任、EOL5年
- PowerGresは◎:延長サポート
- 低コスト
- ボリュームディスカウント
- PostgreSQLは◎:無料。
- PowerGresは○:サポート込み128K円、パートナー向け割引あり。
PowerGresの紹介
- 概要
- 基本はPostgreSQLと同じ。
- PowerGres Plus(富士通開発:SRA OSS販売)は独自機能追加もある。
- 販売実績:10000本以上。
- PlusはWAL二重化, TDE
- HAはAct-Stb構成のクラスタウェア同梱
- 24h365d サポート、7年サポート+延長サポート
- PostgreSQL自体のサポートもやってる。
- GUI管理ツール, Webブラウザベース
- Plusの機能紹介。WAL二重化とTDE。
- TDEのオーバヘッドが低いのが売り。
スペシャル対談「石井達夫さんに訊く、PostgreSQLのこれまでとこれから −次期バージョン、PostgreSQL10.0はどこへ向かう?」
- 今日のメインイベント。俺のタイピングが火を噴くぜ!
- トーカーはSRA OSSの石井さんと、DBOnlineチーフキュレーターの谷川さん
- DB Online立ち上げから5年ですか。
- OSS DBMSの記事は結構人気のある長く読まれる記事。
- 今回は公開インタビュー形式。
石井さんの自己紹介
- もともとは組み込み系エンジニア。アセンブラとかもやってた。
PostgreSQLとの出会い
- "PostgreSQL"の前から関わっていた。バークレー大学の"Postgres"プロジェクトの頃から。
- ハワイ大学でリポジトリの実装に関わっていた。RDBMS上にOO/グラフ的なものを作っていた。('92,93頃)
- 帰国後、"Postgres95"に関するMLを立ち上げた。最初は数名くらいの有志から。
- SRAの仕事として使いようになったきっかけは?
- 1999年にPostgreSQLの仕事をするようになった。この年にコミッタ就任&JPUG設立。
- JPUGは当時は50人くらい。企業でも僅かに使い始めた。(6.5のころ)
- 当時の苦労談
- PostgreSQLが広まるきっかけ
- このころに本を書くようになった。これも普及に一役買ったかも。
OracleでPostgreSQLの競合資料探したが日本にも米国にもなかった話
- 実は日本はそのころからPostgreSQL先行国だった疑惑。
7.xの頃の苦労
- このあたりで日本語対応を行った。
- 他の言語をどうするのかは悩んだ。ネット経由でアジア圏の人に協力してもらった。
PostgreSQLイケるな?と思ったのはいつごろ?
- 6.x のころはWALなかったし。性能は数tpsとかw
- 2003年くらい(PostgreSQL 7.4くらい?)から使えそうな感触。
- 7.4は結構安定したバージョン。ビジネスとして使うには良かった。
- PostgreSQLが世に広まったのは、8.xのころという印象。
- 日本はLinux普及が遅かった。だからWindows対応で広まったのでは。
- (個人で気には8.3の自動バキュームなんだよなー)
レプリケーションの話
- 当初はコア機能に入らなかった。pgpool-IIのレプリケーション機能の開発動機にもなった。
- 9.0のレプリケーションが入ってから、PostgreSQLフォークが増えた。
- 一回フォークしたら、コアに吸収されないと成長しないという問題。
商用DBMSからの移行
- 移行というより、新規にPostgreSQL導入という流れだった。
9.xの進化について
- 若い開発者がどんどん入ってきたのは大きい。
- 若者は失敗を恐れない。馬力もある。
PGEconsの話
- ベンダーが寄り集まってもアウトプット出るの?という谷川さんの疑惑。そこを覆したのは凄い。
- 会社同士の競合もあったかもしれないが、検証を共同で実施できた。
- PGEconsのマンネリ化問題w
- 次のステップは開発者コミュニティへのフィードバック → CR部会
- 日本のビジネスユースを掬い上げてコミュニティへ。更にPGEconsとして若い開発者を送りたい。
- 日本の開発者のプレゼンスを高めたい。
PostgreSQLの今の立ち位置
- 日本でPostgreSQLが良く使われているのか?特異なのか?
- 最近はそんなことはない。日本以外の国でも使われている。最近は、むしろ日本もっと頑張れ的な。
世界のPostgreSQLイベント
- 世界中でPostgreSQLイベントは開催されている。北米、ヨーロッパ、ロシア、インド、シンガポール。
- ロシアのカンファレンスの話。ロシアの象は登山服着用w
- ロシアの大臣がカンファレンスでスピーチする。会場も大規模。派手。600人くらい参加。
- カナダ(オタワ)
- 最初の開催から10年。
- 9.6のパラレルクエリの話など。
- 9.1→9.5までの性能向上の過程。こうやってみると、順調に性能が改善されている。
- 性能は開発者の関心の高い箇所。
- パラレルクエリもその一部
- 日本からはNTT関連メンバが多く参加している。
- でも、まだ世界の開発者増加に比べると、日本の開発者増加は少ないという印象。
9.6は?10.0は?
コミュニティ運営の課題
- 古株の開発者と若手の開発者の意見の相違は、今のところうまくいってるように見える。
- パッチを作る人は増えた。レビューア数が絶対的に足りない。対策中。
- JSONなどコンサバでない機能の取り込みもPostgreSQLに入っている。これは世間の流れなのか、一部メンバが頑張っているのか。
- JSON等はロシア開発者が頑張っている。データ型とかは受け入れられやすい。
- (このへんは元々の拡張性の高さもあるよなー)
- どんどんバグ出しをしてほしい。
- PGEcons/CR部会でもそういう新機能への参画をするのか?
- まずはTODOの整理から。
石井さんが気に入っているPostgreSQL
- 元々、データの扱いに興味がある。大量のデータの管理などに興味がある。
- PostgreSQLはソースコード、アーキテクチャが綺麗。
- 変数名、コメントなど些細な部分にもコメントが来てくれるのは嬉しい。
- 趣味として楽しめるPostgreSQL(笑)
PostgreSQLコミュニティに参画してほしい人
- 開発者:PostgreSQLに不満を持っている人。
- エバンジェリストももっと必要。
PGConf.ASIA!
- 12/2, 3 @秋葉原
- ASIA最大のイベントになるように。
- 今後、アジア内で会場を持ち回りにしたい。
- JPUG, PGEconsメンバの有志で活動中。
- プログラムは募集中!
- アジアの中でも中国は結構PostgreSQLは盛り上がりつつある。
その他
- 大崎駅周辺、探してみると意外と中華系ラーメン店多いのね。
- 今日食べたのはモヤシソバ(720円)@一番
OSSカンファレンス総会に行ってみた
今日は年休だったんだけど、OSSカンファレンスの総会があるということで大崎まで足を運んでみた。
総会そのものは興味ないのでパスしたが、後半のオープンソースコンテスト発表会には興味があったので、聞いてみることに。
- 今回はPostgreSQL/DBMS関係の発表はないけど、こういうのって、普段の仕事でもなかなか聞けないからねー。
- あとは、どういう人種(年代や会社、職種等)がこのコンソーシアムに参加しているのかを見てみたかった、というのもある。
- (実は大崎で私的な用事があったので、そのついでにOSSカンファレンスにも出てみたというのが真相に近い)
まあ、いろいろ分からないところも多かったが、こういう話も聞いておくのもたまにはいいかな。
なお、だからと言ってOSSコンソーシアムに入会するかと言われると・・・微妙ですなあ。
会社として参加するには、説得するのが難しそうだし、個人参加という感じの団体でもなさそうなので。
プログラミングコンテストに勝つためのOSS
- 発表者は左野寛之さん。会津大の学生さん
- Google Summer of Code 2016に参加。RoR改善に取り組んでいる。
- OSS開発奨励金:プロジェクトが完遂したら$5500!
プログラミングコンテストの話
- アルゴリズム系プログラミングコンテストに参加。
- 入力や実行時間に制約がある
- 数学能力だけでなくプログラム開発のスキルで対抗。
- Googleからオファー、ドワンゴでプログラミングコンテストを主催。
- 賞金付のコンテスト
Aizu Online Judge(AOJ)
- プログラミングコンテストの練習システム
- AOJの問題をまとめた本も出版されていると。
プログラミングコンテストのためのライブラリ
- ソースファイル分割不可、標準ライブラリのみ。
Social Snippet
今後にむけて
- オンラインジャッジを利用した自動的な評価。
OSS ERP JPiereの紹介
- 講師は株式会社オープンソース・イーアールピー・ソリューションズ 萩原秀明さん
- 学生の頃に会計を専攻していた。
- オープンソースのERPに出会って、依頼ERP一筋でやってきた。
- JPiere=iDempiereのプラグイン
- 日本の商習慣に合わせたもの。
ERP(Enterprise Resource Planing)
- 企業の業務データの一元管理ができるのがメリット。しかし高額である。
- そこでOSSのERPの出番となる。
- ERPとして必要な機能は一通り揃っている。
- Best of Open Source Softwareも受賞。
- JPiereはプラグイン集。
- Linux/PostgreSQL/MySQLなどのミドルのソースをカスタマイズして提供する人はそれほど多くはない。
- アプリケーションレイヤでは、ソース改造・カスタマイズして提供というケースは多い。
- が、その場合メンテナンス(アップグレード時)に追随するのが大変。
- プラグイン化によりその問題を解決
- JPiereaはGitbucketでコードを管理している。
JPiereのデモ
- 受注のデモ。
- 画面設定はパラメータ設定で可能。
JPiereの宣伝。
コミュニティ
- 技術と収益をiDempiereのコミュニティにも還元することを考えている。
- 2週間くらい合宿みたいなこともやった。
- 日本とアジア圏で商習慣ってどのくらい違うのかなー。
- フリーライダーにはなりたくない。
- 寄付やバグレポートは毎月やっていく。
OpenFlowパッチパネルのご紹介
- 講演者は仲間 修也 氏
- 沖縄オープンラボラトリ所属
OpenFlowパッチパネル(OF-Patch)とは
- OpenFlowスイッチにてパッチパネルを実現したもの。
- パッチパネルって?
- 裏面にサーバ、ルータ、スイッチを、表面の抜き差しでNW構成を変更するもの。
- OpenFlowの説明
- フローを入力することで制御する。
- OF-PatchとGUIの制御画面を今回開発している。
OF-Patchの必要性
- 従来のパッチパネルでは、物理的な配線を手動で切り替える必要があった。
- それをソフトウェアで制御することで、現地での作業等なしにしたい。
- 沖縄オープンラボに実際に組み込んでみた。
of-patchの実装
of-Patchのデモ
- 円周の外側が接続機器などになる。
- デモもSpine/Leafの構成。
- 画面上で線を繋いでフローを追加/線を切ってフローの削除などを実施。
オープンソースな個人番号カードドライバ
- 講演者は濱野司さん。OpenLDAPを作っている。
- 「リバースエンジニアリングしてはいけない」と言われなかったので、さっそくやってみたw
データモデル
APDUコマンド仕様の話。
ここから本題?
PKCS#11 APIs
- インタフェースだけ規定。
- 全部で100個以上あるらしい。主要なものは実装されつつある。
マイナンバーカードでSSHの話
- マイナンバーカードでSSHする あー、この人だったのかー!
- 先週結構話題になったblogだよな。
- マイナンバーカードで暗号化するという。
総務相に言いたいこと
- 仕様を隠さないで
- ハックする人がいるから無駄ですよ
- 普及させたいなら公開しろと
目指していること
OpenLDAP高速化の話
- ここから本題かw
- イギリスで発表したスライドの説明
WiredTiger
- BekeryDBを作った人がまたWiredTigerという新しいDBを作った。
- 最近のマルチCPUに対応。
- WiredTigerを使ったOpenLDAPバックエンドを開発した。
以降はわりとどうでもいい話。
役員体制の報告
- わりとどうでもいい。
コンテスト結果発表
- 優秀賞(2名:賞金10万円)
- 佐野さん(IPA発表があるので、もう帰ったらしい)
- 萩原さん
- 最優秀賞(1名)
- 濱野さん
ハッカーズチャンプルー2016 カンファレンスに行ってきたよ
ということで、JPUGの予算を使って沖縄そばを食べに・・・じゃなくて、沖縄支部長の@zumaさんのご招待でハッカーズチャンプルー2016 カンファレンスに行きましたw
一応、きちんと発表もしましたよ。
PostgreSQL 9.6がやってくる!
PostgreSQLを使ったことがなさそうな人も多いのかな?
それでこのスライド内容で大丈夫かな?
と不安に思うところはありましたが、まずまずの感触。
「ポスグレはいいぞ」と「psqlオセロ」の反応が良かったので、自分的には良し(違
まあ、PostgreSQLを最近使っていなかった人や、今まで使っていなかった人にも、PostgreSQLをちょっと見なおしてもらえる機会になれば幸いです。
ハッカーズチャンプルー、とにかく若い人(学生含む)が多く、熱い発表が多かったですね。
PostgreSQLにも、こういう若い人をなんとか呼び込んでみたいものです。
あ、もちろん沖縄そば/ラーメンもきちんと食べましたw