1

여기 내 문제가 있습니다. 웹 앱을 만들었고 자연스럽게 해당 앱의 도메인을 설명하는 데이터베이스에 데이터를 보관했습니다. 결국, 나는 같은 조직을위한 다른 웹 앱을 만들었고, 앱의 도메인과 스토어 데이터를 설명하기 위해 별도의 데이터베이스를 사용했다 ... 자연스럽게 몇 가지 프로젝트가 생겨서 각 앱마다 데이터를 하나의 데이터베이스에 격리했다. . 데이터베이스의 데이터 구조와 데이터에 대한 변경 사항을 유지할 수 있으므로 현명해야합니다.하나의 데이터베이스에서 다른 앱의 데이터베이스로 데이터를 동기화하는 효과적인 방법에 대한 권장 사항은 무엇입니까?

이러한 앱이 동일한 조직에 속한다고 간주하면 부서 이름, 직위, 상점 이름 등과 같이 많은 데이터가 복제되는 경향이 있습니다. 대부분의 테이블은 동일한 데이터를 보유하지만 정확하지는 않습니다. 각 데이터베이스에서 동일하며 모든 앱에서 항상 사용되는 것은 아닙니다. 그러나이 데이터에 대한 변경 사항은 모든 앱에서 (때로는 다른 방식으로) 변경해야 관리가 번거로워집니다.

그래서 나는 데이터 사이의 동기화를 얻는 방법을 생각 해왔다. 하나의 앱 (또는 중앙 앱)에서 관리를 쉽게하고 각 앱에서 필요에 따라 모든 데이터베이스를 업데이트하고 앱간에 데이터를 공유하는 더 좋은 방법입니다 (새 앱에서 다른 앱의 데이터를 매쉬업하는 등). 특정 분석을하기 위해). 제가 언급하는 대부분의 데이터는 핵심 도메인 개념이 아닌 특정 도메인을 설명하기보다는 조직을 설명하는 것 이상의 조건으로 사용됩니다.

나는 이것을 수행하는 몇 가지 방법에 대한 의견을 찾고 있습니다.

내 첫 번째 아이디어는 언급 한 부서 이름 테이블과 같은 핵심 데이터 구조를 가져 와서 코어 데이터베이스에 집어 넣는 것이 었습니다. 데이터에 대한 모든 업데이트는 전용 웹 응용 프로그램을 통해이 데이터베이스에서 수행됩니다. 이러한 변경 사항에 대해 Observer 또는 Publisher/Suscriber Pattern을 적용 할 것입니다 - 응용 프로그램이 응용 프로그램을 관찰 할 것을 알리는 변경 사항 (전용 웹 서비스를 통해) 변경 사항이 발생하여 앱이 새로운 데이터를 가져 와서 필요에 따라 사용할 수 있습니다. GUID는 사용자가 앱 전체에서 동일한 데이터를 식별 할 수 있도록 참조 할 수 있습니다. 또한 특정 앱의 데이터베이스에있을 필요가없는 읽기 및 검색 작업을위한 웹 서비스를 작성할 수도 있지만 유용 할 수 있습니다.

두 번째 아이디어는 각 앱이 자체 데이터를 관리하고 앱이 서로를 관찰 할 수 있다는 것입니다. 하나의 변경은 변경이 발생한 동일한 데이터 구조를 공유하는 다른 사용자에게 알릴 수 있습니다. 나는 여전히 일부 GUID를 사용할 수 있으며 심지어 모든 앱에서 서비스를 구축 할 수 있습니다. 데이터 중복 문제가 적지 만 각 앱이 결국 다른 앱과 결합 될 때 관리하기가 어려울 수 있으며 어떤 앱이 어떤 정보를 제어하는지에 대한 책임을 어떻게 분산시켜야 할 것인가.

저는이 데이터 장르의 장르에 대해 정말로 궁금해하며 동기화가 작동하고 심지어 권장할만한 곳입니다. 의견 및 기타 아이디어를 환영합니다!

답변

3

여기서 설명하는 것은 "마스터 데이터 관리"시스템의 일반적인 경우입니다. EAI 벤더 (Oracle, TIBCO, IBM)는 그러한 제품을 제공합니다. 이들은 첫 번째 솔루션 인 동기화 프로세스가있는 중앙 집중식 데이터베이스이며 외부 데이터 소스의 변경 사항을 감지하고 변경 사항을 가져 와서 다른 외부 데이터베이스에 데이터를 동기화합니다. 또한 마스터 데이터를 직접 변경하는 사용자 인터페이스를 제공합니다.
MDM 소프트웨어는 비용이 많이 들지 만 처음에는 구입하는 것보다 저렴한 것일 수있는 맞춤형 솔루션을 구현할 수 있습니다. 두 솔루션 모두 기술적으로는 의미가 있지만 관리 효율성에는 차이가 있습니다.
책임감있는 사람/조직을 돌볼 수 있다면 첫 번째 방법이 더 좋습니다.이 새로운 중앙 집중식 시스템을 통해 비즈니스 소유자가 변경 사항에 동의 할 수 있습니다.
두 번째 솔루션은 서비스 소유자간에 책임을 공유합니다.여기에서 어려운 작업은 각 유형의 정보 (비즈니스 개체)의 소유자를 식별하는 것입니다.
시스템 및 조직에 대한 더 자세한 지식이 없어도 해결책을 제시 할 수는 없지만 몇 가지 아이디어를 줄 수 있기를 바랍니다.

+0

감사합니다. Miklos. SAP 기반의 대규모 조직입니다. 내가 일하는 부서가 IT 그룹의 도움을받는 데 어려움을 겪고 있으며 SAP는 업무를 느리게하는 경향이 있으므로 특정 기능/도구를 아웃소싱하기로 결정했습니다. 내가 작성한 이러한 앱은 IT 담당자가 관리하지는 않지만 해당 기능을 사용하기에 완전히 부합되는 부서의 일부 운영자가 관리합니다. 또한이를 수행 할 수있는 몇 가지 내부 IT가 있습니다. 나는 그들의 삶을 더 편하게하고 어떻게 앱들간에 데이터를 공유 할 수있는 문을 열 수 있는지 알아 내려고 노력하고있다. 고마워! – MytyMyky

+0

마스터 데이터 관리 "는 내가 필요한 것을 구축하는 데 도움이되는 많은 양의 정보를 찾는 데 필요한 열쇠였습니다. 감사합니다. – MytyMyky

+0

@MytyMyky 여러분을 환영합니다. 조금 도와 드릴 수있어서 기쁩니다. –