<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Python Iceberg Protector on</title><link>https://docs.protegrity.com/protectors/10.0/docs/bdp/pyiceberg_protector/pyiceberg_python/</link><description>Recent content in Python Iceberg Protector on</description><generator>Hugo</generator><language>en</language><atom:link href="https://docs.protegrity.com/protectors/10.0/docs/bdp/pyiceberg_protector/pyiceberg_python/index.xml" rel="self" type="application/rss+xml"/><item><title>Introduction</title><link>https://docs.protegrity.com/protectors/10.0/docs/bdp/pyiceberg_protector/pyiceberg_python/pyiceberg_intro/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://docs.protegrity.com/protectors/10.0/docs/bdp/pyiceberg_protector/pyiceberg_python/pyiceberg_intro/</guid><description>&lt;p>The Python Iceberg Protector enables secure, policy-driven protection of sensitive data processed through Python-native Apache Iceberg workflows. It extends data-centric protection capabilities to Python Iceberg-based pipelines, ensuring that sensitive data remains protected at every stage of the data lifecycle from ingestion and transformation to storage and analytics.&lt;/p>
&lt;p>Python Iceberg Protector depends on PyArrow, which is backed by C++, for data operations. It allows applications to read, write, and manage Iceberg tables, while maintaining full compatibility with Iceberg’s table format and metadata model. It operates within a layered Iceberg architecture consisting of catalog, metadata, and storage layers, enabling scalable and ACID-compliant data operations.&lt;/p></description></item><item><title>Understanding the Architecture</title><link>https://docs.protegrity.com/protectors/10.0/docs/bdp/pyiceberg_protector/pyiceberg_python/pyiceberg_python_arch/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://docs.protegrity.com/protectors/10.0/docs/bdp/pyiceberg_protector/pyiceberg_python/pyiceberg_python_arch/</guid><description>&lt;p>The architecture of the Iceberg Protector using Python is depicted in the following diagram:&lt;/p>
&lt;p>&lt;img src="https://docs.protegrity.com/protectors/10.0/docs/images/bdp/py_iceberg/iceberg_python/pyicerberg_python_architecture.png" alt="" title="Python Iceberg Protector Architecture on Python">&lt;/p>
&lt;ol>
&lt;li>
&lt;p>&lt;strong>Client Applications Layer&lt;/strong>: Two entry points access the data.&lt;/p>
&lt;ul>
&lt;li>&lt;strong>Python / PySpark / Databricks / Trino / Snowflake&lt;/strong>: Query engines and compute frameworks that read/write via Python Iceberg.&lt;/li>
&lt;li>&lt;strong>Python App / Pandas / DuckDB, etc.&lt;/strong>: Lightweight Python-based applications that access data directly through PyArrow.&lt;/li>
&lt;/ul>
&lt;/li>
&lt;li>
&lt;p>&lt;strong>Python Iceberg&lt;/strong>: The table-format layer that sits between the query engines and storage. It handles Iceberg table semantics like snapshots, schema, partitions. It also communicates with the &lt;strong>Catalog&lt;/strong> or metadata store to resolve table locations and metadata.&lt;/p></description></item><item><title>Understanding the System Requirements</title><link>https://docs.protegrity.com/protectors/10.0/docs/bdp/pyiceberg_protector/pyiceberg_python/pyiceberg_sys_req/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://docs.protegrity.com/protectors/10.0/docs/bdp/pyiceberg_protector/pyiceberg_python/pyiceberg_sys_req/</guid><description>&lt;p>Ensure that the following prerequisites are available before installing the Python Iceberg Protector:&lt;/p>
&lt;ul>
&lt;li>Any of the following supported distributions of the Linux operating system is available:
&lt;ul>
&lt;li>CentOS/RHEL 8 or later&lt;/li>
&lt;li>Debian v10 or later&lt;/li>
&lt;li>Fedora v29 or later&lt;/li>
&lt;li>Ubuntu v18.10 or later&lt;/li>
&lt;/ul>
&lt;/li>
&lt;li>Python version 3.12 is installed on the system. The configurator script requires Python.&lt;/li>
&lt;li>The &lt;code>pip&lt;/code> module is installed.&lt;/li>
&lt;li>The &lt;code>unzip&lt;/code> package is installed.&lt;/li>
&lt;li>A text editor is installed.&lt;/li>
&lt;li>ESA v10.x is installed, configured, and running.&lt;/li>
&lt;li>The PIM is initialized and a policy is created.&lt;/li>
&lt;li>A user with &lt;code>sudo&lt;/code> privileges is created. The privileges are required to modify the &lt;code>/etc/hosts&lt;/code> file for the dynamic policy approach.&lt;/li>
&lt;li>The logged-in user is the same as the ESA policy user.&lt;/li>
&lt;li>Docker is installed and configured. This is required only for installing the build using a Docker image.&lt;/li>
&lt;li>Virtual environment is available. This is required only for installing the build using a virtual environment.&lt;/li>
&lt;li>Windows Subsystem for Linux is available.&lt;/li>
&lt;/ul></description></item></channel></rss>