[英]How do I efficiently query a large LDIF file?
我有一個LDIF文件。 我想從中提取信息,例如返回某個屬性具有特定值的所有對象,或者返回所有對象的特定屬性的值。 我希望這是有效的,即使LDIF文件的大小為1 GB。
顯而易見的事情是將其導入OpenLDAP,但是,我似乎缺少一些架構信息。 我的LDAP技能有限,但總是會出現此錯誤:
$ slapadd -n 0 -F /etc/ldap/slapd.d -l config.ldif
5b1b9f46 PROXIED attributeDescription "DC" inserted.
5b1b9f46 <= str2entry: str2ad(instanceType): attribute type undefined
slapadd: could not parse entry (line=1)
_ 0.06% eta none elapsed none spd 7.1 M/s
Closing DB...
我的研究表明,使用OpenLDAP導入此LDIF文件並非易事。
另一個想法是以某種方式將其導入SQL。 顯然,有幾種方法可以存儲分層數據,但是似乎都沒有一種廉價查詢。 我擁有的本質上是只讀的,所以我不在乎插入是否昂貴。
我正在使用Linux,並且希望使用python解決方案。
有任何想法嗎?
因為我是python-ldap的LDIF解析器的作者,所以我會說它太慢了,並且會為如此大的數據消耗太多內存。
我建議檢查所需的架構,然后使用slapadd將數據加載到OpenLDAP中。 這可能需要一些工作,但絕對不是火箭科學。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.