🗄️aidp-peoplesoft
- ソース
- GitHub で見る ↗
説明
AIDP の `aidataplatform` Spark フォーマットハンドラーを使用して、AIDP ノートブック内で Oracle PeopleSoft のデータを Spark DataFrame に読み込みます。 次のような場合に使用: ユーザーが PeopleSoft、PSFT、HCM、FSCM、Campus Solutions について言及している場合、または PeopleSoft のホスト/ポート情報を持っている場合。 認証情報: ホスト/ポート+データベース名+ユーザー名/パスワード。 読み取り専用。
原文を表示
Read from Oracle PeopleSoft into a Spark DataFrame in an AIDP notebook via the AIDP `aidataplatform` Spark format handler. Use when the user mentions PeopleSoft, PSFT, HCM, FSCM, Campus Solutions, or has a PeopleSoft host/port. Auth is host/port + database name + user/password. Read-only.
ユースケース
- ✓PeopleSoftのデータをSparkで読み込む
- ✓PSFT・HCM・FSCMなどのデータ取得
- ✓AIDPノートブック内でOracleデータにアクセス
本文(日本語訳)
aidp-peoplesoft — AIDP aidataplatform 経由の Oracle PeopleSoft
使用する場面
- AIDPノートブックから PeopleSoft のデータ(HCM、FSCM、Campus Solutions、ELM、CRM)を Spark DataFrame に取り込みたい場合。
- ユーザーが「PeopleSoft」「PSFT」「PS HCM」「Campus Solutions」といったキーワードを挙げている場合。
使用しない場面
- Oracle Autonomous DB ファミリー(ALH / ADW / ATP)の場合 →
aidp-alh - Compute / Base DB / オンプレミス上の汎用 Oracle DB の場合 →
aidp-oracle-db - Oracle Siebel の場合 →
aidp-siebel
AIDPノートブックの前提条件
sys.pathにヘルパーが含まれていること(事前にaidp-connectors-bootstrapを実行してください)。- 環境変数 / OCI Vault シークレットの設定:
PSFT_HOST(PeopleSoft DB ホスト)PSFT_PORT(基盤となる Oracle DB 向け、通常は1521)PSFT_DATABASE_NAME(Oracle SID / サービス名)PSFT_USER、PSFT_PASSWORDPSFT_SCHEMA(通常はSYSADM)PSFT_TABLE(PeopleSoft レコードテーブル。例:PS_JOB、PS_VOUCHER)
読み込み
import os
from oracle_ai_data_platform_connectors.aidataplatform import (
AIDP_FORMAT, aidataplatform_options,
)
opts = aidataplatform_options(
type="ORACLE_PEOPLESOFT",
host=os.environ["PSFT_HOST"],
port=int(os.environ["PSFT_PORT"]),
database_name=os.environ["PSFT_DATABASE_NAME"],
user=os.environ["PSFT_USER"],
password=os.environ["PSFT_PASSWORD"],
schema=os.environ.get("PSFT_SCHEMA", "SYSADM"),
table=os.environ["PSFT_TABLE"],
)
df = spark.read.format(AIDP_FORMAT).options(**opts).load()
df.show(10)
プッシュダウン SQL
データベース側で完全なソースクエリを実行します。コネクタは schema / table オプションの構築をスキップし、指定した SQL をそのまま実行します。 テーブル全体を Spark にフェッチさせたくない場合のジョイン、フィルタ、導出列の処理などに有効です。
opts = aidataplatform_options(
type="ORACLE_PEOPLESOFT",
host=os.environ["PSFT_HOST"],
port=int(os.environ["PSFT_PORT"]),
database_name=os.environ["PSFT_DATABASE_NAME"],
user=os.environ["PSFT_USER"],
password=os.environ["PSFT_PASSWORD"],
extra={
"pushdown.sql": (
"SELECT EMPLID, EFFDT, DEPTID, JOBCODE "
"FROM SYSADM.PS_JOB "
"WHERE EFF_STATUS = 'A' AND EFFDT >= DATE '2025-01-01'"
),
},
)
df = spark.read.format(AIDP_FORMAT).options(**opts).load()
df.show(10)
注意事項
- コネクタは読み取り専用です。 PeopleSoft は信頼できる唯一の情報源(source of truth)として扱われます。書き戻しは Spark ではなく、PeopleSoft 自身のアプリケーション API を通じて行う必要があります。
- 基盤は Oracle DB です。 PeopleSoft の多くのインストール環境は Oracle DB 上で動作しており、コネクタは DB に直接アクセスします。ネットワーク到達性のルールは
aidp-oracle-dbと同様で、クラスターの Pod CIDR から PeopleSoft DB ホストへの L3 経路が必要です。 SYSADMスキーマは PeopleSoft の標準オーナーです。コネクタのユーザーが必要な PS_* テーブルに対してSELECT権限を持っていることを確認してください。PeopleSoft のテーブルはデフォルトで PUBLIC に付与されていません。- 取得前に行数を確認してください。 PeopleSoft のファクトテーブルは数億行に及ぶことがあります。本番環境では必ず
pushdown.sqlでWHEREフィルタを指定してください。
参考情報
原文(English)を表示
aidp-peoplesoft — Oracle PeopleSoft via AIDP aidataplatform
When to use
- User wants to ingest PeopleSoft data (HCM, FSCM, Campus Solutions, ELM, CRM) into a Spark DataFrame from an AIDP notebook.
- User mentions: "PeopleSoft", "PSFT", "PS HCM", "Campus Solutions".
When NOT to use
- For Oracle Autonomous DB family (ALH/ADW/ATP) →
aidp-alh. - For generic Oracle DB on Compute / Base DB / on-prem →
aidp-oracle-db. - For Oracle Siebel →
aidp-siebel.
Prerequisites in the AIDP notebook
- Helpers on
sys.path(runaidp-connectors-bootstrapfirst). - Env vars / OCI Vault secrets:
PSFT_HOST(PeopleSoft DB host)PSFT_PORT(typically1521for the underlying Oracle DB)PSFT_DATABASE_NAME(Oracle SID / service)PSFT_USER,PSFT_PASSWORDPSFT_SCHEMA(typicallySYSADM)PSFT_TABLE(PeopleSoft record table, e.g.PS_JOB,PS_VOUCHER)
Read
import os
from oracle_ai_data_platform_connectors.aidataplatform import (
AIDP_FORMAT, aidataplatform_options,
)
opts = aidataplatform_options(
type="ORACLE_PEOPLESOFT",
host=os.environ["PSFT_HOST"],
port=int(os.environ["PSFT_PORT"]),
database_name=os.environ["PSFT_DATABASE_NAME"],
user=os.environ["PSFT_USER"],
password=os.environ["PSFT_PASSWORD"],
schema=os.environ.get("PSFT_SCHEMA", "SYSADM"),
table=os.environ["PSFT_TABLE"],
)
df = spark.read.format(AIDP_FORMAT).options(**opts).load()
df.show(10)
Pushdown SQL
Push a complete source query at the database — connector skips schema/table option building and runs the SQL verbatim. Useful for joins, filters, derived columns where you don't want Spark to fetch the full table.
opts = aidataplatform_options(
type="ORACLE_PEOPLESOFT",
host=os.environ["PSFT_HOST"],
port=int(os.environ["PSFT_PORT"]),
database_name=os.environ["PSFT_DATABASE_NAME"],
user=os.environ["PSFT_USER"],
password=os.environ["PSFT_PASSWORD"],
extra={
"pushdown.sql": (
"SELECT EMPLID, EFFDT, DEPTID, JOBCODE "
"FROM SYSADM.PS_JOB "
"WHERE EFF_STATUS = 'A' AND EFFDT >= DATE '2025-01-01'"
),
},
)
df = spark.read.format(AIDP_FORMAT).options(**opts).load()
df.show(10)
Gotchas
- Connector is read-only. PeopleSoft is treated as a source-of-truth system; writes back must go through PeopleSoft's own application APIs, not Spark.
- Underlying Oracle DB. Most PeopleSoft installs run on Oracle DB; the connector hits the DB directly. Network reachability rules from
aidp-oracle-dbapply — cluster pod CIDR needs L3 path to the PeopleSoft DB host. SYSADMschema is the standard PeopleSoft owner. Ensure the connector user hasSELECTprivs on the PS_* tables you need — PeopleSoft tables are not granted to PUBLIC by default.- Read row count before pulling — PeopleSoft fact tables can have hundreds of millions of rows. Always include a
WHEREfilter viapushdown.sqlfor production.
References
原文・著作権は Anthropic および各プラグイン作者に帰属します。日本語訳は Claude API による自動翻訳です。