Loading

映射 IP 地址地理编码数据

发布日期: Jul 20, 2023
任务
如何映射 IP 地址地理编码数据。
步数
尽管 Tableau 软件未包括 IP 地址地理编码数据,但 Internet 上的许多网站(例如 IPInfoDB)却包括此类数据。此示例使用可从 iPInfoDB 获得的 DB1.LITE 免费 IP 地理位置数据库,并且可在附带的打包工作簿中查看。

大多数 IP 数据库都包括“起始 IP 范围”和“结束 IP 范围”列。这些列中的值通常为 8 位整数。您的数据可能有由句点分隔的 9 位数字字符串形式的 IP 地址。例如,1.23.456.789。若要确定 IP 地址的位置,您需要将 IP 地址转换为整数,并确定该地址存在于哪个 IP 范围内。

首先,您将需要在 IP 地址数据和 IP 地址数据库之间创建两个联接。

步骤 1:设置联接

  1. 连接到要映射的 IP 地址数据
  2. 将包含 IP 地址数据的表拖到连接窗格中
  3. 单击“连接”右边的“添加”,并连接到 IP 地址数据库
  4. 将 IP 地址数据库表拖到连接窗格中
  5. 单击 IP 地址数据表和 IP 地址数据库表之间的联接
  6. 选择“左”作为“联接类型”
  7. 通过单击联接右侧的红色 X 清除已形成的任何自动联接。

联接 1:将 IP 地址转换为整数,并将 IP 地址整数与 IP 地址起始范围进行比较

  1. 单击“添加新的联接子句”,并选择“创建联接计算”
  2. 使用以下计算:
    (INT(
    LEFT([IP 地址],(FIND([IP 地址], ".")))
    ))*16777216+
    (INT(
    LEFT(
    MID([IP 地址],
    FIND([IP 地址],".")+1),
    FIND(MID([IP 地址],FIND([IP 地址],".")+1),".")-1)
    ))*65536+
    (INT(
    MID([IP 地址],
        FIND([IP 地址], ".", FIND([IP 地址], ".") +1)+1,
        (FIND([IP 地址], ".", FIND([IP 地址], ".", FIND([IP 地址],"." ) +1) +1)) - (FIND([IP 地址], ".", FIND([IP 地址], ".") +1))-1
    )
    ))*256+
    (INT(
    RIGHT([IP 地址],
        LEN([IP 地址]) -
        FIND([IP 地址], ".", FIND([IP 地址], ".", FIND([IP 地址],"." ) +1) +1)
    )

    ))
  3. 单击“确定”
  4. 选择“>=”作为联接运算符
  5. 从 IP 地址数据库中选择 IP 范围起始字段作为进行联接的字段

联接 2:将 IP 地址转换为整数,并将 IP 地址整数与 IP 地址结束范围进行比较

  1. 单击“添加新的联接子句”,并选择“创建联接计算”
  2. 使用以下计算:
    (INT(
    LEFT([IP 地址],(FIND([IP 地址], ".")))
    ))*16777216+
    (INT(
    LEFT(
    MID([IP 地址],
    FIND([IP 地址],".")+1),
    FIND(MID([IP 地址],FIND([IP 地址],".")+1),".")-1)
    ))*65536+
    (INT(
    MID([IP 地址],
        FIND([IP 地址], ".", FIND([IP 地址], ".") +1)+1,
        (FIND([IP 地址], ".", FIND([IP 地址], ".", FIND([IP 地址],"." ) +1) +1)) - (FIND([IP 地址], ".", FIND([IP 地址], ".") +1))-1
    )
    ))*256+
    (INT(
    RIGHT([IP 地址],
        LEN([IP 地址]) -
        FIND([IP 地址], ".", FIND([IP 地址], ".", FIND([IP 地址],"." ) +1) +1)
    )
    ))
  3. 单击“确定”
  4. 选择“<=”作为联接运算符
  5. 从 IP 地址数据库中选择 IP 范围结束字段作为进行联接的字段

步骤 2:生成视图

  1. “Country Name”(国家/地区名称)拖到视图中。
  2. 如果视图底部出现“<数字> 未知”,请编辑位置以更正,或筛选出未知位置。在此示例中,选择“筛选数据”
  3. 右键单击并将“IP Address”(IP 地址)拖到“颜色”。
  4. 当询问要放置哪个字段时,选择“CNTD(IP Address)”,并单击“确定”
  5. 右键单击并将“IP Address”(IP 地址)拖到“标签”。
  6. 当询问需要哪个字段时,选择“CNTD(IP Address)”,并单击“确定”
您现在就有了一个表示出每个国家/地区中 IP 地址数量的视图。
 
其他资源
地理位置、政府、公司和 IANA 指明的其他实体都分配有 IP 地址。

例如,城市或省可从一个地址范围中选择。该范围包括一个起始整数和一个结束整数。大多数 IP 地址数据库都包含一个“起始 IP 地址整数”列。每一行数据包含一个整数,结束范围位于下一行。

日志文件(例如 Web 日志、Apache 流量日志或 Web 分析文件)包含针对所请求资源(例如网页、iPhone 应用、ftp 站点等)的入站请求的有效 IP 地址。

有关映射 IP 地址地理编码数据的更多示例,请参见 Tableau Public 上 northwestcoder 的 IP 地址工作簿,或 Tableau 社区论坛中的如何显示 IP 地址

注意:可进行地理编码的全部已分配 IP 地址有数百万个。我们不建议使用自定义地理编码功能将这么大量的数据导入 Tableau,而是要直接连接到数据。有关详细信息,请参见 Tableau 社区论坛中的映射 IP 地址地理编码数据
知识文章编号

001458025

附件

IPAddresses.xlsx

40 KB

MapIPAddressExample.twbx

60 KB

 
正在加载
Salesforce Help | Article